@layer base{.O{--viewport-padding: var(--spacing-4);--toast-width: 360px;--toast-border-radius: var(--radius);--toast-font-family: var(--font-family-base);--toast-animation-duration: var(--animation-duration-normal)}.c{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-4);background-color:var(--card);color:var(--card-foreground);border-radius:var(--radius);box-shadow:var(--shadow-md);border:1px solid var(--border);width:var(--toast-width);position:relative;animation:k var(--toast-animation-duration) cubic-bezier(.16,1,.3,1);transition:transform .2s ease,opacity .2s ease}.c:focus{outline:none;box-shadow:var(--shadow-focus)}.c:hover{transform:translateY(-2px)}.P{flex:1;display:flex;flex-direction:column;gap:var(--spacing-1);min-width:0}.Q{font-weight:600;font-size:1rem;color:var(--card-foreground);line-height:1.4}.R{font-size:.875rem;color:var(--muted-foreground);line-height:1.4}.T{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:1.5rem;height:1.5rem;color:var(--primary)}.a{padding:var(--spacing-2) var(--spacing-3);background-color:var(--primary);color:var(--primary-foreground);border:none;border-radius:var(--radius-sm);font-weight:500;font-size:.875rem;cursor:pointer;transition:background-color var(--animation-duration-fast) ease;margin-left:var(--spacing-2);white-space:nowrap}.a:hover{background-color:color-mix(in srgb,var(--primary) 90%,black)}.a:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.a:active{background-color:color-mix(in srgb,var(--primary) 80%,black)}.e{padding:var(--spacing-2) var(--spacing-3);background-color:var(--lib-muted);color:var(--muted-foreground);border:none;border-radius:var(--radius-sm);font-weight:500;font-size:.875rem;cursor:pointer;transition:background-color var(--animation-duration-fast) ease;white-space:nowrap}.e:hover{background-color:color-mix(in srgb,var(--lib-muted) 80%,white)}.e:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.e:active{background-color:color-mix(in srgb,var(--lib-muted) 75%,white)}.v{position:absolute;top:var(--spacing-2);right:var(--spacing-2);display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:var(--radius-sm);background-color:transparent;color:var(--muted-foreground);border:none;cursor:pointer;opacity:.7;transition:opacity var(--animation-duration-fast) ease,background-color var(--animation-duration-fast) ease}.v:hover{opacity:1;background-color:var(--lib-muted)}.v:focus-visible{outline:none;box-shadow:var(--shadow-focus);opacity:1}:root[data-theme=dark] .c{border-color:var(--border)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .c{border-color:var(--border)}}:root[data-theme=dark] .a:hover{background-color:color-mix(in srgb,var(--primary) 90%,white)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .a:hover{background-color:color-mix(in srgb,var(--primary) 90%,white)}}:root[data-theme=dark] .a:active{background-color:color-mix(in srgb,var(--primary) 80%,white)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .a:active{background-color:color-mix(in srgb,var(--primary) 80%,white)}}:root[data-theme=dark] .e:hover{background-color:color-mix(in srgb,var(--lib-muted) 80%,black)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .e:hover{background-color:color-mix(in srgb,var(--lib-muted) 80%,black)}}:root[data-theme=dark] .e:active{background-color:color-mix(in srgb,var(--lib-muted) 70%,black)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .e:active{background-color:color-mix(in srgb,var(--lib-muted) 70%,black)}}@keyframes k{0%{transform:translate(calc(100% + var(--viewport-padding)));opacity:0}to{transform:translate(0);opacity:1}}}@layer base{.V{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);padding:var(--spacing-1) var(--spacing-3);font-size:.875rem;font-weight:500;line-height:1.25;white-space:nowrap;transition:background-color var(--animation-duration-fast) ease-in-out;cursor:default;user-select:none}.w{background-color:var(--primary);color:var(--primary-foreground);border:1px solid}.w:hover{background-color:color-mix(in srgb,var(--primary) 80%,transparent)}.F{background-color:color-mix(in srgb,var(--error) 15%,var(--surface));color:var(--error);border:1px solid color-mix(in srgb,var(--error) 20%,var(--surface))}.F:hover{background-color:color-mix(in srgb,var(--error) 25%,var(--surface))}.z{background-color:var(--secondary);color:var(--secondary-foreground);border:1px solid}.z:hover{background-color:color-mix(in srgb,var(--secondary) 80%,transparent)}.A{background-color:transparent;color:var(--foreground);border:1px solid var(--border)}.A:hover{background-color:color-mix(in srgb,var(--foreground) 5%,transparent)}.B{background-color:color-mix(in srgb,var(--success) 15%,var(--surface));color:var(--success);border:1px solid color-mix(in srgb,var(--success) 20%,var(--surface))}.B:hover{background-color:color-mix(in srgb,var(--success) 25%,var(--surface))}.D{background-color:color-mix(in srgb,var(--warning) 15%,var(--surface));color:var(--warning);border:1px solid color-mix(in srgb,var(--warning) 20%,var(--surface))}.D:hover{background-color:color-mix(in srgb,var(--warning) 25%,var(--surface))}}@layer base{.E{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;margin:0;border-bottom:1px solid var(--border);flex-shrink:0}.E::-webkit-scrollbar{display:none}.r{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-family-base);font-size:.9rem;font-weight:500;color:var(--muted-foreground);background-color:transparent;padding:var(--spacing-3) var(--spacing-4);border:none;border-radius:0;cursor:pointer;position:relative;transition:color var(--animation-duration-normal) cubic-bezier(.22,1,.36,1);white-space:nowrap}.r:hover{color:var(--foreground)}.r[data-state=active]{color:var(--primary);font-weight:600}.r[data-state=active]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background-color:var(--primary);transform-origin:center;transition:transform var(--animation-duration-normal) cubic-bezier(.22,1,.36,1);transform:scaleX(1)}.r:not([data-state=active]):hover:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background-color:color-mix(in srgb,var(--muted-foreground) 30%,transparent);transform-origin:center;transform:scaleX(.6);transition:transform var(--animation-duration-normal) cubic-bezier(.22,1,.36,1),background-color var(--animation-duration-normal) cubic-bezier(.22,1,.36,1)}.r:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-sm)}.r[disabled]{opacity:.5;cursor:not-allowed;color:var(--muted-foreground)}.j{color:var(--foreground);outline:none}.j[hidden]{display:none!important}:root[data-theme=dark] .r[data-state=active]:after{background-color:var(--primary)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .r[data-state=active]:after{background-color:var(--primary)}}:root[data-theme=dark] .r:not([data-state=active]):hover:after{background-color:color-mix(in srgb,var(--muted-foreground) 40%,transparent)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .r:not([data-state=active]):hover:after{background-color:color-mix(in srgb,var(--muted-foreground) 40%,transparent)}}}@layer base{.g{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);font-family:var(--font-family-base);font-weight:500;border-radius:var(--radius);white-space:nowrap;text-decoration:none;cursor:pointer;transition:background-color var(--animation-duration-fast) ease,border-color var(--animation-duration-fast) ease,color var(--animation-duration-fast) ease,box-shadow var(--animation-duration-fast) ease;outline:none;border:1px solid transparent;position:relative}.g:focus-visible{box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--primary);outline:none}.C{height:1.5rem;padding:0 var(--spacing-2);font-size:.875rem}.X{height:2.5rem;padding:0 var(--spacing-3);font-size:.9375rem}.S{height:3rem;padding:0 var(--spacing-4);font-size:1rem;border-radius:var(--radius-md)}.I,.M{width:2rem;height:2rem;padding:0}.G{width:1.5rem;height:1.5rem;padding:0}.U{width:2.5rem;height:2.5rem;padding:0;border-radius:var(--radius-md)}.g svg{flex-shrink:0}.C svg,.G svg{width:1rem;height:1rem}.X svg,.I svg,.M svg{width:1.25rem;height:1.25rem}.S svg,.U svg{width:1.5rem;height:1.5rem}.l{background-color:var(--primary);color:var(--primary-foreground);border-color:var(--primary);--spinner-color: var(--primary-foreground)}.l:hover{background-color:color-mix(in oklch,var(--primary) 90%,var(--primary-foreground));border-color:color-mix(in oklch,var(--primary) 90%,var(--primary-foreground))}.l:active{background-color:color-mix(in oklch,var(--primary) 85%,var(--primary-foreground));border-color:color-mix(in oklch,var(--primary) 85%,var(--primary-foreground))}.b{background-color:var(--secondary);color:var(--secondary-foreground);border-color:var(--secondary);--spinner-color: var(--secondary-foreground)}.b:hover{background-color:color-mix(in oklch,var(--secondary) 90%,var(--secondary-foreground));border-color:color-mix(in oklch,var(--secondary) 90%,var(--secondary-foreground))}.b:active{background-color:color-mix(in oklch,var(--secondary) 85%,var(--secondary-foreground));border-color:color-mix(in oklch,var(--secondary) 85%,var(--secondary-foreground))}.t{background-color:var(--error);color:var(--error-foreground);border-color:var(--error);--spinner-color: var(--error-foreground)}.t:hover{background-color:color-mix(in oklch,var(--error) 90%,var(--error-foreground));border-color:color-mix(in oklch,var(--error) 90%,var(--error-foreground))}.t:active{background-color:color-mix(in oklch,var(--error) 85%,var(--error-foreground));border-color:color-mix(in oklch,var(--error) 85%,var(--error-foreground))}.t:focus-visible{box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--error)}.m{background-color:transparent;border-color:var(--primary);color:var(--primary);--spinner-color: var(--primary)}.m:hover{background-color:color-mix(in oklch,var(--primary) 12%,var(--background));border-color:color-mix(in oklch,var(--primary) 90%,var(--primary-foreground));color:color-mix(in oklch,var(--primary) 90%,var(--primary-foreground))}.m:active{background-color:color-mix(in oklch,var(--primary) 15%,var(--background));border-color:color-mix(in oklch,var(--primary) 85%,var(--primary-foreground));color:color-mix(in oklch,var(--primary) 85%,var(--primary-foreground))}.p{background-color:transparent;border-color:transparent;--spinner-color: var(--primary)}.p:hover{background-color:color-mix(in oklch,var(--primary) 12%,var(--background));color:color-mix(in oklch,var(--primary) 90%,var(--primary-foreground))}.p:active{background-color:color-mix(in oklch,var(--primary) 15%,var(--background));color:color-mix(in oklch,var(--primary) 85%,var(--primary-foreground))}.d{background-color:transparent;color:var(--primary);height:auto;padding:0;text-decoration:none;border:none;border-radius:0;min-height:2.75rem;display:inline-flex;align-items:center;--spinner-color: var(--primary)}.d:hover{text-decoration:underline;color:color-mix(in oklch,var(--primary) 90%,var(--primary-foreground));background-color:transparent}.d:active{color:color-mix(in oklch,var(--primary) 85%,var(--primary-foreground));background-color:transparent}.d:focus-visible{box-shadow:0 0 0 2px var(--primary);outline:none;border-radius:.25rem}.W{opacity:.5;cursor:not-allowed;pointer-events:none}:root[data-theme=dark] .l:focus-visible,:root[data-theme=dark] .m:focus-visible,:root[data-theme=dark] .p:focus-visible{box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--primary)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .l:focus-visible,:root:not([data-theme=light]) .m:focus-visible,:root:not([data-theme=light]) .p:focus-visible{box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--primary)}}:root[data-theme=dark] .t:focus-visible{box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--error)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .t:focus-visible{box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--error)}}:root[data-theme=dark] .d:focus-visible{box-shadow:0 0 0 2px var(--primary)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .d:focus-visible{box-shadow:0 0 0 2px var(--primary)}}}@layer base{.Z{width:100%;height:.5rem;background-color:var(--lib-muted);border-radius:var(--radius-full);overflow:hidden;box-shadow:var(--shadow);position:relative}._{position:absolute;width:100%;height:100%;background-color:var(--primary);border-radius:var(--radius-full);transform:translate(-100%);transition:transform var(--animation-duration-normal) ease-out}}@layer base{.rr{display:grid;gap:var(--spacing-2)}.i{position:relative;width:1.25rem;height:1.25rem;border:2px solid var(--border);border-radius:var(--radius-full);background-color:transparent;cursor:pointer;margin:0;padding:0;transition:all var(--animation-duration-normal) cubic-bezier(.16,1,.3,1);appearance:none;flex-shrink:0}.i:hover{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 15%,transparent)}.i:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-color:var(--primary)}.i[data-state=checked]{border-color:var(--primary);transform:scale(1);animation:Y var(--animation-duration-normal) cubic-bezier(.16,1,.3,1)}.i:disabled{opacity:.5;cursor:not-allowed;border-color:var(--lib-muted)}.or{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative;padding:0}.u{width:.5rem;height:.5rem;border-radius:var(--radius-full);background-color:var(--primary);transform:scale(0);transition:transform var(--animation-duration-normal) cubic-bezier(.16,1,.3,1)}.i[data-state=checked] .u{transform:scale(1);animation:H var(--animation-duration-normal) cubic-bezier(.16,1,.3,1)}.i:disabled .u{background-color:var(--lib-muted)}@keyframes Y{0%{transform:scale(.95);box-shadow:0 0 color-mix(in srgb,var(--primary) 40%,transparent)}70%{transform:scale(1.02);box-shadow:0 0 0 6px color-mix(in srgb,var(--primary) 0%,transparent)}to{transform:scale(1);box-shadow:0 0 color-mix(in srgb,var(--primary) 0%,transparent)}}@keyframes H{0%{transform:scale(0);opacity:0}50%{opacity:1}to{transform:scale(1);opacity:1}}}@layer base{.f{border-radius:var(--radius);background-color:var(--card);color:var(--card-foreground);overflow:hidden;margin-bottom:var(--spacing-4);box-shadow:var(--shadow);transition:box-shadow var(--animation-duration-normal) ease}.f:hover:not(:has(.o:disabled)){box-shadow:var(--shadow-md)}.f:has(.o:disabled){opacity:.6;box-shadow:var(--shadow)}.ar{display:flex}.o{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-4) var(--spacing-6);font-family:var(--font-family-heading);font-weight:400;line-height:1.5;letter-spacing:-.01em;text-align:left;background-color:transparent;color:inherit;border:none;cursor:pointer;transition:opacity var(--animation-duration-fast) ease}.o:hover:not(:disabled){opacity:.8}.o:active:not(:disabled){opacity:.7}.o:disabled{opacity:.6;cursor:not-allowed;color:var(--muted-foreground)}.o:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.x{width:1rem;height:1rem;transition:transform var(--animation-duration-normal) cubic-bezier(.16,1,.3,1);flex-shrink:0;color:var(--muted-foreground)}.o:disabled .x{color:var(--muted-foreground);opacity:.5}.o[data-state=open] .x{transform:rotate(180deg)}.J{overflow:hidden;background-color:transparent;color:inherit;animation:K var(--animation-duration-normal) cubic-bezier(.16,1,.3,1)}.J[data-state=open]{animation:L var(--animation-duration-normal) cubic-bezier(.16,1,.3,1)}.er{padding:var(--spacing-3) var(--spacing-6) var(--spacing-4);color:var(--muted-foreground);font-size:.95rem;line-height:1.6}@keyframes K{0%{height:var(--radix-accordion-content-height)}to{height:0}}@keyframes L{0%{height:0}to{height:var(--radix-accordion-content-height)}}}@layer base{.ir{position:relative;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.n{appearance:none;position:relative;width:1.25rem;height:1.25rem;border:2px solid var(--border);border-radius:var(--radius-sm);background-color:transparent;cursor:pointer;margin:0;padding:0;transition:all var(--animation-duration-normal) cubic-bezier(.16,1,.3,1)}.n:hover{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 15%,transparent)}.n:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-color:var(--primary)}.n:checked{background-color:var(--primary);border-color:var(--primary);transform:scale(1);animation:N var(--animation-duration-normal) cubic-bezier(.16,1,.3,1)}.n:disabled{opacity:.5;cursor:not-allowed;background-color:var(--lib-muted);border-color:var(--lib-muted)}.y{position:absolute;width:1rem;height:1rem;color:var(--primary-foreground);pointer-events:none;opacity:0;transform:scale(.8);transition:opacity var(--animation-duration-normal) cubic-bezier(.16,1,.3,1),transform var(--animation-duration-normal) cubic-bezier(.16,1,.3,1)}.n:checked+.y{opacity:1;transform:scale(1)}.n:disabled+.y{color:var(--muted-foreground)}@keyframes N{0%{transform:scale(.95);box-shadow:0 0 color-mix(in srgb,var(--primary) 40%,transparent)}70%{transform:scale(1.02);box-shadow:0 0 0 6px color-mix(in srgb,var(--primary) 0%,transparent)}to{transform:scale(1);box-shadow:0 0 color-mix(in srgb,var(--primary) 0%,transparent)}}}:root{--radius: 8px;--radius-sm: 6px;--bw: 2px;--btn-line: var(--line);--icon-stroke: 2;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--font: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-head: "Space Grotesk", var(--font);--tabbar-h: 64px;color-scheme:light;--bg: #F4F1EC;--card: #FFFFFF;--ink: #1D1A18;--muted: #5F5650;--line: #D9D2C9;--primary: #B83A26;--primary-ink: #FFFFFF;--primary-text: #A02D1B;--primary-fill: var(--primary);--surface: #F6E6E0;--accent: #8F5A00;--danger: #B42318;--shadow: 0 1px 0 rgba(29,26,24,.12)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #1A1311;--card: #261C19;--ink: #F6EFEA;--muted: #BDAEA6;--line: #4A3A34;--primary: #E2573F;--primary-ink: #1A1311;--primary-text: #F4907C;--primary-fill: var(--primary);--surface: #3A2420;--accent: #F2B33D;--danger: #FF8A80;--shadow: none}}:root[data-theme=dark]{color-scheme:dark;--bg: #1A1311;--card: #261C19;--ink: #F6EFEA;--muted: #BDAEA6;--line: #4A3A34;--primary: #E2573F;--primary-ink: #1A1311;--primary-text: #F4907C;--primary-fill: var(--primary);--surface: #3A2420;--accent: #F2B33D;--danger: #FF8A80;--shadow: none}:root{--background: var(--bg);--foreground: var(--ink);--card-foreground: var(--ink);--popup: var(--card);--popup-foreground: var(--ink);--surface-foreground: var(--ink);--primary-foreground: var(--primary-ink);--secondary: var(--surface);--secondary-foreground: var(--primary-text);--accent-foreground: var(--ink);--muted-foreground: var(--muted);--lib-muted: color-mix(in srgb, var(--ink) 8%, var(--bg));--border: var(--line);--error: var(--danger);--error-foreground: var(--card);--success: #1F7A4D;--success-foreground: #FFFFFF;--warning: #F5C542;--warning-foreground: #3A2400;--info: #1F5FCC;--info-foreground: #FFFFFF;--font-family-base: var(--font);--font-family-heading: var(--font-head);--font-family-monospace: ui-monospace, "SF Mono", Menlo, monospace;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-12: 3rem;--spacing-16: 4rem;--spacing-20: 5rem;--radius-md: var(--radius);--radius-lg: calc(var(--radius) * 1.4);--radius-full: 999px;--shadow-md: 0 8px 24px color-mix(in srgb, var(--ink) 12%, transparent);--shadow-lg: 0 16px 40px color-mix(in srgb, var(--ink) 18%, transparent);--shadow-focus: 0 0 0 3px color-mix(in srgb, var(--primary) 40%, transparent);--animation-duration-fast: .12s;--animation-duration-normal: .22s;--animation-duration-slow: .4s;--z-content: 1;--z-overlay: 400;--chart-color-1: var(--primary);--chart-color-2: var(--accent);--chart-color-3: var(--info);--chart-color-4: var(--success);--chart-color-5: var(--warning)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--success: #5FD39A;--success-foreground: #0B2A1B;--info: #7DB0FF;--info-foreground: #08203F}}:root[data-theme=dark]{--success: #5FD39A;--success-foreground: #0B2A1B;--info: #7DB0FF;--info-foreground: #08203F}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/24px var(--font);-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,p{margin:0}h1,h2,h3,.display,.title{font-family:var(--font-head)}.lucide{stroke-width:var(--icon-stroke)}.display{font-size:32px;line-height:36px;font-weight:700;letter-spacing:-.5px}.title{font-size:22px;line-height:28px;font-weight:700}.small{font-size:13px;line-height:18px;color:var(--muted)}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.app{min-height:100%;display:flex;flex-direction:column}.screen{flex:1;padding:var(--s4) var(--s4) calc(var(--tabbar-h) + var(--s5) + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--s4)}.header{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);min-height:56px;background:var(--card);border-bottom:var(--bw) solid var(--line);position:sticky;top:0;z-index:5}.header h1{font-size:18px;line-height:24px;font-weight:700;flex:1}.card{background:var(--card);border:var(--bw) solid var(--line);border-radius:var(--radius);padding:var(--s4);box-shadow:var(--shadow)}.btn{min-height:48px;padding:0 var(--s5);border:var(--bw) solid var(--btn-line);border-radius:var(--radius-sm);font:600 16px var(--font);background:var(--primary-fill);color:var(--primary-ink);box-shadow:var(--shadow);display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);cursor:pointer;transition:transform .15s,opacity .15s}.btn:active{transform:scale(.98)}.btn[disabled]{opacity:.5;cursor:not-allowed}.btn.secondary{background:var(--surface);color:var(--primary-text);box-shadow:none}.btn.block{width:100%}.icon-btn{width:44px;height:44px;border:0;background:transparent;border-radius:50%;display:grid;place-items:center;color:var(--ink);cursor:pointer}.field{display:flex;flex-direction:column;gap:var(--s2)}.field label{font-weight:600;font-size:14px}.input{min-height:48px;padding:0 var(--s4);border:var(--bw) solid var(--line);border-radius:var(--radius-sm);font:400 16px var(--font);background:var(--card);color:var(--ink);width:100%}.input.error{border-color:var(--danger)}.error-text{color:var(--danger);font-size:13px}.list{display:flex;flex-direction:column}.row{display:flex;align-items:center;gap:var(--s3);min-height:64px;padding:var(--s3) 0;border-bottom:var(--bw) solid var(--line);background:none;border-left:0;border-right:0;border-top:0;text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer}.row .grow{flex:1;min-width:0}.card .row:last-child,.list .row:last-child{border-bottom:0}.row.card{border:var(--bw) solid var(--line);padding:var(--s4);margin-bottom:var(--s3);min-height:0}.row.card:last-child{border-bottom:var(--bw) solid var(--line);margin-bottom:0}.row .grow strong{display:block;font-weight:600}.avatar{width:44px;height:44px;border-radius:50%;background:var(--surface);color:var(--primary-text);display:grid;place-items:center;font-weight:700}.chip{display:inline-block;padding:2px 10px;border-radius:999px;background:var(--surface);color:var(--primary-text);font-size:13px;font-weight:600}.tabbar{position:fixed;left:0;right:0;bottom:0;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:flex;background:var(--card);border-top:var(--bw) solid var(--line);z-index:10}.tab{flex:1;min-height:44px;border:0;background:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font:600 12px var(--font);color:var(--muted);cursor:pointer}.tab[aria-selected=true]{color:var(--primary-text)}.empty{text-align:center;padding:var(--s6) var(--s4);display:flex;flex-direction:column;align-items:center;gap:var(--s3)}.empty .ring{width:72px;height:72px;border-radius:50%;background:var(--surface);color:var(--primary-text);display:grid;place-items:center}.skeleton{background:linear-gradient(90deg,var(--surface),var(--bg),var(--surface));background-size:200% 100%;animation:shimmer 1.2s infinite;border-radius:var(--radius-sm);min-height:20px}@keyframes shimmer{to{background-position:-200% 0}}.block{width:100%}.lead{margin-top:var(--s2)}.section-title{margin-bottom:var(--s3)}.eyebrow{font:700 13px/18px var(--font-head);letter-spacing:1px;text-transform:uppercase;color:var(--primary-text);margin-bottom:var(--s2)}.grow{flex:1;min-width:0}.grow>strong,.grow>.small{display:block}.hero{display:flex;flex-direction:column;gap:var(--s4);border-top:6px solid var(--primary)}.hero-text{display:flex;flex-direction:column;gap:var(--s1)}.hero-progress{width:100%}.wall{display:flex;flex-direction:column-reverse;gap:4px;width:100%;max-width:320px;margin:0 auto}.wall-course{display:flex;gap:4px}.brick{flex:1;height:22px;border-radius:3px;background:var(--surface);border:var(--bw) solid var(--line);transition:background .2s,border-color .2s}.brick.half{flex:.5}.brick.laid{background:var(--primary);border-color:var(--primary)}.list{background:var(--card);border:var(--bw) solid var(--line);border-radius:var(--radius);padding:0 var(--s4)}a.row{text-decoration:none}.lesson-row .num{width:36px;height:36px;flex:none;border-radius:var(--radius-sm);background:var(--surface);color:var(--primary-text);display:grid;place-items:center;font:700 16px var(--font-head)}.lesson-row .num.done{background:var(--primary);color:var(--primary-ink)}.meta{display:flex;align-items:center;gap:var(--s2);flex:none}.meta.right{flex-direction:column;align-items:flex-end;gap:var(--s1)}.mins{display:inline-flex;align-items:center;gap:4px}.finish{display:flex;align-items:center;gap:var(--s3);color:var(--primary-text)}.finish p{color:var(--ink)}.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s3)}.step{display:flex;align-items:flex-start;gap:var(--s3)}.step-num{width:32px;height:32px;flex:none;border-radius:var(--radius-sm);background:var(--primary);color:var(--primary-ink);display:grid;place-items:center;font:700 16px var(--font-head)}.step-title{font-size:18px;line-height:24px;font-weight:700;margin-bottom:var(--s1)}.tip{display:flex;gap:var(--s3);align-items:flex-start;background:var(--surface);border-left:6px solid var(--accent);border-radius:var(--radius-sm);padding:var(--s4)}.tip svg{flex:none;color:var(--accent)}.quiz{display:flex;flex-direction:column;gap:var(--s3)}.quiz-q{font-weight:600}.option{display:flex;align-items:center;gap:var(--s3);min-height:52px;padding:var(--s2) var(--s4);border:var(--bw) solid var(--line);border-radius:var(--radius-sm);background:var(--card);cursor:pointer}.option span{flex:1}.option.right{border-color:var(--success)}.option.wrong{border-color:var(--danger)}.answer{padding:var(--s3) var(--s4);border-radius:var(--radius-sm);background:var(--surface);border-left:6px solid var(--line)}.answer.right{border-left-color:var(--success)}.answer.wrong{border-left-color:var(--danger)}.bond-card{display:flex;flex-direction:column;gap:var(--s3)}.bond-svg{width:100%;height:auto;display:block}.bond-s{fill:var(--primary)}.bond-h{fill:var(--accent)}.bond-q{fill:var(--muted)}.bond-key{display:flex;flex-wrap:wrap;gap:var(--s4);font-size:13px;color:var(--muted)}.bond-key span{display:inline-flex;align-items:center;gap:var(--s2)}.key{width:14px;height:14px;border-radius:2px;display:inline-block}.key.s{background:var(--primary)}.key.h{background:var(--accent)}.key.q{background:var(--muted)}.checklist{padding-top:0;padding-bottom:0}.check-row{display:flex;align-items:center;gap:var(--s3);min-height:60px;padding:var(--s3) 0;border-bottom:var(--bw) solid var(--line);cursor:pointer}.check-row:last-child{border-bottom:0}.price{font-weight:600;font-size:13px;white-space:nowrap}.route-trigger{display:flex;align-items:center;gap:var(--s3);text-align:left}.note{display:flex;flex-direction:column;gap:var(--s2)}.link{display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;color:var(--primary-text);font-weight:600;text-decoration:underline}@media(min-width:900px){.app{max-width:720px;margin:0 auto;width:100%}.tabbar{max-width:720px;left:50%;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
