.change-password-overlay{position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:20px;background:#010811c2;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:changePasswordOverlayIn .16s ease-out}.change-password-modal{width:min(440px,calc(100vw - 32px));overflow:hidden;border:1px solid rgba(111,229,255,.46);border-radius:9px;background:radial-gradient(circle at 18% 0%,rgba(67,186,229,.18),transparent 42%),linear-gradient(155deg,#0c2d4cfa,#030f1dfc);box-shadow:0 0 0 1px #03101fe6 inset,0 0 28px #49d9ff2e,0 28px 68px #0009;animation:changePasswordModalIn .18s ease-out}.change-password-header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px 12px 20px;border-bottom:1px solid rgba(101,223,255,.22);background:linear-gradient(90deg,#1f5d926b,#07192d8f)}.change-password-header h2,.change-password-header p{margin:0}.change-password-header h2{color:#fff;font-size:19px;letter-spacing:1px;text-shadow:0 0 10px rgba(82,224,255,.28)}.change-password-header p{margin-top:5px;color:#b7eaf8b3;font-size:12px}.change-password-close{flex:0 0 auto;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0 0 2px;border-color:#74e4ff47;background:#041425ad;color:#e0f8ffe0;font-size:24px;font-weight:400;line-height:1}.change-password-fields{display:flex;flex-direction:column;gap:13px;padding:20px}.change-password-fields label{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:12px}.change-password-fields label>span{color:#caeff8d1;font-size:13px;font-weight:700;text-align:right}.change-password-fields input{width:100%;height:36px;padding:0 11px;border:1px solid rgba(103,220,255,.32);border-radius:5px;outline:none;background:#030e1bbd;color:#f0fefff5;font-size:13px;box-shadow:0 0 0 1px #061428b8 inset}.change-password-fields input:focus{border-color:#7ef3ffb8;box-shadow:0 0 0 1px #061428b8 inset,0 0 12px #49d9ff2e}.change-password-fields input::placeholder{color:#b7eaf86b}.change-password-error{margin-left:104px;padding:8px 10px;border:1px solid rgba(244,67,54,.36);border-radius:5px;background:#82161f33;color:#ffaeaef5;font-size:12px;line-height:1.4}.change-password-actions{display:flex;justify-content:flex-end;gap:9px;padding:12px 20px 16px;border-top:1px solid rgba(101,223,255,.2);background:#04101e57}.change-password-actions button{min-width:92px;height:34px;padding:0 14px;font-size:12px}.change-password-submit{border-color:#8fefff9e;background:linear-gradient(135deg,#195c97d1,#081f37e6);color:#fff;box-shadow:0 0 13px #49d9ff2e}.change-password-actions button:disabled,.change-password-close:disabled{cursor:not-allowed;opacity:.5}@media(max-width:520px){.change-password-fields label{grid-template-columns:1fr;gap:6px}.change-password-fields label>span{text-align:left}.change-password-error{margin-left:0}}@keyframes changePasswordOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes changePasswordModalIn{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.app{display:flex;flex-direction:column;width:100%;height:100%}.app-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px 14px;background:linear-gradient(90deg,#12426aeb,#041222f2 48%,#05101ff5),radial-gradient(circle at 12% 0%,rgba(80,224,255,.18),transparent 34%),repeating-linear-gradient(120deg,rgba(101,223,255,.06) 0 1px,transparent 1px 14px);border-bottom:1px solid rgba(103,220,255,.34);flex-shrink:0;box-shadow:0 0 0 1px #061428e6 inset,0 1px #bcf8ff1f inset,0 10px 26px #00000052,0 0 18px #49d9ff1a;z-index:50}.app-header:before{content:"";position:absolute;left:18px;right:18px;top:7px;height:4px;background:linear-gradient(90deg,rgba(95,224,255,.94) 0 46px,transparent 46px 60px,rgba(95,224,255,.24) 60px 210px,transparent 210px),repeating-linear-gradient(120deg,rgba(133,229,255,.28) 0 8px,transparent 8px 14px);pointer-events:none}.app-header:after{content:"";position:absolute;inset:7px 12px 6px;border:1px solid rgba(126,230,255,.14);border-radius:6px;pointer-events:none}.app-header-right{position:relative;z-index:1;min-width:0;display:flex;align-items:center;gap:14px}.app-title{position:relative;z-index:1;flex:0 0 auto;padding:5px 14px 5px 16px;border:1px solid rgba(123,242,255,.46);border-left-color:#8fefffd1;border-radius:6px;color:#fff;background:linear-gradient(90deg,#15528575,#05152780);box-shadow:0 0 0 1px #06142894 inset,0 0 14px #49d9ff24;font-size:17px;font-weight:800;letter-spacing:1px;text-decoration:none;text-shadow:0 0 10px rgba(82,224,255,.32);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.app-title:hover{border-color:#bcf8ffc7;background:linear-gradient(90deg,#1c65a494,#071f3894);box-shadow:0 0 0 1px #06142894 inset,0 0 18px #49d9ff38}.app-nav{display:flex;align-items:center;gap:7px;min-width:0;padding:4px;border:1px solid rgba(101,223,255,.18);border-radius:7px;background:#04101e6b;box-shadow:0 0 0 1px #0614287a inset}.app-nav a,.app-nav-group-trigger{height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0 11px;background:#081c326b;border:1px solid rgba(103,220,255,.16);border-radius:5px;color:#dcf4fcd1;text-decoration:none;font-size:13px;font-weight:700;white-space:nowrap;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.app-nav a:hover,.app-nav-group-trigger:hover{background:#113e679e;border-color:#71e8ff7a;color:#fff;box-shadow:0 0 12px #49d9ff24}.app-nav a.active,.app-nav-group-trigger.active{background:linear-gradient(135deg,#195c97c7,#081f37d1);border-color:#8fefffb8;color:#fff;box-shadow:0 0 0 1px #bcf8ff1a inset,0 0 14px #49d9ff38}.app-nav-group{position:relative}.app-subnav{position:absolute;top:calc(100% + 8px);left:0;z-index:20;min-width:144px;display:none;flex-direction:column;gap:6px;padding:8px;border:1px solid rgba(101,223,255,.32);border-radius:7px;background:linear-gradient(160deg,#0d2d4df5,#040f1dfa),radial-gradient(circle at 0% 0%,rgba(107,230,255,.14),transparent 42%);box-shadow:0 0 0 1px #061428d1 inset,0 12px 26px #0000006b,0 0 16px #49d9ff1f}.app-subnav:before{content:"";position:absolute;left:0;right:0;top:-9px;height:9px}.app-nav-group:hover .app-subnav,.app-nav-group:focus-within .app-subnav,.app-nav-group.open .app-subnav{display:flex}.app-subnav a{width:100%;justify-content:flex-start;white-space:nowrap}.app-main{flex:1;overflow:hidden;position:relative}.app-route-loading{height:100%;display:flex;align-items:center;justify-content:center;color:#d1f2fad1;background:#04101edb;font-size:14px;font-weight:700}.app-user{min-height:38px;display:flex;align-items:center;gap:8px;padding:4px 5px 4px 10px;border:1px solid rgba(101,223,255,.18);border-radius:7px;color:#b7eaf8c7;background:#04101e6b;box-shadow:0 0 0 1px #0614287a inset}.app-username{max-width:120px;color:#f6fdfff0;font-size:13px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-user-muted{font-size:13px;color:#b7eaf89e}.app-change-password,.app-logout{height:28px;padding:0 10px;border-radius:5px;font-size:12px;font-weight:800;cursor:pointer}.app-change-password{border:1px solid rgba(103,220,255,.3);background:#0c304fa3;color:#daf6fce6;box-shadow:0 0 10px #49d9ff1a}.app-change-password:hover{border-color:#8fefff9e;background:#134874c7;color:#fff}.app-logout{border:1px solid rgba(255,119,119,.36);background:linear-gradient(135deg,#93253280,#370d18bd);color:#ffeeeeeb;box-shadow:0 0 12px #e5393524}.app-logout:hover{border-color:#ff9d9dad;background:linear-gradient(135deg,#ae303db3,#4b111edb)}@media(max-width:1120px){.app-header{min-height:58px;flex-wrap:wrap;align-items:stretch;padding:0 14px 15px}.app-header-right{flex:1 1 100%;justify-content:space-between}.app-nav{flex-wrap:wrap}}@media(max-width:760px){.app-header{gap:8px;padding:0 10px 12px}.app-header:before{left:12px;right:12px}.app-header:after{inset:7px 7px 6px}.app-title{font-size:15px}.app-header-right,.app-nav{align-items:stretch}.app-header-right{flex-direction:column;gap:8px}.app-user{align-self:flex-end}}.home-page{display:flex;align-items:center;justify-content:center;height:100%;background:var(--color-bg-primary)}.home-content{text-align:center;color:var(--color-text-secondary)}.home-content h2{font-size:24px;margin-bottom:var(--spacing-md);color:var(--color-text-primary)}.home-content p{font-size:14px}:root{--color-bg-primary: #07101d;--color-bg-secondary: #0b2036;--color-bg-tertiary: #12314f;--color-bg-elevated: rgba(10, 31, 55, .84);--color-bg-glass: rgba(7, 24, 43, .72);--color-text-primary: rgba(242, 251, 255, .94);--color-text-secondary: rgba(183, 234, 248, .72);--color-text-muted: rgba(139, 186, 202, .58);--color-accent: #4fdfff;--color-accent-hover: #8af1ff;--color-faction-red: #e53935;--color-faction-blue: #1e88e5;--color-faction-green: #43a047;--color-faction-red-rgb: 229, 57, 53;--color-faction-blue-rgb: 30, 136, 229;--color-faction-green-rgb: 67, 160, 71;--color-success: #4caf50;--color-warning: #ff9800;--color-error: #f44336;--color-error-rgb: 244, 67, 54;--color-border: rgba(101, 223, 255, .24);--color-border-strong: rgba(143, 239, 255, .58);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .28);--shadow-md: 0 10px 28px rgba(0, 0, 0, .34);--shadow-lg: 0 24px 52px rgba(0, 0, 0, .48);--shadow-glow: 0 0 18px rgba(73, 217, 255, .16);--button-primary-border: rgba(101, 223, 255, .38);--button-primary-border-hover: rgba(143, 239, 255, .62);--button-primary-bg: linear-gradient(135deg, rgba(18, 66, 106, .74), rgba(6, 24, 43, .88));--button-primary-bg-hover: linear-gradient(135deg, rgba(25, 92, 151, .78), rgba(8, 31, 55, .9));--button-primary-shadow: 0 0 0 1px rgba(188, 248, 255, .08) inset, 0 0 12px rgba(73, 217, 255, .12);--hud-panel-bg: linear-gradient(160deg, rgba(13, 45, 77, .82), rgba(4, 15, 29, .9)), radial-gradient(circle at 0% 0%, rgba(107, 230, 255, .14), transparent 42%);--hud-panel-border: 1px solid rgba(101, 223, 255, .3);--hud-header-bg: linear-gradient(90deg, rgba(31, 93, 146, .44), rgba(7, 25, 45, .62));--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--border-radius: var(--radius-sm);--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 24px}body{background:radial-gradient(circle at 16% 0%,rgba(43,126,185,.18),transparent 34%),linear-gradient(180deg,#07101d,#091728 52%,#050b14);color:var(--color-text-primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#04101ec2}::-webkit-scrollbar-thumb{background:#65dfff42;border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:#8fefff75}button{cursor:pointer;border:1px solid rgba(103,220,255,.2);background:linear-gradient(135deg,#195c979e,#081f37b8);color:var(--color-text-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:700;box-shadow:0 0 0 1px #06142861 inset;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .1s ease}button:hover{border-color:#8fefff94;background:linear-gradient(135deg,#1f76b1bd,#0a2e51d1);box-shadow:0 0 0 1px #bcf8ff1f inset,0 0 14px #49d9ff2e}button:active{transform:scale(.98)}button:disabled{opacity:.5;cursor:not-allowed}button.primary,.btn-primary,.confirm-btn{border-color:var(--button-primary-border);background:var(--button-primary-bg);color:#fff;box-shadow:var(--button-primary-shadow)}button.primary:hover,.btn-primary:hover,.confirm-btn:hover{border-color:var(--button-primary-border-hover);background:var(--button-primary-bg-hover)}button.danger,.btn-danger{border-color:#ff77776b;background:linear-gradient(135deg,#9325329e,#370d18d1);color:#ffeeeef0}button.danger:hover,.btn-danger:hover{border-color:#ff9d9db8;background:linear-gradient(135deg,#ae303dc7,#4b111ee6);color:#fff}input,select,textarea{background:#04101eb8;border:1px solid rgba(103,220,255,.22);color:var(--color-text-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);box-shadow:0 0 0 1px #0614286b inset}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-border-strong);box-shadow:0 0 0 1px #bcf8ff1a inset,0 0 14px #49d9ff29}.panel{background:var(--hud-panel-bg);border:var(--hud-panel-border);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:0 0 0 1px #061428b8 inset,var(--shadow-glow)}.tooltip{position:absolute;background:#07182bf0;border:1px solid rgba(101,223,255,.32);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);pointer-events:none;z-index:1000;box-shadow:var(--shadow-md)}
