:root{color-scheme:light;--orange-25: #fffaf5;--orange-50: #fff4ec;--orange-100: #ffe7d4;--orange-200: #fed0ab;--orange-300: #fdb07a;--orange-400: #fb8f45;--orange-500: #f97316;--orange-600: #ea6a10;--gray-0: #ffffff;--gray-25: #fcfcfc;--gray-50: #fafafa;--gray-100: #f5f5f5;--gray-150: #f0f0f0;--gray-200: #ececec;--gray-300: #dcdcdc;--gray-400: #a8a8a8;--gray-500: #858585;--gray-600: #6b6b6b;--gray-700: #404040;--gray-800: #262626;--gray-900: #171717;--brand: var(--orange-600);--brand-hover: var(--orange-500);--brand-fill: var(--orange-500);--brand-fill-hover: #f0690e;--brand-bright: var(--orange-500);--brand-soft: var(--orange-50);--brand-soft-hover: var(--orange-100);--brand-border: var(--orange-200);--brand-ink: var(--gray-900);--brand-contrast: #ffffff;--focus-ring: 0 0 0 3px rgba(249, 115, 22, .25);--bg: #ffffff;--surface: #ffffff;--surface-2: var(--gray-100);--surface-subtle: var(--gray-50);--border: var(--gray-200);--border-strong: var(--gray-300);--text: var(--gray-900);--text-body: var(--gray-700);--text-muted: var(--gray-600);--text-faint: var(--gray-500);--positive: #15803d;--positive-bright: #22c55e;--positive-soft: #ecfbf1;--positive-border: #c3ebd1;--neutral: var(--gray-600);--neutral-bright: var(--gray-400);--neutral-soft: var(--gray-100);--neutral-border: var(--gray-300);--negative: #b91c1c;--negative-bright: #ef4444;--negative-soft: #fef0f0;--negative-border: #f8cccc;--warn: #a14a06;--warn-soft: #fff7e6;--warn-border: #f6d995;--radius-xs: 6px;--radius-sm: 8px;--radius: 10px;--radius-md: 12px;--radius-lg: 14px;--radius-xl: 18px;--radius-2xl: 24px;--radius-full: 999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .03);--shadow: 0 4px 16px -4px rgba(0, 0, 0, .08);--shadow-lg: 0 16px 40px -12px rgba(0, 0, 0, .14);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 72px;--topbar-h: 58px;--sidebar-w: 248px;--content-max: 1120px;--ease: cubic-bezier(.2, .8, .2, 1);--tap: 44px;--font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}@media(min-width:1680px){:root{--content-max: 1280px}}@media(min-width:2200px){:root{--content-max: 1440px;--sidebar-w: 272px}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip;accent-color:var(--brand-fill)}h1,h2,h3,h4{margin:0;color:var(--text);line-height:1.25;font-weight:700;letter-spacing:-.015em}h1{font-size:1.6rem;letter-spacing:-.025em}h2{font-size:1.25rem}h3{font-size:1.02rem;font-weight:650;letter-spacing:-.01em}p{margin:0}a{color:var(--brand);font-weight:550;text-decoration:none;transition:color .15s var(--ease)}a:hover{color:var(--brand-hover);text-decoration:underline;text-underline-offset:3px}button,input,select,textarea{font:inherit;color:inherit}input,select,textarea{font-size:1rem}img,svg{max-width:100%}button,a,input,select,textarea{touch-action:manipulation}:focus-visible{outline:2px solid var(--brand-bright);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background:var(--orange-200);color:var(--gray-900)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:var(--radius-full);border:3px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--gray-400);background-clip:padding-box}.page{max-width:var(--content-max);margin:0 auto;padding:var(--sp-5) var(--sp-4) var(--sp-7);animation:page-in .25s var(--ease)}@keyframes page-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.page__head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-3) var(--sp-4);flex-wrap:wrap;margin-bottom:var(--sp-5)}.page__sub{color:var(--text-muted);font-size:.95rem;margin-top:var(--sp-1)}.page>.notice{margin-bottom:var(--sp-4)}.link-btn{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:40px;padding:0 16px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:600;transition:background .15s var(--ease),border-color .15s var(--ease)}.link-btn svg{color:var(--text-muted)}.link-btn:hover{background:var(--surface-subtle);border-color:var(--gray-400);color:var(--text);text-decoration:none}.link-btn--primary{background:var(--brand-fill);border-color:var(--brand-fill);color:#fff}.link-btn--primary svg{color:#fff}.link-btn--primary:hover{background:var(--brand-fill-hover);border-color:var(--brand-fill-hover);color:#fff}.stack{display:flex;flex-direction:column;gap:var(--sp-4)}.stack--sm{gap:var(--sp-2)}.stack--lg{gap:var(--sp-5)}.row{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.spacer{flex:1}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.small{font-size:.85rem}.center{text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--text);font-weight:700}.brand:hover{color:var(--text);text-decoration:none}.brand__mark{flex:none;width:30px;height:30px;border-radius:9px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M17 20h30a5 5 0 0 1 5 5v16a5 5 0 0 1-5 5H31l-10 8v-8h-4a5 5 0 0 1-5-5V25a5 5 0 0 1 5-5z' fill='%23fff'/%3E%3Ccircle cx='25' cy='33' r='3.2' fill='%23f97316'/%3E%3Ccircle cx='34' cy='33' r='3.2' fill='%23f97316'/%3E%3Ccircle cx='43' cy='33' r='3.2' fill='%23f97316'/%3E%3C/svg%3E") center / 100% no-repeat,var(--brand-fill)}.brand__name{font-size:1.05rem;letter-spacing:-.02em}@media(min-width:720px){.page{padding:var(--sp-6) var(--sp-5) var(--sp-7)}h1{font-size:1.65rem}}@media(min-width:960px){.page{padding:40px var(--sp-6) var(--sp-7)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.route-fallback{min-height:60vh}
