:root{--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--font-scale:1;--text-xs:calc(.75rem * var(--font-scale));--text-sm:calc(.875rem * var(--font-scale));--text-base:calc(1rem * var(--font-scale));--text-lg:calc(1.125rem * var(--font-scale));--text-xl:calc(1.375rem * var(--font-scale));--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 16px #00000080;--shadow-glow:0 0 12px var(--color-accent-muted);--shadow-lift:0 6px 20px #0000001f;--transition-fast:.12s ease;--transition-base:.2s ease;--transition-slow:.35s ease;--transition-spring:.35s cubic-bezier(.34, 1.56, .64, 1);--z-overlay:10;--z-modal:100;--mosaic-empty:#ffffff0f;--mosaic-flash:#ffffffe6}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#0f172a;--color-surface:#1e293b;--color-surface-2:#263348;--color-border:#ffffff1a;--color-text:#e2e8f0;--color-text-muted:#94a3b8;--color-text-subtle:#7d8fa3;--color-accent:#0072b2;--color-accent-hover:#0086d1;--color-accent-muted:#0072b259;--color-success:#009e73;--color-warning:#e69f00;--color-error:#d55e00;--color-btn-secondary-bg:#ffffff14;--color-btn-secondary-text:#cbd5e1;--color-btn-secondary-border:#ffffff26;--color-input-bg:#ffffff12;--color-input-border:#ffffff2e;--color-overlay:#0009;--glow-a:#ff6ec726;--glow-b:#00d4ff26;--glow-c:#7b2ff71f;--mosaic-fountain:#0072b28c}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f8fafc;--color-surface:#fff;--color-surface-2:#f1f5f9;--color-border:#0000001a;--color-text:#0f172a;--color-text-muted:#475569;--color-text-subtle:#64748b;--color-accent:#005f96;--color-accent-hover:#0072b2;--color-accent-muted:#005f9633;--color-success:#007a59;--color-warning:#b07800;--color-error:#b84000;--color-btn-secondary-bg:#0000000f;--color-btn-secondary-text:#334155;--color-btn-secondary-border:#00000026;--color-input-bg:#fff;--color-input-border:#0003;--color-overlay:#00000073;--glow-a:#ff6ec724;--glow-b:#00d4ff21;--glow-c:#7b2ff71f;--mosaic-empty:#00000014;--mosaic-flash:#fffffff2;--mosaic-fountain:#005f9673}@media (prefers-contrast:more){[data-theme=dark]{--color-text-subtle:#94a3b8;--color-text-muted:#cbd5e1}[data-theme=light]{--color-text-subtle:#475569;--color-text-muted:#1e293b}}button,a,[role=button],input,select,label{touch-action:manipulation}.btn-primary,.btn-secondary,.btn-stop{padding:var(--space-2) var(--space-5);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;min-height:44px;transition:background var(--transition-fast), color var(--transition-fast), transform 80ms ease;border:none;justify-content:center;align-items:center;font-family:inherit;display:inline-flex}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{background:var(--color-btn-secondary-bg);color:var(--color-btn-secondary-text);border:1px solid var(--color-btn-secondary-border)}.btn-secondary:hover:not(:disabled){background:var(--color-border)}.btn-secondary:disabled{opacity:.4;cursor:not-allowed}.btn-stop{background:var(--color-error);color:#fff;padding:var(--space-3) var(--space-8);font-size:var(--text-base)}.btn-stop:hover{filter:brightness(1.1)}.btn-icon{color:var(--color-text-muted);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-full);min-width:44px;min-height:44px;transition:color var(--transition-fast), background var(--transition-fast), transform .1s ease;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.btn-icon:hover{color:var(--color-text);background:var(--color-btn-secondary-bg)}.btn-icon:active{transform:scale(.88)}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-stop:active:not(:disabled){transform:scale(.97)}input[type=text],input[type=password],select{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-input-bg);color:var(--color-text);border:1px solid var(--color-input-border);font-size:var(--text-sm);min-height:44px;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);font-family:inherit}select option{background:var(--color-bg);color:var(--color-text)}input[type=text]:focus,input[type=password]:focus,select:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-muted)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}::selection{background:var(--color-accent-muted);color:var(--color-text)}@supports selector(::-webkit-scrollbar){::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-text-subtle);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes dialog-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.dialog-sheet{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:100%;color:var(--color-text);flex-direction:column;margin:auto;padding:0;display:flex;position:fixed;inset:0;overflow:hidden}.dialog-sheet::backdrop{background:var(--color-overlay)}.dialog-sheet[open]{animation:.15s dialog-fade-in}.dialog-sheet .drag-handle-area{padding:var(--space-3) 0 0;justify-content:center;display:none}.dialog-sheet .drag-handle{border-radius:var(--radius-full);background:var(--color-text-subtle);width:36px;height:4px}@media (width<=640px){.dialog-sheet{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-width:100%;padding-bottom:env(safe-area-inset-bottom);margin:0;inset:auto 0 0}.dialog-sheet[open]{animation:.3s cubic-bezier(.34,1.56,.64,1) slide-up}.dialog-sheet .drag-handle-area{display:flex}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior-y:contain;padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}@media (display-mode:standalone){body{padding-top:env(safe-area-inset-top)}}html{background:var(--color-bg)}.update-banner.svelte-12qhfyh{bottom:var(--space-4);align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:var(--z-overlay);font-size:var(--text-sm);color:var(--color-text);max-width:calc(100vw - var(--space-8));animation:.3s svelte-12qhfyh-slide-up-banner;display:flex;position:fixed;left:50%;transform:translate(-50%)}@keyframes svelte-12qhfyh-slide-up-banner{0%{opacity:0;transform:translate(-50%)translateY(16px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.update-btn.svelte-12qhfyh{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);background:var(--color-accent);color:#fff;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast);border:none;font-family:inherit;font-weight:600}.update-btn.svelte-12qhfyh:hover{background:var(--color-accent-hover)}.update-dismiss.svelte-12qhfyh{min-width:32px;min-height:32px;padding:var(--space-1);color:var(--color-text-muted)}@media (width<=480px){.update-banner.svelte-12qhfyh{bottom:calc(var(--space-4) + env(safe-area-inset-bottom))}}.offline-banner.svelte-12qhfyh{bottom:var(--space-4);align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:var(--z-overlay);font-size:var(--text-sm);color:var(--color-text-muted);max-width:calc(100vw - var(--space-8));animation:.3s svelte-12qhfyh-slide-up-banner;display:flex;position:fixed;left:50%;transform:translate(-50%)}.offline-dismiss.svelte-12qhfyh{min-width:32px;min-height:32px;padding:var(--space-1);color:var(--color-text-muted)}@media (width<=480px){.offline-banner.svelte-12qhfyh{bottom:calc(var(--space-4) + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){.update-banner.svelte-12qhfyh,.offline-banner.svelte-12qhfyh{animation:none}}
