:root{--bg-darkest: #0a0a0f;--bg-panels: #12121a;--bg-cards: #1a1a2e;--bg-accent: #16213e;--bg-hover: #1e2a45;--bg-warning: rgba(245, 158, 11, .08);--bg-error: rgba(239, 68, 68, .08);--bg-success: rgba(34, 197, 94, .08);--color-accent: #0ea5e9;--color-accent-hover: #38bdf8;--color-accent-dim: #0c4a6e;--color-success: #22c55e;--color-warning: #f59e0b;--color-error: #ef4444;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-muted: #64748b;--text-bright: #f8fafc;--border-color: rgba(255, 255, 255, .06);--border-accent: rgba(14, 165, 233, .3);--canvas-bg: #08080c;--overlay-bg: rgba(15, 17, 26, .92);--overlay-bg-solid: rgba(15, 15, 22, .96);--overlay-border: rgba(255, 255, 255, .12);--overlay-border-strong: rgba(255, 255, 255, .2);--overlay-hover: rgba(255, 255, 255, .1);--overlay-inset: rgba(0, 0, 0, .22);--overlay-ring: rgba(148, 163, 184, .22);--overlay-text: #e2e8f0;--overlay-text-muted: rgba(255, 255, 255, .55);--overlay-shadow: 0 4px 16px rgba(0, 0, 0, .5);--backdrop: rgba(3, 4, 8, .65);--scrollbar: rgba(255, 255, 255, .14);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--sidebar-width: 64px;--topbar-height: 52px;--statusbar-height: 32px;--log-panel-width: 320px;--transition-fast: .15s ease;--transition-normal: .25s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow:hidden}body{font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--text-primary);background:var(--bg-darkest);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background:var(--color-accent);color:#fff}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button{font-family:inherit;font-size:inherit;color:inherit;cursor:pointer;border:none;background:none;line-height:inherit}input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer}table{border-collapse:collapse;width:100%}.mono{font-family:var(--font-mono);font-size:12px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes progressStripe{0%{background-position:0 0}to{background-position:40px 0}}.animate-fade-in{animation:fadeIn .3s ease}@keyframes fadeInCentered{0%{opacity:0;transform:translate(-50%,-50%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%)}}.animate-fade-in-centered{animation:fadeInCentered .2s ease}.animate-slide-in{animation:slideIn .3s ease}.animate-pulse{animation:pulse 2s infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--file-name-max: 260px;--topbar-gap: 10px}@media(max-width:1919px){.toolbar-label:not(.keep){display:none}.brand-text,.file-size{display:none}:root{--file-name-max: 200px}}@media(max-width:1439px){:root{--file-name-max: 140px;--topbar-gap: 6px}.toolbar-label.keep-wide,.seg-icon{display:none}}.auth-page{height:100dvh;display:flex;background:var(--bg-darkest);overflow:auto}.auth-brand{position:relative;flex:0 0 46%;max-width:640px;display:flex;flex-direction:column;justify-content:space-between;padding:40px 48px;overflow:hidden;border-right:1px solid var(--border-color);background:radial-gradient(circle at 15% 20%,var(--border-accent),transparent 55%),radial-gradient(circle at 85% 90%,var(--bg-accent),transparent 60%),var(--bg-panels)}.auth-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--border-color) 1px,transparent 1px),linear-gradient(90deg,var(--border-color) 1px,transparent 1px),linear-gradient(var(--border-color) 1px,transparent 1px),linear-gradient(90deg,var(--border-color) 1px,transparent 1px);background-size:120px 120px,120px 120px,24px 24px,24px 24px;mask-image:linear-gradient(160deg,#000 20%,transparent 85%);-webkit-mask-image:linear-gradient(160deg,#000 20%,transparent 85%)}.auth-main{flex:1;display:flex;align-items:center;justify-content:center;padding:32px 20px}.auth-card{width:100%;max-width:400px}.auth-mobile-logo{display:none;align-items:center;gap:8px;margin-bottom:28px}.auth-submit{display:flex;align-items:center;justify-content:center;gap:8px;height:44px;margin-top:4px;border-radius:8px;font-size:14px;font-weight:600;color:#fff;background:var(--color-accent);transition:background .15s,transform .1s,opacity .15s}.auth-submit:hover:not(:disabled){background:var(--color-accent-hover)}.auth-submit:active:not(:disabled){transform:translateY(1px)}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-loader{width:28px;height:28px;border-radius:50%;border:3px solid var(--border-color);border-top-color:var(--color-accent);animation:spin .8s linear infinite}@keyframes authShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.auth-shake{animation:authShake .35s ease}.menu-item:hover{background:var(--bg-hover)}@media(max-width:900px){.auth-brand{display:none}.auth-mobile-logo{display:flex}}.update-banner{position:fixed;left:50%;bottom:calc(var(--statusbar-height) + 12px);transform:translate(-50%);z-index:5000;display:flex;align-items:center;gap:10px;width:max-content;max-width:calc(100vw - 24px);padding:9px 10px 9px 14px;border-radius:10px;font-size:13px;color:var(--text-primary);background:var(--bg-panels);border:1px solid var(--border-accent);box-shadow:var(--overlay-shadow)}.update-banner-btn{padding:5px 12px;border-radius:6px;font-size:12.5px;font-weight:600;color:#fff;background:var(--color-accent)}.topbar-compact{display:flex;align-items:center;gap:8px;padding:0 10px;flex-shrink:0;min-width:0}.topbar-compact .toolbar-label{display:none}.topbar-sheet-backdrop{position:fixed;inset:var(--topbar-height) 0 0 0;z-index:2500;background:var(--backdrop)}.topbar-sheet{max-height:calc(100dvh - var(--topbar-height) - 16px);overflow-y:auto;padding:10px 12px 14px;display:flex;flex-direction:column;gap:12px;background:var(--bg-panels);border-bottom:1px solid var(--border-accent);box-shadow:var(--overlay-shadow)}.topbar-sheet .toolbar-label{display:inline}.topbar-sheet-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:6px}.topbar-sheet-row{display:flex;flex-wrap:wrap;gap:8px}.details-grid{display:grid;grid-template-columns:minmax(260px,1fr) 2fr;gap:16px;align-items:start}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:900px){.details-grid{grid-template-columns:1fr}}@media(max-width:640px){.hide-narrow{display:none}.form-grid-2{grid-template-columns:1fr}.details-view{padding:14px 12px!important}.edit-panel{top:auto!important;bottom:52px;left:8px!important;right:8px;max-width:none!important;max-height:55%;overflow-y:auto}.log-panel{left:8px!important;right:8px;bottom:8px!important;width:auto!important;height:min(60%,420px)!important}.coord-hud{padding:4px 10px!important;gap:8px!important;font-size:10px!important;max-width:calc(100% - 16px)}.hud-zoom{display:none}.update-banner{font-size:12px}}.reg-cta{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:20px;padding-top:18px;border-top:1px solid var(--border-color);font-size:13px;color:var(--text-secondary)}.reg-cta button{display:inline-flex;align-items:center;gap:5px;font-weight:600;color:var(--color-accent)}.reg-cta button:hover{text-decoration:underline}.reg-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:13px;color:var(--text-secondary)}.reg-link:hover{color:var(--color-accent)}.reg-result{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:12px;border:1px solid}.reg-ok{color:#15803d;background:#22c55e1f;border-color:#22c55e73}.reg-bad{color:#b91c1c;background:#ef44441a;border-color:#ef444466}.reg-warn{color:#b45309;background:#f59e0b1f;border-color:#f59e0b73}[style*="color-scheme: dark"] .reg-ok{color:#4ade80}[style*="color-scheme: dark"] .reg-bad{color:#f87171}[style*="color-scheme: dark"] .reg-warn{color:#fbbf24}.auth-submit.reg-submit-ok{background:#16a34a}.auth-submit.reg-submit-ok:hover:not(:disabled){background:#15803d}.reg-reject{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;margin-top:4px;padding:0 18px;border-radius:8px;font-size:14px;font-weight:600;color:#dc2626;border:1px solid rgba(220,38,38,.45);background:transparent}.reg-reject:hover:not(:disabled){background:#dc262614}.reg-reject:disabled{opacity:.5;cursor:not-allowed}.m-select{width:100%;height:42px;padding:0 10px;border-radius:8px;font-size:14px;border:1px solid var(--border-color);background:var(--bg-darkest);color:var(--text-primary)}
