.nav[data-v-95396350]{background:var(--topbar);border-bottom:var(--border-width) solid var(--nav-border);padding-top:var(--sai-top)}.nav__line1[data-v-95396350]{display:flex;align-items:center;gap:var(--space-3);height:52px;padding:0 var(--space-4);max-width:100%}.nav__brand[data-v-95396350]{display:inline-flex;align-items:center;gap:var(--space-1_5);font-family:var(--nav-font-mono);font-weight:600;color:var(--nav-pill-active-text);flex-shrink:0}.nav__brand-dot[data-v-95396350]{color:var(--nav-brand-dot)}.nav__pills[data-v-95396350]{display:flex;align-items:center;gap:var(--space-1);flex:1;min-width:0;overflow-x:auto}.nav__pill[data-v-95396350]{padding:var(--space-1_5) var(--space-2_5);border-radius:var(--radius-md);color:var(--topbar-dim);font-family:var(--nav-font-ui);font-size:var(--font-md);white-space:nowrap}.nav__pill--active[data-v-95396350]{background:var(--topbar-2);color:var(--nav-pill-active-text)}.nav__utils[data-v-95396350]{display:flex;align-items:center;gap:var(--space-1);flex-shrink:0}.nav__util[data-v-95396350],.nav__hamburger[data-v-95396350]{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--topbar-text);font-family:var(--nav-font-mono);font-size:var(--font-md);cursor:pointer;border-radius:var(--radius-md)}.nav__admin[data-v-95396350]{padding:0 var(--space-2_5)}.nav__util[data-v-95396350]:hover,.nav__hamburger[data-v-95396350]:hover{background:var(--topbar-2)}.nav__hamburger[data-v-95396350],.nav__drawer[data-v-95396350]{display:none}.nav__drawer-item[data-v-95396350]{display:block;padding:var(--space-3) var(--space-4);color:var(--nav-text);border-top:var(--border-width) solid var(--nav-border);background:var(--nav-surface)}.nav__drawer-item--active[data-v-95396350]{color:var(--nav-accent)}@media(max-width:640px){.nav__pills[data-v-95396350],.nav__admin[data-v-95396350]{display:none}.nav__hamburger[data-v-95396350]{display:inline-flex}.nav__drawer[data-v-95396350]{display:block}}.error-boundary[data-v-b609313e]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-6);text-align:center;min-height:60vh}.error-boundary__title[data-v-b609313e]{font-size:var(--font-3xl);color:var(--text)}.error-boundary__detail[data-v-b609313e]{color:var(--text-dim);max-width:40ch}.error-boundary__reload[data-v-b609313e]{min-height:44px;padding:var(--space-2) var(--space-4);background:var(--btn-primary-bg);color:var(--btn-primary-fg);border:none;border-radius:var(--radius-lg);font-family:inherit;font-weight:600;cursor:pointer}.app-main[data-v-119a38f8]{flex:1;width:100%;padding-bottom:var(--sai-bottom)}.home[data-v-596e089d]{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6) var(--space-4);max-width:720px;margin:0 auto;width:100%}.home__title[data-v-596e089d]{font-size:var(--font-3xl);color:var(--text)}.home__subtitle[data-v-596e089d]{font-size:var(--font-lg);color:var(--text-dim)}.home__note[data-v-596e089d]{color:var(--accent);font-size:var(--font-md)}:root{--sai-top: env(safe-area-inset-top, 0px);--sai-right: env(safe-area-inset-right, 0px);--sai-bottom: env(safe-area-inset-bottom, 0px);--sai-left: env(safe-area-inset-left, 0px);--bg-0: #0e1410;--bg-1: #141a16;--bg-2: #1a201c;--bg-3: #222a24;--bg-hover: #1f2722;--bg-selected: #1a2920;--bg: var(--bg-0);--bg-card: var(--bg-1);--border-1: #232b26;--border-2: #2d3730;--border-3: #3a4639;--border: var(--border-2);--border-width: 1px;--fg-0: #e6ece4;--fg-1: #b8c2b4;--fg-2: #8a9588;--fg-3: #5e6b5d;--fg-4: #424d41;--text: var(--fg-0);--text-dim: var(--fg-2);--green: #7fb069;--green-dim: #5f8a4f;--green-bright: #a4d68a;--green-bg: rgba(127, 176, 105, .08);--green-bg-strong: rgba(127, 176, 105, .16);--accent: var(--green);--success: #5cb85c;--warn: #e8a857;--danger: #d9534f;--info: #5bc0de;--red: var(--danger);--btn-primary-bg: var(--green);--btn-primary-fg: var(--bg-0);--topbar: #14181b;--topbar-2: #1e2429;--topbar-text: #c7cec9;--topbar-dim: #79827e;--nav-surface: #161b1f;--nav-surface-2: #1b2125;--nav-surface-3: #232a30;--nav-border: #283037;--nav-border-strong: #3a434b;--nav-text: #e7ebe8;--nav-text-dim: #9aa39f;--nav-text-mute: #69716d;--nav-accent: #23b98c;--nav-accent-soft: #15322a;--nav-danger: #d9534f;--nav-warn: #d6a531;--nav-brand-dot: #3ecf8e;--nav-pill-active-text: #eef2ee;--nav-orange: #e8833a;--nav-line2-top-border: var(--nav-border-strong);--nav-line2-top-shadow: 0 1px 0 rgba(0, 0, 0, .45);--nav-font-ui: "Hanken Grotesk", system-ui, -apple-system, sans-serif;--nav-font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--hub-tone-green: #15a07a;--hub-tone-orange: #e8833a;--overlay-backdrop: rgba(0, 0, 0, .55);--shadow-card-hover: 0 12px 30px rgba(0, 0, 0, .5);--space-0: 0;--space-px: 1px;--space-0_5: 2px;--space-1: 4px;--space-1_5: 6px;--space-2: 8px;--space-2_5: 10px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--font-xs: 11px;--font-sm: 12px;--font-base: 12px;--font-md: 13px;--font-lg: 14px;--font-xl: 15px;--font-2xl: 16px;--font-3xl: 18px;--radius-xs: 2px;--radius-sm: 3px;--radius-md: 3px;--radius-lg: 4px;--radius-xl: 4px;--radius-2xl: 6px;--radius-3xl: 8px;--radius-pill: 999px;--radius: 3px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .5);--z-sticky: 10;--z-overlay: 100;--z-modal: 1000;--font-sans: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--font-body: var(--font-sans);--transition-fast: .1s ease;--transition-md: .2s ease}[data-theme=light]{--bg-0: #f1f1f1;--bg-1: #ffffff;--bg-2: #fbfbfb;--bg-3: #eeeeee;--bg-hover: #f5f5f5;--bg-selected: #eaf5ec;--bg: var(--bg-0);--bg-card: var(--bg-1);--border-1: #ececec;--border-2: #e0e0e0;--border-3: #c8c8c8;--border: var(--border-2);--fg-0: #333333;--fg-1: #565759;--fg-2: #8a8a8a;--fg-3: #b0b0b0;--fg-4: #9a9a9a;--text: var(--fg-0);--text-dim: var(--fg-2);--green: #4f8420;--green-dim: #74b72b;--green-bright: #3a6415;--green-bg: rgba(79, 132, 32, .1);--green-bg-strong: rgba(79, 132, 32, .22);--accent: var(--green);--success: #14a44d;--warn: #e4a11b;--danger: #dc4c64;--info: #54b4d3;--red: var(--danger);--btn-primary-bg: var(--green);--btn-primary-fg: #ffffff;--radius-xs: 4px;--radius-sm: 5px;--radius-md: 8px;--radius-lg: 10px;--radius: 5px;--shadow-sm: 0 .125rem .25rem rgba(0, 0, 0, .075);--shadow-md: 0 .5rem 1rem rgba(0, 0, 0, .15);--shadow-lg: 0 1rem 3rem rgba(0, 0, 0, .175);--topbar: #21272b;--topbar-2: #2b3338;--topbar-text: #c7cec9;--topbar-dim: #828b86;--nav-surface: #ffffff;--nav-surface-2: #f6f7f4;--nav-surface-3: #eef0eb;--nav-border: #e6e8e3;--nav-border-strong: #d4d7d0;--nav-text: #1d2421;--nav-text-dim: #5b635e;--nav-text-mute: #969d97;--nav-accent: #15a07a;--nav-accent-soft: #e3f3ee;--nav-danger: #a02538;--nav-warn: #8a5a00;--nav-orange: #c8580a;--nav-line2-top-border: var(--nav-border);--nav-line2-top-shadow: none;--hub-tone-green: #0f7a5c;--hub-tone-orange: #c8580a;--overlay-backdrop: rgba(0, 0, 0, .45);--shadow-card-hover: 0 12px 30px rgba(20, 30, 25, .09);color-scheme:light}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:var(--font-body);background:var(--bg);color:var(--text);min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}#app{width:100%;min-width:100%;flex:1;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}button{font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}input,select,textarea{font-family:inherit;font-size:var(--font-2xl);min-height:44px;width:100%;padding:var(--space-2) var(--space-3);background:var(--bg-2);color:var(--text);border:var(--border-width) solid var(--border);border-radius:var(--radius-lg)}input[type=checkbox]{width:auto;min-height:auto;accent-color:var(--accent)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}label{font-size:var(--font-md);color:var(--text-dim)}
