:root{--brand-black:#000;--brand-white:#fff;--brand-navy:#036;--brand-navy-hover:#002a52;--brand-blue:#007acc;--brand-green:#6b8e23;--brand-slate:#6c7a89;--brand-ink:#1f2933;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-serif:Georgia, "Times New Roman", "Times", serif;--color-text-primary:var(--brand-ink);--color-text-secondary:#52606d;--color-text-tertiary:#9aa5b1;--color-text-success:#4f7a1e;--color-text-danger:#c0392b;--color-danger-solid:#c0392b;--color-text-on-action:#fff;--color-text-on-dark:#fff;--color-action:var(--brand-navy);--color-action-hover:var(--brand-navy-hover);--color-accent:var(--brand-blue);--color-page:#fff;--color-background-primary:#fff;--color-background-secondary:#f4f6f8;--color-background-success:#f1f6e8;--color-background-danger:#fdf3f2;--color-backdrop:#000;--color-overlay-strong:#0000008c;--color-overlay-medium:#00000073;--color-dot-inactive:#fff6;--color-border-tertiary:#e4e7eb;--color-border-secondary:#cbd2d9;--color-border-success:#d3e3b0;--color-border-danger:#f1948a;--border-radius-sm:6px;--border-radius-md:10px;--border-radius-lg:14px;--layout-max:1200px;--layout-form-max:640px;--header-height:56px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--color-page);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;transition:background .2s,color .2s}h1,h2,h3{font-family:var(--font-serif);letter-spacing:.01em;font-weight:600}input,select{width:100%;font-size:15px;font-family:var(--font-sans);border:1px solid var(--color-border-tertiary);border-radius:var(--border-radius-md);background:var(--color-background-primary);color:var(--color-text-primary);appearance:none;outline:none;padding:10px 12px}input:focus,select:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #007acc1f}textarea{font-family:var(--font-sans);border:1px solid var(--color-border-tertiary);border-radius:var(--border-radius-md);background:var(--color-background-primary);color:var(--color-text-primary);resize:vertical;outline:none;padding:8px 12px;font-size:14px}button{font-family:var(--font-sans);border:1px solid var(--color-border-tertiary);border-radius:var(--border-radius-md);background:var(--color-background-primary);color:var(--color-text-primary);cursor:pointer;padding:10px 16px;font-size:15px;transition:background .15s,border-color .15s,opacity .15s}button:hover{border-color:var(--color-border-secondary)}button:active{opacity:.8}.btn-primary{background:var(--color-action);border-color:var(--color-action);color:var(--color-text-on-action)}.btn-primary:hover{background:var(--color-action-hover);border-color:var(--color-action-hover)}.btn-primary:disabled{cursor:not-allowed}.btn-danger{background:var(--color-danger-solid);border-color:var(--color-danger-solid);color:var(--color-text-on-dark)}.app-shell{max-width:var(--layout-max);margin:0 auto;padding:1.25rem 1rem 3rem}@media (width>=768px){.app-shell{padding:1.75rem 2rem 4rem}}@media (width>=1024px){.app-shell{padding:2rem 2.5rem 4rem}}.content-narrow{max-width:var(--layout-form-max);margin:0 auto}.app-logo{border-radius:var(--border-radius-sm);width:auto;height:36px;display:block}@media (width>=768px){.app-logo{height:54px}}.tabs{background:var(--color-background-secondary);border-radius:var(--border-radius-md);gap:4px;padding:4px;display:flex}.tabs .tab{flex:1}@media (width>=768px){.tabs{width:auto;display:inline-flex}.tabs .tab{flex:none;min-width:140px}}:root[data-theme=dark]{--color-text-primary:#e8edf2;--color-text-secondary:#7e8f9f;--color-text-tertiary:#6b7886;--color-text-success:#7dba3e;--color-text-danger:#ff8a76;--color-danger-solid:#e85c4a;--color-action:#0a6dc2;--color-action-hover:#0a5ca3;--color-accent:#3a9fe6;--color-page:#111418;--color-background-primary:#1a1f26;--color-background-secondary:#242c36;--color-background-success:#2f3a47;--color-background-danger:#3a2420;--color-border-tertiary:#2c3848;--color-border-secondary:#3b4858;--color-border-success:#3f5a23;--color-border-danger:#7a4238}@keyframes spin{to{transform:rotate(360deg)}}
