@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #06080F;--bg-secondary: #0A0E1E;--bg-card: #0D1322;--bg-card-hover: #131A2E;--accent-cyan: #34D8E8;--accent-green: #46E0A0;--accent-red: #FF6573;--accent-orange: #FFB454;--accent-purple: #B388FF;--text-primary: #EAF2FF;--text-secondary: #8CA0C4;--text-dimmed: #7C88A6;--status-available: var(--accent-green);--status-active: var(--accent-cyan);--status-maintenance: var(--accent-red);--status-closed: var(--text-dimmed);--shadow-glow: 0 0 20px rgba(52, 216, 232, .3);--shadow-glow-purple: 0 0 20px rgba(179, 136, 255, .3);--shadow-glow-green: 0 0 20px rgba(70, 224, 160, .3);--border-subtle: rgba(255, 255, 255, .07);--border-medium: rgba(255, 255, 255, .12);--rgb-cyan: 52 216 232;--rgb-green: 70 224 160;--rgb-purple: 179 136 255;--rgb-red: 255 101 115;--rgb-orange: 255 180 84}body{margin:0;font-family:Space Grotesk,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:auto}input,button,select,textarea{font-family:inherit}#root{min-height:100vh;width:100%}@keyframes glowPulse{0%,to{opacity:.5}50%{opacity:1}}@keyframes glowPulseSlow{0%,to{opacity:.32}50%{opacity:.78}}@keyframes blink{0%,to{opacity:1}50%{opacity:.28}}@keyframes blinkFast{0%,to{opacity:1}50%{opacity:.12}}@keyframes barPulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes nextPulse{0%,to{box-shadow:0 0 #46e0a073}70%{box-shadow:0 0 0 9px #46e0a000}}button:not(:disabled){transition:filter .12s ease,box-shadow .12s ease}button:not(:disabled):hover{filter:brightness(1.25)}button:not(:disabled):active{filter:brightness(.92)}button:disabled{cursor:not-allowed}[data-menu-item]:not(:disabled):hover{box-shadow:inset 0 0 0 999px #ffffff1a}[data-menu-item][data-tone=danger]:not(:disabled):hover{box-shadow:inset 0 0 0 999px #f363}[data-menu-item][data-tone=green]:not(:disabled):hover{box-shadow:inset 0 0 0 999px #00ff8829}button:focus-visible,[data-menu-item]:focus-visible{outline:2px solid rgba(107,234,244,.85);outline-offset:2px}.app{height:100vh;padding:2rem;background:linear-gradient(135deg,var(--bg-primary) 0%,#0f1629 100%);display:flex;flex-direction:column;overflow:hidden}.app-header{text-align:center;margin-bottom:1rem;flex-shrink:0}.app-title{font-size:2rem;font-weight:700;background:linear-gradient(135deg,var(--accent-cyan),var(--accent-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.25rem;text-shadow:0 0 30px rgba(0,217,255,.5)}.app-subtitle{color:var(--text-secondary);font-size:1rem}.station-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1600px;margin:0 auto}.dashboard-canvas-wrap{max-width:1600px;margin:0 auto;width:100%;flex:1;min-height:0;overflow:hidden}.dashboard-canvas-wrap--list{max-width:none;display:flex;flex-direction:column}.dashboard-canvas{width:100%;height:100%!important;aspect-ratio:unset!important}.confirm-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .15s ease-out}.confirm-modal{background:var(--bg-card, #1a2238);border:2px solid rgba(0,217,255,.3);border-radius:12px;padding:2rem;min-width:340px;max-width:480px;box-shadow:0 8px 32px #00d9ff26;animation:slideIn .2s ease-out}.confirm-modal__title{margin:0 0 .75rem;font-size:1.25rem;font-weight:600;color:#fff}.confirm-modal__message{margin:0 0 1.5rem;font-size:1rem;color:var(--text-secondary, #b4b8c8);line-height:1.5}.confirm-modal__actions{display:flex;gap:.75rem;justify-content:flex-end}.confirm-modal__btn{padding:.6rem 1.25rem;border-radius:6px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.confirm-modal__btn--cancel{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:var(--text-secondary, #b4b8c8)}.confirm-modal__btn--cancel:hover{background:#ffffff1f;color:#fff}.confirm-modal__btn--confirm{background:var(--accent-cyan, #00d9ff);color:#000}.confirm-modal__btn--confirm:hover{filter:brightness(1.15);transform:translateY(-1px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.station-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:clamp(1px,.6cqb,8px);position:relative;flex-shrink:0}.station-id{display:flex;align-items:flex-start;gap:clamp(3px,1.5cqi,12px);flex:1;min-width:0}.station-name{font-size:clamp(.6rem,7cqmin,1.75rem);font-weight:700;color:var(--text-primary);line-height:1.2}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.add-form{display:flex;flex-direction:column;gap:clamp(2px,1cqmin,8px)}.add-btn{width:100%;flex:1;padding:clamp(6px,2cqb,14px) clamp(6px,2cqi,16px);background:#9d4edd33;border:1px solid var(--accent-purple);border-radius:clamp(4px,1.5cqmin,8px);color:var(--accent-purple);cursor:pointer;font-weight:600;font-size:clamp(.7rem,4.5cqmin,1.1rem);transition:all .2s;display:flex;align-items:center;justify-content:center;gap:clamp(2px,1cqi,8px);min-height:clamp(28px,8cqb,44px)}.add-btn:hover{background:#9d4edd4d;transform:scale(1.02)}.station-actions{display:flex;gap:clamp(2px,1cqi,8px);margin-top:auto;padding-top:clamp(1px,.5cqb,6px);flex-shrink:0}@keyframes blink{0%,to{opacity:1}50%{opacity:.6}}@media(max-width:768px){.station-grid{grid-template-columns:1fr}.app{padding:1rem}.app-title{font-size:1.5rem}}.app{background:radial-gradient(130% 115% at 50% -10%,#101830,#0a0e1e 48%,#06080f);position:relative}.app:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(120,140,200,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(120,140,200,.04) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;-webkit-mask-image:radial-gradient(125% 100% at 50% 0%,#000 52%,transparent 100%);mask-image:radial-gradient(125% 100% at 50% 0%,#000 52%,transparent 100%);z-index:0}.app-header,.dashboard-canvas-wrap{position:relative;z-index:1}.app-header{border-bottom:none}.app-title{font-weight:700;letter-spacing:.3px;background:linear-gradient(92deg,#6beaf4,#b388ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;margin-bottom:0}@keyframes v2-blink{0%,to{opacity:1}50%{opacity:.4}}.blink{animation:v2-blink 1s ease-in-out infinite}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.confirm-overlay{background:#04070e9e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.confirm-modal{background:#101628f7;border:1px solid var(--border-medium);border-radius:18px;box-shadow:0 30px 80px #0000008c}.confirm-modal__btn--confirm{background:rgb(var(--rgb-cyan) / .16);border:1px solid rgb(var(--rgb-cyan) / .5);color:#5fe6f2;border-radius:10px}.confirm-modal__btn--confirm:hover{background:rgb(var(--rgb-cyan) / .26);filter:none;transform:none}.confirm-modal__btn--cancel{border-radius:10px}.login-container{position:fixed;inset:0;background:var(--bg-primary, #0a0e27);display:flex;align-items:center;justify-content:center;z-index:10000;overflow:hidden}.login-container:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,217,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,217,255,.03) 1px,transparent 1px);background-size:50px 50px;animation:login-grid-drift 20s linear infinite}@keyframes login-grid-drift{0%{transform:translate(0)}to{transform:translate(50px,50px)}}.login-container:after{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(157,78,221,.15) 0%,transparent 70%);top:-150px;right:-100px;pointer-events:none;animation:login-orb-float 8s ease-in-out infinite alternate}@keyframes login-orb-float{0%{transform:translate(0) scale(1)}to{transform:translate(-40px,30px) scale(1.1)}}.login-glow-orb-bottom{position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(0,217,255,.1) 0%,transparent 70%);bottom:-120px;left:-80px;pointer-events:none;animation:login-orb-float2 10s ease-in-out infinite alternate}@keyframes login-orb-float2{0%{transform:translate(0) scale(1)}to{transform:translate(30px,-20px) scale(1.15)}}.login-card{position:relative;z-index:1;background:#141b2dd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:16px;padding:2.5rem;width:100%;max-width:440px;border:1px solid rgba(0,217,255,.15);box-shadow:0 0 40px #00d9ff14,0 20px 60px #00000080,inset 0 1px #ffffff0d;transition:border-color .4s ease,box-shadow .4s ease}.login-card:hover{border-color:#00d9ff40;box-shadow:0 0 60px #00d9ff1f,0 20px 60px #00000080,inset 0 1px #ffffff0d}.login-logo{text-align:center;margin-bottom:2rem}.login-logo-icon{width:56px;height:56px;margin:0 auto 1rem;border-radius:14px;background:linear-gradient(135deg,#00d9ff26,#9d4edd26);border:1px solid rgba(0,217,255,.2);display:flex;align-items:center;justify-content:center;box-shadow:0 0 20px #00d9ff26}.login-logo-icon svg{width:28px;height:28px;color:var(--accent-cyan, #00d9ff);filter:drop-shadow(0 0 6px rgba(0,217,255,.5))}.login-logo h1{font-size:1.5rem;font-weight:700;margin:0 0 .25rem;background:linear-gradient(135deg,var(--accent-cyan, #00d9ff),var(--accent-purple, #9d4edd));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-logo p{color:var(--text-secondary, #b4b8c8);font-size:.9rem;margin:0}.login-local-badge{display:inline-block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--accent-green, #00ff88);background:#00ff881a;border:1px solid rgba(0,255,136,.3);border-radius:10px;padding:.15rem .6rem;margin-bottom:.25rem}.login-steps{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:2rem}.login-step-dot{width:8px;height:8px;border-radius:50%;background:#ffffff26;transition:all .4s ease}.login-step-dot.active{background:var(--accent-cyan, #00d9ff);box-shadow:0 0 10px #00d9ff80;width:24px;border-radius:4px}.login-step-dot.completed{background:var(--accent-green, #00ff88);box-shadow:0 0 8px #0f86}.login-step-connector{width:24px;height:2px;background:#ffffff1a;border-radius:1px;transition:background .4s ease}.login-step-connector.completed{background:var(--accent-green, #00ff88);box-shadow:0 0 4px #00ff884d}.login-error{background:#ff33661a;border:1px solid rgba(255,51,102,.25);color:var(--accent-red, #ff3366);padding:.75rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.85rem;text-align:center;animation:login-error-shake .4s ease}@keyframes login-error-shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.login-form{display:flex;flex-direction:column;gap:1.25rem}.login-field{display:flex;flex-direction:column;gap:.4rem}.login-field label{color:var(--text-secondary, #b4b8c8);font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em}.login-field select,.login-field input{background:#0a0e27b3;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:.8rem 1rem;color:var(--text-primary, #ffffff);font-size:1rem;font-family:inherit;transition:all .25s ease;-webkit-appearance:none;appearance:none}.login-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23b4b8c8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer}.login-field select:focus,.login-field input:focus{outline:none;border-color:var(--accent-cyan, #00d9ff);box-shadow:0 0 0 3px #00d9ff1a,0 0 15px #00d9ff14}.login-field select:disabled,.login-field input:disabled{opacity:.5;cursor:not-allowed}.login-field input::placeholder,.login-field select option[value=""]{color:var(--text-dimmed, #6b7280)}.login-field select option{background:var(--bg-secondary, #141b2d);color:var(--text-primary, #ffffff)}.login-remember{display:flex;align-items:center;gap:.6rem;cursor:pointer;-webkit-user-select:none;user-select:none;margin-top:-.25rem}.login-remember input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.login-remember-check{flex-shrink:0;width:18px;height:18px;border-radius:4px;border:1.5px solid rgba(255,255,255,.2);background:#0a0e2780;transition:all .25s ease;position:relative}.login-remember-check:after{content:"";position:absolute;top:2px;left:5px;width:5px;height:9px;border:solid var(--accent-cyan, #00d9ff);border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .2s ease}.login-remember input:checked+.login-remember-check{border-color:var(--accent-cyan, #00d9ff);background:#00d9ff1a;box-shadow:0 0 8px #00d9ff33}.login-remember input:checked+.login-remember-check:after{transform:rotate(45deg) scale(1)}.login-remember>span:last-child{color:var(--text-secondary, #b4b8c8);font-size:.85rem}.login-remember:hover .login-remember-check{border-color:#ffffff59}.login-remember:hover input:checked+.login-remember-check{border-color:var(--accent-cyan, #00d9ff)}.login-btn{position:relative;border:none;border-radius:10px;padding:.85rem 1.5rem;font-size:1rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .3s ease;margin-top:.5rem;overflow:hidden}.login-btn--primary{background:linear-gradient(135deg,var(--accent-cyan, #00d9ff),#0099cc);color:#000;text-shadow:0 1px 0 rgba(255,255,255,.15)}.login-btn--primary:hover:not(:disabled){box-shadow:0 0 25px #00d9ff66,0 4px 15px #0000004d;transform:translateY(-1px)}.login-btn--primary:active:not(:disabled){transform:translateY(0)}.login-btn--primary:disabled{opacity:.4;cursor:not-allowed;transform:none}.login-btn--back{background:transparent;color:var(--text-secondary, #b4b8c8);border:1px solid rgba(255,255,255,.1);font-weight:500}.login-btn--back:hover{background:#ffffff0d;border-color:#fff3;color:var(--text-primary, #fff)}.login-btn .login-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(0,0,0,.2);border-top-color:#000;border-radius:50%;animation:login-spin .6s linear infinite;margin-right:.5rem;vertical-align:middle}@keyframes login-spin{to{transform:rotate(360deg)}}.login-institution-badge{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#00ff880f;border:1px solid rgba(0,255,136,.2);border-radius:10px;margin-bottom:1.5rem}.login-institution-badge svg{width:18px;height:18px;color:var(--accent-green, #00ff88);flex-shrink:0;filter:drop-shadow(0 0 4px rgba(0,255,136,.5))}.login-institution-badge span{color:var(--text-primary, #fff);font-size:.9rem;font-weight:500}.login-role-choice{display:flex;flex-direction:column;gap:1rem}.login-role-btn{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff08;cursor:pointer;transition:all .3s ease;text-align:left;font-family:inherit}.login-role-btn:hover{transform:translateY(-2px)}.login-role-btn--operator{border-color:#00d9ff40}.login-role-btn--operator:hover{background:#00d9ff14;border-color:#00d9ff80;box-shadow:0 0 20px #00d9ff26,0 4px 12px #0003}.login-role-btn--admin{border-color:#9d4edd40}.login-role-btn--admin:hover{background:#9d4edd14;border-color:#9d4edd80;box-shadow:0 0 20px #9d4edd26,0 4px 12px #0003}.login-role-btn-icon{width:40px;height:40px;flex-shrink:0;border-radius:10px;display:flex;align-items:center;justify-content:center}.login-role-btn--operator .login-role-btn-icon{color:var(--accent-cyan, #00d9ff);background:#00d9ff1a;filter:drop-shadow(0 0 6px rgba(0,217,255,.3))}.login-role-btn--admin .login-role-btn-icon{color:var(--accent-purple, #9d4edd);background:#9d4edd1a;filter:drop-shadow(0 0 6px rgba(157,78,221,.3))}.login-role-btn-icon svg{width:22px;height:22px}.login-role-btn-text{display:flex;flex-direction:column;gap:.2rem}.login-role-btn-text strong{color:var(--text-primary, #ffffff);font-size:.95rem}.login-role-btn-text span{color:var(--text-secondary, #b4b8c8);font-size:.8rem}.login-footer{margin-top:2rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.06);text-align:center}.login-footer p{color:var(--text-dimmed, #6b7280);font-size:.8rem;margin:0;line-height:1.5}.login-step-enter{animation:login-step-in .35s ease-out}@keyframes login-step-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@media(max-width:500px){.login-card{margin:1rem;padding:1.75rem}.login-logo h1{font-size:1.3rem}}.settings-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.settings-modal{background:var(--bg-card, #1a1f3a);border-radius:12px;width:90%;max-width:700px;max-height:90vh;display:flex;flex-direction:column;border:2px solid var(--accent-cyan, #00d9ff);box-shadow:0 8px 32px #00d9ff4d;animation:modalSlideIn .2s ease-out;position:relative}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.settings-header{display:flex;align-items:center;gap:.75rem;padding:1.5rem;border-bottom:1px solid rgba(0,217,255,.2)}.settings-header h2{margin:0;flex:1;color:var(--text-primary, #ffffff);font-size:1.5rem;font-weight:600}.settings-close{background:none;border:none;color:var(--text-secondary, #a0a0b8);font-size:2rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.settings-close:hover{background:#ffffff1a;color:var(--text-primary, #ffffff)}.settings-error{margin:1rem 1.5rem;padding:.75rem 1rem;background:#ff64641a;border:1px solid rgba(255,100,100,.3);border-radius:6px;color:#ff6464;font-size:.875rem}.settings-success{margin:1rem 1.5rem;padding:.75rem 1rem;background:#64ff641a;border:1px solid rgba(100,255,100,.3);border-radius:6px;color:#64ff64;font-size:.875rem}.settings-loading{padding:2rem;text-align:center;color:var(--text-secondary, #a0a0b8)}.settings-content{flex:1;overflow-y:auto;padding:1.5rem}.settings-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(0,217,255,.1)}.settings-section:last-child{border-bottom:none}.settings-section h3{margin:0 0 1rem;color:var(--text-primary, #ffffff);font-size:1.125rem;font-weight:600}.settings-subsection{margin:.75rem 0 .75rem .5rem;padding-left:.75rem;border-left:2px solid rgba(0,217,255,.15)}.settings-subsection h4{margin:0 0 .5rem;color:var(--text-secondary, #b4b8c8);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.settings-field{margin-bottom:1rem}.settings-field label{display:block;margin-bottom:.5rem;color:var(--text-secondary, #a0a0b8);font-size:.9rem}.settings-field input[type=text],.settings-field input[type=number],.settings-field input[type=time],.settings-field select{width:100%;padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(0,217,255,.3);border-radius:6px;color:var(--text-primary, #ffffff);font-size:1rem;transition:all .2s}.settings-field input[type=text]:focus,.settings-field input[type=number]:focus,.settings-field input[type=time]:focus,.settings-field select:focus{outline:none;border-color:var(--accent-cyan, #00d9ff);background:#ffffff14;box-shadow:0 0 0 3px #00d9ff1a}.settings-field input[type=text]::placeholder{color:var(--text-secondary, #a0a0b8)}.settings-range-label{display:flex;flex-direction:column;gap:.4rem}.settings-range{width:100%;height:6px;-webkit-appearance:none;appearance:none;background:#ffffff1a;border-radius:3px;outline:none;cursor:pointer;accent-color:var(--accent-cyan, #00d9ff)}.settings-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--accent-cyan, #00d9ff);cursor:pointer}.settings-field input[type=checkbox]{width:18px;height:18px;margin-right:.5rem;cursor:pointer;accent-color:var(--accent-cyan, #00d9ff)}.settings-field label{display:flex;align-items:center;cursor:pointer}.settings-help{margin-top:.5rem;color:var(--text-secondary, #a0a0b8);font-size:.85rem;font-style:italic}.settings-muted{color:var(--text-secondary, #a0a0b8);font-size:.8rem;font-weight:400}.settings-radio{display:flex;align-items:center;gap:.5rem;cursor:pointer;margin-bottom:.25rem}.settings-radio input[type=radio]{accent-color:var(--accent-cyan, #00d9ff);width:18px;height:18px}.settings-radio span{font-weight:500;color:var(--text-primary, #ffffff)}.settings-grade-picker{margin-top:.75rem;padding:.75rem 1rem;background:#ffffff08;border:1px solid rgba(0,217,255,.15);border-radius:8px}.settings-grade-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem .75rem}.settings-grade-option{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--text-primary, #ffffff);cursor:pointer;padding:.25rem 0;-webkit-user-select:none;user-select:none}.settings-grade-option input[type=checkbox]{accent-color:var(--accent-cyan, #00d9ff);width:14px;height:14px;cursor:pointer}.settings-warn{color:#f0ad4e;font-style:normal}.settings-admin-actions{display:flex;gap:.75rem;flex-wrap:wrap}.settings-actions{margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(0,217,255,.2)}.settings-btn{padding:.75rem 1.5rem;border-radius:6px;font-size:.95rem;cursor:pointer;transition:all .2s;font-weight:500;border:none}.settings-btn-primary{background:var(--accent-cyan, #00d9ff);color:#000;width:100%}.settings-btn-primary:hover:not(:disabled){background:var(--accent-purple, #b347d9);transform:translateY(-2px);box-shadow:0 4px 12px #00d9ff4d}.settings-btn-primary:disabled{opacity:.5;cursor:not-allowed}.settings-btn-secondary{background:#00d9ff1a;color:var(--accent-cyan, #00d9ff);border:1px solid rgba(0,217,255,.3)}.settings-btn-secondary:hover:not(:disabled){background:#00d9ff33;border-color:var(--accent-cyan, #00d9ff)}.settings-btn-danger{background:#ff64641a;color:#ff6464;border:1px solid rgba(255,100,100,.3)}.settings-btn-danger:hover:not(:disabled){background:#ff646433;border-color:#ff6464}.settings-btn:disabled{opacity:.5;cursor:not-allowed}.settings-add-time-modal{position:absolute;inset:0;background:var(--bg-card, #1a1f3a);border-radius:12px;display:flex;flex-direction:column;z-index:10}.settings-add-time-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid rgba(0,217,255,.2)}.settings-add-time-header h3{margin:0;color:var(--text-primary, #ffffff);font-size:1.25rem;font-weight:600}.settings-user-search{flex:1;overflow-y:auto;padding:1.5rem}.settings-search-input-wrapper{margin-bottom:1rem}.settings-search-input{width:100%;padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(0,217,255,.3);border-radius:6px;color:var(--text-primary, #ffffff);font-size:1rem;transition:all .2s}.settings-search-input:focus{outline:none;border-color:var(--accent-cyan, #00d9ff);background:#ffffff14;box-shadow:0 0 0 3px #00d9ff1a}.settings-search-input::placeholder{color:var(--text-secondary, #a0a0b8)}.settings-loading-users{margin-top:.5rem;color:var(--text-secondary, #a0a0b8);font-size:.875rem}.settings-user-table-wrap{flex:1;overflow-y:auto;max-height:400px}.settings-user-table{width:100%;border-collapse:collapse;font-size:.9rem}.settings-user-table thead{position:sticky;top:0;z-index:1}.settings-user-th{padding:.6rem .75rem;text-align:left;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary, #a0a0b8);background:var(--bg-card, #1a1f3a);border-bottom:1px solid rgba(0,217,255,.2);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color .2s}.settings-user-th:hover,.settings-user-th.active{color:var(--accent-cyan, #00d9ff)}.settings-user-th__arrow{font-size:.7rem;opacity:.8}.settings-user-row{cursor:pointer;transition:background .15s;border-bottom:1px solid rgba(255,255,255,.04)}.settings-user-row:hover{background:#00d9ff1a}.settings-user-row.selected{background:#00d9ff33;box-shadow:inset 3px 0 0 var(--accent-cyan, #00d9ff)}.settings-user-row.selected:hover{background:#00d9ff40}.settings-user-td{padding:.6rem .75rem;color:var(--text-primary, #ffffff);vertical-align:middle}.settings-user-td--name{font-weight:500;min-width:120px}.settings-user-td--number{white-space:nowrap;color:var(--text-secondary, #a0a0b8);min-width:50px}.settings-user-td--grade{white-space:nowrap;color:var(--text-secondary, #a0a0b8);min-width:55px}.settings-user-td--balance{white-space:nowrap;color:var(--accent-cyan, #00d9ff);font-weight:500;text-align:right;min-width:65px}.settings-user-nickname-hint{font-size:.8rem;color:var(--text-secondary, #a0a0b8);font-style:italic}.settings-user-empty{padding:2rem 1rem;text-align:center;color:var(--text-secondary, #a0a0b8);font-size:.9rem}.settings-user-actions{flex:1;overflow-y:auto;padding:1.5rem}.settings-selected-user-info{margin-bottom:1.5rem;padding:1rem;background:#00d9ff1a;border:1px solid rgba(0,217,255,.3);border-radius:6px}.settings-selected-user-name,.settings-selected-user-balance{margin:.5rem 0;color:var(--text-primary, #ffffff);font-size:1rem}.settings-selected-user-name:first-child,.settings-selected-user-balance:first-child{margin-top:0}.settings-selected-user-name:last-child,.settings-selected-user-balance:last-child{margin-bottom:0}.settings-selected-user-name strong,.settings-selected-user-balance strong{color:var(--accent-cyan, #00d9ff);font-weight:600}.settings-user-actions p{margin-bottom:1rem;color:var(--text-primary, #ffffff);font-size:1rem}.settings-user-actions strong{color:var(--accent-cyan, #00d9ff)}.settings-back-btn{background:none;border:none;color:var(--accent-cyan, #00d9ff);cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.settings-back-btn:hover{background:#00d9ff1a}.settings-menu{display:flex;flex-direction:column;gap:.5rem}.settings-menu-btn{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem 1.25rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;cursor:pointer;transition:all .2s ease;text-align:left;color:var(--text-primary, #ffffff)}.settings-menu-btn:hover{background:#00d9ff14;border-color:#00d9ff4d;transform:translate(4px)}.settings-menu-btn:active{transform:translate(2px)}.settings-menu-btn__icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#00d9ff1a;border-radius:10px;color:var(--accent-cyan, #00d9ff)}.settings-menu-btn__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.settings-menu-btn__title{font-size:1rem;font-weight:600;color:var(--text-primary, #ffffff)}.settings-menu-btn__desc{font-size:.8rem;color:var(--text-secondary, #a0a0b8);line-height:1.3}.settings-menu-btn__arrow{flex-shrink:0;color:var(--text-secondary, #a0a0b8);opacity:.5;transition:all .2s}.settings-menu-btn:hover .settings-menu-btn__arrow{opacity:1;color:var(--accent-cyan, #00d9ff);transform:translate(2px)}.settings-content::-webkit-scrollbar,.settings-user-table-wrap::-webkit-scrollbar,.settings-user-actions::-webkit-scrollbar{width:8px}.settings-content::-webkit-scrollbar-track,.settings-user-table-wrap::-webkit-scrollbar-track,.settings-user-actions::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.settings-content::-webkit-scrollbar-thumb,.settings-user-table-wrap::-webkit-scrollbar-thumb,.settings-user-actions::-webkit-scrollbar-thumb{background:#00d9ff4d;border-radius:4px}.settings-content::-webkit-scrollbar-thumb:hover,.settings-user-table-wrap::-webkit-scrollbar-thumb:hover,.settings-user-actions::-webkit-scrollbar-thumb:hover{background:#00d9ff80}.gi-filters{display:flex;flex-direction:column;gap:.5rem}.gi-filter-row{display:flex;gap:.4rem;flex-wrap:wrap}.gi-filter-btn{padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--text-secondary, #b4b8c8);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.gi-filter-btn:hover{background:#00d9ff1a;border-color:#00d9ff4d}.gi-filter-btn--active{background:#00d9ff26;border-color:var(--accent-cyan, #00d9ff);color:var(--accent-cyan, #00d9ff)}.gi-list-title{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.gi-tag{font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:10px;text-transform:uppercase;letter-spacing:.5px}.gi-tag--free{background:#00ff8826;color:#0f8}.gi-tag--inst{background:#00d9ff26;color:#00d9ff}.gi-game-list{list-style:none;padding:0;margin:0}.gi-game-item{display:flex;align-items:center;gap:.5rem;padding:.45rem .5rem;border-radius:6px;transition:background .15s;flex-wrap:wrap}.gi-game-item:hover{background:#ffffff0a}.gi-game-rank{color:var(--text-secondary, #a0a0b8);font-size:.85rem;min-width:1.5rem;text-align:right;flex-shrink:0}.gi-game-name{color:var(--text-primary, #ffffff);font-weight:500;font-size:.95rem}.gi-game-pegi{font-size:.7rem;font-weight:600;padding:.1rem .4rem;border-radius:4px;background:#ffffff14;color:var(--text-secondary, #b4b8c8);flex-shrink:0}.gi-badge{font-size:.65rem;font-weight:600;padding:.1rem .4rem;border-radius:4px;flex-shrink:0}.gi-badge--inst{background:#00d9ff26;color:#00d9ff}.gi-badge--new{background:#00ff8826;color:#0f8}.gi-platform-tag{font-size:.65rem;padding:.1rem .35rem;border-radius:4px;background:#9d4edd26;color:#c084fc;font-weight:500;flex-shrink:0}.gi-note{font-size:.8rem;color:var(--text-secondary, #a0a0b8);font-style:italic}.gi-warnings{list-style:none;padding:0;margin:0}.gi-warnings li{padding:.35rem 0;color:#f0ad4e;font-size:.9rem}.gi-warnings li:before{content:"⚠ "}.settings-overlay{background:#04070e9e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.settings-modal{background:#101628f7;border-color:var(--border-medium);border-radius:22px}.settings-modal--split{max-width:940px;width:94%}.settings-split{flex:1;min-height:0;display:flex;align-items:stretch}.settings-nav{flex:0 0 224px;min-width:0;overflow-y:auto;padding:.85rem .75rem 1rem;border-right:1px solid rgba(0,217,255,.14);display:flex;flex-direction:column;gap:2px}.settings-nav-search{margin-bottom:.6rem}.settings-nav-search input{width:100%;box-sizing:border-box;padding:.5rem .7rem;background:#ffffff0d;border:1px solid rgba(0,217,255,.28);border-radius:8px;color:var(--text-primary, #fff);font-size:.9rem}.settings-nav-group-label{margin:.7rem .3rem .25rem;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary, #8794AE);font-weight:700}.settings-nav-group-label:first-child{margin-top:.1rem}.settings-nav-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.55rem .65rem;border:none;background:transparent;border-radius:9px;color:var(--text-secondary, #a0a0b8);cursor:pointer;text-align:left;font-size:.92rem;transition:background .15s,color .15s}.settings-nav-item:hover{background:#ffffff0d;color:var(--text-primary, #fff)}.settings-nav-item.active{background:#00d9ff24;color:#6beaf4;font-weight:600}.settings-nav-item__icon{flex:0 0 auto;display:inline-flex}.settings-nav-item__title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-nav-item__dot{flex:0 0 auto;width:8px;height:8px;border-radius:999px;background:var(--accent-cyan, #00d9ff);box-shadow:0 0 6px #00d9ff99}.settings-nav-item__ext{flex:0 0 auto;opacity:.45}.settings-search-results{display:flex;flex-direction:column;gap:3px}.settings-search-hit{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.5rem .65rem;border:none;background:transparent;border-radius:9px;cursor:pointer;text-align:left}.settings-search-hit:hover{background:#ffffff0d}.settings-search-hit__label{color:var(--text-primary, #fff);font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-search-hit__badge{flex:0 0 auto;font-size:.68rem;padding:1px 7px;border-radius:999px;background:#00d9ff1f;border:1px solid rgba(0,217,255,.3);color:#6beaf4;white-space:nowrap}.settings-search-empty{padding:.75rem .65rem;color:var(--text-secondary, #8794AE);font-size:.85rem}.settings-pane{flex:1;min-width:0}.settings-pane-title{margin:0 0 1.25rem;color:var(--text-primary, #fff);font-size:1.35rem;font-weight:700;background:linear-gradient(90deg,#6beaf4,#b79cff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}@media(max-width:720px){.settings-modal--split{max-width:100%;width:96%}.settings-split{flex-direction:column}.settings-nav{flex:0 0 auto;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;border-right:none;border-bottom:1px solid rgba(0,217,255,.14);gap:6px;padding:.6rem .75rem}.settings-nav-search{flex:0 0 100%;margin-bottom:.35rem;order:-1}.settings-nav-group-label{display:none}.settings-nav-item{flex:0 0 auto;width:auto;white-space:nowrap;border:1px solid rgba(255,255,255,.1);padding:.4rem .7rem}.settings-nav-item__title{white-space:nowrap}.settings-search-results,.settings-search-empty{flex:0 0 100%}}.settings-field.is-locked>label{opacity:.55;cursor:not-allowed}.settings-lock{display:inline-flex;align-items:center;gap:6px;margin-left:.5rem;padding:2px 8px;border-radius:999px;vertical-align:middle;border:1px solid rgba(217,119,6,.6);background:#d977061f;color:#fbbf24;font-size:.7rem;font-weight:700;letter-spacing:.02em;cursor:help;-webkit-user-select:none;user-select:none}.settings-lock-reason{margin-top:.35rem;padding:.5rem .7rem;border-radius:8px;border:1px solid rgba(217,119,6,.35);background:#d9770614;color:var(--text-secondary, #a0a0b8);font-size:.8rem;line-height:1.45}.settings-lock-reason strong{color:#fbbf24;font-weight:700}.gc-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.gc-panel{background:var(--bg-card, #1a2238);border:1px solid rgba(0,217,255,.2);border-radius:12px;padding:1.5rem;width:90%;max-width:500px;max-height:80vh;overflow-y:auto;animation:gcSlideIn .2s ease-out}@keyframes gcSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.gc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.gc-title{font-size:1.3rem;font-weight:700;color:var(--text-primary, #fff)}.gc-close{background:none;border:none;color:var(--text-secondary, #b4b8c8);font-size:1.5rem;cursor:pointer;padding:.25rem .5rem;line-height:1}.gc-close:hover{color:var(--text-primary, #fff)}.gc-description{font-size:.85rem;color:var(--text-secondary, #b4b8c8);margin-bottom:1rem}.gc-loading,.gc-empty{text-align:center;color:var(--text-secondary, #b4b8c8);padding:2rem 0;font-size:.9rem}.gc-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.gc-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.08);transition:all .2s}.gc-item:hover{border-color:#00d9ff4d}.gc-item--inactive{opacity:.5}.gc-item-info{display:flex;align-items:center;gap:.75rem;min-width:0}.gc-item-name{font-weight:600;color:var(--text-primary, #fff);font-size:.95rem}.gc-item-category{font-size:.7rem;color:var(--accent-purple, #9d4edd);background:#9d4edd26;padding:.15rem .5rem;border-radius:4px;font-weight:600;text-transform:uppercase;flex-shrink:0}.gc-item-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.gc-toggle{font-size:.75rem;padding:.25rem .6rem;border-radius:4px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;color:var(--text-secondary, #b4b8c8);cursor:pointer;font-weight:600;transition:all .2s}.gc-toggle--active{border-color:#0f86;color:var(--accent-green, #00ff88);background:#00ff881a}.gc-delete{background:none;border:none;color:var(--accent-red, #ff3366);cursor:pointer;font-size:1.2rem;padding:.15rem .4rem;opacity:.5;transition:opacity .2s;line-height:1}.gc-delete:hover{opacity:1}.gc-add-form{display:flex;flex-direction:column;gap:.5rem}.gc-input{width:100%;padding:.6rem .75rem;background:#ffffff0d;border:1px solid rgba(0,217,255,.3);border-radius:6px;color:var(--text-primary, #fff);font-size:.9rem;font-family:inherit}.gc-input:focus{outline:none;border-color:var(--accent-cyan, #00d9ff);box-shadow:0 0 8px #00d9ff33}.gc-select{width:100%;padding:.6rem .75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:6px;color:var(--text-primary, #fff);font-size:.9rem;font-family:inherit}.gc-select option{background:#1a2238}.gc-add-actions{display:flex;gap:.5rem}.gc-btn{padding:.6rem 1rem;border-radius:6px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s;font-family:inherit;border:1px solid transparent}.gc-btn--add{width:100%;background:#00d9ff1a;border-color:#00d9ff4d;color:var(--accent-cyan, #00d9ff)}.gc-btn--add:hover{background:#00d9ff33}.gc-btn--save{flex:1;background:#0f83;border-color:#0f86;color:var(--accent-green, #00ff88)}.gc-btn--save:hover{background:#00ff884d}.gc-btn--cancel{flex:1;background:#ffffff0d;border-color:#ffffff26;color:var(--text-secondary, #b4b8c8)}.gc-btn--cancel:hover{background:#ffffff1a}.gc-expanded{background:#00d9ff0a;border:1px solid rgba(0,217,255,.12);border-radius:0 0 8px 8px;padding:1rem 1.25rem;margin-top:-1px;margin-bottom:.5rem}.gc-label{display:block;font-size:.8rem;opacity:.7;margin-bottom:.25rem}.gc-platform-badge{margin-left:.4rem;font-size:.65rem;color:var(--accent-cyan, #00d9ff);background:#00d9ff1f;padding:.1rem .4rem;border-radius:3px;font-weight:600;text-transform:uppercase;vertical-align:middle}.gc-concurrent-badge{margin-left:.3rem;font-size:.65rem;color:var(--accent-orange, #ff9500);background:#ff95001f;padding:.1rem .4rem;border-radius:3px;font-weight:600;vertical-align:middle}.gc-account-pool{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:.75rem;margin-bottom:.75rem}.gc-pool-item{display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem;background:#ffffff0a;border-radius:4px;margin-bottom:.25rem}.gc-pool-name{font-size:.85rem;font-family:monospace;color:var(--text-primary, #fff);flex:1}.gc-pool-in-use{font-size:.7rem;color:var(--accent-orange, #ff9500);background:#ff950026;padding:.1rem .4rem;border-radius:3px;font-weight:600}.gc-pool-delete{background:none;border:none;color:var(--accent-red, #ff3366);cursor:pointer;font-size:1rem;padding:0 .25rem;opacity:.5;transition:opacity .2s;line-height:1}.gc-pool-delete:hover{opacity:1}.go-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10001;display:flex;align-items:center;justify-content:center}.go-panel{background:#0f1535;border:1px solid #00d9ff40;border-radius:16px;width:95vw;max-width:1200px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 0 40px #00d9ff15}.go-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #1a2d50}.go-header h2{margin:0;font-size:20px;background:linear-gradient(135deg,#00d9ff,#9d4edd);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.go-header-actions{display:flex;align-items:center;gap:12px}.go-view-toggle{display:flex;background:#0a0e27;border-radius:8px;overflow:hidden;border:1px solid #1a2d50}.go-view-btn{padding:8px 16px;background:transparent;border:none;color:#b4b8c8;font-size:13px;cursor:pointer;transition:all .2s}.go-view-btn.active{background:#00d9ff20;color:#00d9ff}.go-view-btn:hover:not(.active){background:#ffffff08}.go-close-btn{padding:8px 20px;background:transparent;border:1px solid #1a2d50;border-radius:8px;color:#b4b8c8;font-size:13px;cursor:pointer}.go-close-btn:hover{border-color:#f36;color:#f36}.go-content{flex:1;overflow-y:auto;padding:20px 24px}.go-loading,.go-empty{text-align:center;color:#b4b8c8;padding:40px;font-size:15px}.go-table-wrap{overflow-x:auto}.go-table{width:100%;border-collapse:collapse;font-size:13px}.go-table th{text-align:left;padding:10px 12px;color:#b4b8c8;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #1a2d50;white-space:nowrap}.go-th-station{text-align:center!important;min-width:60px}.go-table td{padding:10px 12px;border-bottom:1px solid #0d1230;color:#e0e4f0}.go-table tr:hover td{background:#ffffff05}.go-td-game{font-weight:500;white-space:nowrap}.go-td-platform{white-space:nowrap}.go-platform-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;background:#00d9ff15;color:#00d9ff}.go-td-login{white-space:nowrap}.go-login-select{background:#0a0e27;border:1px solid #1a2d50;border-radius:6px;color:#e0e4f0;padding:4px 8px;font-size:12px;cursor:pointer}.go-login-select:focus{border-color:#00d9ff;outline:none}.go-td-installed{text-align:center;font-size:16px}.go-installed{color:#0f8}.go-not-installed{color:#3a3f5a}.go-station-list{display:flex;flex-direction:column;gap:16px}.go-station-block{background:#0a0e27;border:1px solid #1a2d50;border-radius:10px;overflow:hidden}.go-station-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#0d1230;border-bottom:1px solid #1a2d50}.go-station-name{font-weight:600;font-size:15px;color:#00d9ff}.go-station-count{font-size:12px;color:#b4b8c8}.go-station-games{display:flex;flex-direction:column}.go-station-game{display:flex;align-items:center;gap:10px;padding:8px 18px;border-bottom:1px solid #0d123080;font-size:13px}.go-station-game:last-child{border-bottom:none}.go-station-game.installed{color:#e0e4f0}.go-station-game.missing{color:#3a3f5a}.go-dot{font-size:14px;width:16px;text-align:center}.go-station-game-name{flex:1}.go-station-game-platform{font-size:11px;color:#b4b8c8}.ssm-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10001;display:flex;align-items:center;justify-content:center}.ssm-panel{background:#0f1535;border:1px solid #00d9ff40;border-radius:16px;width:95vw;max-width:1400px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 0 40px #00d9ff15}.ssm-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #1a2d50}.ssm-header h2{margin:0;font-size:20px;background:linear-gradient(135deg,#00d9ff,#9d4edd);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.ssm-close-btn{padding:8px 20px;background:transparent;border:1px solid #1a2d50;border-radius:8px;color:#b4b8c8;font-size:13px;cursor:pointer}.ssm-close-btn:hover{border-color:#f36;color:#f36}.ssm-content{flex:1;overflow:auto;padding:20px 24px}.ssm-loading,.ssm-empty{text-align:center;color:#b4b8c8;padding:40px;font-size:15px}.ssm-table-wrap{overflow-x:auto}.ssm-table{width:100%;border-collapse:collapse;font-size:13px}.ssm-table th{padding:8px 6px;color:#b4b8c8;font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid #1a2d50;white-space:nowrap;text-align:center}.ssm-th-pc,.ssm-th-status{text-align:left!important}.ssm-th-group{border-bottom:2px solid;font-size:11px}.ssm-th-hardening{border-color:#00d9ff;color:#00d9ff}.ssm-th-cleanup{border-color:#9d4edd;color:#9d4edd}.ssm-th-feature{min-width:48px}.ssm-table td{padding:8px 6px;border-bottom:1px solid #0d1230}.ssm-table tr:hover td{background:#ffffff05}.ssm-td-pc{white-space:nowrap}.ssm-pc-name{font-weight:500;color:#e0e4f0}.ssm-pc-version{margin-left:8px;font-size:10px;color:#6b7280}.ssm-td-status{width:40px}.ssm-status-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.ssm-status-dot.online{background:#0f8;box-shadow:0 0 6px #00ff8880}.ssm-status-dot.offline{background:#3a3f5a}.ssm-td-toggle{text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.ssm-td-toggle:hover{background:#ffffff0a}.ssm-td-toggle.override{text-decoration:underline;text-decoration-color:#ff950050}.ssm-toggle{font-size:16px;transition:opacity .2s}.ssm-toggle.on{color:#0f8}.ssm-toggle.off{color:#3a3f5a}.ssm-toggle.saving{opacity:.4}.ssm-legend{display:flex;gap:20px;margin-top:16px;font-size:12px;color:#6b7280;align-items:center}.ssm-legend .ssm-toggle{font-size:12px;margin-right:4px}.ssm-legend-override{font-style:italic;color:#ff950080}.ssm-legend-version{margin-left:auto;color:#00d9ff}.ssm-th-version{text-align:left!important;min-width:140px}.ssm-td-version{white-space:nowrap}.ssm-version{font-size:12px;font-family:monospace}.ssm-version.current{color:#0f8}.ssm-version.outdated{color:#ff9500}.ssm-version.none{color:#3a3f5a}.ssm-update-btn{margin-left:8px;padding:2px 10px;font-size:11px;background:#ff950020;border:1px solid #ff9500;border-radius:4px;color:#ff9500;cursor:pointer;transition:all .15s}.ssm-update-btn:hover{background:#ff950040}.ssm-updating{margin-left:8px;font-size:11px;color:#00d9ff;animation:ssm-pulse 1.5s ease-in-out infinite}@keyframes ssm-pulse{0%,to{opacity:.5}50%{opacity:1}}.ssm-up-to-date{margin-left:8px;font-size:10px;color:#00ff8880}.ssm-update-all-btn{padding:8px 16px;background:#ff950020;border:1px solid #ff9500;border-radius:8px;color:#ff9500;font-size:13px;cursor:pointer;transition:all .15s}.ssm-update-all-btn:hover{background:#ff950040}.mss__overlay{position:fixed;inset:0;z-index:10001;background:#0000008c;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mss{background:var(--bg-card, #1a1f3c);border:1px solid rgba(0,217,255,.2);border-radius:14px;padding:0;width:460px;max-width:95vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 0 60px #00000080,0 0 20px #00d9ff1a;overflow:hidden}.mss__header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(0,217,255,.1)}.mss__header h3{margin:0;font-size:1.1rem;color:var(--text-primary, #e5e7eb)}.mss__close{background:transparent;border:none;color:var(--text-secondary, #b4b8c8);font-size:1.2rem;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .15s}.mss__close:hover{color:var(--text-primary, #e5e7eb);background:#ffffff14}.mss__msg{padding:8px 20px;font-size:.85rem;font-weight:500}.mss__msg--error{background:#ff33661f;color:var(--accent-red, #ff3366);border-bottom:1px solid rgba(255,51,102,.2)}.mss__msg--success{background:#00ff881a;color:var(--accent-green, #00ff88);border-bottom:1px solid rgba(0,255,136,.2)}.mss__content{padding:16px 20px;overflow-y:auto;flex:1}.mss__list{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.mss__item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#ffffff0a;border-radius:8px;border:1px solid rgba(255,255,255,.06);transition:border-color .15s}.mss__item:hover{border-color:#00d9ff33}.mss__item-icon{font-size:1.2rem;flex-shrink:0}.mss__item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.mss__item-name{font-weight:600;color:var(--text-primary, #e5e7eb);font-size:.9rem}.mss__item-meta{font-size:.75rem;color:var(--text-secondary, #b4b8c8)}.mss__item-actions{display:flex;gap:4px;flex-shrink:0}.mss__add-btn{width:100%;margin-top:4px}.mss__empty{text-align:center;padding:24px 0;color:var(--text-secondary, #b4b8c8);font-size:.9rem}.mss__form{padding:16px 20px}.mss__form-title{margin:0 0 14px;font-size:1rem;color:var(--text-primary, #e5e7eb)}.mss__field{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.mss__field span{font-size:.8rem;font-weight:600;color:var(--text-secondary, #b4b8c8);text-transform:uppercase;letter-spacing:.3px}.mss__field input,.mss__field select{padding:8px 12px;background:#ffffff0f;border:1px solid rgba(0,217,255,.2);border-radius:6px;color:var(--text-primary, #e5e7eb);font-size:.9rem;font-family:inherit}.mss__field input:focus,.mss__field select:focus{outline:none;border-color:var(--accent-cyan, #00d9ff);box-shadow:0 0 6px #00d9ff33}.mss__field select option{background:#1a1f3c;color:#e5e7eb}.mss__field--checkbox span{display:flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0;font-size:.9rem;color:var(--text-primary, #e5e7eb);cursor:pointer}.mss__field--checkbox input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--accent-cyan, #00d9ff);cursor:pointer}.mss__hint{font-size:.75rem;color:var(--text-secondary, #b4b8c8);opacity:.75;line-height:1.35;text-transform:none;letter-spacing:0;font-weight:400}.mss__form-actions{display:flex;gap:8px;margin-top:16px}@media(max-width:520px){.mss{width:100%;max-height:90vh;border-radius:14px 14px 0 0;margin-top:auto}}.sm-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sm-modal{background:var(--bg-card, #1a1f3a);border-radius:12px;width:95%;max-width:700px;max-height:85vh;display:flex;flex-direction:column;border:2px solid var(--accent-cyan, #00d9ff);box-shadow:0 8px 32px #00d9ff4d}.sm-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(0,217,255,.15)}.sm-header h2{margin:0;font-size:1.25rem;color:var(--text-primary, #ffffff)}.sm-close{background:none;border:none;color:var(--text-secondary, #a0a0b8);font-size:1.5rem;cursor:pointer;padding:.25rem;line-height:1}.sm-close:hover{color:var(--text-primary, #ffffff)}.sm-content{flex:1;overflow-y:auto;padding:1.25rem 1.5rem}.sm-summary{display:flex;gap:1.5rem;padding:.75rem 1rem;background:#00d9ff0f;border-radius:8px;margin-bottom:1.25rem;font-size:.9rem;color:var(--text-secondary, #a0a0b8)}.sm-summary strong{color:var(--text-primary, #ffffff)}.sm-section{margin-bottom:1.25rem;padding:1rem;border-radius:8px;border:1px solid rgba(255,255,255,.06)}.sm-section h3{margin:0 0 .25rem;font-size:.95rem;color:var(--text-primary, #ffffff)}.sm-section-help{margin:0 0 .75rem;font-size:.8rem;color:var(--text-secondary, #a0a0b8);font-style:italic}.sm-section--create{border-color:#28a7454d;background:#28a7450f}.sm-section--create h3{color:#5cb85c}.sm-section--update{border-color:#ffc1074d;background:#ffc1070f}.sm-section--update h3{color:#f0ad4e}.sm-section--orphaned{border-color:#a0a0b833;background:#a0a0b80a}.sm-section--orphaned h3{color:var(--text-secondary, #a0a0b8)}.sm-table{width:100%;border-collapse:collapse;font-size:.85rem}.sm-table th{text-align:left;padding:.4rem .6rem;color:var(--text-secondary, #a0a0b8);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid rgba(255,255,255,.08)}.sm-table td{padding:.4rem .6rem;color:var(--text-primary, #ffffff);border-bottom:1px solid rgba(255,255,255,.03);white-space:nowrap}.sm-old{color:var(--text-secondary, #a0a0b8);text-decoration:line-through}.sm-arrow{color:var(--text-secondary, #a0a0b8);text-align:center;width:2rem}.sm-new{color:var(--accent-cyan, #00d9ff);font-weight:600}.sm-orphan-list{list-style:none;padding:0;margin:0;font-size:.85rem}.sm-orphan-list li{padding:.3rem 0;color:var(--text-secondary, #a0a0b8);border-bottom:1px solid rgba(255,255,255,.03)}.sm-loading{color:var(--text-secondary, #a0a0b8);font-style:italic;text-align:center;padding:2rem 0}.sm-error{background:#dc354526;border:1px solid rgba(220,53,69,.3);color:#ff6b7a;padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem}.sm-up-to-date{text-align:center;padding:2rem 0;color:#5cb85c;font-size:1.1rem;font-weight:600}.sm-notice{color:var(--text-secondary, #a0a0b8);font-size:.8rem;font-style:italic;margin:1rem 0 0}.sm-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.06)}.sm-result{text-align:center;padding:1rem 0}.sm-result h3{color:#5cb85c;margin:0 0 1.25rem;font-size:1.15rem}.sm-result-grid{display:flex;gap:1.5rem;justify-content:center;margin-bottom:1.5rem}.sm-result-item{display:flex;flex-direction:column;align-items:center;padding:1rem 1.5rem;border-radius:8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.sm-result-count{font-size:2rem;font-weight:700;color:var(--text-primary, #ffffff)}.sm-result-label{font-size:.8rem;color:var(--text-secondary, #a0a0b8);text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem}.sm-result-item--create .sm-result-count{color:#5cb85c}.sm-result-item--update .sm-result-count{color:#f0ad4e}.sm-result-item--orphaned .sm-result-count{color:var(--text-secondary, #a0a0b8)}.um-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.um-modal{background:var(--bg-card, #1a1f3a);border-radius:12px;width:95%;max-width:1050px;max-height:92vh;display:flex;flex-direction:column;border:2px solid var(--accent-cyan, #00d9ff);box-shadow:0 8px 32px #00d9ff4d;animation:umSlideIn .2s ease-out;position:relative}@keyframes umSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.um-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(0,217,255,.2);flex-shrink:0}.um-header h2{margin:0;color:var(--text-primary, #ffffff);font-size:1.4rem;font-weight:600}.um-close{background:none;border:none;color:var(--text-secondary, #a0a0b8);font-size:2rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.um-close:hover{background:#ffffff1a;color:var(--text-primary, #ffffff)}.um-tabs{display:flex;border-bottom:1px solid rgba(0,217,255,.15);padding:0 1.5rem;flex-shrink:0}.um-tab{padding:.75rem 1.25rem;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary, #a0a0b8);font-size:.95rem;cursor:pointer;transition:all .2s;white-space:nowrap}.um-tab:hover{color:var(--text-primary, #ffffff);background:#00d9ff0d}.um-tab.active{color:var(--accent-cyan, #00d9ff);border-bottom-color:var(--accent-cyan, #00d9ff);font-weight:600}.um-content{flex:1;overflow-y:auto;padding:1.25rem 1.5rem}.um-loading{text-align:center;color:var(--text-secondary, #a0a0b8);padding:2rem}.um-actions{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.um-btn{padding:.6rem 1.25rem;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s;font-weight:500;border:none;white-space:nowrap}.um-btn:disabled{opacity:.5;cursor:not-allowed}.um-btn-primary{background:var(--accent-cyan, #00d9ff);color:#000}.um-btn-primary:hover:not(:disabled){background:#33e0ff;transform:translateY(-1px);box-shadow:0 4px 12px #00d9ff4d}.um-btn-secondary{background:#00d9ff1a;color:var(--accent-cyan, #00d9ff);border:1px solid rgba(0,217,255,.3)}.um-btn-secondary:hover:not(:disabled){background:#00d9ff33;border-color:var(--accent-cyan, #00d9ff)}.um-btn-danger{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.um-btn-danger:hover:not(:disabled){background:#ef444433;border-color:#ef4444}.um-btn-sm{padding:.3rem .6rem;font-size:.8rem;border-radius:4px;background:#00d9ff1a;color:var(--accent-cyan, #00d9ff);border:1px solid rgba(0,217,255,.25);cursor:pointer;transition:all .15s;white-space:nowrap}.um-btn-sm:hover:not(:disabled){background:#00d9ff33;border-color:var(--accent-cyan, #00d9ff)}.um-btn-sm.danger{background:#ef44441a;color:#ef4444;border-color:#ef444440}.um-btn-sm.danger:hover:not(:disabled){background:#ef444433;border-color:#ef4444}.um-btn-sm:disabled{opacity:.4;cursor:not-allowed}.um-table-wrap{overflow-x:auto;border-radius:8px;border:1px solid rgba(0,217,255,.15)}.um-table{width:100%;border-collapse:collapse;font-size:.9rem}.um-table thead{background:#00d9ff14;position:sticky;top:0;z-index:1}.um-table th{padding:.65rem .75rem;text-align:left;color:var(--text-secondary, #a0a0b8);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid rgba(0,217,255,.15)}.um-table td{padding:.6rem .75rem;color:var(--text-primary, #ffffff);border-bottom:1px solid rgba(255,255,255,.04);white-space:nowrap}.um-table tbody tr:hover{background:#00d9ff0a}.um-action-col{display:flex;gap:.4rem;justify-content:flex-end;flex-wrap:nowrap}.um-empty{text-align:center;color:var(--text-secondary, #a0a0b8);padding:2rem!important;font-style:italic}.um-badge{display:inline-block;padding:.15rem .5rem;border-radius:10px;font-size:.75rem;font-weight:600;text-transform:lowercase}.um-badge.cafe_sync,.um-badge.cafe{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.um-badge.standalone,.um-badge.skaermtid{background:#00d9ff26;color:var(--accent-cyan, #00d9ff);border:1px solid rgba(0,217,255,.3)}.um-app-badges{display:flex;gap:.35rem;flex-wrap:wrap}.um-sub-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10001}.um-sub-modal{background:var(--bg-card, #1a1f3a);border-radius:12px;padding:1.5rem;width:90%;max-width:440px;max-height:85vh;overflow-y:auto;border:2px solid var(--accent-cyan, #00d9ff);box-shadow:0 8px 32px #00d9ff4d;animation:umSlideIn .15s ease-out}.um-sub-modal.um-wide{max-width:650px}.um-sub-modal h3{margin:0 0 1rem;color:var(--text-primary, #ffffff);font-size:1.2rem;font-weight:600}.um-field{margin-bottom:.9rem}.um-field label{display:block;margin-bottom:.35rem;color:var(--text-secondary, #a0a0b8);font-size:.85rem;font-weight:500}.um-field input,.um-field select{width:100%;padding:.6rem .8rem;background:#ffffff0d;border:1px solid rgba(0,217,255,.3);border-radius:6px;color:var(--text-primary, #ffffff);font-size:.95rem;transition:all .2s;box-sizing:border-box}.um-field input:focus,.um-field select:focus{outline:none;border-color:var(--accent-cyan, #00d9ff);background:#ffffff14;box-shadow:0 0 0 3px #00d9ff1a}.um-field input::placeholder{color:var(--text-secondary, #a0a0b8);opacity:.6}.um-field input[type=file]{padding:.5rem;font-size:.85rem}.um-field input[type=file]::file-selector-button{padding:.4rem .8rem;border-radius:4px;border:1px solid rgba(0,217,255,.3);background:#00d9ff1a;color:var(--accent-cyan, #00d9ff);cursor:pointer;margin-right:.5rem;font-size:.85rem}.um-field input[type=file]::file-selector-button:hover{background:#00d9ff33}.um-modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem;flex-wrap:wrap}.um-error{padding:.6rem .9rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:.85rem;margin-bottom:.75rem}.um-info{padding:.9rem;background:#00d9ff14;border:1px solid rgba(0,217,255,.2);border-radius:6px;margin-bottom:.75rem}.um-info p{margin:.35rem 0;color:var(--text-primary, #ffffff);font-size:.9rem}.um-info strong{color:var(--accent-cyan, #00d9ff)}.um-warn{color:#f59e0b;font-size:.85rem;margin:.5rem 0}.um-help{color:var(--text-secondary, #a0a0b8);font-size:.9rem;margin:0 0 .75rem}.um-temp-password{display:block;padding:.6rem .9rem;background:#ffffff0f;border:1px solid rgba(0,217,255,.3);border-radius:6px;font-family:JetBrains Mono,Fira Code,monospace;font-size:1.1rem;color:var(--accent-cyan, #00d9ff);letter-spacing:1px;word-break:break-all;-webkit-user-select:all;user-select:all;margin-top:.25rem}.um-email-change{display:block;margin-top:.35rem;color:#f59e0b;font-size:.8rem}.um-login-code-section{padding:.5rem 0}.um-login-code-section h3{margin:0 0 .5rem;color:var(--text-primary, #ffffff);font-size:1.1rem;font-weight:600}.um-code-display{display:flex;align-items:center;gap:.75rem;margin:.75rem 0}.um-code{display:inline-block;padding:.5rem 1rem;background:#ffffff0f;border:1px solid rgba(0,217,255,.3);border-radius:6px;font-family:JetBrains Mono,Fira Code,monospace;font-size:1.2rem;color:var(--accent-cyan, #00d9ff);letter-spacing:2px;-webkit-user-select:all;user-select:all}.um-diff-summary{display:flex;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.um-diff-new,.um-diff-update,.um-diff-unchanged{padding:.3rem .7rem;border-radius:10px;font-size:.8rem;font-weight:600}.um-diff-new{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.um-diff-update{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.um-diff-unchanged{background:#94a3b81a;color:#94a3b8;border:1px solid rgba(148,163,184,.2)}.um-row-new{background:#22c55e0d!important}.um-row-update{background:#f59e0b0d!important}.um-row-unchanged{opacity:.5}.um-status-new,.um-status-update,.um-status-unchanged{padding:.15rem .4rem;border-radius:8px;font-size:.75rem;font-weight:600}.um-status-new{background:#22c55e26;color:#22c55e}.um-status-update{background:#f59e0b26;color:#f59e0b}.um-status-unchanged{background:#94a3b81a;color:#94a3b8}.um-content::-webkit-scrollbar,.um-table-wrap::-webkit-scrollbar,.um-sub-modal::-webkit-scrollbar{width:8px}.um-content::-webkit-scrollbar-track,.um-table-wrap::-webkit-scrollbar-track,.um-sub-modal::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.um-content::-webkit-scrollbar-thumb,.um-table-wrap::-webkit-scrollbar-thumb,.um-sub-modal::-webkit-scrollbar-thumb{background:#00d9ff4d;border-radius:4px}.um-content::-webkit-scrollbar-thumb:hover,.um-table-wrap::-webkit-scrollbar-thumb:hover,.um-sub-modal::-webkit-scrollbar-thumb:hover{background:#00d9ff80}@media(max-width:640px){.um-modal{width:100%;max-width:100%;max-height:100vh;border-radius:0}.um-table{font-size:.8rem}.um-table th,.um-table td{padding:.45rem .5rem}.um-tabs{overflow-x:auto;padding:0 1rem}.um-tab{font-size:.85rem;padding:.6rem .9rem}.um-action-col{flex-wrap:wrap}}.am-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.am-modal{background:var(--bg-card, #1a1f3a);border-radius:12px;width:95%;max-width:750px;max-height:85vh;display:flex;flex-direction:column;border:2px solid var(--accent-cyan, #00d9ff);box-shadow:0 8px 32px #00d9ff4d;animation:amSlideIn .2s ease-out}@keyframes amSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.am-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(0,217,255,.2);flex-shrink:0}.am-header h2{margin:0;color:var(--text-primary, #ffffff);font-size:1.3rem;font-weight:600}.am-close{background:none;border:none;color:var(--text-secondary, #a0a0b8);font-size:2rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.am-close:hover{background:#ffffff1a;color:var(--text-primary, #ffffff)}.am-content{flex:1;overflow-y:auto;padding:1.25rem 1.5rem}.am-toolbar{display:flex;gap:.5rem;margin-bottom:1rem}.am-table-wrap{overflow-x:auto}.am-table{width:100%;border-collapse:collapse;font-size:.9rem}.am-table th{text-align:left;padding:.6rem .75rem;color:var(--text-secondary, #a0a0b8);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid rgba(255,255,255,.1);white-space:nowrap}.am-table td{padding:.6rem .75rem;color:var(--text-primary, #ffffff);border-bottom:1px solid rgba(255,255,255,.04);white-space:nowrap}.am-table tr.am-self-row td{color:var(--accent-cyan, #00d9ff)}.am-self-badge{font-size:.7rem;background:#00d9ff26;color:var(--accent-cyan, #00d9ff);padding:.15rem .4rem;border-radius:4px;margin-left:.4rem;font-weight:600}.am-actions{display:flex;gap:.35rem}.am-actions button{padding:.3rem .6rem;font-size:.8rem;border-radius:4px;cursor:pointer;border:none;transition:all .15s}.am-action-edit{background:#00d9ff1a;color:var(--accent-cyan, #00d9ff)}.am-action-edit:hover{background:#00d9ff33}.am-action-reset{background:#ffc1071a;color:#f0ad4e}.am-action-reset:hover{background:#ffc10733}.am-action-delete{background:#ef44441a;color:#ef4444}.am-action-delete:hover{background:#ef444433}.am-sub-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10200}.am-sub-modal{background:var(--bg-card, #1a1f3a);border-radius:10px;padding:1.5rem;width:90%;max-width:420px;border:1px solid rgba(0,217,255,.3);box-shadow:0 4px 24px #00000080}.am-sub-modal h3{margin:0 0 1rem;color:var(--text-primary, #ffffff);font-size:1.1rem}.am-field{margin-bottom:.75rem}.am-field label{display:block;font-size:.8rem;color:var(--text-secondary, #a0a0b8);margin-bottom:.25rem}.am-field input{width:100%;padding:.5rem .75rem;background:#ffffff0f;border:1px solid rgba(0,217,255,.3);border-radius:6px;color:var(--text-primary, #ffffff);font-size:.95rem;box-sizing:border-box}.am-field input:focus{outline:none;border-color:var(--accent-cyan, #00d9ff);box-shadow:0 0 0 2px #00d9ff26}.am-sub-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.am-temp-password{background:#28a7451f;border:1px solid rgba(40,167,69,.3);border-radius:8px;padding:1rem;margin-bottom:1rem;text-align:center}.am-temp-password p{margin:0 0 .5rem;color:#5cb85c;font-weight:600;font-size:.9rem}.am-temp-password code{display:inline-block;background:#ffffff14;padding:.5rem 1.25rem;border-radius:6px;font-size:1.3rem;font-weight:700;letter-spacing:.08em;color:var(--text-primary, #ffffff);-webkit-user-select:all;user-select:all}.am-temp-password small{display:block;margin-top:.5rem;color:var(--text-secondary, #a0a0b8);font-size:.75rem}.am-loading{text-align:center;padding:2rem 0;color:var(--text-secondary, #a0a0b8);font-style:italic}.am-error{background:#dc354526;border:1px solid rgba(220,53,69,.3);color:#ff6b7a;padding:.6rem .75rem;border-radius:6px;margin-bottom:.75rem;font-size:.85rem}.am-empty{text-align:center;padding:2rem 0;color:var(--text-secondary, #a0a0b8)}.am-confirm-text{color:var(--text-primary, #ffffff);margin:0 0 .5rem;font-size:.95rem}.am-confirm-warn{color:var(--text-secondary, #a0a0b8);font-size:.8rem;margin:0 0 1rem}.lc{position:relative;width:100%;height:100%;min-height:300px;overflow:visible;padding:8px}.lc--editable{cursor:crosshair}.lc__grid-lines{position:absolute;inset:0;pointer-events:none;z-index:0}.lc__tile{z-index:1;transition:opacity .15s ease;overflow:visible;border-radius:10px;container-type:size}.lc__tile:has([data-menu-open]){z-index:30}.lc--editable .lc__tile{cursor:grab}.lc--editable .lc__tile:active{cursor:grabbing}.lc__tile--selected{box-shadow:0 0 0 2px var(--accent-cyan, #00d9ff),0 0 16px #00d9ff59!important;z-index:2}.lc__tile--dragging{z-index:10;pointer-events:none}.lc__tile--collision{animation:lc-flash-red .5s ease}@keyframes lc-flash-red{0%,to{box-shadow:none}50%{box-shadow:0 0 20px #f36c,inset 0 0 10px #ff33664d}}.lc__tile--focused{box-shadow:0 0 0 3px #00d9ffb3,0 0 20px #00d9ff4d;z-index:3}.lc__tile--highlighted{animation:lc-highlight-pulse .6s ease-in-out 5;z-index:10}@keyframes lc-highlight-pulse{0%,to{box-shadow:0 0 0 3px #ff950080}50%{box-shadow:0 0 0 6px #ff9500cc,0 0 30px #ff950066}}.lc__ghost{position:absolute;border:2px dashed var(--accent-cyan, #00d9ff);border-radius:10px;background:#00d9ff14;z-index:5;pointer-events:none;transition:left .06s,top .06s,width .06s,height .06s}.lc__marquee{border:1.5px dashed var(--accent-purple, #9d4edd);background:#9d4edd1a;z-index:50;pointer-events:none;border-radius:2px}.lc__selection-badge{position:absolute;bottom:12px;left:50%;transform:translate(-50%);background:#00d9ff26;border:1px solid rgba(0,217,255,.4);color:var(--accent-cyan, #00d9ff);font-size:.75rem;font-weight:600;padding:4px 14px;border-radius:20px;z-index:60;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);letter-spacing:.3px}.lc__resize-handle{position:absolute;bottom:0;right:0;width:18px;height:18px;cursor:nwse-resize;z-index:20;background:linear-gradient(135deg,transparent 50%,var(--accent-cyan, #00d9ff) 50%);border-radius:0 0 8px;opacity:0;transition:opacity .2s}.lc--editable .lc__tile:hover .lc__resize-handle,.lc--editable .lc__tile:active .lc__resize-handle{opacity:.7}.lc__resize-handle:hover{opacity:1!important}.view-mode{position:fixed;inset:0;z-index:9999;background:linear-gradient(135deg,var(--bg-primary, #0a0e27) 0%,#0f1629 100%);display:flex;flex-direction:column;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.view-mode__header{display:flex;justify-content:space-between;align-items:center;padding:clamp(16px,2vw,32px) clamp(20px,2.5vw,48px);flex-shrink:0}.view-mode__title{font-size:clamp(1.5rem,2.5vw,2.5rem);font-weight:700;background:linear-gradient(135deg,var(--accent-cyan, #00d9ff),var(--accent-purple, #9d4edd));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.view-mode__subtitle{color:var(--text-secondary, #b4b8c8);font-size:clamp(.75rem,1vw,1rem);margin-top:.25rem}.view-mode__meta{display:flex;align-items:center;gap:clamp(12px,1.5vw,24px)}.view-mode__updated{font-size:clamp(.7rem,.9vw,.9rem);color:var(--text-dimmed, #6b7280);font-variant-numeric:tabular-nums}.view-mode__exit-btn{background:#00d9ff1a;border:1px solid rgba(0,217,255,.3);border-radius:8px;color:var(--accent-cyan, #00d9ff);cursor:pointer;padding:8px 14px;display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:500;font-family:inherit;transition:all .2s}.view-mode__exit-btn:hover{background:#00d9ff33;border-color:#00d9ff80}.view-mode__layout{flex:1;min-height:0;padding:8px clamp(20px,2.5vw,48px) clamp(20px,2.5vw,48px);overflow:visible;display:flex;flex-direction:column;align-items:center}.view-mode__canvas{width:100%;max-width:1600px}.view-mode__empty{font-size:clamp(1.25rem,2vw,2rem);color:var(--text-dimmed, #6b7280);text-align:center;padding:4rem}.view-mode__updated{font-family:JetBrains Mono,monospace}.view-mode{background:radial-gradient(130% 115% at 50% -10%,#101830,#0a0e1e 48%,#06080f);font-family:Space Grotesk,system-ui,sans-serif}.view-mode:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(120,140,200,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(120,140,200,.04) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;-webkit-mask-image:radial-gradient(125% 100% at 50% 0%,#000 52%,transparent 100%);mask-image:radial-gradient(125% 100% at 50% 0%,#000 52%,transparent 100%)}.view-mode__header,.view-mode__layout{position:relative;z-index:1}.view-mode__title{background:linear-gradient(92deg,#6beaf4,#b388ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700;letter-spacing:.3px}.view-mode__subtitle{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.16em;font-weight:600;font-size:clamp(.65rem,.9vw,.9rem)}.view-mode__updated{color:var(--text-dimmed)}.view-mode__exit-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.13);border-radius:13px;color:#c9d4ea;font-weight:600;padding:10px 18px}.view-mode__exit-btn:hover{background:#ffffff1a;border-color:#fff3}.le{position:fixed;inset:0;z-index:9998;background:linear-gradient(135deg,var(--bg-primary, #0a0e27) 0%,#0f1629 100%);display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.le__toolbar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:#0000004d;border-bottom:1px solid rgba(0,217,255,.15);flex-shrink:0;flex-wrap:wrap;gap:8px}.le__toolbar-left,.le__toolbar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.le__select{padding:6px 12px;background:#ffffff0f;border:1px solid rgba(0,217,255,.3);border-radius:6px;color:var(--text-primary, #e5e7eb);font-size:.85rem;font-family:inherit;cursor:pointer;min-width:140px}.le__select:focus{outline:none;border-color:var(--accent-cyan, #00d9ff);box-shadow:0 0 6px #00d9ff4d}.le__select option{background:#1a1f3c;color:#e5e7eb}.le__btn{padding:6px 14px;border-radius:6px;border:1px solid rgba(0,217,255,.3);background:#00d9ff14;color:var(--accent-cyan, #00d9ff);font-size:.8rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s;white-space:nowrap}.le__btn:hover{background:#00d9ff2e;border-color:#00d9ff80}.le__btn--primary{background:#00d9ff33;border-color:var(--accent-cyan, #00d9ff)}.le__btn--primary:hover{background:#00d9ff59}.le__btn--danger{border-color:#f366;color:var(--accent-red, #ff3366);background:#ff336614}.le__btn--danger:hover{background:#f363;border-color:#f369}.le__btn--close{border-color:#ffffff26;color:var(--text-secondary, #b4b8c8);background:#ffffff0d}.le__btn--close:hover{background:#ffffff1f;color:var(--text-primary, #e5e7eb)}.le__btn:disabled{opacity:.4;cursor:not-allowed}.le__undo-group{display:flex;gap:2px}.le__btn--undo{padding:4px 10px;font-size:1rem;line-height:1;min-width:32px;border-radius:5px}.le__btn--undo:disabled{opacity:.25}.le__size-group{display:flex;align-items:center;gap:3px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:3px 8px}.le__size-label{font-size:.7rem;color:var(--text-secondary, #b4b8c8);font-weight:600;margin-right:4px;white-space:nowrap;text-transform:uppercase;letter-spacing:.3px}.le__btn--size{padding:3px 8px;min-width:28px;font-size:.85rem;font-weight:700;border-radius:4px;text-align:center;border-color:#00d9ff33}.le__btn--size:hover{background:#00d9ff40}.le__btn--size-w{font-size:.65rem;font-weight:700;color:var(--accent-purple, #9d4edd);border-color:#9d4edd40;background:#9d4edd0f}.le__btn--size-w:hover{background:#9d4edd33}.le__btn--size-h{font-size:.65rem;font-weight:700;color:var(--accent-green, #00ff88);border-color:#00ff8840;background:#00ff880f}.le__btn--size-h:hover{background:#0f83}.le__default-badge{font-size:.75rem;color:var(--accent-green, #00ff88);background:#00ff881f;padding:4px 10px;border-radius:6px;border:1px solid rgba(0,255,136,.3);font-weight:600}.le__toggle{display:flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.le__toggle input[type=checkbox]{appearance:none;width:36px;height:20px;background:#ffffff1a;border-radius:10px;position:relative;cursor:pointer;transition:background .2s;border:1px solid rgba(255,255,255,.15)}.le__toggle input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;background:var(--text-secondary, #b4b8c8);border-radius:50%;transition:transform .2s,background .2s}.le__toggle input[type=checkbox]:checked{background:#00d9ff40;border-color:var(--accent-cyan, #00d9ff)}.le__toggle input[type=checkbox]:checked:after{transform:translate(16px);background:var(--accent-cyan, #00d9ff)}.le__toggle-label{font-size:.8rem;color:var(--text-secondary, #b4b8c8);font-weight:500}.le__status{padding:8px 20px;font-size:.85rem;font-weight:500;text-align:center;animation:le-status-in .2s ease}.le__status--success{background:#00ff881a;color:var(--accent-green, #00ff88);border-bottom:1px solid rgba(0,255,136,.2)}.le__status--error{background:#ff33661f;color:var(--accent-red, #ff3366);border-bottom:1px solid rgba(255,51,102,.2)}@keyframes le-status-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.le__canvas-wrap{flex:1;min-height:0;padding:16px;display:flex;align-items:stretch}.le__canvas{flex:1;border:1px solid rgba(0,217,255,.08);border-radius:8px}.le__loading{display:flex;align-items:center;justify-content:center;flex:1;color:var(--text-secondary, #b4b8c8);font-size:1.1rem}.le-tile{width:100%;height:100%;background:var(--bg-card, #1a1f3c);border-radius:10px;border:2px solid transparent;padding:10px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 2px 10px #0000004d;overflow:hidden}.le-tile--available{border-color:var(--status-available, #00ff88)}.le-tile--active{border-color:var(--status-active, #00d9ff);box-shadow:0 0 12px #00d9ff40}.le-tile--maintenance{border-color:var(--status-maintenance, #ff3366);opacity:.6}.le-tile--closed{border-color:var(--status-closed, #6b7280);opacity:.5}.le-tile__header{display:flex;align-items:center;gap:6px;min-width:0}.le-tile__icon{font-size:clamp(.8rem,1.2vw,1.2rem);flex-shrink:0}.le-tile__name{font-weight:700;font-size:clamp(.7rem,1vw,1.1rem);color:var(--text-primary, #e5e7eb);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.le-tile__info{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.le-tile__badge{font-size:clamp(.55rem,.7vw,.7rem);padding:2px 6px;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.le-tile__badge--active{background:#00d9ff33;color:var(--accent-cyan, #00d9ff)}.le-tile__badge--queue{background:#9d4edd33;color:var(--accent-purple, #9d4edd)}.le-tile__badge--available{background:#00ff8826;color:var(--status-available, #00ff88)}.le__dialog-overlay{position:fixed;inset:0;z-index:10000;background:#0009;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.le__dialog{background:var(--bg-card, #1a1f3c);border:1px solid rgba(0,217,255,.25);border-radius:12px;padding:24px;min-width:320px;box-shadow:0 0 40px #00000080}.le__dialog h3{margin:0 0 16px;color:var(--text-primary, #e5e7eb);font-size:1.1rem}.le__dialog-input{width:100%;padding:10px 12px;background:#ffffff0f;border:1px solid rgba(0,217,255,.3);border-radius:6px;color:var(--text-primary, #e5e7eb);font-size:.95rem;font-family:inherit;box-sizing:border-box}.le__dialog-input:focus{outline:none;border-color:var(--accent-cyan, #00d9ff);box-shadow:0 0 8px #00d9ff40}.le__dialog-actions{display:flex;gap:8px;margin-top:16px;justify-content:flex-end}@media(max-width:768px){.le__toolbar{padding:8px 12px}.le__toolbar-left,.le__toolbar-right{gap:4px}.le__btn{padding:5px 10px;font-size:.75rem}.le__canvas-wrap{padding:8px}}.stats-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.stats-panel{background:var(--bg-card, #141830);border:1px solid rgba(255,255,255,.1);border-radius:14px;width:100%;max-width:700px;max-height:85vh;display:flex;flex-direction:column;animation:statsSlideIn .2s ease-out;box-shadow:0 24px 64px #00000080}@keyframes statsSlideIn{0%{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.stats-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.06)}.stats-title{font-size:1.1rem;font-weight:700;color:var(--text-primary, #f0f4f8)}.stats-close{background:none;border:none;color:var(--text-secondary, #8b95a8);font-size:1.3rem;cursor:pointer;padding:.25rem .5rem;line-height:1;border-radius:6px;transition:all .15s}.stats-close:hover{color:var(--text-primary, #fff);background:#ffffff14}.stats-body{padding:1.25rem 1.5rem;overflow-y:auto;flex:1}.stats-filter{display:flex;gap:.3rem;margin-bottom:.8rem}.stats-filter-btn{padding:.3rem .65rem;border-radius:6px;border:1px solid rgba(255,255,255,.06);background:#ffffff08;color:var(--text-dimmed, #4a5568);cursor:pointer;font-size:.7rem;font-weight:600;font-family:inherit;transition:all .15s}.stats-filter-btn--active{border-color:#22d3ee33;color:var(--accent-cyan, #22d3ee);background:#22d3ee1a}.stats-filter-btn:hover:not(.stats-filter-btn--active){border-color:#ffffff26;color:var(--text-secondary, #8b95a8)}.stats-loading,.stats-empty{text-align:center;color:var(--text-secondary, #8b95a8);padding:2rem 0;font-size:.85rem}.stats-summary{display:flex;gap:.6rem;margin-bottom:1rem}.stats-summary-item{flex:1;background:var(--bg-secondary, #0d1020);border:1px solid rgba(255,255,255,.06);border-radius:6px;padding:.6rem .75rem}.stats-summary-value{display:block;font-size:1.3rem;font-weight:700;color:var(--accent-cyan, #22d3ee);font-family:Courier New,monospace;font-variant-numeric:tabular-nums}.stats-summary-label{display:block;font-size:.65rem;color:var(--text-dimmed, #4a5568);margin-top:.1rem}.stats-section{margin-bottom:1rem}.stats-section h3{font-size:.78rem;font-weight:700;color:var(--text-secondary, #8b95a8);text-transform:none;letter-spacing:0;margin-bottom:.5rem}.stats-bars{display:flex;flex-direction:column;gap:5px}.stats-bar-row{display:flex;align-items:center;gap:.5rem;animation:statsBarIn .2s ease-out both}@keyframes statsBarIn{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.stats-bar-label{width:80px;font-size:.85rem;color:var(--text-secondary, #8b95a8);text-align:right;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-bar-track{flex:1;height:22px;background:#ffffff0a;border-radius:4px;overflow:hidden}.stats-bar-fill{height:100%;border-radius:4px;transition:width .4s ease;min-width:2px}.stats-bar-fill--user{background:linear-gradient(90deg,#22d3ee80,#34d39980)}.stats-bar-fill--station{background:linear-gradient(90deg,#a78bfa66,#22d3ee66)}.stats-bar-value{min-width:40px;font-size:.8rem;color:var(--text-secondary, #8b95a8);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.stats-bar-meta{font-size:.75rem;color:var(--text-dimmed, #4a5568);white-space:nowrap;text-align:right;min-width:80px}.stats-footer{padding:.75rem 1.5rem;border-top:1px solid rgba(255,255,255,.06);display:flex;justify-content:flex-end}.stats-footer-btn{padding:.4rem 1rem;border-radius:6px;border:1px solid rgba(255,255,255,.06);background:#ffffff0d;color:var(--text-secondary, #8b95a8);font-size:.8rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}.stats-footer-btn:hover{background:#ffffff14;color:var(--text-primary, #fff)}
