:root{color-scheme:light;--color-canvas: #f4f6f3;--color-surface: #ffffff;--color-surface-subtle: #f8faf7;--color-surface-muted: #edf1eb;--color-border: #dfe5dc;--color-border-strong: #cbd5c8;--color-text: #20261f;--color-text-muted: #667064;--color-text-subtle: #879084;--color-brand: #657d66;--color-brand-hover: #526b54;--color-brand-soft: #e8efe7;--color-danger: #bd3f46;--color-danger-soft: #fbecee;--color-warning: #9a6827;--color-focus: rgba(101, 125, 102, .28);--font-ui: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(25, 38, 25, .05);--shadow-md: 0 8px 24px rgba(25, 38, 25, .08);--shadow-lg: 0 18px 48px rgba(25, 38, 25, .14);--transition-fast: .15s ease;--app-header-height: 64px;--bg: var(--color-canvas);--panel: var(--color-surface);--elements: var(--color-surface-muted);--card: var(--color-surface);--ink: var(--color-text);--muted: var(--color-text-muted);--line: var(--color-border);--accent: var(--color-brand);--accent-2: var(--color-brand-hover);--accent-weak: var(--color-brand-soft);--shadow: var(--shadow-md);--radius: var(--radius-md)}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;background:var(--color-canvas);font-family:var(--font-ui);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body{min-width:320px;min-height:100vh;margin:0;background:var(--color-canvas);color:var(--color-text);font:14px/1.5 var(--font-ui)}.loading-screen{min-height:calc(100vh - var(--app-header-height));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);color:var(--color-text-muted)}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-brand);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}button:disabled,[aria-disabled=true]{cursor:not-allowed}input,select,textarea{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text)}.btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);margin:0;padding:9px 16px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);cursor:pointer;font-weight:650;letter-spacing:0;line-height:1.25;text-decoration:none;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.btn:disabled{opacity:.48}.btn-primary{background:var(--color-brand);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-brand-hover)}.btn-primary-outline{border-color:var(--color-brand);background:var(--color-brand-soft);color:var(--color-brand-hover)}.btn-ghost{border-color:var(--color-border);background:var(--color-surface);color:var(--color-brand-hover)}.btn-ghost:hover:not(:disabled),.btn-primary-outline:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-muted)}.btn-danger{background:var(--color-danger-soft);color:var(--color-danger)}.ui-panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm)}.ui-eyebrow{margin:0;color:var(--color-text-muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.numeric,.coordinate,table td{font-variant-numeric:tabular-nums}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
