.language-flags-selector{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;padding:.5rem;background-color:#fff4e5;color:#8c4a00;border:2px solid #f5a23d;border-radius:10px;box-shadow:0 4px 12px #00000014}.language-flags-selector .flag-button{background:transparent;border:1px solid transparent;border-radius:4px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.language-flags-selector .flag-button:hover{background:var(--el-fill-color-light);border-color:var(--el-border-color)}.language-flags-selector .flag-button.active{border-color:var(--el-color-primary);background:var(--el-fill-color)}.language-flags-selector .flag-button:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.language-flags-selector .flag-button span.flag{display:block;margin:-14px -26px;font-size:24px}.language-selector{display:inline-block}.language-selector .el-select{width:120px}.language-selector .el-select span.flag{margin-right:-.75em}.language-selector .el-select .el-input__inner{color:var(--el-text-color-primary);background-color:var(--el-fill-color-blank)}.language-selector .el-select .el-select__placeholder{display:inline-flex;align-items:center}.language-select-dropdown span.flag{margin-right:-.75em}.theme-selector{display:inline-block}.theme-toggle-btn{padding:8px;border-radius:4px;transition:background-color .2s ease}.theme-toggle-btn:hover{background-color:var(--el-color-info-light-9)}.theme-toggle-btn:focus{outline:2px solid var(--el-color-primary);outline-offset:2px}.theme-toggle-btn .el-icon{color:var(--el-text-color-primary);font-size:18px}.public-layout{min-height:100vh;background:var(--color-public-bg-gradient)}.public-layout .versionName{font-size:.5em;color:var(--color-text-secondary)}.public-layout .public-header{display:grid;grid-template-columns:1fr auto 1fr;grid-template-areas:"logo flags theme";gap:1em 2em;align-items:center;padding:20px 40px;backdrop-filter:blur(10px);background:var(--color-public-header-bg);-webkit-backdrop-filter:blur(10px)}.public-layout .public-header .logo{grid-area:logo}.public-layout .public-header .header-middle{grid-area:flags}.public-layout .public-header .header-right{grid-area:theme}@media(max-width:600px){.public-layout .public-header{grid-template-columns:1fr auto;grid-template-areas:"logo theme" "flags flags";padding:12px 16px}}.public-layout .header-middle{display:flex;justify-content:center}.public-layout .logo h2{display:flex;align-items:center;gap:10px;color:var(--color-public-text);margin:0;font-size:24px;font-weight:600}.public-layout .logo h2 img{height:2em}.public-layout .header-right{text-align:right;align-items:center;gap:20px}.public-layout .public-content{padding:20px}.app-header{width:100%;display:flex;justify-content:space-between;align-items:center}.app-header .versionName{font-size:.9em;color:var(--color-text-secondary);margin-left:16px}.app-header .versionDate{font-size:.8em;color:var(--color-text-secondary);margin-left:8px}.app-header .header-left{display:flex;align-items:center;gap:16px;flex:1}.app-header .header-left h3{margin:0;font-size:18px;font-weight:500;color:var(--color-text-primary);cursor:help;white-space:nowrap}.app-header .location-selector{display:flex;align-items:center;gap:8px;margin-left:16px;padding-left:16px;border-left:1px solid var(--el-border-color-lighter)}.app-header .location-selector .location-icon{color:var(--el-color-primary);font-size:16px}.app-header .location-selector .location-select{min-width:180px;max-width:250px}.app-header .header-right{display:flex;align-items:center;gap:20px}.app-header .user-dropdown{display:flex;align-items:center;gap:8px;cursor:pointer;padding:5px 10px;border-radius:4px;border:none;background:transparent;transition:background-color .3s;font-size:inherit}.app-header .user-dropdown:hover,.app-header .user-dropdown:focus{background-color:var(--color-bg-secondary);outline:2px solid var(--color-primary-700);outline-offset:2px}.app-header .username{font-size:14px;color:var(--color-text-secondary)}.app-header .mobile-menu-btn{background:none;border:none;padding:8px;margin-right:10px;cursor:pointer;border-radius:4px;transition:background-color .3s}.app-header .mobile-menu-btn:hover,.app-header .mobile-menu-btn:focus{background-color:var(--color-bg-secondary);outline:2px solid var(--color-primary-700);outline-offset:2px}@media(max-width:768px){.app-header .app-header{padding:0 15px}.app-header .header-left{display:flex;align-items:center;gap:8px}.app-header .header-left h3{font-size:16px}.app-header .location-selector{margin-left:8px;padding-left:8px}.app-header .location-selector .location-select{min-width:120px;max-width:150px}.app-header .header-right{gap:15px}.app-header .username{display:none}}@media(max-width:480px){.app-header .header-left h3{font-size:14px}.app-header .location-selector .location-icon{display:none}.app-header .location-selector .location-select{min-width:100px;max-width:120px}.app-header .user-dropdown{padding:8px}}.app-header .el-dropdown-menu__item{display:flex;align-items:center;gap:8px}.app-sidebar{height:100%;display:flex;flex-direction:column}.app-sidebar .logo{padding:20px;text-align:center;border-bottom:1px solid var(--color-sidebar-border)}.app-sidebar .logoTop{display:flex;justify-content:center;align-items:center;gap:10px}.app-sidebar .logoTop img{height:2.5em}.app-sidebar .version-tooltip{text-align:center;font-size:.75em;color:var(--color-gray-500);margin:4px 0 6px}.app-sidebar .logo h2{color:var(--color-text-primary);margin:0;font-size:20px;font-weight:600}.app-sidebar .el-menu{border-right:none;background-color:var(--color-sidebar-bg)!important;color:var(--color-sidebar-text)!important}.app-sidebar .el-menu-item{height:50px;line-height:50px}.app-sidebar .el-menu-item:hover{background-color:var(--color-sidebar-hover)!important}.app-sidebar .el-menu-item.is-active{background-color:var(--color-sidebar-active)!important;color:var(--color-sidebar-text-active)!important}.app-sidebar .election-nav{display:flex;flex-direction:column;height:calc(100% - 120px)}.app-sidebar .election-header{padding:20px;border-bottom:1px solid var(--color-sidebar-border)}.app-sidebar .back-to-elections{display:flex;align-items:center;gap:8px;padding:8px 0;cursor:pointer;transition:color .2s ease;font-size:14px;color:var(--color-sidebar-text)}.app-sidebar .back-to-elections:hover{color:var(--color-sidebar-text-active)}.app-sidebar .back-to-elections .el-icon{font-size:16px}.app-sidebar .election-title{margin-top:12px;font-weight:600;font-size:16px;color:var(--color-sidebar-text-active);word-break:break-word}.app-sidebar .election-menu{flex:1;border-right:none;background-color:var(--color-sidebar-bg)!important;color:var(--color-sidebar-text)!important;padding:10px 0;overflow-y:auto}.app-sidebar .election-menu .el-menu-item{height:44px;line-height:44px;margin:2px 10px;border-radius:6px;font-size:14px}.app-sidebar .election-menu .el-menu-item:hover{background-color:var(--color-sidebar-hover)!important}.app-sidebar .election-menu .el-menu-item.is-active{background-color:var(--color-sidebar-active)!important;color:var(--color-sidebar-text-active)!important}.app-sidebar .election-menu .el-menu-item .el-icon{margin-right:8px;font-size:16px}.app-sidebar .testOnlyWarning{padding:1rem .5rem;margin:0 10px 1em;max-width:920px;text-align:center;background-color:#fff4e5;color:#8c4a00;font-size:1.05rem;line-height:1.5;border:2px solid #f5a23d;border-radius:10px;box-shadow:0 4px 12px #00000014;font-weight:500}.app-sidebar .statusDocLink{padding:0 .5em;text-align:center;margin:auto .5em 1em;background-color:#fff4e5;color:#8c4a00;border:2px solid #f5a23d;border-radius:4px;font-size:1rem}:root.dark .main-layout .testOnlyWarning{background-color:#3f2a1a;color:#ffd9a8;border-color:#f5a23d;box-shadow:0 4px 12px #00000040}.main-layout{height:100vh;background:var(--color-public-bg-gradient)}.main-layout .skip-link{position:absolute;top:-40px;left:6px;padding:8px;text-decoration:none;border-radius:4px;z-index:1000;font-weight:500}.main-layout .skip-link:focus{top:6px}.main-layout .sidebar{background-color:var(--color-sidebar-bg);box-shadow:2px 0 6px #0000001a;overflow-x:hidden}.main-layout .mobile-sidebar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1000}.main-layout .sidebar.mobile-sidebar-open{transform:translate(0);z-index:1001}.main-layout .el-header{background:var(--color-public-header-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;padding:0 20px}.main-layout .el-main{background-color:var(--color-public-bg-gradient);padding:20px;overflow-y:auto;max-width:none}@media(max-width:768px){.main-layout .sidebar{width:180px!important;position:fixed;top:60px;left:0;height:calc(100vh - 60px);transform:translate(-100%);transition:transform .3s ease;z-index:1001}.main-layout .sidebar.mobile-sidebar-open{transform:translate(0)}.main-layout .el-main{padding:10px}}@media(max-width:480px){.main-layout .sidebar{width:250px!important}}@media(min-width:1400px){.main-layout .el-main{margin:0 auto;width:100%}}
