.ll-svg{display:block;width:100%;height:100%}.ll-tally path{fill:none;stroke:var(--ink-primary);stroke-opacity:.16;stroke-width:2.5;stroke-linecap:round}.ll-bar--coral{fill:var(--accent-coral)}.ll-bar--blue{fill:var(--accent-blue)}.ll-bar{transform-box:fill-box;transform-origin:50% 100%;animation:ll-pulse 2.4s ease-in-out infinite}.ll-spin{transform-origin:430px 395px;animation:ll-turn 40s linear infinite}.ll-rim{fill:color-mix(in srgb,var(--ink-primary) 34%,var(--surface-primary))}.ll-rim-relief{fill:none;stroke:var(--surface-raised);stroke-width:7;stroke-opacity:.55}.ll-flange{fill:color-mix(in srgb,var(--ink-primary) 22%,var(--surface-primary));stroke:var(--ink-primary);stroke-opacity:.28;stroke-width:2}.ll-face{fill:var(--surface-raised);stroke:var(--ink-primary);stroke-opacity:.35;stroke-width:3}.ll-groove{fill:none;stroke:var(--ink-primary);stroke-opacity:.2;stroke-width:1}.ll-label{fill:var(--accent-coral)}.ll-label-ring{fill:none;stroke:var(--ink-on-accent);stroke-opacity:.55;stroke-width:1.5}.ll-hl,.ll-weight{fill:var(--ink-on-accent);font-family:var(--font-sans);font-weight:800}.ll-hl{font-size:44px;letter-spacing:2px}.ll-weight{font-size:34px;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.ll-unit{font-size:15px;font-weight:700}.ll-spindle-ring{fill:color-mix(in srgb,var(--ink-primary) 22%,var(--accent-coral))}.ll-spindle{fill:var(--surface-primary);stroke:var(--ink-primary);stroke-opacity:.5;stroke-width:2}.ll-sheen{fill:var(--ink-primary);fill-opacity:.07}@keyframes ll-turn{to{transform:rotate(360deg)}}@keyframes ll-pulse{0%,to{transform:scaleY(1)}50%{transform:scaleY(.78)}}@media(prefers-reduced-motion:reduce){.ll-spin,.ll-bar{animation:none}}.auth-screen{position:relative;min-height:100svh;display:grid;grid-template-rows:38svh auto 1fr;background:var(--surface-primary);color:var(--ink-primary)}.auth-theme{position:absolute;top:var(--space-3);right:var(--space-3);z-index:2}.auth-art{position:relative;overflow:hidden;min-height:0}.auth-brand{display:flex;align-items:center;gap:var(--space-3);width:100%;max-width:480px;margin:0 auto;padding:var(--space-3) var(--space-4) 0}.auth-tagline{margin:0;font-size:var(--type-caption-size);line-height:var(--type-caption-line);color:var(--ink-secondary)}.auth-panel{width:100%;max-width:480px;margin:0 auto;padding:var(--space-3) var(--space-4) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.auth-notice{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-small);background:var(--state-error-bg);color:var(--state-error);font-size:var(--type-body-small-size);line-height:var(--type-body-small-line)}.auth-legal{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--space-2);color:var(--ink-secondary)}.auth-legal button{min-height:var(--size-target);padding:0 var(--space-2);background:none;border:none;color:var(--ink-secondary);font:inherit;font-size:var(--type-caption-size);text-decoration:underline;cursor:pointer}.auth-legal button:hover{color:var(--ink-primary)}@media(min-width:900px){.auth-screen{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-rows:100svh}.auth-art{grid-column:1;grid-row:1;background:var(--surface-muted)}.auth-brand{position:absolute;top:var(--space-6);left:var(--space-6);z-index:1;width:auto;max-width:55%;margin:0;padding:0}.auth-panel{grid-column:2;grid-row:1}.auth-brand .brand-title{font-size:var(--type-subhead-size);line-height:var(--type-subhead-line)}.auth-tagline{font-size:var(--type-body-size);line-height:var(--type-body-line)}.auth-panel{justify-content:center;padding:var(--space-6)}}.legal-screen{position:relative;min-height:100svh;padding:var(--space-4);background:var(--surface-primary);color:var(--ink-primary)}.legal-back{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--size-target);padding:0 var(--space-3);background:none;border:none;color:var(--ink-primary);font:inherit;cursor:pointer}.legal-body{max-width:720px;margin:0 auto;padding:var(--space-4) 0 var(--space-8);font-size:var(--type-body-small-size);line-height:var(--type-body-small-line)}.legal-body h1{font-size:var(--type-subhead-size);line-height:var(--type-subhead-line);margin-bottom:var(--space-4)}.legal-body h3{margin:var(--space-4) 0 var(--space-1);font-size:var(--type-body-size)}.legal-body p{margin:0 0 var(--space-2);color:var(--ink-secondary)}.rb-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;background:var(--surface-primary);color:var(--ink-primary)}.rb-bar{flex:none;border-bottom:1px solid var(--border-input);background:var(--surface-primary);padding-top:env(safe-area-inset-top,0px)}.rb-col{width:100%;max-width:720px;margin:0 auto;padding-left:var(--space-4);padding-right:var(--space-4)}.rb-bar .rb-col{display:flex;align-items:center;gap:var(--space-2);min-height:64px}.rb-bar h1{flex:1;min-width:0;font-size:var(--type-body-size);line-height:var(--type-body-line);font-weight:var(--weight-bold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rb-scroll{flex:1;overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(var(--space-9) + env(safe-area-inset-bottom,0px))}.rb-stack{display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-4)}.rb-icon-btn{flex:none;display:inline-flex;align-items:center;justify-content:center;width:var(--touch-min);height:var(--touch-min);background:none;border:1px solid transparent;border-radius:var(--radius-md);color:var(--ink-primary);cursor:pointer}.rb-icon-btn:hover:not(:disabled){background:var(--hover-bg)}.rb-icon-btn:disabled{color:var(--ink-secondary);opacity:.45;cursor:not-allowed}.rb-icon-btn--danger{color:var(--state-error)}.rb-field{display:flex;flex-direction:column;gap:6px;min-width:0}.rb-label{font-size:var(--type-caption-size);line-height:var(--type-caption-line);font-weight:var(--weight-caption);color:var(--ink-secondary)}.rb-error{font-size:var(--type-caption-size);line-height:var(--type-caption-line);color:var(--state-error)}.rb-input--invalid{border-color:var(--state-error)!important}.rb-textarea{min-height:72px;resize:vertical;line-height:1.4}.rb-switch{display:flex;align-items:center;gap:var(--space-3);min-height:var(--touch-min);cursor:pointer;font-size:var(--type-body-small-size)}.rb-switch input{width:24px;height:24px;accent-color:var(--accent-coral)}.rb-notice{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--surface-raised);border:1px solid var(--border-input);border-radius:var(--radius-lg);font-size:var(--type-body-small-size);line-height:var(--type-body-small-line)}.rb-notice--error{border-color:var(--state-error);background:var(--state-error-bg)}.rb-notice:focus{outline:none}.rb-notice--error ul{margin:0;padding:0;list-style:none}.rb-text{font-size:var(--type-body-small-size);line-height:var(--type-body-small-line);color:var(--ink-secondary)}.rb-notice-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.rb-link-btn{min-height:var(--touch-min);padding:0;background:none;border:none;color:inherit;font:inherit;text-align:left;text-decoration:underline;cursor:pointer}.rb-tabs{display:flex;gap:var(--space-2);overflow-x:auto;padding:var(--space-1) 0 var(--space-2);scrollbar-width:none}.rb-tabs::-webkit-scrollbar{display:none}.rb-tab{position:relative;flex:none;min-width:var(--touch-min);min-height:var(--touch-min);padding:0 var(--space-4);background:var(--surface-raised);border:var(--border-width-field) solid var(--border-input);border-radius:var(--radius-full);color:var(--ink-primary);font:inherit;font-weight:var(--weight-bold);cursor:pointer}.rb-tab[aria-selected=true]{background:var(--surface-inverted);border-color:var(--surface-inverted);color:var(--ink-on-inverted)}.rb-tab--add{display:inline-flex;align-items:center;justify-content:center;padding:0;border-style:dashed;color:var(--ink-secondary)}.rb-tab-dot{position:absolute;top:8px;right:8px;width:10px;height:10px;border-radius:50%;background:var(--state-error);border:2px solid var(--surface-primary)}.rb-day-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.rb-list{display:flex;flex-direction:column;gap:var(--space-3);list-style:none}.rb-ex{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);background:var(--surface-muted);border:1px solid var(--border-input);border-radius:var(--radius-lg)}.rb-ex--invalid{border-color:var(--state-error)}.rb-ex-head{display:flex;align-items:baseline;gap:var(--space-2);min-width:0}.rb-ex-index{flex:none;font-variant-numeric:tabular-nums;color:var(--ink-secondary);font-weight:var(--weight-bold)}.rb-ex-name{font-weight:var(--weight-bold);min-width:0;overflow-wrap:anywhere}.rb-ex-meta{font-size:var(--type-caption-size);line-height:var(--type-caption-line);color:var(--ink-secondary)}.rb-ex-summary{font-size:var(--type-body-small-size);font-variant-numeric:tabular-nums;color:var(--ink-primary)}.rb-ex-actions{display:flex;align-items:center;gap:4px}.rb-ex-toggle{flex:1;min-width:0;min-height:var(--touch-min);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:0 var(--space-3);background:var(--surface-raised);border:1px solid var(--border-input);border-radius:var(--radius-md);color:var(--ink-primary);font:inherit;font-weight:var(--weight-caption);cursor:pointer}.rb-editor{display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-input)}.rb-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.rb-stepper{display:flex;align-items:center;gap:4px}.rb-stepper input{flex:1;min-width:0;text-align:center;font-variant-numeric:tabular-nums}.rb-step-btn{flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:var(--touch-min);min-height:var(--touch-min);padding:0 var(--space-2);background:var(--surface-raised);border:1px solid var(--border-input);border-radius:var(--radius-md);color:var(--ink-primary);font:inherit;font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;cursor:pointer}.rb-step-btn:hover:not(:disabled){background:var(--hover-bg)}.rb-step-btn:disabled{opacity:.45;cursor:not-allowed}.rb-segmented{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:var(--surface-raised);border:1px solid var(--border-input);border-radius:var(--radius-md)}.rb-segmented button{min-height:40px;background:none;border:none;border-radius:var(--radius-sm);color:var(--ink-primary);font:inherit;font-weight:var(--weight-caption);cursor:pointer}.rb-segmented button[aria-pressed=true]{background:var(--surface-inverted);color:var(--ink-on-inverted)}.rb-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.rb-chip{min-width:var(--touch-min);min-height:var(--touch-min);padding:0 var(--space-3);background:var(--surface-raised);border:1px solid var(--border-input);border-radius:var(--radius-full);color:var(--ink-primary);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer}.rb-chip[aria-pressed=true]{background:var(--surface-inverted);border-color:var(--surface-inverted);color:var(--ink-on-inverted)}.rb-apply{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);background:var(--surface-primary);border:1px dashed var(--border-input);border-radius:var(--radius-md)}.rb-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;align-items:flex-end;justify-content:center;background:color-mix(in srgb,var(--ink-primary) 55%,transparent);animation:rb-fade var(--duration-hover) ease-out}:root[data-theme=dark] .rb-sheet-backdrop{background:color-mix(in srgb,var(--surface-primary) 78%,transparent)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .rb-sheet-backdrop{background:color-mix(in srgb,var(--surface-primary) 78%,transparent)}}.rb-sheet{display:flex;flex-direction:column;width:100%;max-width:640px;max-height:92dvh;background:var(--surface-primary);color:var(--ink-primary);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);border:1px solid var(--border-input);border-bottom:none;box-shadow:var(--shadow-float);animation:rb-rise .2s ease-out}.rb-sheet--tall{height:92dvh}.rb-sheet-head{flex:none;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4)}.rb-sheet-head h2{flex:1;font-size:var(--type-body-size);line-height:var(--type-body-line);font-weight:var(--weight-bold)}.rb-sheet-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 var(--space-4) var(--space-4)}.rb-sheet-foot{flex:none;padding:var(--space-3) var(--space-4);padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border-input);background:var(--surface-primary);display:flex;flex-direction:column;gap:var(--space-2)}.rb-picker-filters{flex:none;display:flex;flex-direction:column;gap:var(--space-2);padding:0 var(--space-4) var(--space-2)}.rb-search{position:relative}.rb-search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--ink-secondary);pointer-events:none}.rb-search input{padding-left:44px}.rb-filter-row{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none}.rb-filter-row::-webkit-scrollbar{display:none}.rb-filter-row .rb-chip{flex:none;white-space:nowrap}.rb-pick-list{display:flex;flex-direction:column;gap:var(--space-2);list-style:none}.rb-create-row{position:sticky;top:0;z-index:1;padding-bottom:var(--space-2);background:var(--surface-primary)}.rb-pick{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:56px;padding:var(--space-2) var(--space-3);background:var(--surface-muted);border:1px solid var(--border-input);border-radius:var(--radius-md);color:var(--ink-primary);font:inherit;text-align:left;cursor:pointer}.rb-pick[aria-checked=true]{border-color:var(--surface-inverted);background:var(--surface-raised)}.rb-pick[aria-disabled=true]{cursor:default;opacity:.75}.rb-pick-text{flex:1;min-width:0}.rb-pick-name{display:block;font-weight:var(--weight-caption)}.rb-pick-meta{display:block;font-size:var(--type-caption-size);line-height:var(--type-caption-line);color:var(--ink-secondary)}.rb-check{flex:none;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:var(--border-width-field) solid var(--border-input);color:transparent}.rb-pick[aria-checked=true] .rb-check{background:var(--surface-inverted);border-color:var(--surface-inverted);color:var(--ink-on-inverted)}.rb-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-4);text-align:center;color:var(--ink-secondary)}.rb-toast{position:fixed;left:var(--space-3);right:var(--space-3);bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));z-index:400;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);max-width:560px;margin:0 auto;padding:var(--space-1) var(--space-1) var(--space-1) var(--space-4);background:var(--surface-inverted);color:var(--ink-on-inverted);border-radius:var(--radius-md);box-shadow:var(--shadow-float);font-size:var(--type-body-small-size);line-height:var(--type-body-small-line);animation:rb-rise .2s ease-out}.rb-toast button{flex:none;min-width:var(--touch-min);min-height:var(--touch-min);padding:0 var(--space-4);background:none;border:none;color:inherit;font:inherit;font-weight:var(--weight-bold);text-decoration:underline;cursor:pointer}.rb-spin{animation:rb-spin 1s linear infinite}@keyframes rb-fade{0%{opacity:0}}@keyframes rb-rise{0%{opacity:0;transform:translateY(24px)}}@keyframes rb-spin{to{transform:rotate(360deg)}}@media(min-width:900px){.rb-sheet-backdrop{align-items:center}.rb-sheet{border-radius:var(--radius-lg);border-bottom:1px solid var(--border-input);max-height:86dvh}.rb-sheet--tall{height:86dvh}}@media(prefers-reduced-motion:reduce){.rb-sheet-backdrop,.rb-sheet,.rb-toast,.rb-spin{animation:none}}:root{--font-sans: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;--type-display-size: 80px;--type-display-line: 88px;--type-headline-size: 55px;--type-headline-line: 61px;--type-subhead-size: 32px;--type-subhead-line: 40px;--type-body-large-size: 24px;--type-body-large-line: 36px;--type-body-size: 18px;--type-body-line: 28px;--type-body-small-size: 15px;--type-body-small-line: 22px;--type-label-size: 16px;--type-label-line: 20px;--type-label-cta-size: 19px;--type-label-cta-line: 24px;--type-caption-size: 13px;--type-caption-line: 18px;--weight-regular: 400;--weight-caption: 600;--weight-bold: 700;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 40px;--space-8: 48px;--space-9: 64px;--space-nav: 82px;--space-10: 96px;--space-11: 120px;--radius-small: 12px;--radius-medium: 24px;--radius-large: 48px;--radius-full: 100px;--size-target: 44px;--border-width-field: 1.5px;--border-width-outline: 2px;--focus-ring-width: 3px;--duration-hover: .15s}@media(max-width:640px){:root{--type-headline-size: 36px;--type-headline-line: 42px;--type-subhead-size: 24px;--type-subhead-line: 32px;--type-body-large-size: 18px;--type-body-large-line: 28px}}:root,:root[data-theme=light]{color-scheme:light;--surface-primary: #f3efe4;--surface-muted: #f3f3f3;--surface-raised: #ffffff;--surface-inverted: #16233f;--surface-header: rgba(243, 239, 228, .8);--ink-primary: #1f2f54;--ink-secondary: rgba(31, 47, 84, .75);--ink-on-accent: #ffffff;--ink-on-inverted: #ffffff;--accent-coral: #ff4363;--accent-blue: #3d60de;--accent-orange: #fba91c;--accent-gold: #b08a1d;--blob-opacity: 1;--border-input: rgba(31, 47, 84, .18);--state-success: #075a37;--state-error: #b82418;--shadow-float: 0 24px 48px rgba(31, 47, 84, .18);--shadow-button: 0 8px 16px rgba(255, 67, 99, .28);--display-word-opacity: .07;--chip-rest-bg: transparent}:root[data-theme=dark]{color-scheme:dark;--surface-primary: #0f1a30;--surface-muted: #1a2745;--surface-raised: #223256;--surface-inverted: #f3efe4;--surface-header: rgba(15, 26, 48, .8);--ink-primary: #f3efe4;--ink-secondary: rgba(243, 239, 228, .72);--ink-on-accent: #ffffff;--ink-on-inverted: #0f1a30;--accent-coral: #ff4363;--accent-blue: #8fa8ff;--accent-orange: #fba91c;--accent-gold: #b08a1d;--blob-opacity: .88;--border-input: rgba(243, 239, 228, .26);--state-success: #3ddc97;--state-error: #ff7a6e;--shadow-float: 0 24px 48px rgba(0, 0, 0, .45);--shadow-button: 0 8px 16px rgba(255, 67, 99, .32);--display-word-opacity: .06;--chip-rest-bg: var(--surface-raised)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){color-scheme:dark;--surface-primary: #0f1a30;--surface-muted: #1a2745;--surface-raised: #223256;--surface-inverted: #f3efe4;--surface-header: rgba(15, 26, 48, .8);--ink-primary: #f3efe4;--ink-secondary: rgba(243, 239, 228, .72);--ink-on-inverted: #0f1a30;--accent-blue: #8fa8ff;--blob-opacity: .88;--border-input: rgba(243, 239, 228, .26);--state-success: #3ddc97;--state-error: #ff7a6e;--shadow-float: 0 24px 48px rgba(0, 0, 0, .45);--shadow-button: 0 8px 16px rgba(255, 67, 99, .32);--display-word-opacity: .06;--chip-rest-bg: var(--surface-raised)}}:root{--field-bg: var(--surface-raised);--hover-bg: color-mix(in srgb, var(--ink-primary) 7%, transparent);--state-success-bg: color-mix(in srgb, var(--state-success) 14%, transparent);--state-error-bg: color-mix(in srgb, var(--state-error) 14%, transparent);--focus-ring: var(--accent-blue)}:root{--icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");--icon-alert: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7.5v5M12 16.5v.01'/%3E%3C/svg%3E");--icon-progress: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3a9 9 0 1 0 9 9'/%3E%3C/svg%3E");--icon-trash: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M10 11v6M14 11v6M6 7l1 12a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2l1-12M9 7V4h6v3'/%3E%3C/svg%3E")}.hss-surface{background:var(--surface-primary);color:var(--ink-primary);font-family:var(--font-sans);font-size:var(--type-body-size);line-height:var(--type-body-line);font-weight:var(--weight-regular)}.hss-surface *{box-sizing:border-box}.hss-icon{width:20px;height:20px;fill:currentColor;flex:none}.hss-icon-24{width:24px;height:24px}:where(.hss-btn,.hss-chip,.hss-iconbtn,.hss-bar):focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:2px}.hss-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--size-target);padding:10px var(--space-5);border:var(--border-width-outline) solid transparent;border-radius:var(--radius-full);font:var(--weight-bold) var(--type-label-size)/var(--type-label-line) var(--font-sans);cursor:pointer;transition:transform var(--duration-hover) ease,background-color var(--duration-hover) ease}.hss-btn:hover{transform:translateY(-2px)}.hss-btn:active{transform:none}.hss-btn-sm{padding:10px var(--space-5)}.hss-btn-primary{min-height:64px;padding:var(--space-5) var(--space-7);background:var(--accent-coral);color:var(--ink-on-accent);font-size:var(--type-label-cta-size);line-height:var(--type-label-cta-line);box-shadow:var(--shadow-button)}.hss-btn-inverse{background:var(--surface-inverted);color:var(--ink-on-inverted)}.hss-btn-secondary,.hss-btn-tertiary{background:transparent;color:var(--ink-primary);border-color:var(--ink-primary)}.hss-btn-tertiary:hover,.hss-btn-secondary:hover{background:var(--hover-bg)}.hss-btn[disabled]{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.hss-iconbtn{display:inline-grid;place-items:center;width:var(--size-target);height:var(--size-target);border:0;border-radius:var(--radius-full);background:var(--surface-muted);color:var(--ink-primary);cursor:pointer;transition:transform var(--duration-hover) ease,background-color var(--duration-hover) ease}.hss-iconbtn:hover{transform:translateY(-2px)}.hss-iconbtn-ghost{background:transparent}.hss-iconbtn-ghost:hover{background:var(--hover-bg)}.hss-iconbtn-play{width:56px;height:56px;background:var(--accent-coral);color:var(--ink-on-accent)}.hss-chip{display:inline-flex;align-items:center;min-height:var(--size-target);padding:0 var(--space-4);border:var(--border-width-field) solid var(--border-input);border-radius:var(--radius-small);background:var(--chip-rest-bg);color:var(--ink-primary);font:var(--weight-caption) var(--type-caption-size)/var(--type-caption-line) var(--font-sans);letter-spacing:.02em;cursor:pointer;transition:background-color var(--duration-hover) ease}.hss-chip:hover{background:var(--hover-bg)}.hss-chip[aria-pressed=true]{background:var(--surface-inverted);border-color:var(--surface-inverted);color:var(--ink-on-inverted)}.hss-panel{background:var(--surface-muted);border-radius:var(--radius-large)}.hss-row{display:grid;grid-template-columns:24px minmax(0,4fr) minmax(0,2fr) 56px;align-items:center;gap:var(--space-4);color:var(--ink-secondary)}.hss-row-index{display:grid;place-items:center;color:var(--accent-blue)}.hss-row-main{display:flex;align-items:center;gap:var(--space-3);min-width:0}.hss-row-title{margin:0;font:var(--weight-bold) var(--type-label-size)/var(--type-label-line) var(--font-sans);color:var(--ink-primary);overflow-wrap:anywhere}.hss-row-artist{display:block;font:var(--weight-regular) var(--type-body-small-size)/var(--type-body-small-line) var(--font-sans);color:var(--ink-secondary)}.hss-row-album{font:var(--weight-caption) var(--type-caption-size)/var(--type-caption-line) var(--font-sans);letter-spacing:.02em}.hss-row-album:not(:empty){display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);background:var(--state-success-bg);color:var(--state-success)}.hss-row-album:not(:empty):before{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:var(--icon-check) center / contain no-repeat;mask:var(--icon-check) center / contain no-repeat}.hss-row-time{font:var(--weight-caption) var(--type-caption-size)/var(--type-caption-line) var(--font-sans);letter-spacing:.02em;color:var(--ink-secondary);text-align:right;font-variant-numeric:tabular-nums}.hss-player{display:grid;align-items:center;gap:var(--space-4);color:var(--ink-secondary);font-family:var(--font-sans)}.hss-player *{box-sizing:border-box}.hss-player-controls{display:flex;align-items:center;gap:var(--space-3)}.hss-player-scrub{display:flex;align-items:center;gap:var(--space-3);width:100%;font:var(--weight-caption) var(--type-caption-size)/var(--type-caption-line) var(--font-sans);letter-spacing:.02em;color:var(--ink-secondary);font-variant-numeric:tabular-nums}.hss-bar{position:relative;flex:1;height:8px;border-radius:var(--radius-full);background:var(--border-input)}.hss-bar>span{position:absolute;inset:0 auto 0 0;border-radius:var(--radius-full);background:var(--accent-blue)}@media(prefers-reduced-motion:reduce){.hss-btn,.hss-iconbtn,.hss-chip{transition:none}.hss-btn:hover,.hss-iconbtn:hover{transform:none}}:root,:root[data-theme=light]{--state-warning: #8a5a00}:root[data-theme=dark]{--state-warning: var(--accent-orange)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--state-warning: var(--accent-orange)}}:root{--bg-base: var(--surface-primary);--bg-surface: var(--surface-muted);--bg-surface-elevated: var(--surface-raised);--bg-card: var(--surface-muted);--border-subtle: var(--border-input);--border-highlight: var(--ink-secondary);--accent-primary: var(--accent-coral);--accent-hover: color-mix(in srgb, var(--accent-coral) 88%, var(--ink-primary));--accent-glow: color-mix(in srgb, var(--accent-coral) 18%, transparent);--text-primary: var(--ink-primary);--text-secondary: var(--ink-secondary);--text-muted: var(--ink-secondary);--text-accent: var(--accent-blue);--status-success: var(--state-success);--status-warning: var(--state-warning);--status-danger: var(--state-error);--status-info: var(--accent-blue);--primary: var(--accent-coral);--text-on-primary: var(--ink-on-accent);--surface: var(--bg-card);--border: var(--border-input);--danger: var(--state-error);--danger-bg: var(--state-error-bg);--font-mono: var(--font-sans);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-full: 9999px;--touch-min: 48px;--bottom-nav-height: 64px}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{background-color:var(--bg-base);color:var(--text-primary);font-family:var(--font-sans);line-height:1.5;height:100%;overscroll-behavior-y:none;-webkit-font-smoothing:antialiased}#root{min-height:100vh;display:flex;flex-direction:column}.app-container{width:100%;max-width:600px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;position:relative;background-color:var(--bg-base)}.app-main{flex:1;padding:16px;padding-bottom:calc(var(--bottom-nav-height) + 24px + env(safe-area-inset-bottom,0px))}.app-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--border-subtle);background-color:var(--bg-surface);position:sticky;top:0;z-index:20}.brand-badge{display:flex;align-items:center;gap:10px}.logo-icon{width:34px;height:34px;border-radius:var(--radius-sm);background:var(--accent-primary);color:var(--ink-on-accent);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1rem}.brand-title{font-size:1.15rem;font-weight:800;letter-spacing:-.02em}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background-color:var(--surface-header);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border-subtle);display:flex;justify-content:space-around;align-items:center;height:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);z-index:50;max-width:600px;margin:0 auto}.nav-item{flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-muted);background:none;border:none;cursor:pointer;font-size:.75rem;font-weight:600;transition:color .15s ease;min-width:var(--touch-min)}.nav-item.active{color:var(--accent-primary)}.nav-item:hover{color:var(--text-primary)}.card{background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:16px;margin-bottom:14px}.card:hover{border-color:var(--border-highlight)}h1,h2,h3{color:var(--text-primary);font-weight:700}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.05rem}p{color:var(--text-secondary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;min-height:var(--touch-min)!important;border-radius:var(--radius-md);font-family:inherit;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .15s ease;border:none;text-decoration:none}.btn-primary{background-color:var(--accent-primary);color:var(--ink-on-accent);font-size:1.125rem!important;font-weight:700!important}.btn-primary:hover{background-color:var(--accent-hover);box-shadow:0 0 15px var(--accent-glow)}.btn-secondary{background-color:var(--bg-surface-elevated);color:var(--text-primary);border:1px solid var(--border-subtle)}.btn-secondary:hover{border-color:var(--border-highlight)}.btn-danger{background-color:var(--state-error-bg);color:var(--status-danger);border:1px solid var(--status-danger)}.btn-outline{background-color:transparent;color:var(--text-primary);border:1px solid var(--border-subtle)}.btn-outline:hover{background-color:var(--bg-surface-elevated);border-color:var(--border-highlight)}.btn-block{width:100%}.form-group{margin-bottom:16px;display:flex;flex-direction:column;gap:6px}.form-label{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.form-input,.input-field{min-width:0;width:100%;min-height:var(--touch-min);padding:10px 14px;background-color:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;font-family:inherit}.form-input:focus,.input-field:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow)}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;border:1px solid var(--border-subtle);background-color:var(--bg-surface-elevated);color:var(--text-secondary)}.pill-accent{background-color:var(--accent-glow);color:var(--accent-primary);border-color:var(--accent-primary)}.floating-timer{position:fixed;bottom:calc(var(--bottom-nav-height) + 12px + env(safe-area-inset-bottom,0px));left:16px;right:16px;max-width:568px;margin:0 auto;background:var(--bg-surface-elevated);border:1px solid var(--accent-primary);border-radius:var(--radius-lg);padding:12px 18px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow-float),0 0 15px var(--accent-glow);z-index:40}.timer-countdown{font-family:var(--font-mono);font-size:1.5rem;font-weight:700;color:var(--accent-primary)}.empty-state{text-align:center;padding:48px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.empty-icon{width:56px;height:56px;color:var(--text-muted)}.app-notice{position:fixed;top:var(--space-3);left:var(--space-3);right:var(--space-3);z-index:60;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);max-width:560px;margin:0 auto;padding:var(--space-3) var(--space-4);border-radius:var(--radius-small);font-size:var(--type-body-small-size);line-height:var(--type-body-small-line)}.app-notice--error{background:var(--surface-raised);border:1px solid var(--state-error);color:var(--state-error)}.app-notice button{flex:none;min-width:var(--size-target);min-height:var(--size-target);display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:inherit;cursor:pointer}.session-status{min-height:100svh;display:grid;place-items:center;padding:var(--space-4);background:var(--surface-primary);color:var(--ink-secondary);text-align:center}.session-status .card{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}
