@import "https://fonts.googleapis.com/css2?family=Anton&family=Bebas+Neue&family=Be+Vietnam+Pro:wght@300;400;500;600;700;800&family=Noto+Sans+JP:wght@300;400;500;700&family=JetBrains+Mono:wght@400;600&family=Caveat:wght@500;700&display=swap";:root{--indie-orange-50:#fff2ec;--indie-orange-100:#ffd6c2;--indie-orange-300:#ff7a40;--indie-orange-500:#f04000;--indie-orange-600:#d93600;--indie-orange-700:#b02b00;--indie-red-500:#d03020;--indie-navy-50:#e6eef5;--indie-navy-100:#b8cee0;--indie-navy-300:#2f679a;--indie-navy-500:#004080;--indie-navy-700:#002e5c;--indie-navy-900:#001933;--indie-cyan-50:#e0f4fd;--indie-cyan-100:#a6e1f8;--indie-cyan-500:#00a0e0;--indie-cyan-700:#0078a8;--indie-yellow-100:#fff5c7;--indie-yellow-400:#f0d050;--indie-yellow-600:#bfa024;--ink-0:#fff;--ink-50:#fafaf7;--ink-100:#f2f1ec;--ink-200:#e4e2da;--ink-300:#c9c6bc;--ink-400:#9a968a;--ink-500:#6e6a60;--ink-700:#3d3b35;--ink-900:#1a1a17;--ink-1000:#000;--bg:var(--ink-50);--bg-elev:var(--ink-0);--bg-sunken:var(--ink-100);--bg-inverse:var(--indie-navy-900);--fg-1:var(--indie-navy-900);--fg-2:var(--ink-700);--fg-3:var(--ink-500);--fg-4:var(--ink-400);--fg-on-dark:var(--ink-0);--fg-on-brand:var(--ink-0);--border-subtle:var(--ink-200);--border:var(--ink-300);--border-strong:var(--ink-700);--accent:var(--indie-orange-500);--accent-hover:var(--indie-orange-600);--accent-press:var(--indie-orange-700);--link:var(--indie-navy-500);--link-hover:var(--indie-navy-700);--success:#2e8b57;--warning:#c48a00;--danger:var(--indie-red-500);--info:var(--indie-cyan-500);--font-display:"Anton", "Bebas Neue", "Impact", system-ui, sans-serif;--font-sans:"Be Vietnam Pro", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;--font-jp:"Noto Sans JP", "Be Vietnam Pro", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-script:"Caveat", "Brush Script MT", cursive;--fs-xs:.75rem;--fs-sm:.875rem;--fs-base:1rem;--fs-md:1.125rem;--fs-lg:1.375rem;--fs-xl:1.75rem;--fs-2xl:2.25rem;--fs-3xl:3rem;--fs-4xl:4rem;--fs-5xl:5.5rem;--lh-tight:1.05;--lh-snug:1.2;--lh-body:1.55;--lh-loose:1.75;--ls-display:-.01em;--ls-heading:-.005em;--ls-caps:.12em;--ls-caps-lg:.18em;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:96px;--sp-10:128px;--r-0:0px;--r-1:2px;--r-2:6px;--r-3:10px;--r-4:16px;--r-pill:999px;--r-circle:50%;--shadow-0:none;--shadow-1:0 1px 2px #1a1a170f, 0 1px 1px #1a1a170a;--shadow-2:0 2px 8px #1a1a1714;--shadow-3:0 12px 32px -8px #1a1a172e;--shadow-ink:4px 4px 0 var(--indie-navy-900);--ease-out:cubic-bezier(.22, .61, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.12s;--dur:.2s;--dur-slow:.4s;--brand:var(--indie-orange-500);--brand-hover:var(--indie-orange-600);--brand-press:var(--indie-orange-700);--brand-soft:var(--indie-orange-50);--ch-wa:#25d366;--ch-wa-deep:#128c7e;--st-open:#2e8b57;--st-bot:var(--indie-cyan-500);--st-agent:var(--indie-orange-500);--st-resolved:var(--ink-400);--app-bg:var(--ink-50);--app-panel:var(--ink-0);--app-sunken:#f2f1ec;--app-rail:#fff;--app-rail-fg:var(--ink-700);--app-rail-muted:var(--ink-400);--app-rail-border:var(--ink-200);--bubble-in:#fff;--bubble-in-fg:var(--ink-900);--bubble-out:var(--indie-navy-900);--bubble-out-fg:#fafaf7;--bubble-bot:var(--indie-navy-300);--bubble-bot-fg:#fafaf7;--bubble-meta:#00193373;--bubble-meta-out:#ffffffa6;--chat-bg:#f2f1ec;--chat-pattern:#00193308;--kbd-bg:var(--ink-100);--hover:#0019330a;--hover-strong:#00193314;--selected:#f0400014;--selected-border:var(--brand);--shadow-panel:0 1px 2px #1a1a170a, 0 1px 1px #1a1a1708;--shadow-drop:0 8px 24px -4px #1a1a171f, 0 2px 6px #1a1a170f}[data-theme=dark]{--bg:#0a1929;--bg-elev:#0f2138;--bg-sunken:#06121f;--bg-inverse:var(--ink-50);--fg-1:#f2efe8;--fg-2:#c9c6bc;--fg-3:#9a968a;--fg-4:#6e6a60;--border-subtle:#ffffff0f;--border:#ffffff1a;--border-strong:#ffffff2e;--link:var(--indie-cyan-500);--link-hover:var(--indie-cyan-100);--brand-soft:#f0400024;--app-bg:#0a1929;--app-panel:#0f2138;--app-sunken:#06121f;--app-rail:#07172a;--app-rail-fg:#e6e4dd;--app-rail-muted:#8a8b86;--app-rail-border:#ffffff0f;--bubble-in:#14283f;--bubble-in-fg:#f2efe8;--bubble-out:var(--indie-orange-500);--bubble-out-fg:#fafaf7;--bubble-bot:#2a4a6f;--bubble-bot-fg:#f2efe8;--bubble-meta:#ffffff73;--bubble-meta-out:#ffffffbf;--chat-bg:#06121f;--chat-pattern:#ffffff05;--kbd-bg:#ffffff0f;--hover:#ffffff0a;--hover-strong:#ffffff14;--selected:#f040002e;--selected-border:var(--brand);--shadow-panel:0 1px 2px #0006;--shadow-drop:0 12px 32px -8px #0009, 0 4px 8px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}html{font-family:var(--font-sans);color:var(--fg-1);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:16px}body{font-family:var(--font-sans);background:var(--app-bg);color:var(--fg-1);transition:background var(--dur) var(--ease-out), color var(--dur) var(--ease-out);margin:0;font-size:15px;line-height:1.45}button,input,textarea,select{font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}a{color:var(--link);text-underline-offset:2px;transition:color var(--dur) var(--ease-out);text-decoration:underline;text-decoration-thickness:1px}a:hover{color:var(--link-hover);text-decoration-thickness:2px}::selection{background:var(--indie-orange-100);color:var(--indie-navy-900)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--fg-3);font-size:11px;font-weight:600}.display{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.005em;line-height:.95}.mono{font-family:var(--font-mono)}.jp{font-family:var(--font-jp);letter-spacing:.02em}.indie-corner-bracket:before{content:"「";opacity:.65;margin-right:4px}.indie-corner-bracket:after{content:"」";opacity:.65;margin-left:4px}:where(button,a,input,textarea,select):focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}@keyframes indie-dot{0%,80%,to{opacity:.2;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}
