@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-ui:"Inter Variable", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--bg:#f6f2ed;--bg-elevated:#fbf8f4;--surface:#fff;--surface-2:#faf7f3;--surface-3:#f3eee7;--surface-4:#ebe4db;--line:#ebe5dd;--line-2:#d9d1c7;--line-3:#c9bfb3;--text:#28221d;--text-2:#665c53;--text-3:#776c62;--text-inverse:#fff;--inverse-bg:#28221d;--inverse-fg:#fff;--inverse-fg-2:#ffffffb8;--accent:#c2503a;--accent-strong:#a3412e;--accent-ink:#a3412e;--accent-soft:#fbece7;--accent-soft-2:#f6d9d0;--accent-ring:#c2503a3d;--on-accent:#fff;--info:#3b6ea5;--info-strong:#2d5680;--info-soft:#e9f0f8;--info-soft-2:#d6e3f2;--ok:#2f8a5b;--ok-strong:#23694a;--ok-soft:#e6f4ec;--ok-soft-2:#bfe3cd;--ok-ring:#2f8a5b38;--warn:#d1902b;--warn-strong:#8a5610;--warn-soft:#fcf1e0;--warn-soft-2:#f3d7a4;--danger:#c43d3d;--danger-strong:#9c2f2f;--danger-soft:#fdebeb;--danger-soft-2:#f5c2c2;--danger-ring:#c43d3d38;--plum:#7c5cad;--plum-strong:#5b3f8a;--plum-soft:#f3eef7;--plum-soft-2:#e4daf0;--glass-bg:#ffffffc7;--glass-line:#402c1c14;--glass-blur:20px;--scrim:#28221d52;--shimmer:#ffffffa6;--autofill-bg:#fdf6f1;--fs-12:12px;--fs-13:13px;--fs-14:14px;--fs-15:15px;--fs-16:16px;--fs-18:18px;--fs-20:20px;--fs-22:22px;--fs-24:24px;--fs-28:28px;--fs-34:34px;--fs-40:40px;--fs-caption:var(--fs-12);--fs-meta:var(--fs-13);--fs-label:var(--fs-14);--fs-body:var(--fs-16);--fs-input:var(--fs-16);--fs-button:var(--fs-16);--fs-title-sm:var(--fs-18);--fs-title:var(--fs-22);--fs-title-lg:var(--fs-28);--fs-display:var(--fs-34);--lh-tight:1.2;--lh-snug:1.32;--lh-base:1.5;--lh-loose:1.6;--ls-display:-.026em;--ls-title:-.018em;--ls-body:-.004em;--ls-kicker:.06em;--w-regular:400;--w-medium:500;--w-semibold:600;--w-bold:700;--sp-0:2px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:28px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-14:56px;--sp-16:64px;--sp-20:80px;--gutter:var(--sp-4);--r-xs:6px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-2xl:28px;--r-full:999px;--r-control:var(--r-md);--r-card:var(--r-lg);--shadow-1:0 1px 2px #402c1c0f, 0 1px 1px #402c1c08;--shadow-2:0 2px 6px #402c1c0f, 0 8px 24px #402c1c14;--shadow-3:0 4px 10px #402c1c14, 0 16px 40px #402c1c24;--shadow-nav:0 -1px 0 var(--line), 0 -8px 24px #402c1c0a;--shadow-float:0 6px 16px #402c1c1a, 0 18px 48px #402c1c24;--shadow-focus:0 0 0 3px var(--accent-ring);--shadow-danger:0 0 0 3px var(--danger-ring);--dur-1:.12s;--dur-2:.18s;--dur-3:.24s;--dur-4:.32s;--dur-5:.42s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-spring:cubic-bezier(.32, .72, 0, 1);--tap-min:44px;--control-h:52px;--control-h-md:44px;--control-h-sm:36px;--field-h:56px;--icon-sm:18px;--icon:22px;--icon-lg:28px;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--topbar-h:56px;--nav-h:64px;--nav-float-gap:var(--sp-3);--rail-w:88px;--sidebar-w:264px;--content-max:720px;--content-wide:1180px;--auth-max:420px;--chat-side-w:380px;--z-topbar:30;--z-nav:40;--z-pop:90;--z-toast:100;--z-tip:110}@media (pointer:fine) and (min-width:1024px){:root{--control-h:44px;--control-h-md:40px;--control-h-sm:32px;--field-h:52px;--fs-body:var(--fs-15);--fs-button:var(--fs-15);--fs-display:var(--fs-40)}}@media (min-width:768px){:root{--gutter:var(--sp-6);--fs-title:var(--fs-24);--fs-title-lg:var(--fs-34)}}@media (min-width:1280px){:root{--gutter:var(--sp-8)}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#15110e;--bg-elevated:#1a1512;--surface:#1f1a16;--surface-2:#1b1713;--surface-3:#2a241f;--surface-4:#352e28;--line:#2f2823;--line-2:#433a33;--line-3:#564b42;--text:#f4eee7;--text-2:#c9bdb1;--text-3:#a6988b;--inverse-bg:#f4eee7;--inverse-fg:#1b1713;--inverse-fg-2:#1b1713b3;--accent:#c2503a;--accent-strong:#a3412e;--accent-ink:#ee8d76;--accent-soft:#35231d;--accent-soft-2:#4c2e25;--accent-ring:#ee8d7652;--info:#6b9bd1;--info-strong:#a3c4ec;--info-soft:#1b2633;--info-soft-2:#273749;--ok:#4fb382;--ok-strong:#92d8b2;--ok-soft:#16291f;--ok-soft-2:#22402f;--ok-ring:#4fb3824d;--warn:#e0a64a;--warn-strong:#f1c98a;--warn-soft:#302516;--warn-soft-2:#4a3a20;--danger:#e06a6a;--danger-strong:#f5a8a8;--danger-soft:#361c1c;--danger-soft-2:#552a2a;--danger-ring:#e06a6a52;--plum:#a487d4;--plum-strong:#cdb9ee;--plum-soft:#261f31;--plum-soft-2:#382d49;--glass-bg:#1f1a16c2;--glass-line:#fff0e112;--scrim:#00000080;--shimmer:#fff0e112;--autofill-bg:#2a211c;--shadow-1:0 1px 2px #0006;--shadow-2:0 2px 6px #0000004d, 0 8px 24px #00000059;--shadow-3:0 4px 10px #00000059, 0 16px 40px #00000080;--shadow-nav:0 -1px 0 var(--line), 0 -8px 24px #0000004d;--shadow-float:0 6px 16px #00000059, 0 18px 48px #00000080}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#15110e;--bg-elevated:#1a1512;--surface:#1f1a16;--surface-2:#1b1713;--surface-3:#2a241f;--surface-4:#352e28;--line:#2f2823;--line-2:#433a33;--line-3:#564b42;--text:#f4eee7;--text-2:#c9bdb1;--text-3:#a6988b;--inverse-bg:#f4eee7;--inverse-fg:#1b1713;--inverse-fg-2:#1b1713b3;--accent:#c2503a;--accent-strong:#a3412e;--accent-ink:#ee8d76;--accent-soft:#35231d;--accent-soft-2:#4c2e25;--accent-ring:#ee8d7652;--info:#6b9bd1;--info-strong:#a3c4ec;--info-soft:#1b2633;--info-soft-2:#273749;--ok:#4fb382;--ok-strong:#92d8b2;--ok-soft:#16291f;--ok-soft-2:#22402f;--ok-ring:#4fb3824d;--warn:#e0a64a;--warn-strong:#f1c98a;--warn-soft:#302516;--warn-soft-2:#4a3a20;--danger:#e06a6a;--danger-strong:#f5a8a8;--danger-soft:#361c1c;--danger-soft-2:#552a2a;--danger-ring:#e06a6a52;--plum:#a487d4;--plum-strong:#cdb9ee;--plum-soft:#261f31;--plum-soft-2:#382d49;--glass-bg:#1f1a16c2;--glass-line:#fff0e112;--scrim:#00000080;--shimmer:#fff0e112;--autofill-bg:#2a211c;--shadow-1:0 1px 2px #0006;--shadow-2:0 2px 6px #0000004d, 0 8px 24px #00000059;--shadow-3:0 4px 10px #00000059, 0 16px 40px #00000080;--shadow-nav:0 -1px 0 var(--line), 0 -8px 24px #0000004d;--shadow-float:0 6px 16px #00000059, 0 18px 48px #00000080}:root[data-palette=salvia]{--accent:#3f7a5e;--accent-strong:#31614a;--accent-ink:#2f5e47;--accent-soft:#e8f2ec;--accent-soft-2:#cfe4d8;--accent-ring:#3f7a5e3d}:root[data-palette=ciruela]{--accent:#8a4a7d;--accent-strong:#703c65;--accent-ink:#7a3f6e;--accent-soft:#f6ecf3;--accent-soft-2:#ecd6e6;--accent-ring:#8a4a7d3d}@media (prefers-color-scheme:dark){:root[data-palette=salvia]:not([data-theme=light]){--accent-ink:#93cfae;--accent-soft:#1b2b23;--accent-soft-2:#263d31;--accent-ring:#93cfae4d}:root[data-palette=ciruela]:not([data-theme=light]){--accent-ink:#e2a9d5;--accent-soft:#301e2c;--accent-soft-2:#472b40;--accent-ring:#e2a9d54d}}:root[data-palette=salvia][data-theme=dark]{--accent-ink:#93cfae;--accent-soft:#1b2b23;--accent-soft-2:#263d31;--accent-ring:#93cfae4d}:root[data-palette=ciruela][data-theme=dark]{--accent-ink:#e2a9d5;--accent-soft:#301e2c;--accent-soft-2:#472b40;--accent-ring:#e2a9d54d}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent;background:var(--bg);scroll-padding-top:calc(var(--topbar-h) + var(--safe-top))}body{min-width:360px;min-height:100vh;background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font-ui);font-size:var(--fs-body);font-weight:var(--w-regular);line-height:var(--lh-base);letter-spacing:var(--ls-body);font-feature-settings:"tnum", "cv11", "ss01";font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;overscroll-behavior-y:none;margin:0}h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd{margin:0}ul,ol{padding:0;list-style:none}h1,h2,h3,h4{font-weight:var(--w-semibold);line-height:var(--lh-tight);letter-spacing:var(--ls-title);text-wrap:balance}p{text-wrap:pretty}img,svg,video{max-width:100%;display:block}button,input,textarea,select{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;touch-action:manipulation;background:0 0;border:0;padding:0}button:disabled{cursor:default}a{color:var(--accent-ink);text-underline-offset:3px;touch-action:manipulation;text-decoration:none}a:hover{text-decoration:underline}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-xs)}::selection{background:var(--accent-soft-2);color:var(--text)}[hidden]{display:none!important}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.kicker{font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase;color:var(--text-3)}.text-muted{color:var(--text-2)}.text-soft{color:var(--text-3)}.mono{font-family:var(--font-mono)}.skip-link{top:calc(var(--safe-top) + var(--sp-2));left:var(--sp-2);z-index:var(--z-toast);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-full);background:var(--inverse-bg);color:var(--inverse-fg);transition:transform var(--dur-2) var(--ease-out);position:fixed;transform:translateY(-200%)}.skip-link:focus-visible{transform:translateY(0)}@media (pointer:fine){::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:var(--r-full);background-clip:padding-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background-color:var(--line-3)}::-webkit-scrollbar-track{background:0 0}}@keyframes rt-fade-in{0%{opacity:0}to{opacity:1}}@keyframes rt-fade-out{0%{opacity:1}to{opacity:0}}@keyframes rt-rise-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes rt-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes rt-leave{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-4px)scale(.98)}}@keyframes rt-pop-in{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes rt-pop-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(8px)scale(.96)}}@keyframes rt-view-in-forward{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes rt-view-out-forward{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-24px)}}@keyframes rt-view-in-back{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes rt-view-out-back{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(24px)}}@keyframes rt-view-in-fade{0%{opacity:0;transform:translateY(8px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes rt-view-out-fade{0%{opacity:1}to{opacity:0}}@keyframes rt-shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}@keyframes rt-pop-scale{0%{transform:scale(1)}40%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes rt-scale-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes rt-draw{to{stroke-dashoffset:0}}@keyframes rt-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes rt-breathe{0%,to{opacity:.3;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}@keyframes rt-avatar-pulse{0%{box-shadow:0 0 0 0 var(--accent-ring)}70%{box-shadow:0 0 0 10px #0000}to{box-shadow:0 0 #0000}}@keyframes rt-ripple{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(1.9)}}@keyframes rt-caret{0%,45%{opacity:1}55%,to{opacity:0}}@keyframes rt-spin{to{transform:rotate(360deg)}}@keyframes rt-toast-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes rt-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.fade-in{animation:rt-fade-in var(--dur-2) var(--ease-out) both}.rise-in{animation:rt-rise-in var(--dur-3) var(--ease-out) both}.enter{animation:rt-enter var(--dur-4) var(--ease-out) both;animation-delay:calc(var(--i,0) * 45ms)}.leave{animation:rt-leave var(--dur-2) var(--ease-in-out) forwards;pointer-events:none}.pop-in{animation:rt-pop-in var(--dur-3) var(--ease-bounce) both}.pop-out{animation:rt-pop-out var(--dur-2) var(--ease-in-out) forwards;pointer-events:none}.scale-in{animation:rt-scale-in var(--dur-4) var(--ease-bounce) both}.shake{animation:rt-shake var(--dur-4) var(--ease-out)}.pop-scale{animation:rt-pop-scale var(--dur-3) var(--ease-bounce)}.copied{color:var(--ok-strong);animation:rt-pop-scale var(--dur-3) var(--ease-bounce)}.check-draw path,.check-draw polyline{stroke-dasharray:1;stroke-dashoffset:1px;animation:rt-draw var(--dur-4) var(--ease-out) forwards}.view-enter-forward{animation:rt-view-in-forward var(--dur-4) var(--ease-out) both}.view-leave-forward{animation:rt-view-out-forward var(--dur-2) var(--ease-in-out) both}.view-enter-back{animation:rt-view-in-back var(--dur-4) var(--ease-out) both}.view-leave-back{animation:rt-view-out-back var(--dur-2) var(--ease-in-out) both}.view-enter-fade{animation:rt-view-in-fade var(--dur-4) var(--ease-out) both;animation-delay:40ms}.view-leave-fade{animation:rt-view-out-fade var(--dur-2) var(--ease-in-out) both}.view-leave-forward,.view-leave-back,.view-leave-fade{pointer-events:none}.skeleton{background:var(--surface-3);border-radius:var(--r-sm);color:#0000;pointer-events:none;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--shimmer) 50%, transparent 100%);animation:rt-shimmer 1.4s var(--ease-in-out) infinite;position:absolute;inset:0;transform:translate(-100%)}.skeleton-line{border-radius:var(--r-full);height:12px}.skeleton-line-short{width:55%}.skeleton-circle{border-radius:var(--r-full);flex:none;width:40px;height:40px}.typing{align-items:center;gap:var(--sp-1);height:20px;padding:0 var(--sp-0);color:var(--text-3);display:inline-flex}.typing-dot{border-radius:var(--r-full);width:7px;height:7px;animation:rt-breathe 1.2s var(--ease-in-out) infinite;background:currentColor;display:inline-block}.typing-dot:nth-child(2){animation-delay:.16s}.typing-dot:nth-child(3){animation-delay:.32s}.avatar-thinking{animation:rt-avatar-pulse 1.8s var(--ease-out) infinite}.avatar-listening{animation:rt-avatar-pulse 1.1s var(--ease-in-out) infinite}.spin{animation:.8s linear infinite rt-spin}.btn,.icon-btn,.chip,.nav-item,.choice-card,.segmented-option,.swatch,.suggestion,.list-row{transition:background-color var(--dur-1) var(--ease-out), border-color var(--dur-1) var(--ease-out), color var(--dur-1) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out), opacity var(--dur-1) var(--ease-out)}.btn:active,.icon-btn:active,.chip:active,.choice-card:active,.segmented-option:active,.swatch:active,.suggestion:active,.pressable:active{transform:scale(.97)}.nav-item:active .nav-icon{transform:scale(.9)}.theme-transition,.theme-transition *,.theme-transition :before,.theme-transition :after{transition:background-color var(--dur-4) var(--ease-in-out), border-color var(--dur-4) var(--ease-in-out), color var(--dur-4) var(--ease-in-out), fill var(--dur-4) var(--ease-in-out), box-shadow var(--dur-4) var(--ease-in-out)!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.skeleton:after{display:none}.typing-dot{opacity:.6;transform:none}.spin{animation-duration:1.2s!important;animation-iteration-count:infinite!important}}.icon{flex:none}.btn{min-height:var(--control-h);padding:0 var(--sp-5);border-radius:var(--r-control);font-size:var(--fs-button);font-weight:var(--w-semibold);letter-spacing:var(--ls-body);white-space:nowrap;-webkit-user-select:none;user-select:none;isolation:isolate;border:1px solid #0000;justify-content:center;align-items:center;line-height:1;display:inline-flex;position:relative;overflow:hidden}.btn-content,.btn-done{justify-content:center;align-items:center;gap:var(--sp-2);transition:opacity var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-out);display:inline-flex}.btn-done{opacity:0;position:absolute;inset:0;transform:translateY(8px)}.btn-done .icon{width:22px;height:22px}.btn-spinner{border-radius:var(--r-full);opacity:0;width:20px;height:20px;transition:opacity var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);border:2px solid;border-right-color:#0000;margin:-10px 0 0 -10px;position:absolute;top:50%;left:50%;transform:scale(.6)}.btn[data-state=loading]{cursor:progress}.btn[data-state=loading] .btn-content{opacity:0;transform:scale(.94)}.btn[data-state=loading] .btn-spinner{opacity:1;animation:.8s linear infinite rt-spin;transform:scale(1)}.btn[data-state=success] .btn-content{opacity:0;transform:translateY(-8px)}.btn[data-state=success] .btn-done{opacity:1;transform:translateY(0)}.btn--primary{background:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-1)}.btn--primary:hover:not(:disabled){background:var(--accent-strong)}.btn--primary[data-state=success]{background:var(--ok)}.btn--secondary{background:var(--surface);border-color:var(--line-2);color:var(--text);box-shadow:var(--shadow-1)}.btn--secondary:hover:not(:disabled){background:var(--surface-2);border-color:var(--line-3)}.btn--ghost{color:var(--text);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--surface-3)}.btn--soft{background:var(--accent-soft);color:var(--accent-ink)}.btn--soft:hover:not(:disabled){background:var(--accent-soft-2)}.btn--ink{background:var(--inverse-bg);color:var(--inverse-fg)}.btn--danger{background:var(--danger);color:var(--text-inverse)}.btn--danger:hover:not(:disabled){background:var(--danger-strong)}.btn--danger-soft{background:var(--danger-soft);color:var(--danger-strong)}.btn--sm{min-height:var(--control-h-sm);padding:0 var(--sp-3);font-size:var(--fs-label);border-radius:var(--r-sm)}.btn--lg{min-height:calc(var(--control-h) + var(--sp-2));padding:0 var(--sp-6);font-size:var(--fs-16);border-radius:var(--r-lg)}.btn--block{width:100%;display:flex}.btn--icon-only{width:var(--control-h);padding:0}.btn:disabled:not([data-state]){opacity:.45;box-shadow:none}.btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.icon-btn{width:var(--tap-min);height:var(--tap-min);border-radius:var(--r-full);color:var(--text-2);place-items:center;display:inline-grid}.icon-btn:hover{background:var(--surface-3);color:var(--text)}.icon-btn--sm{width:var(--control-h-sm);height:var(--control-h-sm)}.icon-btn--surface{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-1)}.icon-btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.icon-btn{-webkit-touch-callout:none}.tip{z-index:var(--z-tip);max-width:min(280px, calc(100vw - var(--sp-4)));padding:var(--sp-1) var(--sp-3);border-radius:var(--r-sm);background:var(--text);color:var(--surface);box-shadow:var(--shadow-2);font-size:var(--fs-13);font-weight:var(--w-medium);line-height:var(--lh-snug);text-align:center;pointer-events:none;opacity:0;transition:opacity var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);position:fixed;top:0;left:0;transform:translateY(-4px)}.tip[data-side=top]{transform:translateY(4px)}.tip.is-visible{opacity:1;transform:translateY(0)}.link-btn{min-height:var(--tap-min);color:var(--accent-ink);font-weight:var(--w-semibold);font-size:var(--fs-label);align-items:center;display:inline-flex}.link-btn:hover{text-decoration:underline}.field{gap:var(--sp-1);display:grid}.field-control{min-height:var(--field-h);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-control);transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out);align-items:center;display:flex;position:relative}.field-control:hover{border-color:var(--line-3)}.field-control:focus-within{border-color:var(--accent);box-shadow:var(--shadow-focus)}.field-input{min-width:0;height:var(--field-h);padding:var(--sp-5) var(--sp-4) var(--sp-1);border-radius:var(--r-control);font-size:var(--fs-input);color:var(--text);caret-color:var(--accent);background:0 0;border:0;flex:1}textarea.field-input{height:auto;min-height:96px;padding-top:var(--sp-6);resize:none;line-height:var(--lh-base)}.field-input:-webkit-autofill{-webkit-text-fill-color:var(--text);box-shadow:0 0 0 100px var(--autofill-bg) inset}.field-control--icon .field-input{padding-left:calc(var(--sp-4) + var(--icon) + var(--sp-2))}.field-icon{left:var(--sp-4);color:var(--text-3);transition:color var(--dur-2) var(--ease-out);pointer-events:none;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.field-control:focus-within .field-icon{color:var(--accent-ink)}.field-label{left:var(--sp-4);max-width:calc(100% - var(--sp-12));color:var(--text-3);font-size:var(--fs-input);white-space:nowrap;text-overflow:ellipsis;transform-origin:0;transition:transform var(--dur-3) var(--ease-out), color var(--dur-2) var(--ease-out);pointer-events:none;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.field-control--multiline .field-label{top:var(--sp-5)}.field-control--icon .field-label{left:calc(var(--sp-4) + var(--icon) + var(--sp-2))}:-webkit-any(.field-input:focus+.field-label,.field-input:not(:placeholder-shown)+.field-label,.field-input:-webkit-autofill+.field-label){color:var(--text-2);transform:translateY(-118%)scale(.78)}:is(.field-input:focus+.field-label,.field-input:not(:placeholder-shown)+.field-label,.field-input:autofill+.field-label){color:var(--text-2);transform:translateY(-118%)scale(.78)}.field-control--multiline .field-input:focus+.field-label,.field-control--multiline .field-input:not(:placeholder-shown)+.field-label{transform:translateY(-60%)scale(.78)}.field-input:focus+.field-label{color:var(--accent-ink)}.field-status,.field-reveal{flex:none;place-items:center;display:grid}.field-status{width:0;transition:width var(--dur-2) var(--ease-out);overflow:hidden}.field-status:not(:empty){width:var(--icon);margin-right:var(--sp-3)}.field-status .icon{width:20px;height:20px}.field-reveal{width:var(--tap-min);height:var(--tap-min);margin-right:var(--sp-1);border-radius:var(--r-full);color:var(--text-3)}.field-reveal:hover{color:var(--text);background:var(--surface-3)}.field-message{min-height:18px;padding:0 var(--sp-1);color:var(--text-3);font-size:var(--fs-meta);line-height:var(--lh-snug)}.field-message--swap{animation:rt-rise-in var(--dur-3) var(--ease-out)}.field[data-state=error] .field-control{border-color:var(--danger);background:var(--surface)}.field[data-state=error] .field-control:focus-within{box-shadow:var(--shadow-danger)}.field[data-state=error] .field-label,.field[data-state=error] .field-input:focus+.field-label,.field[data-state=error] .field-status,.field[data-state=error] .field-message{color:var(--danger)}.field[data-state=success] .field-control{border-color:var(--ok)}.field[data-state=success] .field-control:focus-within{box-shadow:0 0 0 3px var(--ok-ring)}.field[data-state=success] .field-status,.field[data-state=success] .field-message{color:var(--ok-strong)}.meter{align-items:center;gap:var(--sp-3);margin-top:calc(var(--sp-1) * -1);padding:0 var(--sp-1);display:flex}.meter-bars{gap:var(--sp-1);flex:1;grid-template-columns:repeat(4,1fr);display:grid}.meter-bar{border-radius:var(--r-full);background:var(--surface-4);height:4px;transition:background-color var(--dur-3) var(--ease-out)}.meter-label{min-width:72px;color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);text-align:right}.meter[data-score="1"] .meter-bar:nth-child(-n+1){background:var(--danger)}.meter[data-score="2"] .meter-bar:nth-child(-n+2){background:var(--warn)}.meter[data-score="3"] .meter-bar:nth-child(-n+3),.meter[data-score="4"] .meter-bar{background:var(--ok)}.form-alert{align-items:flex-start;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-control);background:var(--danger-soft);color:var(--danger-strong);font-size:var(--fs-label);line-height:var(--lh-snug);display:flex}.code-field{gap:var(--sp-2);display:grid}.code-label{color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-medium)}.code-row{align-items:center;gap:var(--sp-3);display:flex}.code-cells{gap:var(--sp-2);flex:1;grid-template-columns:repeat(6,minmax(0,1fr));max-width:360px;display:grid;position:relative}.code-cell{aspect-ratio:5/6;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-control);max-height:64px;font-size:var(--fs-24);font-weight:var(--w-semibold);letter-spacing:0;color:var(--text);transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out);place-items:center;display:grid}.code-cell--filled{background:var(--surface-2)}.code-cell--active{border-color:var(--accent);box-shadow:var(--shadow-focus)}.code-cell--active:empty:after{content:"";border-radius:var(--r-full);background:var(--accent);width:2px;height:26px;animation:1s step-end infinite rt-caret}.code-input{opacity:0;width:100%;font-size:var(--fs-16);cursor:text;position:absolute;inset:0}.code-status{width:var(--icon);color:var(--ok-strong);display:grid}.code-field[data-state=error] .code-cell{border-color:var(--danger)}.code-field[data-state=error] .code-status,.code-field[data-state=error] .field-message{color:var(--danger)}.code-field[data-state=success] .code-cell{border-color:var(--ok);background:var(--ok-soft)}.code-field[data-state=success] .field-message{color:var(--ok-strong)}.avatar{border-radius:var(--r-full);width:40px;height:40px;font-size:var(--fs-14);font-weight:var(--w-semibold);letter-spacing:0;flex:none;place-items:center;display:inline-grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar--sm{width:32px;height:32px;font-size:var(--fs-12)}.avatar--lg{width:56px;height:56px;font-size:var(--fs-18)}.avatar--xl{width:72px;height:72px;font-size:var(--fs-24)}.avatar--accent{background:var(--accent-soft);color:var(--accent-ink)}.avatar--ok{background:var(--ok-soft);color:var(--ok-strong)}.avatar--info{background:var(--info-soft);color:var(--info-strong)}.avatar--plum{background:var(--plum-soft);color:var(--plum-strong)}.avatar--warn{background:var(--warn-soft);color:var(--warn-strong)}.badge{align-items:center;gap:var(--sp-1);min-height:24px;padding:0 var(--sp-2);border-radius:var(--r-full);font-size:var(--fs-caption);font-weight:var(--w-semibold);white-space:nowrap;line-height:1;display:inline-flex}.badge-dot{border-radius:var(--r-full);background:currentColor;width:6px;height:6px}.badge--neutral{background:var(--surface-3);color:var(--text-2)}.badge--accent{background:var(--accent-soft);color:var(--accent-ink)}.badge--ok{background:var(--ok-soft);color:var(--ok-strong)}.badge--warn{background:var(--warn-soft);color:var(--warn-strong)}.badge--danger{background:var(--danger-soft);color:var(--danger-strong)}.badge--info{background:var(--info-soft);color:var(--info-strong)}.badge--plum{background:var(--plum-soft);color:var(--plum-strong)}.chip-group{gap:var(--sp-2);padding:var(--sp-1) var(--gutter);margin:0 calc(var(--gutter) * -1);scrollbar-width:none;scroll-padding:var(--gutter);display:flex;overflow-x:auto}.chip-group::-webkit-scrollbar{display:none}.chip{align-items:center;gap:var(--sp-1);min-height:var(--control-h-sm);padding:0 var(--sp-3);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-medium);flex:none;display:inline-flex}.chip:hover{border-color:var(--line-3);color:var(--text)}.chip-check{opacity:0;width:0;transition:width var(--dur-3) var(--ease-out), opacity var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-bounce);display:grid;overflow:hidden;transform:scale(.4)}.chip-count{min-width:20px;padding:0 var(--sp-1);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-semibold);text-align:center;line-height:20px}.chip[aria-pressed=true]{background:var(--inverse-bg);border-color:var(--inverse-bg);color:var(--inverse-fg)}.chip[aria-pressed=true] .chip-check{opacity:1;width:14px;transform:scale(1)}.chip[aria-pressed=true] .chip-count{color:var(--inverse-fg);background:#ffffff29}.chip:focus-visible{box-shadow:var(--shadow-focus);outline:none}.card{width:100%;padding:var(--sp-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-1);text-align:left;color:inherit;display:block}.card--flush{padding:0;overflow:hidden}.card--interactive{transition:transform var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out)}.card--interactive:hover{border-color:var(--line-2);box-shadow:var(--shadow-2)}.card--interactive:focus-visible{box-shadow:var(--shadow-focus);outline:none}.card--sunken{background:var(--surface-2);box-shadow:none}.card--accent{background:var(--accent-soft);box-shadow:none;border-color:#0000}.card--ink{background:var(--inverse-bg);color:var(--inverse-fg);border-color:#0000}.card-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);margin-bottom:var(--sp-4);display:flex}.card--flush .card-head{padding:var(--sp-5) var(--sp-5) var(--sp-3);margin:0}.card-titles{gap:var(--sp-1);display:grid}.card-title{font-size:var(--fs-title-sm)}.stat{align-content:start;gap:var(--sp-2);padding:var(--sp-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-1);display:grid}.stat-top{align-items:center;gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-medium);display:flex}.stat-icon{border-radius:var(--r-sm);background:var(--surface-3);width:28px;height:28px;color:var(--text-2);place-items:center;display:grid}.stat--ok .stat-icon{background:var(--ok-soft);color:var(--ok-strong)}.stat--accent .stat-icon{background:var(--accent-soft);color:var(--accent-ink)}.stat--warn .stat-icon{background:var(--warn-soft);color:var(--warn-strong)}.stat--info .stat-icon{background:var(--info-soft);color:var(--info-strong)}.stat--plum .stat-icon{background:var(--plum-soft);color:var(--plum-strong)}.stat-value{font-size:var(--fs-28);font-weight:var(--w-semibold);letter-spacing:var(--ls-display);line-height:1}.stat-hint{gap:var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);display:flex}.stat-trend{color:var(--ok-strong);font-weight:var(--w-semibold)}.list{display:grid}.list-row{align-items:center;gap:var(--sp-3);width:100%;min-height:64px;padding:var(--sp-3) var(--sp-4);text-align:left;color:inherit;display:flex}.list>.list-row+.list-row{box-shadow:0 -1px 0 var(--line)}.list-row--action:hover{background:var(--surface-2)}.list-row--action:focus-visible{box-shadow:inset var(--shadow-focus);outline:none}.list-row-leading{flex:none;display:grid}.list-row-body{gap:var(--sp-0);flex:1;min-width:0;display:grid}.list-row-title{font-weight:var(--w-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.list-row-subtitle{color:var(--text-3);font-size:var(--fs-meta);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.list-row-meta{align-items:center;gap:var(--sp-2);flex:none;display:flex}.list-row-trailing{color:var(--text-3);flex:none;display:grid}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--sp-4);margin-bottom:var(--sp-6);flex-wrap:wrap;display:flex}.page-header-text{gap:var(--sp-1);display:grid}.page-title{font-size:var(--fs-title-lg);letter-spacing:var(--ls-display)}.page-subtitle{color:var(--text-2);max-width:56ch}.page-header-actions{gap:var(--sp-2);display:flex}.progress{gap:var(--sp-1);display:grid}.progress-head{color:var(--text-2);font-size:var(--fs-meta);justify-content:space-between;display:flex}.progress-value{font-weight:var(--w-semibold);color:var(--text)}.progress-track{border-radius:var(--r-full);background:var(--surface-3);height:8px;overflow:hidden}.progress--sm .progress-track{height:4px}.progress-fill{width:var(--pct,0%);border-radius:inherit;background:var(--ok);height:100%;transition:width var(--dur-5) var(--ease-out);display:block}.progress--accent .progress-fill{background:var(--accent)}.progress--warn .progress-fill{background:var(--warn)}.progress--danger .progress-fill{background:var(--danger)}.skeleton-block{align-items:center;gap:var(--sp-3);display:flex}.skeleton-lines{gap:var(--sp-2);flex:1;display:grid}.skeleton-list{gap:var(--sp-5);padding:var(--sp-4);display:grid}.skeleton-card{align-content:start;display:grid}.async-skeleton{animation:rt-fade-in var(--dur-2) var(--ease-out) both}.async-skeleton--leaving{animation:rt-fade-out var(--dur-2) var(--ease-in-out) forwards}.empty{justify-items:center;gap:var(--sp-2);padding:var(--sp-10) var(--sp-6);text-align:center;display:grid}.empty--compact{padding:var(--sp-8) var(--sp-4)}.empty-art{width:112px;height:112px;margin-bottom:var(--sp-2)}.empty--compact .empty-art{width:88px;height:88px}.art-fill{fill:var(--surface-3)}.art-line{fill:none;stroke:var(--text-2);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.art-soft{stroke:var(--line-3)}.art-dot{fill:var(--text-2)}.art-accent{fill:var(--accent)}.art-on-accent{fill:none;stroke:var(--on-accent);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.empty-title{font-size:var(--fs-title-sm)}.empty-text{max-width:40ch;color:var(--text-2)}.empty-actions{justify-content:center;gap:var(--sp-2);margin-top:var(--sp-3);flex-wrap:wrap;display:flex}.divider{align-items:center;gap:var(--sp-3);color:var(--text-3);font-size:var(--fs-meta);display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}.divider:empty:after{display:none}.banner{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-card);font-size:var(--fs-label);line-height:var(--lh-snug);display:flex}.banner-icon{flex:none;display:grid}.banner-body{gap:var(--sp-0);flex:1;display:grid}.banner--info{background:var(--info-soft);color:var(--info-strong)}.banner--warn{background:var(--warn-soft);color:var(--warn-strong)}.banner--ok{background:var(--ok-soft);color:var(--ok-strong)}.banner--accent{background:var(--accent-soft);color:var(--accent-ink)}.toast-region{left:50%;bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--sp-3));z-index:var(--z-toast);align-items:center;gap:var(--sp-2);width:min(calc(100vw - var(--sp-8)), 440px);pointer-events:none;flex-direction:column;display:flex;position:fixed;transform:translate(-50%)}body:not(.has-tabbar) .toast-region{bottom:calc(var(--safe-bottom) + var(--sp-5))}@media (min-width:1024px){.toast-region,body:not(.has-tabbar) .toast-region{left:auto;right:var(--sp-6);bottom:var(--sp-6);align-items:flex-end;transform:none}}.toast{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3) var(--sp-2) var(--sp-3) var(--sp-4);background:var(--inverse-bg);color:var(--inverse-fg);border-radius:var(--r-lg);box-shadow:var(--shadow-float);font-size:var(--fs-label);line-height:var(--lh-snug);pointer-events:auto;touch-action:pan-y;animation:rt-toast-in var(--dur-4) var(--ease-bounce) both;display:flex}.toast--leaving{animation:rt-pop-out var(--dur-2) var(--ease-in-out) forwards}.toast--dragging{transition:none;animation:none}.toast-icon{border-radius:var(--r-full);background:#ffffff24;flex:none;place-items:center;width:28px;height:28px;display:grid}.toast--ok .toast-icon{background:var(--ok);color:var(--text-inverse)}.toast--danger .toast-icon{background:var(--danger);color:var(--text-inverse)}.toast--warn .toast-icon{background:var(--warn);color:var(--text-inverse)}.toast-body{gap:var(--sp-0);flex:1;display:grid}.toast-action{min-height:var(--control-h-sm);padding:0 var(--sp-3);border-radius:var(--r-sm);color:var(--accent-soft-2);font-weight:var(--w-semibold);flex:none}.toast-action:hover{background:#ffffff1a}.toast-close{width:var(--control-h-sm);height:var(--control-h-sm);border-radius:var(--r-full);color:var(--inverse-fg-2);flex:none;place-items:center;display:grid}.toast-close:hover{background:#ffffff1a}.sheet-root{z-index:var(--z-pop);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet-scrim{background:var(--scrim);animation:rt-fade-in var(--dur-3) var(--ease-out) both;transition:opacity var(--dur-2) var(--ease-out);position:absolute;inset:0}.sheet{width:100%;max-height:calc(100dvh - var(--safe-top) - var(--sp-8));padding-bottom:var(--safe-bottom);background:var(--surface);border-radius:var(--r-2xl) var(--r-2xl) 0 0;box-shadow:var(--shadow-3);animation:rt-sheet-in var(--dur-5) var(--ease-spring) both;transition:transform var(--dur-3) var(--ease-spring);outline:none;flex-direction:column;display:flex;position:relative}.sheet--dragging{transition:none}.sheet-root--closing .sheet{animation:rt-sheet-out var(--dur-3) var(--ease-in-out) forwards}.sheet-root--closing .sheet-scrim{animation:rt-fade-out var(--dur-3) var(--ease-in-out) forwards}@keyframes rt-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes rt-sheet-out{0%{transform:translateY(0)}to{transform:translateY(100%)}}.sheet-grabber{cursor:grab;touch-action:none;place-items:center;height:24px;display:grid}.sheet-grabber span{border-radius:var(--r-full);background:var(--line-2);width:40px;height:5px}.sheet-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);padding:0 var(--sp-5) var(--sp-3) var(--sp-6);touch-action:none;display:flex}.sheet-titles{gap:var(--sp-1);padding-top:var(--sp-1);display:grid}.sheet-title{font-size:var(--fs-title)}.sheet-description{color:var(--text-2);font-size:var(--fs-label)}.sheet-body{padding:var(--sp-2) var(--sp-6) var(--sp-6);overscroll-behavior:contain;flex:1;overflow-y:auto}.sheet-footer{gap:var(--sp-2);padding:var(--sp-3) var(--sp-6) var(--sp-5);box-shadow:0 -1px 0 var(--line);display:flex}.sheet-footer>*{flex:1}@media (min-width:768px){.sheet-root{padding:var(--sp-6);align-items:flex-end}.sheet{border-radius:var(--r-2xl);max-width:520px;padding-bottom:0}.sheet--lg{max-width:680px}@keyframes rt-sheet-in{0%{opacity:0;transform:translateY(32px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes rt-sheet-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(24px)scale(.98)}}}.segmented{grid-template-columns:repeat(var(--count), minmax(0, 1fr));padding:var(--sp-1);background:var(--surface-3);border-radius:var(--r-control);isolation:isolate;display:grid;position:relative}.segmented-thumb{top:var(--sp-1);bottom:var(--sp-1);left:var(--sp-1);z-index:-1;width:calc((100% - var(--sp-2)) / var(--count));background:var(--surface);border-radius:calc(var(--r-control) - 4px);box-shadow:var(--shadow-1);transform:translateX(calc(var(--index,0) * 100%));transition:transform var(--dur-4) var(--ease-spring);position:absolute}.segmented-option{justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--control-h-md);padding:0 var(--sp-3);border-radius:calc(var(--r-control) - 4px);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-medium);display:inline-flex}.segmented-option[aria-checked=true]{color:var(--text);font-weight:var(--w-semibold)}.segmented-option:focus-visible{box-shadow:var(--shadow-focus);outline:none}.segmented--sm .segmented-option{min-height:var(--control-h-sm)}.switch-row{justify-content:space-between;align-items:center;gap:var(--sp-4);cursor:pointer;min-height:56px;display:flex}.switch-text{gap:var(--sp-0);display:grid}.switch-label{font-weight:var(--w-medium)}.switch-description{color:var(--text-3);font-size:var(--fs-meta)}.switch{flex:none;position:relative}.switch-input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.switch-track{border-radius:var(--r-full);background:var(--surface-4);width:50px;height:30px;transition:background-color var(--dur-3) var(--ease-out);padding:3px;display:block}.switch-thumb{border-radius:var(--r-full);background:var(--surface);width:24px;height:24px;box-shadow:var(--shadow-1);transition:transform var(--dur-3) var(--ease-spring);display:block}.switch-input:checked+.switch-track{background:var(--ok)}.switch-input:checked+.switch-track .switch-thumb{transform:translate(20px)}.switch-input:focus-visible+.switch-track{box-shadow:var(--shadow-focus)}.inline-confirm{display:inline-grid;position:relative}.inline-confirm--block{display:grid}.inline-confirm>.btn,.inline-confirm-panel{grid-area:1/1}.inline-confirm-panel{justify-content:space-between;align-items:center;gap:var(--sp-2) var(--sp-3);min-height:var(--control-h);padding:var(--sp-1) var(--sp-1) var(--sp-1) var(--sp-4);border-radius:var(--r-control);background:var(--danger-soft);color:var(--danger-strong);font-size:var(--fs-label);font-weight:var(--w-medium);opacity:0;visibility:hidden;transition:opacity var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-spring), visibility 0s linear var(--dur-2);flex-wrap:wrap;display:flex;transform:scale(.98)}.inline-confirm-actions{gap:var(--sp-1);display:flex}.inline-confirm>.btn{transition:opacity var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out)}.inline-confirm[data-open]>.btn{opacity:0;pointer-events:none;transform:scale(.98)}.inline-confirm[data-open] .inline-confirm-panel{opacity:1;visibility:visible;transition-delay:0s;transform:scale(1)}.ring{justify-items:center;gap:var(--sp-5);display:grid}.ring-face{width:220px;height:220px;position:relative}.ring--compact .ring-face{width:160px;height:160px}.ring-svg{width:100%;height:100%;transform:rotate(-90deg)}.ring-track{fill:none;stroke:var(--surface-3);stroke-width:8px}.ring-progress{fill:none;stroke:var(--ok);stroke-width:8px;stroke-linecap:round;transition:stroke var(--dur-3) var(--ease-out)}.ring[data-phase=ending] .ring-progress{stroke:var(--accent)}.ring-center{place-content:center;justify-items:center;gap:var(--sp-1);display:grid;position:absolute;inset:0}.ring-time{font-size:var(--fs-40);font-weight:var(--w-semibold);letter-spacing:var(--ls-display);line-height:1}.ring--compact .ring-time{font-size:var(--fs-28)}.ring-caption{color:var(--text-3);font-size:var(--fs-meta);font-weight:var(--w-medium)}.ring[data-phase=done] .ring-caption{color:var(--ok-strong)}.ring-controls{align-items:center;gap:var(--sp-3);display:flex}.ring-play{border-radius:var(--r-full);background:var(--inverse-bg);width:64px;height:64px;color:var(--inverse-fg);box-shadow:var(--shadow-2);transition:transform var(--dur-1) var(--ease-out);place-items:center;display:grid}.ring-play:active,.ring-step:active{transform:scale(.94)}.ring-step{min-width:52px;height:44px;padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--surface);border:1px solid var(--line);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-semibold);transition:transform var(--dur-1) var(--ease-out);place-items:center;display:grid}.ring-step--icon{min-width:44px;padding:0}.ring-play:focus-visible,.ring-step:focus-visible{box-shadow:var(--shadow-focus);outline:none}.brand-mark-tile{fill:var(--accent)}.brand-mark-ring{stroke:var(--on-accent)}.brand-mark-dot{fill:var(--on-accent)}.stack{gap:var(--sp-4);display:grid}.stack-sm{gap:var(--sp-2);display:grid}.stack-lg{gap:var(--sp-6);display:grid}.row{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.section-title{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);font-size:var(--fs-title-sm);display:flex}.effort-field{gap:var(--sp-3);display:grid}.effort-field-note{align-items:flex-start;gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);display:flex}.effort-field-text{color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-snug);flex:1;margin:0}#app{min-height:100vh;min-height:100dvh;display:grid}#app>.layout{grid-area:1/1;min-width:0}.layout--entering{animation:rt-view-in-fade var(--dur-5) var(--ease-out) both}.layout--leaving{z-index:1;animation:rt-view-out-fade var(--dur-3) var(--ease-in-out) both;pointer-events:none;position:fixed;inset:0;overflow:hidden}.view-host{outline:none;min-width:0;display:grid}.view-host>.view{grid-area:1/1;min-width:0}.view--leaving{pointer-events:none}.shell{min-height:100vh;min-height:100dvh}.shell-main{min-width:0;padding-bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--sp-6))}.topbar{z-index:var(--z-topbar);align-items:center;gap:var(--sp-3);height:calc(var(--topbar-h) + var(--safe-top));padding:var(--safe-top) calc(var(--gutter) + var(--safe-right)) 0 calc(var(--gutter) + var(--safe-left));background:var(--glass-bg);-webkit-backdrop-filter:saturate(1.6) blur(var(--glass-blur));backdrop-filter:saturate(1.6) blur(var(--glass-blur));box-shadow:0 1px 0 var(--glass-line);display:flex;position:sticky;top:0}.topbar-brand{display:grid}.topbar-title{font-size:var(--fs-title-sm);font-weight:var(--w-semibold);letter-spacing:var(--ls-title);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.topbar-actions{align-items:center;gap:var(--sp-1);display:flex}.topbar-role{align-items:center;gap:var(--sp-1);min-height:var(--control-h-sm);padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-semibold);display:inline-flex}.topbar-avatar{width:var(--tap-min);height:var(--tap-min);border-radius:var(--r-full);place-items:center;display:grid}.topbar-avatar:hover{text-decoration:none}.sidebar{display:none}.tabbar{z-index:var(--z-nav);padding:0 var(--safe-right) var(--safe-bottom) var(--safe-left);background:var(--glass-bg);-webkit-backdrop-filter:saturate(1.6) blur(var(--glass-blur));backdrop-filter:saturate(1.6) blur(var(--glass-blur));box-shadow:var(--shadow-nav);position:fixed;bottom:0;left:0;right:0}.tabbar-items{grid-template-columns:repeat(var(--count,4), minmax(0, 1fr));height:var(--nav-h);display:grid;position:relative}.tabbar-indicator{top:8px;left:calc(var(--safe-left) + (100% - var(--safe-left) - var(--safe-right)) / var(--count,4) * var(--index,0) + (100% - var(--safe-left) - var(--safe-right)) / var(--count,4) / 2 - 28px);border-radius:var(--r-full);background:var(--accent-soft);width:56px;height:30px;transition:left var(--dur-4) var(--ease-spring);pointer-events:none;position:absolute}.nav-item{justify-content:center;align-items:center;gap:var(--sp-1);min-width:0;color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-medium);flex-direction:column;display:flex;position:relative}.nav-item:hover{color:var(--text);text-decoration:none}.nav-icon{height:30px;transition:transform var(--dur-2) var(--ease-bounce);place-items:center;display:grid}.nav-item[aria-current=page]{color:var(--accent-ink);font-weight:var(--w-semibold)}.nav-item--tab[aria-current=page] .nav-icon{animation:rt-pop-scale var(--dur-3) var(--ease-bounce)}.nav-item:focus-visible{box-shadow:inset var(--shadow-focus);border-radius:var(--r-md);outline:none}.page{width:100%;max-width:var(--content-max);padding:var(--sp-6) calc(var(--gutter) + var(--safe-right)) var(--sp-6) calc(var(--gutter) + var(--safe-left));margin:0 auto}.page--wide{max-width:var(--content-wide)}@media (min-width:768px) and (max-width:1023.98px){.shell{padding-left:calc(var(--rail-w) + var(--safe-left))}.shell-main{padding-bottom:var(--sp-10)}.tabbar{width:calc(var(--rail-w) + var(--safe-left));padding:calc(var(--safe-top) + var(--sp-20)) 0 var(--safe-bottom) var(--safe-left);box-shadow:1px 0 0 var(--line);top:0;right:auto}.tabbar-items{grid-template-columns:1fr;grid-auto-rows:72px;height:auto}.tabbar-indicator{top:calc(72px * var(--index,0) + 8px);transition:top var(--dur-4) var(--ease-spring);left:calc(50% - 28px)}.topbar{padding-left:var(--gutter)}.topbar-brand{top:calc(var(--safe-top) + var(--sp-5));left:calc(var(--safe-left) + (var(--rail-w) - 36px) / 2);z-index:calc(var(--z-nav) + 1);position:fixed}.topbar-brand .brand-mark{width:36px;height:36px}body.has-tabbar .toast-region{bottom:calc(var(--safe-bottom) + var(--sp-5))}}@media (min-width:1024px){.shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);display:grid}.tabbar,.topbar{display:none}.shell-main{padding-bottom:var(--sp-12)}.page{padding-top:var(--sp-10)}.sidebar{gap:var(--sp-6);height:100vh;height:100dvh;padding:var(--sp-6) var(--sp-4);background:var(--bg-elevated);box-shadow:1px 0 0 var(--line);flex-direction:column;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:var(--sp-3);padding:0 var(--sp-2);color:var(--text);display:flex}.sidebar-brand:hover{text-decoration:none}.sidebar-brand-name{font-size:var(--fs-20);font-weight:var(--w-semibold);letter-spacing:var(--ls-title)}.sidebar-nav{gap:var(--sp-1);display:grid}.nav-item--side{justify-content:flex-start;gap:var(--sp-3);min-height:var(--control-h-md);padding:0 var(--sp-3);border-radius:var(--r-md);color:var(--text-2);font-size:var(--fs-label);flex-direction:row}.nav-item--side .nav-icon{height:auto}.nav-item--side:hover{background:var(--surface-3)}.nav-item--side[aria-current=page]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}.nav-item--side[aria-current=page] .nav-icon{color:var(--accent)}.sidebar-foot{gap:var(--sp-1);margin-top:auto;display:grid}.sidebar-action{align-items:center;gap:var(--sp-3);min-height:var(--control-h-md);padding:0 var(--sp-3);border-radius:var(--r-md);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-medium);text-align:left;display:flex}.sidebar-action:hover{background:var(--surface-3);color:var(--text)}.sidebar-action-label{flex:1}.sidebar-user{align-items:center;gap:var(--sp-3);margin-top:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-1);color:var(--text);display:flex}.sidebar-user:hover{box-shadow:var(--shadow-2);text-decoration:none}.sidebar-user-text{min-width:0;font-size:var(--fs-meta);display:grid}.sidebar-user-text strong,.sidebar-user-text span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar-user-text span{color:var(--text-3)}}.auth{min-height:100vh;min-height:100dvh;display:grid}.auth-art{display:none}.auth-main{padding:calc(var(--safe-top) + var(--sp-4)) calc(var(--gutter) + var(--safe-right)) calc(var(--safe-bottom) + var(--sp-8)) calc(var(--gutter) + var(--safe-left));outline:none;place-items:start center;display:grid}.auth-host{width:100%;max-width:var(--auth-max)}@media (min-width:1024px){.auth{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.auth-art{justify-content:space-between;gap:var(--sp-8);height:100vh;height:100dvh;padding:var(--sp-10);background:var(--surface-3);flex-direction:column;display:flex;position:sticky;top:0;overflow:hidden}.auth-main{padding:var(--sp-10);align-items:center}}.auth-art-brand{align-items:center;gap:var(--sp-3);font-size:var(--fs-22);font-weight:var(--w-semibold);letter-spacing:var(--ls-title);display:flex}.auth-art-stage{justify-items:center;gap:var(--sp-4);width:100%;max-width:440px;margin:0 auto;display:grid;position:relative}.art-card{width:100%;padding:var(--sp-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-2);animation:rt-enter var(--dur-5) var(--ease-out) both}.art-card--session{gap:var(--sp-2);max-width:360px;animation-delay:.12s;display:grid;transform:rotate(-2deg)}.art-card--session>strong{font-size:var(--fs-22);letter-spacing:var(--ls-title)}.art-rows{margin-top:var(--sp-2);display:grid}.art-row{padding:var(--sp-2) 0;box-shadow:0 -1px 0 var(--line);font-size:var(--fs-label);justify-content:space-between;display:flex}.art-row-scheme{color:var(--text-2);font-weight:var(--w-semibold)}.art-card--ring{align-items:center;gap:var(--sp-4);max-width:240px;margin-left:45%;margin-top:calc(var(--sp-8) * -1);animation-delay:.26s;display:flex}.art-card--ring strong{font-size:var(--fs-24);display:block}.art-card--ring span{color:var(--text-3);font-size:var(--fs-meta)}.art-ring{width:64px;height:64px;transform:rotate(-90deg)}.art-ring-track{fill:none;stroke:var(--surface-3);stroke-width:7px}.art-ring-progress{fill:none;stroke:var(--ok);stroke-width:7px;stroke-linecap:round;stroke-dasharray:201;stroke-dashoffset:70px}.art-card--mara{align-items:flex-start;gap:var(--sp-3);max-width:340px;font-size:var(--fs-label);color:var(--text-2);margin-right:30%;animation-delay:.4s;display:flex}.auth-art-quote{max-width:32ch;color:var(--text-2);font-size:var(--fs-18);line-height:var(--lh-snug)}.bare{min-height:100vh}.bare>.view{min-width:0}.bare{display:grid}.bare>.view{grid-area:1/1}.auth-view{gap:var(--sp-6);padding-top:var(--sp-2);display:grid}.auth-back{align-items:center;gap:var(--sp-2);min-height:var(--tap-min);margin-left:calc(var(--sp-2) * -1);padding:0 var(--sp-3) 0 var(--sp-2);border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-medium);transition:background-color var(--dur-1) var(--ease-out);justify-self:start;display:inline-flex}.auth-back:hover{background:var(--surface-3);color:var(--text)}.auth-back:focus-visible{box-shadow:var(--shadow-focus);outline:none}.auth-head{gap:var(--sp-2);display:grid}.auth-title{font-size:var(--fs-title-lg);letter-spacing:var(--ls-display)}.auth-subtitle{color:var(--text-2)}.auth-body{gap:var(--sp-5);display:grid}.auth-form{gap:var(--sp-3);display:grid}.auth-form>.btn{margin-top:var(--sp-2)}.auth-inline-link{margin-top:calc(var(--sp-3) * -1);justify-content:flex-end;display:flex}.auth-foot{color:var(--text-2);font-size:var(--fs-label);text-align:center}.auth-legal{color:var(--text-3);font-size:var(--fs-caption);line-height:var(--lh-snug)}.auth-email-chip{padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-medium);justify-self:start}.social-row{gap:var(--sp-2);display:grid}.social-btn{font-weight:var(--w-medium)}.swap-host{display:grid}.welcome{gap:var(--sp-8);min-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - var(--sp-12));padding-top:var(--sp-6);flex-direction:column;display:flex}.welcome-brand{align-items:center;gap:var(--sp-3);display:flex}.welcome-brand-name{font-size:var(--fs-22);font-weight:var(--w-semibold);letter-spacing:var(--ls-title)}.welcome-hero{gap:var(--sp-4);margin-top:auto;display:grid}.welcome-title{font-size:var(--fs-40);letter-spacing:var(--ls-display);line-height:1.08}.welcome-text{color:var(--text-2);font-size:var(--fs-18);line-height:var(--lh-snug)}.welcome-points{gap:var(--sp-3);margin-top:var(--sp-2);display:grid}.welcome-point{align-items:center;gap:var(--sp-3);color:var(--text-2);display:flex}.welcome-point-icon{border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line);width:32px;height:32px;color:var(--accent-ink);place-items:center;display:grid}.welcome-actions{gap:var(--sp-2);display:grid}.welcome-code{justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--tap-min);color:var(--accent-ink);font-size:var(--fs-label);font-weight:var(--w-semibold);border-radius:var(--r-md);display:inline-flex}.welcome-code:hover{background:var(--accent-soft)}@media (min-width:1024px){.welcome{min-height:auto;padding-top:0}.welcome-brand{display:none}.welcome-title{font-size:var(--fs-40)}}.choice-card{align-items:center;gap:var(--sp-4);width:100%;min-height:76px;padding:var(--sp-4);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-card);text-align:left;color:inherit;display:flex}.choice-card:hover{border-color:var(--line-3)}.choice-card:focus-visible{box-shadow:var(--shadow-focus);outline:none}.choice-card-icon{border-radius:var(--r-md);background:var(--surface-3);width:44px;height:44px;color:var(--text-2);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);flex:none;place-items:center;display:grid}.choice-card-text{gap:var(--sp-0);flex:1;display:grid}.choice-card-text span{color:var(--text-3);font-size:var(--fs-meta)}.choice-card-check{border:1.5px solid var(--line-2);border-radius:var(--r-full);color:#0000;width:26px;height:26px;transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-bounce);flex:none;place-items:center;display:grid}.choice-card--selected{border-color:var(--accent);box-shadow:var(--shadow-focus)}.choice-card--selected .choice-card-icon{background:var(--accent-soft);color:var(--accent-ink)}.choice-card--selected .choice-card-check{background:var(--accent);border-color:var(--accent);color:var(--on-accent);transform:scale(1.06)}.steps-row{align-items:center;gap:var(--sp-3);display:flex}.steps{gap:var(--sp-1);flex:1;grid-template-columns:1fr 1fr;display:grid}.steps-bar{border-radius:var(--r-full);background:var(--surface-4);height:4px;position:relative;overflow:hidden}.steps-bar:after{content:"";border-radius:inherit;background:var(--accent);transform-origin:0;transition:transform var(--dur-5) var(--ease-out);position:absolute;inset:0;transform:scaleX(0)}.steps[data-step="1"] .steps-bar:first-child:after,.steps[data-step="2"] .steps-bar:after{transform:scaleX(1)}.steps-label{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);white-space:nowrap}.step-host{margin:0 calc(var(--sp-2) * -1);padding:var(--sp-1) var(--sp-2) var(--sp-2);display:grid;overflow:hidden}.step-host>.step{grid-area:1/1;min-width:0}.step{gap:var(--sp-4);display:grid}.step-question{color:var(--text-2);font-weight:var(--w-medium)}.kind-pill{align-items:center;gap:var(--sp-2);min-height:var(--control-h-sm);padding:0 var(--sp-2) 0 var(--sp-3);border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent-ink);font-size:var(--fs-label);font-weight:var(--w-semibold);justify-self:start;display:inline-flex}.kind-pill-change{padding:var(--sp-0) var(--sp-2);border-radius:var(--r-full);background:var(--surface);color:var(--text-2);font-size:var(--fs-caption)}.success-panel{justify-items:center;gap:var(--sp-3);padding:var(--sp-6) 0;text-align:center;display:grid}.success-badge{width:72px;height:72px;margin-bottom:var(--sp-2);border-radius:var(--r-full);background:var(--ok);color:var(--text-inverse);animation:rt-scale-in var(--dur-5) var(--ease-bounce) both;place-items:center;display:grid;position:relative}.success-badge-ring{border-radius:inherit;background:var(--ok);animation:rt-ripple .9s var(--ease-out) .2s both;position:absolute;inset:0}.success-badge .icon{position:relative}.success-title{font-size:var(--fs-title)}.success-text{max-width:36ch;color:var(--text-2)}.success-actions{gap:var(--sp-2);width:100%;margin-top:var(--sp-4);display:grid}.verify-hero{justify-items:center;gap:var(--sp-3);text-align:center;display:grid}.verify-text{max-width:36ch;color:var(--text-2)}.verify-text strong{color:var(--text)}.invite-trainer{align-items:center;gap:var(--sp-4);padding:var(--sp-4);border-radius:var(--r-card);background:var(--ok-soft);display:flex}.invite-trainer div{display:grid}.invite-trainer span{color:var(--text-2);font-size:var(--fs-label)}.home-grid{gap:var(--sp-5);display:grid}.home-main,.home-aside{align-content:start;gap:var(--sp-5);min-width:0;display:grid}@media (min-width:1024px){:is(.page:has(.home-grid--trainer),.page:has(.home-grid--student)){max-width:var(--content-wide)}.home-grid--trainer,.home-grid--student{grid-template-columns:minmax(0,1fr) 340px;align-items:start}.home-grid--trainer>.stat-grid{grid-column:1/-1}.home-aside{top:var(--sp-6);position:sticky}}.stat-grid{gap:var(--sp-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (min-width:768px){.stat-grid:not(.stat-grid--two){grid-template-columns:repeat(4,minmax(0,1fr))}}.students-card-head{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-5) var(--sp-5) var(--sp-2);flex-wrap:wrap;display:flex}.students-card-head .section-title{justify-content:flex-start;margin:0}.students-card-filters{--gutter:var(--sp-5);padding:0 var(--gutter) var(--sp-3);box-shadow:0 1px 0 var(--line)}.search{align-items:center;gap:var(--sp-2);max-width:280px;min-height:var(--control-h-md);padding:0 var(--sp-3);border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface-2);color:var(--text-3);transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);flex:200px;display:flex}.search:focus-within{border-color:var(--accent);box-shadow:var(--shadow-focus)}.search-input{min-width:0;height:100%;color:var(--text);font-size:var(--fs-16);background:0 0;border:0;flex:1}.search-input::-webkit-search-cancel-button{display:none}.row-adherence{width:96px;display:none}.row-adherence .progress-head{display:none}@media (min-width:640px){.row-adherence{display:block}}.notes{gap:var(--sp-3);display:grid}.note{align-items:flex-start;gap:var(--sp-3);font-size:var(--fs-label);line-height:var(--lh-snug);display:flex}.note-icon{border-radius:var(--r-full);background:var(--info-soft);width:28px;height:28px;color:var(--info-strong);flex:none;place-items:center;display:grid}.note-icon--accent{background:var(--accent-soft);color:var(--accent-ink)}.note-icon--warn{background:var(--warn-soft);color:var(--warn-strong)}.note-icon--ok{background:var(--ok-soft);color:var(--ok-strong)}.invite-card{gap:var(--sp-3);display:grid}.invite-card-text{gap:var(--sp-1);display:grid}.invite-card-text span{color:var(--text-2);font-size:var(--fs-label)}.invite-code{gap:var(--sp-2);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.invite-code-char{aspect-ratio:5/6;border-radius:var(--r-md);background:var(--surface-3);max-height:72px;font-size:var(--fs-28);font-weight:var(--w-semibold);place-items:center;display:grid}.invite-code-skeleton{border-radius:var(--r-md);height:72px}.invite-url{padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-2);font-family:var(--font-mono);font-size:var(--fs-meta);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.invite-actions>*{flex:1}.session-hero{gap:var(--sp-3);padding:var(--sp-6);border-radius:var(--r-card);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-2);display:grid}.session-hero-top{gap:var(--sp-2);flex-wrap:wrap;display:flex}.session-title{font-size:var(--fs-34);letter-spacing:var(--ls-display)}.session-meta{gap:var(--sp-4);color:var(--text-2);font-size:var(--fs-label);flex-wrap:wrap;display:flex}.session-meta span{align-items:center;gap:var(--sp-1);display:inline-flex}.session-actions{gap:var(--sp-2);margin-top:var(--sp-3);display:grid}@media (min-width:640px){.session-actions{grid-template-columns:1fr 1fr}}.routine-card{gap:var(--sp-6);display:grid}.routine-section{gap:var(--sp-3);display:grid}.routine-section-title{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.exercise-list{display:grid}.exercise{gap:var(--sp-4);padding:var(--sp-3) 0;display:flex}.exercise+.exercise{box-shadow:0 -1px 0 var(--line)}.exercise-index{border-radius:var(--r-full);background:var(--surface-3);width:32px;height:32px;color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-semibold);flex:none;place-items:center;display:grid}.exercise-body{gap:var(--sp-1);min-width:0;display:grid}.exercise-name{font-size:var(--fs-18);font-weight:var(--w-semibold);letter-spacing:var(--ls-title)}.exercise-rx{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.exercise-scheme{font-size:var(--fs-22);font-weight:var(--w-semibold);letter-spacing:var(--ls-title)}.exercise-tag{align-items:center;gap:var(--sp-1);min-height:24px;padding:0 var(--sp-2);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-semibold);display:inline-flex}.exercise-tag--last{background:var(--ok-soft);color:var(--ok-strong)}.exercise-note{color:var(--text-3);font-size:var(--fs-meta)}.week{gap:var(--sp-1);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.week-day{justify-items:center;gap:var(--sp-1);display:grid}.week-day-name{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold)}.week-day-dot{border-radius:var(--r-full);background:var(--surface-3);width:36px;height:36px;color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-semibold);place-items:center;display:grid}.week-day--done .week-day-dot{background:var(--ok);color:var(--text-inverse)}.week-day--today .week-day-dot{background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 4px var(--accent-soft)}.week-day--missed .week-day-dot{background:var(--surface);border:1.5px dashed var(--line-3);color:var(--text-3)}.week-day--rest .week-day-dot{color:var(--text-3);background:0 0}.trainer-line{align-items:center;gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-label);display:flex}.trainer-line strong{color:var(--text)}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:var(--fs-label)}.data-table th{padding:var(--sp-3) var(--sp-5);color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-align:left;text-transform:uppercase;white-space:nowrap}.data-table td{padding:var(--sp-3) var(--sp-5);box-shadow:0 -1px 0 var(--line);white-space:nowrap}.data-table tbody tr{cursor:pointer;transition:background-color var(--dur-1) var(--ease-out)}.data-table tbody tr:hover{background:var(--surface-2)}.data-table tbody tr:focus-visible{box-shadow:inset var(--shadow-focus);outline:none}.cell-person{align-items:center;gap:var(--sp-3);display:flex}.cell-person div{display:grid}.cell-person span{color:var(--text-3);font-size:var(--fs-meta)}.cell-num{font-weight:var(--w-semibold)}@media (max-width:767.98px){.data-table thead{display:none}.data-table,.data-table tbody,.data-table tr,.data-table td{display:block}.data-table tr{gap:var(--sp-2) var(--sp-3);padding:var(--sp-4) var(--sp-5);box-shadow:0 -1px 0 var(--line);grid-template-columns:1fr auto;display:grid}.data-table td{box-shadow:none;padding:0}.data-table td:first-child{grid-column:1/-1}.data-table td:not(:first-child):before{content:attr(data-label);color:var(--text-3);font-size:var(--fs-caption);display:block}}.settings-grid{gap:var(--sp-4);display:grid}.profile{align-items:center;gap:var(--sp-4);display:flex}.profile-text{gap:var(--sp-1);min-width:0;display:grid}.profile-name{font-size:var(--fs-title-sm)}.profile-email{color:var(--text-3);font-size:var(--fs-label);text-overflow:ellipsis;overflow:hidden}.settings-list{display:grid}.settings-list>*+*{box-shadow:0 -1px 0 var(--line)}.app-version{margin-top:var(--sp-6);color:var(--text-3);font-size:var(--fs-caption);text-align:center}.sg{width:100%;max-width:var(--content-wide);padding:calc(var(--safe-top) + var(--sp-6)) calc(var(--gutter) + var(--safe-right)) calc(var(--safe-bottom) + var(--sp-16)) calc(var(--gutter) + var(--safe-left));margin:0 auto}.sg-header{justify-content:space-between;align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-8);flex-wrap:wrap;display:flex}.sg-brand{align-items:center;gap:var(--sp-3);color:var(--text);display:flex}.sg-brand:hover{text-decoration:none}.sg-brand>span{display:grid}.sg-brand>span span{color:var(--text-3);font-size:var(--fs-meta)}.sg-grid{gap:var(--sp-5);display:grid}@media (min-width:1024px){.sg-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.sg-block{gap:var(--sp-4);padding:var(--sp-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-1);display:grid}.sg-title{font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase;color:var(--text-3)}.sg-body{gap:var(--sp-4);min-width:0;display:grid}.sg-body .chip-group{--gutter:0px}.sg-swatches{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));display:grid}.sg-swatch{gap:var(--sp-1);font-size:var(--fs-meta);display:grid}.sg-swatch code{color:var(--text-3);font-family:var(--font-mono);font-size:var(--fs-caption)}.sg-swatch-chip{border-radius:var(--r-md);height:48px;box-shadow:inset 0 0 0 1px var(--glass-line)}.sg-type--display{font-size:var(--fs-display);font-weight:var(--w-semibold);letter-spacing:var(--ls-display);line-height:var(--lh-tight)}.sg-type--title{font-size:var(--fs-title);font-weight:var(--w-semibold);letter-spacing:var(--ls-title)}.sg-type--sub{font-size:var(--fs-title-sm);font-weight:var(--w-medium)}.sg-center{padding:var(--sp-4) 0;justify-items:center;display:grid}.sg-icons{gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(44px,1fr));display:grid}.sg-icon{border-radius:var(--r-sm);background:var(--surface-2);height:44px;color:var(--text-2);place-items:center;display:grid}.settings-text{margin:0 0 var(--sp-3);color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-snug)}.mara-avatar{border-radius:var(--r-full);background:var(--accent-soft);flex:none;place-items:center;width:36px;height:36px;display:inline-grid;overflow:hidden}.mara-avatar img{object-fit:cover;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.mara-avatar--sm{width:28px;height:28px}.mara-avatar--lg{width:64px;height:64px}.chat{background:var(--bg);flex-direction:column;min-height:0;display:flex}.page--chat{max-width:820px;padding-top:0;padding-bottom:0}.chat--page{height:calc(100dvh - var(--topbar-h) - var(--safe-top) - var(--nav-h) - var(--safe-bottom));margin:0 calc(var(--gutter) * -1)}@media (min-width:768px) and (max-width:1023.98px){.chat--page{height:calc(100dvh - var(--topbar-h) - var(--safe-top))}}@media (min-width:1024px){.page--chat{padding-top:var(--sp-6)}.chat--page{height:calc(100dvh - var(--sp-12));border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface-2);box-shadow:var(--shadow-1);margin:0;overflow:hidden}}.shell[data-section=mara] .shell-main{padding-bottom:0}.chat-head{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);box-shadow:0 1px 0 var(--line);display:flex}.chat--page .chat-head{display:none}@media (min-width:1024px){.chat--page .chat-head{background:var(--surface);display:flex}}.chat-head-text{line-height:var(--lh-snug);flex:1;display:grid}.chat-status{color:var(--text-3);font-size:var(--fs-meta)}.chat[data-busy=true] .chat-status,.chat[data-listening=true] .chat-status{color:var(--accent-ink)}.chat-head-actions{gap:var(--sp-1);display:flex}.chat-head-actions .icon-btn:disabled{opacity:.4}.chat-scroll{overscroll-behavior:contain;min-height:0;scroll-padding-bottom:var(--sp-4);flex:1;overflow-y:auto}.chat-list{gap:var(--sp-3);min-height:100%;padding:var(--sp-5) var(--sp-4);flex-direction:column;display:flex}.chat-intro{justify-items:center;gap:var(--sp-3);padding:var(--sp-6) var(--sp-2);text-align:center;margin:auto 0;display:grid}.chat-intro-title{font-size:var(--fs-title)}.chat-intro-text{max-width:40ch;color:var(--text-2)}.chat-suggestions{gap:var(--sp-2);width:100%;max-width:420px;margin-top:var(--sp-3);display:grid}.suggestion{align-items:center;gap:var(--sp-3);min-height:var(--control-h-md);padding:var(--sp-2) var(--sp-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);color:var(--text);font-size:var(--fs-label);text-align:left;display:flex}.suggestion .icon{color:var(--accent-ink)}.suggestion:hover{border-color:var(--line-3);box-shadow:var(--shadow-1)}.suggestion:focus-visible{box-shadow:var(--shadow-focus);outline:none}.msg{align-items:flex-end;gap:var(--sp-2);max-width:88%;display:flex}.msg--user{align-self:flex-end}.msg--assistant{align-self:flex-start}.msg--enter{animation:rt-msg-in var(--dur-4) var(--ease-out) both}.msg--user.msg--enter{transform-origin:100% 100%}.msg--assistant.msg--enter{transform-origin:0 100%;animation-delay:80ms}@keyframes rt-msg-in{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.msg-bubble{min-width:0;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-xl);font-size:var(--fs-15);line-height:var(--lh-base);overflow-wrap:anywhere}.msg--user .msg-bubble{background:var(--inverse-bg);color:var(--inverse-fg);border-bottom-right-radius:var(--r-xs)}.msg--assistant .msg-bubble{background:var(--surface);border:1px solid var(--line);border-bottom-left-radius:var(--r-xs);box-shadow:var(--shadow-1)}.msg-text{gap:var(--sp-2);white-space:pre-wrap;display:grid}.msg-caret{vertical-align:text-bottom;border-radius:var(--r-full);background:var(--accent);width:2px;height:1.05em;margin-left:2px;animation:.9s step-end infinite rt-caret;display:inline-block}.msg-error{align-items:center;gap:var(--sp-2);color:var(--danger-strong);font-size:var(--fs-label);flex-wrap:wrap;display:flex}.msg-retry{min-height:32px;padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--danger-soft);color:var(--danger-strong);font-weight:var(--w-semibold)}.chat-composer{padding:var(--sp-2) var(--sp-3) var(--sp-3);background:var(--bg)}.chat--page .chat-composer{padding-bottom:var(--sp-3)}@media (min-width:1024px){.chat--page .chat-composer{background:var(--surface-2)}}.composer-box{align-items:flex-end;gap:var(--sp-1);padding:var(--sp-1);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-2xl);box-shadow:var(--shadow-1);transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);display:flex}.composer-box:focus-within{border-color:var(--accent);box-shadow:var(--shadow-focus)}.chat[data-listening=true] .composer-box{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.composer-input{min-width:0;max-height:168px;padding:var(--sp-3) var(--sp-1);resize:none;color:var(--text);font-size:var(--fs-16);line-height:var(--lh-snug);background:0 0;border:0;flex:1}.composer-input:first-child{padding-left:var(--sp-3)}.composer-input:focus-visible{outline:none}.composer-input::placeholder{color:var(--text-3)}.chat[data-listening=true] .composer-input{color:var(--text-2)}.composer-mic,.composer-send{width:var(--tap-min);height:var(--tap-min);border-radius:var(--r-full);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out), opacity var(--dur-2) var(--ease-out);flex:none;place-items:center;display:grid;position:relative}.composer-mic{color:var(--text-2)}.composer-mic:hover{background:var(--surface-3);color:var(--text)}.composer-mic[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.composer-mic-pulse{border-radius:inherit;background:var(--accent);opacity:0;pointer-events:none;position:absolute;inset:0}.composer-mic[aria-pressed=true] .composer-mic-pulse{animation:rt-ripple 1.3s var(--ease-out) infinite}.composer-mic .icon{position:relative}.composer-send{background:var(--accent);color:var(--on-accent)}.composer-send:disabled{background:var(--surface-3);color:var(--text-3)}.chat[data-busy=true] .composer-send{background:var(--inverse-bg);color:var(--inverse-fg)}.composer-mic:active,.composer-send:active:not(:disabled){transform:scale(.92)}.composer-mic:focus-visible,.composer-send:focus-visible{box-shadow:var(--shadow-focus);outline:none}.composer-hint{min-height:0;padding:0 var(--sp-4);color:var(--accent-ink);font-size:var(--fs-caption);text-align:center}.composer-hint:not(:empty){padding-top:var(--sp-2);animation:rt-rise-in var(--dur-3) var(--ease-out)}.mara-fab{right:calc(var(--sp-6) + var(--safe-right));bottom:calc(var(--sp-6) + var(--safe-bottom));z-index:var(--z-nav);align-items:center;gap:var(--sp-2);height:56px;padding:0 var(--sp-5) 0 var(--sp-4);border-radius:var(--r-full);background:var(--inverse-bg);color:var(--inverse-fg);box-shadow:var(--shadow-float);font-weight:var(--w-semibold);transition:transform var(--dur-3) var(--ease-spring), opacity var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);display:none;position:fixed}@media (min-width:1024px){.mara-fab{display:inline-flex}}.mara-fab:hover{transform:translateY(-2px)}.mara-fab:active{transform:scale(.96)}.mara-fab:focus-visible{box-shadow:var(--shadow-float), var(--shadow-focus);outline:none}.mara-fab-icon{border-radius:var(--r-full);background:var(--accent);width:32px;height:32px;color:var(--on-accent);place-items:center;display:grid}.mara-fab[data-busy=true] .mara-fab-icon{animation:rt-avatar-pulse 1.6s var(--ease-out) infinite}.mara-fab--hidden,.mara-fab--open{opacity:0;pointer-events:none;transform:translateY(16px)scale(.9)}.mara-panel{right:calc(var(--sp-6) + var(--safe-right));bottom:calc(var(--sp-6) + var(--safe-bottom));z-index:var(--z-pop);width:var(--chat-side-w);height:min(640px, calc(100dvh - var(--sp-12)));border:1px solid var(--line);border-radius:var(--r-2xl);background:var(--bg);box-shadow:var(--shadow-float);transform-origin:100% 100%;animation:rt-panel-in var(--dur-5) var(--ease-spring) both;display:flex;position:fixed;overflow:hidden}.mara-panel>.chat{flex:1}.mara-panel .chat-head{background:var(--surface)}.mara-panel--closing{animation:rt-panel-out var(--dur-3) var(--ease-in-out) forwards}@keyframes rt-panel-in{0%{opacity:0;transform:translateY(24px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes rt-panel-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(16px)scale(.94)}}@media (max-width:1023.98px){.mara-panel{inset:var(--safe-top) 0 0 0;border:0;border-radius:0;width:auto;height:auto;animation-name:rt-sheet-in}}.composer-attach{width:var(--tap-min);height:var(--tap-min);border-radius:var(--r-full);color:var(--text-2);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);flex:none;place-items:center;display:grid;position:relative}.composer-attach:hover{background:var(--surface-3);color:var(--text)}.composer-attach:active{transform:scale(.92)rotate(-8deg)}.composer-attach:focus-visible{box-shadow:var(--shadow-focus);outline:none}.composer-attach[data-count]:not([data-count=""]):after{content:attr(data-count);min-width:16px;height:16px;padding:0 var(--sp-1);border-radius:var(--r-full);background:var(--accent);color:var(--on-accent);font-size:10px;font-weight:var(--w-bold);animation:rt-pop-scale var(--dur-3) var(--ease-bounce);place-items:center;display:grid;position:absolute;top:4px;right:4px}.composer-send-icon{transition:transform var(--dur-3) var(--ease-spring);place-items:center;display:grid}.composer-send[data-mode=stop] .composer-send-icon{animation:rt-scale-in var(--dur-3) var(--ease-bounce)}.chat-context{align-items:center;gap:var(--sp-2);width:-moz-fit-content;width:fit-content;max-width:100%;margin:0 auto var(--sp-2);padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent-ink);font-size:var(--fs-caption);font-weight:var(--w-medium);animation:rt-rise-in var(--dur-3) var(--ease-out);display:flex}.chat-context-dot{border-radius:var(--r-full);background:var(--accent);width:6px;height:6px;box-shadow:0 0 0 3px var(--accent-soft-2);flex:none}.chat[data-busy=true] .chat-context-dot{animation:rt-breathe 1.4s var(--ease-in-out) infinite}.chat-older{margin:var(--sp-3) auto 0;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-medium);transition:background-color var(--dur-2) var(--ease-out);display:block}.chat-older:hover{background:var(--surface-3)}.chat-older--loading{color:var(--text-3);animation:rt-breathe 1.2s var(--ease-in-out) infinite}.chat-skeleton{gap:var(--sp-4);padding-top:var(--sp-4);display:grid}.chat-skeleton-row{align-items:flex-end;gap:var(--sp-2);animation:rt-rise-in var(--dur-4) var(--ease-out) both;animation-delay:calc(var(--i,0) * 90ms);display:flex}.chat-skeleton-row--user{justify-content:flex-end}.chat-skeleton-avatar{width:28px;height:28px}.chat-skeleton-bubble{gap:var(--sp-2);max-width:78%;padding:var(--sp-4);border-radius:var(--r-xl);display:grid}.chat-skeleton-bubble .skeleton-line{background:var(--surface-4)}.chat-load-error{justify-items:center;gap:var(--sp-3);padding:var(--sp-6);color:var(--text-2);text-align:center;margin:auto 0;display:grid}.chat[data-drop=true] .chat-scroll{outline:2px dashed var(--accent);outline-offset:-10px;border-radius:var(--r-xl);background:var(--accent-soft);transition:background-color var(--dur-2) var(--ease-out)}.msg-user-stack{justify-items:end;gap:var(--sp-1);display:grid}.msg-attachments{justify-content:flex-end;gap:var(--sp-1);flex-wrap:wrap;display:flex}.msg-attachment{border-radius:var(--r-lg);background:var(--surface-3);width:88px;height:88px;box-shadow:var(--shadow-1);display:block;overflow:hidden}.msg-attachment img{object-fit:cover;width:100%;height:100%}.msg-attachment--file{align-items:center;gap:var(--sp-2);width:auto;max-width:220px;height:auto;padding:var(--sp-2) var(--sp-3);color:var(--text-2);font-size:var(--fs-meta);display:inline-flex}.msg-attachment--file span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.msg--assistant .msg-bubble{gap:var(--sp-2);display:grid}.msg--assistant .msg-body:empty,.msg-foot:empty{display:none}.msg-note{align-items:center;gap:var(--sp-2);color:var(--text-3);font-size:var(--fs-meta);display:inline-flex}.turn-status{gap:var(--sp-2);display:grid}.turn-status[hidden]{display:none}.turn-status-live{align-items:center;gap:var(--sp-2);min-height:28px;display:flex}.turn-status-live[hidden]{display:none}.turn-status-glyph{border-radius:var(--r-full);background:var(--accent-soft);width:26px;height:26px;color:var(--accent-ink);flex:none;place-items:center;display:grid;position:relative}.turn-status-glyph .icon{animation:rt-scale-in var(--dur-3) var(--ease-bounce)}.turn-status-ring{border:2px solid #0000;border-top-color:var(--accent);border-right-color:var(--accent-soft-2);border-radius:inherit;animation:.9s linear infinite rt-spin;position:absolute;inset:-3px}.turn-status-glyph[data-kind=fixing]{background:var(--warn-soft);color:var(--warn-strong)}.turn-status-glyph[data-kind=fixing] .turn-status-ring{border-top-color:var(--warn)}.turn-status-glyph[data-kind=recovering]{background:var(--info-soft);color:var(--info-strong)}.turn-status-glyph[data-kind=recovering] .turn-status-ring{border-top-color:var(--info)}.turn-status-glyph[data-kind=stopping]{background:var(--surface-3);color:var(--text-2)}.turn-status-glyph[data-kind=stopping] .turn-status-ring{border-top-color:var(--text-3)}.turn-status-labels{flex:1;min-width:0;display:grid;position:relative}.turn-status-label{background:linear-gradient(90deg, var(--text-2) 0%, var(--text-2) 38%, var(--accent-ink) 50%, var(--text-2) 62%, var(--text-2) 100%);color:#0000;font-size:var(--fs-label);font-weight:var(--w-medium);text-overflow:ellipsis;white-space:nowrap;background-size:260% 100%;-webkit-background-clip:text;background-clip:text;grid-area:1/1;animation:2.2s linear infinite rt-text-shimmer;overflow:hidden}.turn-status-label--in{animation:rt-label-in var(--dur-3) var(--ease-out) both, rt-text-shimmer 2.2s linear infinite}.turn-status-label--out{animation:rt-label-out var(--dur-2) var(--ease-in-out) forwards}.turn-status-time{color:var(--text-3);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;flex:none}.turn-trail[hidden]{display:none}.turn-trail-toggle{align-items:center;gap:var(--sp-1);min-height:28px;padding:0 var(--sp-2);margin-left:calc(var(--sp-2) * -1);border-radius:var(--r-full);color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-medium);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);display:inline-flex}.turn-trail-toggle:hover{background:var(--surface-3);color:var(--text-2)}.turn-trail-toggle .icon{transition:transform var(--dur-3) var(--ease-spring)}.turn-status--open .turn-trail-toggle .icon{transform:rotate(180deg)}.turn-trail-panel{transition:grid-template-rows var(--dur-4) var(--ease-spring);grid-template-rows:0fr;display:grid}.turn-status--open .turn-trail-panel{grid-template-rows:1fr}.turn-trail-list{gap:var(--sp-1);min-height:0;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.turn-status--open .turn-trail-list{padding:var(--sp-1) 0 var(--sp-1)}.turn-trail-step{align-items:center;gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-meta);display:flex}.turn-trail-dot{border-radius:var(--r-full);background:var(--ok-soft);width:18px;height:18px;color:var(--ok-strong);flex:none;place-items:center;display:grid}.turn-trail-step--fixing .turn-trail-dot{background:var(--warn-soft);color:var(--warn-strong)}.mara-chips-wrap{gap:var(--sp-2);margin-top:var(--sp-1);display:grid}.mara-chips-wrap[hidden]{display:none}.mara-chips-summary{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.mara-chips{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.mara-chip{align-items:flex-start;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--ok-soft);color:var(--text);transition:background-color var(--dur-3) var(--ease-out), opacity var(--dur-3) var(--ease-out);display:flex}.mara-chip--warn{background:var(--warn-soft)}.mara-chip--block{background:var(--plum-soft)}.mara-chip--enter{animation:rt-chip-in var(--dur-4) var(--ease-spring) both, rt-chip-glow 1.4s var(--ease-out) both;animation-delay:calc(var(--i,0) * 70ms)}.mara-chip[data-state=undone]{background:var(--surface-3);opacity:.78}.mara-chip[data-state=undone] .mara-chip-text{color:var(--text-3);text-decoration:line-through;-webkit-text-decoration-color:var(--line-3);text-decoration-color:var(--line-3)}.mara-chip-icon{border-radius:var(--r-full);background:var(--surface);width:22px;height:22px;color:var(--ok-strong);box-shadow:var(--shadow-1);flex:none;place-items:center;margin-top:1px;display:grid}.mara-chip--warn .mara-chip-icon{color:var(--warn-strong)}.mara-chip--block .mara-chip-icon{color:var(--plum-strong)}.mara-chip[data-state=undone] .mara-chip-icon{color:var(--text-3)}.mara-chip-spinner{border:2px solid var(--line-2);border-top-color:var(--accent);border-radius:var(--r-full);width:12px;height:12px;animation:.7s linear infinite rt-spin}.mara-chip-body{gap:var(--sp-1);flex:1;min-width:0;display:grid}.mara-chip-kind{padding:1px var(--sp-2);border-radius:var(--r-full);background:var(--surface);color:var(--plum-strong);font-size:11px;font-weight:var(--w-semibold);letter-spacing:.02em;justify-self:start}.mara-chip-text{font-size:var(--fs-meta);line-height:var(--lh-snug)}.mara-chip-state{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold)}.mara-chip-note{color:var(--text-2);font-size:var(--fs-caption);animation:rt-rise-in var(--dur-3) var(--ease-out)}.mara-chip-note--warn{color:var(--warn-strong)}.mara-chip-actions{gap:var(--sp-1);margin-top:var(--sp-1);flex-wrap:wrap;display:flex}.mara-chip-btn{align-items:center;gap:var(--sp-1);min-height:30px;padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--surface);color:var(--text);font-size:var(--fs-caption);font-weight:var(--w-semibold);box-shadow:var(--shadow-1);transition:background-color var(--dur-1) var(--ease-out), transform var(--dur-1) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);display:inline-flex}.mara-chip-btn:hover:not(:disabled){box-shadow:var(--shadow-2)}.mara-chip-btn:active:not(:disabled){transform:scale(.95)}.mara-chip-btn:focus-visible,.mara-chip-alt:focus-visible{box-shadow:var(--shadow-focus);outline:none}.mara-chip-btn:disabled{opacity:.6}.mara-chip-btn--on{background:var(--inverse-bg);color:var(--inverse-fg)}.mara-chip-alts{gap:var(--sp-1);padding-top:var(--sp-1);flex-wrap:wrap;display:flex}.mara-chip-alt{align-items:center;gap:var(--sp-1);min-height:32px;padding:0 var(--sp-3);border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface);color:var(--text);font-size:var(--fs-caption);transition:border-color var(--dur-1) var(--ease-out), background-color var(--dur-1) var(--ease-out), transform var(--dur-1) var(--ease-out);display:inline-flex}.mara-chip-alt:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.mara-chip-alt:active:not(:disabled){transform:scale(.96)}.mara-chip-alt .icon{color:var(--accent-ink)}.attach-tray{gap:var(--sp-2);margin:0 0 var(--sp-2);padding:var(--sp-1) var(--sp-1) var(--sp-1);scrollbar-width:none;list-style:none;display:flex;overflow-x:auto}.attach-tray[hidden]{display:none}.attach-item{justify-items:center;gap:var(--sp-1);flex:none;width:72px;display:grid;position:relative}.attach-item--enter{animation:rt-pop-in var(--dur-4) var(--ease-bounce) both}.attach-item--leave{animation:rt-pop-out var(--dur-2) var(--ease-in-out) forwards}.attach-thumb{border-radius:var(--r-md);object-fit:cover;background:var(--surface-3);width:64px;height:64px;box-shadow:var(--shadow-1)}.attach-thumb--pdf{padding:var(--sp-1);background:var(--danger-soft);color:var(--danger-strong);font-size:10px;line-height:var(--lh-tight);text-align:center;align-content:center;justify-items:center;gap:2px;display:grid}.attach-thumb--pdf strong{font-size:var(--fs-13)}.attach-thumb--pdf span{max-width:100%;color:var(--text-2);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.attach-veil{border-radius:var(--r-md);background:var(--scrim);opacity:1;pointer-events:none;width:64px;height:64px;transition:opacity var(--dur-3) var(--ease-out);place-items:center;display:grid;position:absolute;top:0;left:4px}.attach-item[data-state=done] .attach-veil,.attach-item[data-state=error] .attach-veil{opacity:0}.attach-ring{width:36px;height:36px;transform:rotate(-90deg)}.attach-ring-track,.attach-ring-value{fill:none;stroke-width:4px}.attach-ring-track{stroke:#ffffff52}.attach-ring-value{stroke:var(--text-inverse);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--p,4));transition:stroke-dashoffset var(--dur-3) var(--ease-out)}.attach-item[data-state=preparing] .attach-ring{animation:1s linear infinite rt-spin}.attach-remove{border-radius:var(--r-full);background:var(--inverse-bg);width:22px;height:22px;color:var(--inverse-fg);box-shadow:var(--shadow-2);transition:transform var(--dur-1) var(--ease-out);place-items:center;display:grid;position:absolute;top:-6px;right:-2px}.attach-remove:active{transform:scale(.88)}.attach-retry{border-radius:var(--r-full);background:var(--danger);width:32px;height:32px;color:var(--text-inverse);box-shadow:var(--shadow-2);animation:rt-pop-scale var(--dur-3) var(--ease-bounce);place-items:center;display:grid;position:absolute;top:18px;left:22px}.attach-retry[hidden]{display:none}.attach-item[data-state=error] .attach-thumb{box-shadow:0 0 0 2px var(--danger);filter:grayscale(.6)}.attach-caption{max-width:100%;color:var(--text-3);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.attach-item[data-state=error] .attach-caption{color:var(--danger-strong)}@keyframes rt-text-shimmer{0%{background-position:100% 0}to{background-position:-160% 0}}@keyframes rt-label-in{0%{opacity:0;filter:blur(2px);transform:translateY(8px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes rt-label-out{to{opacity:0;filter:blur(2px);transform:translateY(-8px)}}@keyframes rt-chip-in{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes rt-chip-glow{0%{box-shadow:0 0 0 0 var(--accent-ring)}35%{box-shadow:0 0 0 4px var(--accent-ring)}to{box-shadow:0 0 #0000}}@media (prefers-reduced-motion:reduce){.turn-status-ring,.attach-item[data-state=preparing] .attach-ring{animation:none}.turn-status-label{color:var(--text-2);background:0 0}}.busy-card{gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--warn-soft);animation:rt-rise-in var(--dur-4) var(--ease-out);display:grid}.busy-card-title{align-items:center;gap:var(--sp-2);color:var(--warn-strong);font-size:var(--fs-label);font-weight:var(--w-semibold);display:flex}.busy-card-dot{border-radius:var(--r-full);background:var(--warn);width:8px;height:8px;animation:rt-breathe 1.4s var(--ease-in-out) infinite;flex:none}.busy-card-text{color:var(--text-2);font-size:var(--fs-meta)}.busy-options{gap:var(--sp-1);margin-top:var(--sp-1);display:grid}.busy-option{align-items:center;gap:var(--sp-3);min-height:var(--tap-min);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--surface);color:var(--text);text-align:left;box-shadow:var(--shadow-1);animation:rt-chip-in var(--dur-4) var(--ease-spring) both;transition:box-shadow var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out), background-color var(--dur-2) var(--ease-out);display:flex}.busy-option:nth-child(2){animation-delay:60ms}.busy-option:nth-child(3){animation-delay:.12s}.busy-option:hover{box-shadow:var(--shadow-2)}.busy-option:active{transform:scale(.98)}.busy-option:focus-visible{box-shadow:var(--shadow-focus);outline:none}.busy-option-icon{border-radius:var(--r-full);background:var(--surface-3);width:30px;height:30px;color:var(--text-2);flex:none;place-items:center;display:grid}.busy-option--primary .busy-option-icon{background:var(--accent);color:var(--on-accent)}.busy-option-text{min-width:0;line-height:var(--lh-snug);display:grid}.busy-option-text strong{font-size:var(--fs-label)}.busy-option-text span{color:var(--text-3);font-size:var(--fs-caption)}.queued-card{gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-lg);background:var(--accent-soft);animation:rt-rise-in var(--dur-3) var(--ease-out);display:grid}.queued-row{align-items:center;gap:var(--sp-2);color:var(--accent-ink);font-size:var(--fs-label);font-weight:var(--w-medium);display:flex}.queued-icon{animation:rt-breathe 1.6s var(--ease-in-out) infinite;place-items:center;display:grid}.queued-label{font-variant-numeric:tabular-nums;flex:1}.queued-cancel{min-height:32px;padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--surface);color:var(--text);font-size:var(--fs-caption);font-weight:var(--w-semibold);box-shadow:var(--shadow-1);transition:transform var(--dur-1) var(--ease-out)}.queued-cancel:active{transform:scale(.95)}.queued-cancel:focus-visible{box-shadow:var(--shadow-focus);outline:none}.queued-track{border-radius:var(--r-full);background:var(--accent-soft-2);height:4px;display:block;overflow:hidden}.queued-bar{border-radius:inherit;background:var(--accent);transform-origin:0;width:100%;height:100%;animation:rt-queue-drain var(--ms,15s) linear forwards;display:block}.chat-draft{align-items:center;gap:var(--sp-2);width:-moz-fit-content;width:fit-content;max-width:100%;margin:0 auto var(--sp-2);padding:var(--sp-1) var(--sp-1) var(--sp-1) var(--sp-3);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-caption);display:flex}.chat-draft[hidden]{display:none}.chat-draft--in{animation:rt-rise-in var(--dur-3) var(--ease-out)}.chat-draft-discard{min-height:28px;padding:0 var(--sp-3);border-radius:var(--r-full);color:var(--text);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out)}.chat-draft-discard:hover{background:var(--surface)}.attach-thumb--saved{padding:var(--sp-1);background:var(--info-soft);color:var(--info-strong);font-size:10px;line-height:var(--lh-tight);text-align:center;align-content:center;justify-items:center;gap:2px;display:grid}.attach-thumb--saved span{max-width:100%;color:var(--text-2);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@keyframes rt-queue-drain{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (prefers-reduced-motion:reduce){.queued-bar{animation:none}}.turn-status-texts{flex:1;gap:1px;min-width:0;display:grid}.turn-status-texts .turn-status-labels{flex:none}.turn-status-step{color:var(--text-3);font-size:var(--fs-caption);line-height:var(--lh-snug);text-overflow:ellipsis;white-space:nowrap;transition:color var(--dur-2) var(--ease-out);overflow:hidden}.turn-status[data-playful=false] .turn-status-step{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.turn-status-label--patience{background:linear-gradient(90deg, var(--text-2) 0%, var(--text-2) 38%, var(--plum-strong) 50%, var(--text-2) 62%, var(--text-2) 100%);white-space:normal;background-size:260% 100%;-webkit-background-clip:text;background-clip:text}@media (prefers-reduced-motion:reduce){.turn-status-label--patience{color:var(--text-2);background:0 0}}.msg-stack{justify-items:start;gap:var(--sp-2);flex:auto;min-width:0;display:grid}.msg-stack>.msg-bubble[hidden]{display:none}:is(.msg--assistant:has(.msg-ask>*),.msg--assistant:has(.next-steps:not([hidden]))){width:100%;max-width:100%}@media (min-width:768px){:is(.msg--assistant:has(.msg-ask>*),.msg--assistant:has(.next-steps:not([hidden]))){max-width:88%}:is(.chat--panel .msg--assistant:has(.msg-ask>*),.chat--panel .msg--assistant:has(.next-steps:not([hidden]))){max-width:100%}}.msg-ask:empty{display:none}.msg-ask{justify-self:stretch;width:100%;max-width:520px}.msg-entities{gap:var(--sp-2);margin-top:var(--sp-2);display:grid}.msg-entities:empty{display:none}.msg-entity{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--plum-soft);color:var(--text);font-size:var(--fs-label);animation:rt-entity-in var(--dur-5) var(--ease-spring) both, rt-entity-glow 1.6s var(--ease-out) .2s both;text-decoration:none;display:flex}.msg-entity:hover{background:var(--plum-soft-2)}.msg-entity:focus-visible{box-shadow:var(--shadow-focus);outline:none}.msg-entity>.icon:last-child{color:var(--text-3);margin-left:auto}.msg-entity-icon{border-radius:var(--r-full);background:var(--surface);width:26px;height:26px;color:var(--plum-strong);box-shadow:var(--shadow-1);flex:none;place-items:center;display:grid}.msg-entity-text{line-height:var(--lh-snug);display:grid}.msg-entity-text span{color:var(--text-2);font-size:var(--fs-caption)}@keyframes rt-entity-in{0%{opacity:0;transform:translateY(6px)scale(.97)}to{opacity:1;transform:none}}@keyframes rt-entity-glow{0%{box-shadow:0 0 0 0 var(--accent-ring)}40%{box-shadow:0 0 0 6px var(--accent-ring)}to{box-shadow:0 0 #0000}}.ask{gap:var(--sp-4);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-2);transition:padding var(--dur-3) var(--ease-out), background-color var(--dur-3) var(--ease-out), box-shadow var(--dur-3) var(--ease-out);grid-template-columns:minmax(0,1fr);display:grid;position:relative}.ask-enter{animation:rt-ask-in var(--dur-5) var(--ease-spring) both}.ask-enter .ask-q{animation:rt-enter var(--dur-4) var(--ease-out) both;animation-delay:calc(.12s + var(--q,0) * 90ms)}.ask-enter .ask-option{animation:rt-option-in var(--dur-4) var(--ease-spring) both;animation-delay:calc(.16s + var(--q,0) * 90ms + var(--i,0) * 40ms)}@keyframes rt-ask-in{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:none}}@keyframes rt-option-in{0%{opacity:0;transform:translateY(6px)scale(.94)}to{opacity:1;transform:none}}.ask-body{gap:var(--sp-5);display:grid}.ask-q{gap:var(--sp-2);border-radius:var(--r-lg);display:grid}.ask-q--cue{animation:rt-cue .9s var(--ease-out)}@keyframes rt-cue{0%{box-shadow:0 0 #0000}30%{box-shadow:0 0 0 8px var(--accent-soft);background:var(--accent-soft)}to{box-shadow:0 0 #0000}}.ask-q-text{align-items:flex-start;gap:var(--sp-2);color:var(--text);font-size:var(--fs-15);font-weight:var(--w-semibold);line-height:var(--lh-snug);display:flex}.ask-q-index{border-radius:var(--r-full);background:var(--surface-3);width:22px;height:22px;color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-bold);transition:background-color var(--dur-3) var(--ease-out), color var(--dur-3) var(--ease-out);flex:none;place-items:center;margin-top:-1px;display:inline-grid}.ask-q[data-answered=true] .ask-q-index{background:var(--accent);color:var(--on-accent)}.ask-q-mode{margin-top:calc(var(--sp-1) * -1);color:var(--text-3);font-size:var(--fs-caption)}.ask-options{gap:var(--sp-2);flex-wrap:wrap;display:flex}.ask-option{min-height:var(--tap-min);padding:var(--sp-2) var(--sp-4);border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--surface-2);color:var(--text);font-size:var(--fs-label);font-weight:var(--w-medium);line-height:var(--lh-snug);text-align:left;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), opacity var(--dur-3) var(--ease-out), transform var(--dur-1) var(--ease-out);align-items:center;gap:0;display:inline-flex}.ask-option:hover:not(:disabled){border-color:var(--line-3);background:var(--surface)}.ask-option:active:not(:disabled){transform:scale(.97)}.ask-option:focus-visible{box-shadow:var(--shadow-focus);outline:none}.ask-option[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink);box-shadow:0 0 0 1px var(--accent) inset}.ask-option-check{border-radius:var(--r-full);background:var(--accent);width:0;height:18px;color:var(--on-accent);opacity:0;transition:width var(--dur-3) var(--ease-spring), margin var(--dur-3) var(--ease-spring), opacity var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-bounce);flex:none;place-items:center;margin-right:0;display:inline-grid;overflow:hidden;transform:scale(.4)}.ask-option[aria-checked=true] .ask-option-check{width:18px;margin-right:var(--sp-2);opacity:1;transform:scale(1)}.ask-option-text{gap:1px;display:grid}.ask-option-hint{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-regular)}.ask-option[aria-checked=true] .ask-option-hint{color:var(--accent-ink);opacity:.8}.ask-option--pop{animation:rt-option-pop var(--dur-4) var(--ease-bounce)}@keyframes rt-option-pop{0%{transform:scale(1)}40%{transform:scale(1.05)}to{transform:scale(1)}}.ask-option--other{color:var(--text-2);background:0 0;border-style:dashed}.ask-option--other .ask-option-check{width:18px;margin-right:var(--sp-2);background:var(--surface-3);color:var(--text-2);opacity:1;transform:none}.ask-option--other[aria-expanded=true],.ask-option--other[data-filled=true]{border-style:solid;border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.ask-option--other[data-filled=true] .ask-option-check{background:var(--accent);color:var(--on-accent)}.ask-other[hidden]{display:none}.ask-other--in{animation:rt-rise-in var(--dur-3) var(--ease-out) both}.ask-other--out{animation:rt-fade-out var(--dur-2) var(--ease-in-out) both}.ask[data-sending=true] .ask-option:not([aria-checked=true]):not([data-filled=true]){opacity:.45}.ask[data-sending=true] .ask-option[aria-checked=true]{animation:rt-breathe 1.4s var(--ease-in-out) infinite}.ask[data-sending=true] .ask-option{pointer-events:none}.ask-foot{justify-content:space-between;align-items:center;gap:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--line);display:flex}.ask-progress-wrap{white-space:nowrap;align-items:center;gap:var(--sp-2);color:var(--text-3);font-size:var(--fs-caption);display:inline-flex}.ask-dots{gap:5px;display:inline-flex}.ask-dot{border-radius:var(--r-full);background:var(--line-2);width:7px;height:7px;transition:background-color var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-bounce)}.ask-dot[data-on=true]{background:var(--accent);transform:scale(1.15)}.ask-send{align-items:center;gap:var(--sp-2);min-height:var(--control-h-md);padding:0 var(--sp-4) 0 var(--sp-5);border-radius:var(--r-full);background:var(--accent);color:var(--on-accent);font-size:var(--fs-label);font-weight:var(--w-semibold);box-shadow:var(--shadow-1);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:inline-flex;position:relative}.ask-send:hover:not(:disabled){background:var(--accent-strong);box-shadow:var(--shadow-2)}.ask-send:active:not(:disabled){transform:scale(.97)}.ask-send:focus-visible{box-shadow:var(--shadow-focus);outline:none}.ask-send:disabled{background:var(--surface-3);color:var(--text-3);box-shadow:none;cursor:default}.ask-send-spinner{border-radius:var(--r-full);border:2px solid;border-right-color:#0000;width:14px;height:14px;animation:.7s linear infinite rt-spin;display:none}.ask[data-sending=true] .ask-send{background:var(--accent);color:var(--on-accent)}.ask[data-sending=true] .ask-send-spinner{display:inline-block}.ask[data-sending=true] .ask-send .icon{display:none}.ask-error{align-items:center;gap:var(--sp-2);margin-top:calc(var(--sp-2) * -1);color:var(--danger-strong);font-size:var(--fs-meta);display:flex}.ask-error[hidden]{display:none}.ask--settling .ask-body{animation:rt-fade-out var(--dur-2) var(--ease-in-out) both}.ask--settled .ask-body{animation:rt-rise-in var(--dur-3) var(--ease-out) both}.ask[data-status=answered],.ask[data-status=superseded],.ask[data-status=expired]{gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);background:var(--surface-2);box-shadow:none}.ask-done{align-items:flex-start;gap:var(--sp-3);display:flex}.ask-done-icon{border-radius:var(--r-full);background:var(--ok-soft);width:24px;height:24px;color:var(--ok-strong);flex:none;place-items:center;display:grid}.ask-done-rows{gap:var(--sp-2);min-width:0;display:grid}.ask-done-row{gap:var(--sp-1);display:grid}.ask-done-q{color:var(--text-3);font-size:var(--fs-caption)}.ask-done-pills{gap:var(--sp-1);flex-wrap:wrap;display:flex}.ask-done-pill{padding:3px var(--sp-3);border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent-ink);font-size:var(--fs-meta);font-weight:var(--w-semibold)}.ask-closed{align-items:center;gap:var(--sp-2);color:var(--text-3);font-size:var(--fs-meta);display:flex}.voice-input{align-items:center;gap:var(--sp-1);min-height:var(--control-h);padding:var(--sp-1) var(--sp-1) var(--sp-1) var(--sp-4);border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface-2);transition:border-color var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);display:flex}.voice-input:focus-within{border-color:var(--accent);background:var(--surface);box-shadow:var(--shadow-focus)}.voice-input[data-listening=true]{border-color:var(--accent);background:var(--accent-soft)}.voice-input-field{min-width:0;min-height:40px;color:var(--text);font:inherit;font-size:var(--fs-input);background:0 0;border:0;outline:none;flex:auto}.voice-input-field::placeholder{color:var(--text-3)}.voice-input-mic,.voice-input-send{border-radius:var(--r-full);width:40px;height:40px;transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);flex:none;place-items:center;display:grid;position:relative}.voice-input-mic{color:var(--text-2)}.voice-input-mic:hover{background:var(--surface-3)}.voice-input-mic:active,.voice-input-send:active:not(:disabled){transform:scale(.92)}.voice-input-mic:focus-visible,.voice-input-send:focus-visible{box-shadow:var(--shadow-focus);outline:none}.voice-input-pulse{border-radius:inherit;background:var(--accent);opacity:0;position:absolute;inset:0}.voice-input[data-listening=true] .voice-input-mic{background:var(--accent);color:var(--on-accent)}.voice-input[data-listening=true] .voice-input-pulse{animation:rt-ripple 1.3s var(--ease-out) infinite}.voice-input-mic .icon{position:relative}.voice-input-send{background:var(--inverse-bg);color:var(--inverse-fg)}.voice-input-send:disabled{background:var(--surface-3);color:var(--text-3);cursor:default}.confirm{border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-2);transition:box-shadow var(--dur-3) var(--ease-out);grid-template-columns:minmax(0,1fr);display:grid;overflow:hidden;container-type:inline-size}.confirm.ask-enter .confirm-row{animation:rt-enter var(--dur-4) var(--ease-out) both;animation-delay:calc(.14s + var(--i,0) * 50ms)}.confirm-head{align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-4) var(--sp-3);background:linear-gradient(180deg, var(--accent-soft), var(--surface));display:flex}.confirm[data-type=replace_routine] .confirm-head{background:linear-gradient(180deg, var(--info-soft), var(--surface))}.confirm-icon{border-radius:var(--r-full);background:var(--surface);width:38px;height:38px;color:var(--accent-ink);box-shadow:var(--shadow-1);flex:none;place-items:center;display:grid}.confirm[data-type=replace_routine] .confirm-icon{color:var(--info-strong)}.confirm-titles{gap:2px;min-width:0;display:grid}.confirm-kicker{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.confirm-title{font-size:var(--fs-16);font-weight:var(--w-semibold);line-height:var(--lh-snug)}.confirm-fields{padding:0 var(--sp-2) var(--sp-2);display:grid}.confirm-row{align-items:center;gap:0 var(--sp-2);padding:var(--sp-1) var(--sp-2);transition:background-color var(--dur-2) var(--ease-out);border-radius:0;grid-template-columns:minmax(92px,36%) minmax(0,1fr);display:grid}.confirm-row+.confirm-row{box-shadow:0 -1px 0 var(--line)}.confirm-row[data-editing=true]{border-radius:var(--r-md);background:var(--surface-2);box-shadow:none}.confirm-row[data-editing=true]+.confirm-row{box-shadow:none}.confirm-label{align-items:center;gap:var(--sp-1);padding:var(--sp-2) 0;color:var(--text-2);font-size:var(--fs-meta);display:inline-flex}.confirm-row[data-changed=true] .confirm-label:after{content:"";border-radius:var(--r-full);background:var(--accent);width:6px;height:6px;animation:rt-pop-scale var(--dur-3) var(--ease-bounce)}.confirm-value{justify-content:space-between;align-items:center;gap:var(--sp-2);min-width:0;min-height:var(--tap-min);padding:var(--sp-1) var(--sp-2);border-radius:var(--r-md);color:var(--text);font-size:var(--fs-15);font-weight:var(--w-medium);text-align:left;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);display:flex}.confirm-value:hover:not(:disabled){background:var(--surface-3)}.confirm-value:focus-visible{box-shadow:var(--shadow-focus);outline:none}.confirm-value:disabled{cursor:default}.confirm-value--static{color:var(--text-2);font-weight:var(--w-regular)}.confirm-text,.confirm-contact>span{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.confirm-value--static .confirm-text{-webkit-line-clamp:4}.confirm-placeholder{color:var(--text-3);font-weight:var(--w-regular)}.confirm-contact{align-items:center;gap:var(--sp-1);min-width:0;display:inline-flex}.confirm-pills{gap:var(--sp-1);flex-wrap:wrap;display:flex}.confirm-pill{padding:2px var(--sp-2);border-radius:var(--r-full);background:var(--warn-soft);color:var(--warn-strong);font-size:var(--fs-meta)}.confirm-edit-icon{border-radius:var(--r-full);width:26px;height:26px;color:var(--text-3);opacity:.6;transition:opacity var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);flex:none;place-items:center;display:grid}.confirm-value:hover .confirm-edit-icon,.confirm-value:focus-visible .confirm-edit-icon{opacity:1}.confirm-row[data-editing=true] .confirm-edit-icon{background:var(--accent);color:var(--on-accent);opacity:1}.confirm-row[data-error=true] .confirm-value{color:var(--danger-strong)}.confirm[data-status]:not([data-status=open]) .confirm-edit-icon{display:none}.confirm-editor-wrap{transition:grid-template-rows var(--dur-3) var(--ease-out);grid-column:1/-1;grid-template-rows:0fr;display:grid}.confirm-row[data-editing=true] .confirm-editor-wrap,.confirm-row[data-error=true] .confirm-editor-wrap{grid-template-rows:1fr}.confirm-editor-inner{min-height:0;overflow:hidden}.confirm-row:not([data-editing=true]) .confirm-editor{display:none}.confirm-editor{padding:var(--sp-1) 0 var(--sp-2)}.confirm-error{color:var(--danger-strong);font-size:var(--fs-caption)}.confirm-error:empty{display:none}.confirm-row[data-editing=true] .confirm-error:not(:empty){padding-bottom:var(--sp-2)}.confirm-input-box{align-items:center;gap:var(--sp-2);min-height:var(--tap-min);padding:0 var(--sp-3);border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--surface);transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);flex:auto;display:flex}.confirm-input-box:focus-within{border-color:var(--accent);box-shadow:var(--shadow-focus)}.confirm-row[data-error=true] .confirm-input-box{border-color:var(--danger);box-shadow:var(--shadow-danger)}.confirm-input{min-width:0;min-height:40px;color:var(--text);font:inherit;font-size:var(--fs-input);background:0 0;border:0;outline:none;flex:auto}.confirm-input::placeholder{color:var(--text-3)}.confirm-input-icon{color:var(--text-3);transition:color var(--dur-2) var(--ease-out);place-items:center;display:grid}.confirm-input-icon[data-kind=email]{color:var(--info)}.confirm-input-icon[data-kind=phone]{color:var(--ok)}.confirm-hint{margin-top:var(--sp-1);color:var(--text-3);font-size:var(--fs-caption)}.confirm-stepper{align-items:center;gap:var(--sp-2);display:flex}.confirm-stepper .confirm-input{text-align:center}.confirm-step{width:var(--tap-min);height:var(--tap-min);border-radius:var(--r-md);background:var(--surface-3);color:var(--text);transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);flex:none;place-items:center;display:grid}.confirm-step:hover{background:var(--surface-4)}.confirm-step:active{transform:scale(.92)}.confirm-options{gap:var(--sp-2);flex-wrap:wrap;display:flex}.confirm-option{min-height:40px;padding:0 var(--sp-4);border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface);color:var(--text);font-size:var(--fs-label);font-weight:var(--w-medium);transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out)}.confirm-option:active{transform:scale(.96)}.confirm-option:focus-visible{box-shadow:var(--shadow-focus);outline:none}.confirm-option[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.confirm-list-items{align-items:center;gap:var(--sp-1);flex-wrap:wrap;display:flex}.confirm-list-item{align-items:center;gap:var(--sp-1);min-height:32px;padding:0 var(--sp-1) 0 var(--sp-3);border-radius:var(--r-full);background:var(--warn-soft);color:var(--warn-strong);font-size:var(--fs-meta);font-weight:var(--w-semibold);display:inline-flex}.confirm-list-remove{border-radius:var(--r-full);width:24px;height:24px;color:inherit;transition:background-color var(--dur-2) var(--ease-out);place-items:center;display:grid}.confirm-list-remove:hover{background:var(--warn-soft-2)}.confirm-input-box--inline{flex:120px;min-height:36px}.confirm-input--list{min-height:34px}.confirm-list-suggest{gap:var(--sp-1);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.confirm-suggest{align-items:center;gap:var(--sp-1);min-height:32px;padding:0 var(--sp-3);border:1px dashed var(--line-3);border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-meta);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);display:inline-flex}.confirm-suggest:hover{background:var(--surface-3);color:var(--text)}.confirm-row--static{grid-template-columns:minmax(92px,36%) minmax(0,1fr)}.confirm-row--warn{border-radius:var(--r-md);margin:var(--sp-1) 0 var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--warn-soft);color:var(--warn-strong);grid-template-columns:auto minmax(0,1fr);box-shadow:none!important}.confirm-value--static .confirm-hint{display:block}.confirm-row--warn .confirm-label{display:none}.confirm-row--warn .confirm-value--static{min-height:0;color:var(--warn-strong);font-size:var(--fs-meta);font-weight:var(--w-medium);padding:0}.confirm-row--warn+.confirm-row{box-shadow:none}.confirm-row-icon{place-items:center;display:grid}.confirm-message{align-items:center;gap:var(--sp-2);margin:0 var(--sp-4) var(--sp-2);color:var(--danger-strong);font-size:var(--fs-meta);display:flex}.confirm-message[hidden]{display:none}.confirm-actions{justify-content:flex-end;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);background:var(--surface-2);box-shadow:0 -1px 0 var(--line);flex-wrap:wrap;display:flex}.confirm-actions:empty{display:none}.confirm-actions--out{animation:rt-fade-out var(--dur-2) var(--ease-in-out) both}.confirm-action{white-space:nowrap;justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--control-h-md);padding:0 var(--sp-4);border-radius:var(--r-full);font-size:var(--fs-label);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:inline-flex;position:relative}.confirm-action:active:not(:disabled){transform:scale(.97)}.confirm-action:focus-visible{box-shadow:var(--shadow-focus);outline:none}.confirm-action--primary{background:var(--accent);max-width:260px;color:var(--on-accent);box-shadow:var(--shadow-1);flex:auto}.confirm-action--primary:hover:not(:disabled){background:var(--accent-strong)}.confirm-action--danger{background:var(--danger);max-width:260px;color:var(--on-accent);flex:auto}.confirm-action--quiet{color:var(--text-2)}.confirm-action--quiet:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.confirm-action:disabled{cursor:default}.confirm-action-spinner{border-radius:var(--r-full);border:2px solid;border-right-color:#0000;width:14px;height:14px;animation:.7s linear infinite rt-spin;display:none}.confirm[data-busy=confirm] [data-action=confirm] .confirm-action-spinner,.confirm[data-busy=cancel] [data-action=cancel] .confirm-action-spinner{display:inline-block}.confirm[data-busy=confirm] [data-action=confirm] .icon{display:none}.confirm[data-busy] .confirm-action:not(:disabled){opacity:.6}.confirm-status:empty{display:none}.confirm-settled{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-label);font-weight:var(--w-medium);animation:rt-rise-in var(--dur-3) var(--ease-out) both;display:flex}.confirm-settled--ok{background:var(--ok-soft);color:var(--ok-strong)}.confirm-settled--muted{background:var(--surface-2);color:var(--text-3)}.confirm-settled-icon{border-radius:var(--r-full);background:var(--surface);place-items:center;width:22px;height:22px;display:grid}.confirm[data-status]:not([data-status=open]):not([data-status=answering]){box-shadow:var(--shadow-1)}.confirm[data-status]:not([data-status=open]):not([data-status=answering]) .confirm-head{background:var(--surface)}.next-steps{justify-self:stretch;gap:var(--sp-2);padding-top:var(--sp-1);flex-wrap:wrap;display:flex}.next-steps[hidden]{display:none}.next-steps--leaving{animation:rt-fade-out var(--dur-2) var(--ease-in-out) both}.next-step{align-items:center;gap:var(--sp-2);min-height:40px;padding:0 var(--sp-4) 0 var(--sp-1);border:1px solid var(--accent-soft-2);border-radius:var(--r-full);background:var(--surface);color:var(--accent-ink);font-size:var(--fs-label);font-weight:var(--w-semibold);box-shadow:var(--shadow-1);-webkit-tap-highlight-color:transparent;animation:rt-option-in var(--dur-4) var(--ease-spring) both;animation-delay:calc(80ms + var(--i,0) * 70ms);transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:inline-flex;position:relative}.next-step:hover{background:var(--accent-soft)}.next-step:active{transform:scale(.96)}.next-step:focus-visible{box-shadow:var(--shadow-focus);outline:none}.next-step--prompt{border-color:var(--line-2);color:var(--text)}.next-step--prompt:hover{background:var(--surface-2)}.next-step-icon{border-radius:var(--r-full);background:var(--accent-soft);width:30px;height:30px;color:var(--accent-ink);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);flex:none;place-items:center;display:grid}.next-step--prompt .next-step-icon{background:var(--surface-3)}.next-step-spinner{border-radius:var(--r-full);border:2px solid;border-right-color:#0000;width:14px;height:14px;animation:.7s linear infinite rt-spin;display:none}.next-step[data-state=loading] .next-step-spinner{display:inline-block}.next-step[data-state=loading]{pointer-events:none}.next-step[data-state=done]{border-color:var(--ok-soft-2);background:var(--ok-soft);color:var(--ok-strong)}.next-step[data-state=done] .next-step-icon{background:var(--surface);color:var(--ok-strong);animation:rt-pop-scale var(--dur-4) var(--ease-bounce)}.chat[data-waiting=true] .composer-box{border-color:var(--line-2)}@media (min-width:1024px){.ask{padding:var(--sp-5)}.ask-option{min-height:40px}}@container (width<=420px){.confirm-row,.confirm-row--static{padding-top:var(--sp-2);grid-template-columns:minmax(0,1fr)}.confirm-label{padding:0 var(--sp-2);font-size:var(--fs-caption)}.confirm-value{min-height:36px}.confirm-row--warn{padding-top:var(--sp-2);grid-template-columns:auto minmax(0,1fr)}.confirm-actions{padding:var(--sp-3)}}.library{--library-sticky-top:calc(var(--topbar-h) + var(--safe-top));padding-bottom:var(--sp-16)}.library .page-header{margin-bottom:var(--sp-4)}.library-toolbar{top:var(--library-sticky-top);z-index:5;gap:var(--sp-3);margin:0 calc(var(--gutter) * -1);padding:var(--sp-2) var(--gutter) var(--sp-3);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(1.4) blur(var(--glass-blur));backdrop-filter:saturate(1.4) blur(var(--glass-blur));display:grid;position:sticky}.library-search{align-items:center;gap:var(--sp-2);min-height:var(--field-h);padding:0 var(--sp-2) 0 var(--sp-4);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-full);box-shadow:var(--shadow-1);color:var(--text-3);cursor:text;transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-out);display:flex;position:relative}.library-search:hover{border-color:var(--line-3)}.library-search:focus-within{border-color:var(--accent);box-shadow:var(--shadow-focus), var(--shadow-2);color:var(--accent-ink)}.library-search-icon{transition:transform var(--dur-3) var(--ease-bounce);flex:none;display:grid}.library-search:focus-within .library-search-icon{transform:scale(1.08)}.library-search-input{min-width:0;height:var(--field-h);color:var(--text);font-size:var(--fs-input);caret-color:var(--accent);background:0 0;border:0;flex:1}.library-search-input::placeholder{color:var(--text-3)}.library-search-input::-webkit-search-cancel-button{display:none}.library-search-clear,.library-search-mic{border-radius:var(--r-full);width:40px;height:40px;color:var(--text-2);transition:background-color var(--dur-1) var(--ease-out), color var(--dur-1) var(--ease-out), opacity var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-bounce);flex:none;place-items:center;display:grid;position:relative}.library-search-clear{background:var(--surface-3);opacity:0;pointer-events:none;width:32px;height:32px;transform:scale(.4)}.library-search--filled .library-search-clear{opacity:1;pointer-events:auto;transform:scale(1)}.library-search-clear:hover,.library-search-mic:hover{background:var(--surface-4);color:var(--text)}.library-search-mic[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.library-search-mic-pulse{border-radius:inherit;background:var(--accent);opacity:0;position:absolute;inset:0}.library-search-mic[aria-pressed=true] .library-search-mic-pulse{animation:rt-ripple 1.4s var(--ease-out) infinite}.library-search-mic .icon{position:relative}.library-search--listening{border-color:var(--accent);box-shadow:var(--shadow-focus)}.library-chips{padding-top:0;padding-bottom:0}.library-chips-divider{background:var(--line-2);flex:none;align-self:center;width:1px;height:20px}.library-filters-chip{color:var(--text)}.library-filters-count:empty{display:none}.library-filters-chip--active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.library-filters-chip--active .chip-count{background:var(--accent);color:var(--on-accent)}.library-active{gap:var(--sp-2);flex-wrap:wrap;display:flex}.library-active[hidden]{display:none}.library-pill{align-items:center;gap:var(--sp-1);min-height:30px;padding:0 var(--sp-2) 0 var(--sp-3);border-radius:var(--r-full);background:var(--inverse-bg);color:var(--inverse-fg);font-size:var(--fs-meta);font-weight:var(--w-medium);animation:rt-pop-in var(--dur-3) var(--ease-bounce) both;transition:transform var(--dur-1) var(--ease-out), opacity var(--dur-1) var(--ease-out);display:inline-flex}.library-pill:active{transform:scale(.95)}.library-pill .icon{opacity:.7}.library-pill--clear{padding:0 var(--sp-3);color:var(--text-2);text-underline-offset:3px;background:0 0;text-decoration:underline}.library-status{min-height:36px;margin-bottom:var(--sp-2);color:var(--text-2);font-size:var(--fs-meta);font-variant-numeric:tabular-nums;align-items:center;display:flex;position:relative}.library-progress{border-radius:var(--r-full);opacity:0;height:2px;transition:opacity var(--dur-2) var(--ease-out);position:absolute;bottom:0;left:0;right:0;overflow:hidden}.library-progress:after{content:"";border-radius:inherit;background:var(--accent);width:40%;animation:library-indeterminate 1.1s var(--ease-in-out) infinite;position:absolute;inset:0}.library[data-status=refreshing] .library-progress,.library[data-status=loading] .library-progress{opacity:1}@keyframes library-indeterminate{0%{transform:translate(-100%)}to{transform:translate(260%)}}.library-grid{gap:var(--sp-3);transition:opacity var(--dur-3) var(--ease-out);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.library[data-status=refreshing] .library-grid{opacity:.55}.library-grid--tail{margin-top:var(--sp-3)}.library-tail:empty{display:none}.library-sentinel{height:1px}.library-end{padding:var(--sp-8) 0 var(--sp-2);color:var(--text-3);font-size:var(--fs-meta);text-align:center}.library-more-error{justify-content:center;align-items:center;gap:var(--sp-3);padding:var(--sp-6) 0;color:var(--text-2);font-size:var(--fs-label);display:flex}.library-empty:empty{display:none}.library-empty{padding:var(--sp-8) 0}@media (min-width:640px){.library-grid{gap:var(--sp-4);grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.library{--library-sticky-top:0px}.library-toolbar{padding-top:var(--sp-4);grid-template-columns:minmax(320px,520px) 1fr;align-items:center}.library-active{grid-column:1/-1}.library-chips{--bleed-end:calc(var(--gutter) + var(--safe-right) + max(0px, (100cqw - var(--content-wide)) / 2));margin:0 calc(var(--bleed-end) * -1) 0 0;padding:var(--sp-1) var(--bleed-end) var(--sp-1) 0;scroll-padding-inline:0 var(--bleed-end)}}@media (min-width:1180px){.library-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.ex-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);min-width:0;box-shadow:var(--shadow-1);color:var(--text);content-visibility:auto;contain-intrinsic-size:auto 220px;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-2) var(--ease-out), box-shadow var(--dur-3) var(--ease-out), border-color var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out);flex-direction:column;text-decoration:none;display:flex;position:relative;overflow:hidden}@media (hover:hover){.ex-card[href]:hover{border-color:var(--line-2);background:var(--surface-2);box-shadow:var(--shadow-2);transform:translateY(-2px)}.ex-card[href]:hover .cover-img{transform:scale(1.04)}}.ex-card:focus-visible{box-shadow:var(--shadow-focus), var(--shadow-2);outline:none}.ex-card--in{animation:rt-enter var(--dur-4) var(--ease-out) both;animation-delay:calc(var(--i,0) * 35ms)}.ex-card--inserted{border-color:var(--accent);box-shadow:var(--shadow-focus), var(--shadow-2);animation:ex-card-insert 1.2s var(--ease-out) both}@keyframes ex-card-insert{0%{opacity:0;transform:scale(.92)}35%{opacity:1;transform:scale(1.02)}to{transform:scale(1)}}.ex-card-body{align-content:start;gap:var(--sp-1);padding:var(--sp-3) var(--sp-3) var(--sp-4);display:grid}.ex-card-name{-webkit-line-clamp:2;min-height:calc(var(--fs-15) * var(--lh-snug) * 2);font-size:var(--fs-15);font-weight:var(--w-semibold);line-height:var(--lh-snug);letter-spacing:var(--ls-title);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ex-card-mark{border-radius:var(--r-xs);background:var(--accent-soft-2);color:inherit;box-shadow:0 0 0 2px var(--accent-soft-2)}.ex-card-meta{color:var(--text-3);font-size:var(--fs-meta);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ex-card-alias{color:var(--accent-ink);font-size:var(--fs-caption);font-weight:var(--w-medium)}.ex-card-alias[hidden],.ex-card-flags[hidden]{display:none}.ex-card-flags{gap:var(--sp-1);margin-top:var(--sp-1);flex-wrap:wrap;display:flex}.ex-card--skeleton{pointer-events:none}.ex-card--skeleton .skeleton-line{height:12px}.ex-card--skeleton .ex-card-body{gap:var(--sp-2);min-height:86px}.cover{aspect-ratio:16/9;background:var(--surface-3);isolation:isolate;display:block;position:relative;overflow:hidden}.cover--card{border-radius:0}.cover--mini{border-radius:var(--r-md);width:100%}.cover--hero{border-radius:var(--r-card)}.cover-placeholder{color:var(--text-3);place-items:center;display:grid;position:absolute;inset:0}.cover-mark{border-radius:var(--r-full);background:var(--surface);opacity:.8;width:52px;height:52px;transition:opacity var(--dur-3) var(--ease-out);place-items:center;display:grid}.cover--mini .cover-mark{width:34px;height:34px}.cover--loaded .cover-mark{opacity:0}.cover-initial{right:var(--sp-3);bottom:var(--sp-1);font-size:var(--fs-40);font-weight:var(--w-bold);letter-spacing:var(--ls-display);opacity:.18;line-height:1;position:absolute}.cover--empty.cover--tone-accent{background:var(--accent-soft);color:var(--accent-ink)}.cover--empty.cover--tone-ok{background:var(--ok-soft)}.cover--empty.cover--tone-info{background:var(--info-soft)}.cover--empty.cover--tone-plum{background:var(--plum-soft)}.cover--empty.cover--tone-warn{background:var(--warn-soft)}.cover--empty .cover-placeholder{color:inherit}.cover-img{z-index:1;object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity var(--dur-5) var(--ease-out), transform var(--dur-5) var(--ease-out);-webkit-user-select:none;user-select:none;position:absolute;inset:0;transform:scale(1.02)}.cover--loaded .cover-img{opacity:1;transform:scale(1)}.library-host{min-height:60vh}.library-host:has(>.library){container-type:inline-size}.library--booting .page-header-text{gap:var(--sp-3);display:grid}.library-skeleton-title{border-radius:var(--r-md);width:180px;height:32px}.library-skeleton-sub{width:min(360px,80%)}.library--booting .library-search{box-shadow:none;border:0}.library-chips-skeleton{gap:var(--sp-2);display:flex;overflow:hidden}.library-chip-skeleton{width:84px;height:var(--control-h-sm);border-radius:var(--r-full);flex:none}.filter-sheet{gap:var(--sp-6);padding-bottom:var(--sp-2);display:grid}.filter-section{gap:var(--sp-3);display:grid}.filter-section-head{align-items:center;gap:var(--sp-2);display:flex}.filter-section-title{font-size:var(--fs-16);font-weight:var(--w-semibold)}.filter-section-count{min-width:22px;height:22px;padding:0 var(--sp-1);border-radius:var(--r-full);background:var(--accent);color:var(--on-accent);font-size:var(--fs-caption);font-weight:var(--w-semibold);place-items:center;display:grid}.filter-section-count[hidden]{display:none}.filter-chips{gap:var(--sp-2);flex-wrap:wrap;display:flex}.filter-muscles{gap:var(--sp-4);display:grid}.filter-muscle-group{gap:var(--sp-2);display:grid}.filter-muscle-group-name{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.filter-more{transition:grid-template-rows var(--dur-4) var(--ease-out);grid-template-rows:0fr;display:grid}.filter-more[data-open=true]{grid-template-rows:1fr}.filter-more-inner{min-height:0;overflow:hidden}.filter-chips--extra{padding-top:var(--sp-2);opacity:0;transition:opacity var(--dur-3) var(--ease-out)}.filter-more[data-open=true] .filter-chips--extra{opacity:1}.filter-more-btn{align-items:center;gap:var(--sp-1);margin-top:var(--sp-2);justify-self:start;display:inline-flex}.filter-more-btn .icon{transition:transform var(--dur-3) var(--ease-out)}.filter-more-btn[aria-expanded=true] .icon{transform:rotate(180deg)}.filter-footer{gap:var(--sp-2);width:100%;display:flex}.filter-footer>.btn--ghost{flex:none}.filter-footer>.btn--primary{flex:1}.btn--counting .btn-label{opacity:.6;transition:opacity var(--dur-2) var(--ease-out)}.sheet--lg{max-height:calc(100dvh - var(--safe-top) - var(--sp-6))}@media (min-width:768px){.sheet--lg{max-width:600px}}.ex-page{padding-bottom:var(--sp-16)}.ex-back{align-items:center;gap:var(--sp-1);min-height:var(--tap-min);margin:calc(var(--sp-2) * -1) 0 var(--sp-2) calc(var(--sp-2) * -1);padding:0 var(--sp-3) 0 var(--sp-2);border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-medium);transition:background-color var(--dur-1) var(--ease-out), color var(--dur-1) var(--ease-out);display:inline-flex}.ex-back:hover{background:var(--surface-3);color:var(--text)}.ex-back .icon{transition:transform var(--dur-2) var(--ease-out)}.ex-back:hover .icon{transform:translate(-2px)}.ex-back-skeleton{width:110px;height:28px;margin-bottom:var(--sp-4);border-radius:var(--r-full);display:block}.ex-detail{gap:var(--sp-6);display:grid}.ex-detail-media{gap:var(--sp-3);align-content:start;min-width:0;display:grid}.ex-detail-info{gap:var(--sp-6);align-content:start;min-width:0;display:grid}@media (max-width:767.98px){.ex-detail-media{margin:0 calc(var(--gutter) * -1)}.ex-detail-media>.player{border-radius:0}.ex-detail-media>:not(.player){margin:0 var(--gutter)}}@media (min-width:1024px){.ex-detail{gap:var(--sp-8);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start}.ex-detail-media{top:var(--sp-6);position:sticky}}.ex-sources-skeleton{height:var(--control-h-sm);border-radius:var(--r-full)}.ex-skeleton-kicker{width:90px}.ex-skeleton-title{border-radius:var(--r-md);width:70%;height:34px;display:block}.ex-head{gap:var(--sp-2);display:grid}.ex-title{font-size:var(--fs-title-lg);font-weight:var(--w-bold);line-height:var(--lh-tight);letter-spacing:var(--ls-display);text-wrap:balance}.ex-aliases{color:var(--text-2);font-size:var(--fs-label)}.ex-aliases span{color:var(--text-3)}.ex-facts{gap:var(--sp-3);margin:0;display:grid}.ex-fact{gap:var(--sp-3);grid-template-columns:112px 1fr;align-items:baseline;display:grid}.ex-fact dt{color:var(--text-3);font-size:var(--fs-meta);font-weight:var(--w-medium)}.ex-fact dd{margin:0}.ex-fact-text{font-size:var(--fs-label);font-weight:var(--w-medium)}.ex-pills{gap:var(--sp-1);flex-wrap:wrap;display:flex}.ex-pill{min-height:28px;padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-medium);align-items:center;display:inline-flex}.ex-pill--accent{background:var(--accent-soft);color:var(--accent-ink)}.ex-pill--ink{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-2);color:var(--text)}.ex-section{gap:var(--sp-3);display:grid}.ex-section .section-title{margin-bottom:0}.ex-note-muted{color:var(--text-3);font-size:var(--fs-meta)}.ex-steps{gap:var(--sp-3);margin:0;padding:0;list-style:none;display:grid}.ex-step{gap:var(--sp-3);grid-template-columns:32px 1fr;align-items:start;display:grid}.ex-step p{padding-top:var(--sp-1);line-height:var(--lh-base)}.ex-step-num{border-radius:var(--r-full);background:var(--inverse-bg);width:32px;height:32px;color:var(--inverse-fg);font-size:var(--fs-meta);font-weight:var(--w-semibold);font-variant-numeric:tabular-nums;place-items:center;display:grid}.ex-tips{gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-card);background:var(--ok-soft);color:var(--text);grid-template-columns:auto 1fr}.ex-tips-icon{border-radius:var(--r-full);background:var(--surface);width:32px;height:32px;color:var(--ok-strong);place-items:center;display:grid}.ex-tips-title{margin-bottom:var(--sp-1);font-size:var(--fs-label);font-weight:var(--w-semibold)}.ex-tips p{color:var(--text-2);font-size:var(--fs-label)}.ex-notes{padding:var(--sp-4);border-radius:var(--r-card);background:var(--surface-3)}.ex-notes p{color:var(--text-2);white-space:pre-line}.ex-variants-strip{gap:var(--sp-3);margin:0 calc(var(--gutter) * -1);padding:var(--sp-1) var(--gutter) var(--sp-2);scroll-snap-type:x proximity;scroll-padding:var(--gutter);scrollbar-width:none;grid-auto-columns:minmax(132px,150px);grid-auto-flow:column;display:grid;overflow-x:auto}.ex-variants-strip::-webkit-scrollbar{display:none}@media (min-width:1024px){.ex-variants-strip{margin:0;padding-left:0;padding-right:0}}.ex-variant{gap:var(--sp-2);padding:var(--sp-1);border-radius:var(--r-lg);color:var(--text);scroll-snap-align:start;transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);align-content:start;text-decoration:none;display:grid;position:relative}.ex-variant:hover{background:var(--surface-3)}.ex-card:hover,.ex-variant:hover,.ex-link-card:hover{text-decoration:none}.ex-variant-name{-webkit-line-clamp:2;padding:0 var(--sp-1);font-size:var(--fs-meta);font-weight:var(--w-medium);line-height:var(--lh-snug);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ex-variant--current{background:var(--accent-soft)}.ex-variant--current .cover{box-shadow:0 0 0 2px var(--accent)}.ex-variant--current .ex-variant-name{color:var(--accent-ink);font-weight:var(--w-semibold)}.ex-variant-own{padding:0 var(--sp-1);color:var(--accent-ink);font-size:var(--fs-caption);font-weight:var(--w-semibold)}.ex-variant--skeleton{gap:var(--sp-2);padding:var(--sp-1);display:grid}.ex-attribution{align-items:center;gap:var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);display:flex}.ex-attribution:empty{display:none}.ex-sources{justify-self:start;max-width:100%}.ex-real-options{gap:var(--sp-2);animation:rt-rise-in var(--dur-3) var(--ease-out) both;flex-wrap:wrap;display:flex}.ex-real-options[hidden]{display:none}.ex-link-card{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-card);background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);color:var(--text);text-decoration:none;display:flex}.ex-link-card span:last-child{font-size:var(--fs-label);display:grid}.ex-link-card span:last-child span{color:var(--text-3);font-size:var(--fs-meta)}.ex-link-card-icon{border-radius:var(--r-full);background:var(--surface-3);place-items:center;width:36px;height:36px;display:grid}.player{aspect-ratio:16/9;border-radius:var(--r-card);background:var(--surface-3);color:var(--text-inverse);isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;position:relative;overflow:hidden}.player--skeleton{display:block}.player-poster,.player-surface,.player-overlay{position:absolute;inset:0}.player-poster .cover-img{opacity:1;transform:none}.player-surface{z-index:1;cursor:pointer;place-items:center;display:grid}.player-video,.player-iframe{object-fit:cover;background:0 0;border:0;width:100%;height:100%;position:absolute;inset:0}.player-video{opacity:0;transition:opacity var(--dur-5) var(--ease-out)}.player--has-frame .player-video{opacity:1}.player--youtube .player-video,.player--youtube .player-bar{display:none}.player-state{border-radius:var(--r-full);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;pointer-events:none;background:#14100c7a;place-items:center;width:72px;height:72px;display:grid;position:relative;transform:scale(.6)}.player-state--flash{animation:player-flash .62s var(--ease-out) both}@keyframes player-flash{0%{opacity:0;transform:scale(.6)}30%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.player[data-state=ready] .player-state,.player[data-state=message] .player-state{animation:none}.player[data-state=ready][data-playing=false] .player-state{opacity:1;transition:opacity var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-bounce);transform:scale(1)}.player[data-state=ready][data-playing=false] .player-state:empty:before{content:"";border:12px solid #0000;border-left:20px solid;border-right-width:0;width:0;height:0;margin-left:6px}.player-spinner{border:3px solid #ffffff4d;border-top-color:var(--text-inverse);border-radius:var(--r-full);opacity:0;width:40px;height:40px;transition:opacity var(--dur-2) var(--ease-out);pointer-events:none;animation:.8s linear infinite rt-spin;position:absolute}.player[data-state=loading] .player-spinner,.player[data-state=buffering] .player-spinner{opacity:1;transition-delay:.24s}.player[data-state=loading]:after{content:"";z-index:1;background:linear-gradient(100deg, transparent 20%, var(--shimmer) 50%, transparent 80%);animation:rt-shimmer 1.4s var(--ease-in-out) infinite;pointer-events:none;position:absolute;inset:0;transform:translate(-100%)}.player-overlay{z-index:3;padding:var(--sp-4);pointer-events:none;place-items:center;display:grid}.player-overlay:empty{display:none}.player-message{justify-items:center;gap:var(--sp-2);max-width:320px;padding:var(--sp-5) var(--sp-6);border-radius:var(--r-xl);background:var(--glass-bg);-webkit-backdrop-filter:saturate(1.4) blur(var(--glass-blur));backdrop-filter:saturate(1.4) blur(var(--glass-blur));box-shadow:var(--shadow-2);color:var(--text);text-align:center;pointer-events:auto;display:grid}.player-message strong{font-size:var(--fs-16)}.player-message span{color:var(--text-2);font-size:var(--fs-meta)}.player-message-icon{border-radius:var(--r-full);background:var(--surface-3);width:40px;height:40px;color:var(--text-2);place-items:center;display:grid}.player-message--error .player-message-icon{background:var(--danger-soft);color:var(--danger)}.player-message-action{min-height:var(--control-h-sm);margin-top:var(--sp-1);padding:0 var(--sp-4);border-radius:var(--r-full);background:var(--inverse-bg);color:var(--inverse-fg);font-size:var(--fs-label);font-weight:var(--w-semibold);transition:transform var(--dur-1) var(--ease-out)}.player-message-action:active{transform:scale(.96)}.player-pulse{border-radius:var(--r-full);background:var(--accent);width:56px;height:56px;color:var(--on-accent);place-items:center;display:grid;position:relative}.player-pulse>span{border-radius:inherit;background:var(--accent);animation:rt-ripple 1.6s var(--ease-out) infinite;position:absolute;inset:0}.player-pulse>span:nth-child(2){animation-delay:.8s}.player-pulse .icon{position:relative}.player-badge{top:var(--sp-3);left:var(--sp-3);z-index:4;pointer-events:none;position:absolute}.player-chip{min-height:26px;padding:0 var(--sp-3);border-radius:var(--r-full);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text-inverse);font-size:var(--fs-caption);font-weight:var(--w-semibold);animation:rt-pop-in var(--dur-3) var(--ease-bounce) both;background:#14100c8f;align-items:center;display:inline-flex}.player-chip--accent{background:var(--accent);color:var(--on-accent)}.player-bar{left:var(--sp-2);right:var(--sp-2);bottom:var(--sp-2);z-index:4;align-items:center;gap:var(--sp-1);padding:var(--sp-1);border-radius:var(--r-full);-webkit-backdrop-filter:saturate(1.4)blur(12px);backdrop-filter:saturate(1.4)blur(12px);opacity:0;transition:opacity var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-out);pointer-events:none;background:#14100c80;display:flex;position:absolute;transform:translateY(8px)}.player--controls .player-bar,.player[data-playing=false][data-state=ready] .player-bar,.player--scrubbing .player-bar{opacity:1;pointer-events:auto;transform:translateY(0)}.player[data-state=pending] .player-bar,.player[data-state=message] .player-bar,.player[data-state=error] .player-bar,.player[data-state=idle] .player-bar,.player[data-state=loading] .player-bar{opacity:0;pointer-events:none}.player-btn{min-width:36px;height:36px;padding:0 var(--sp-2);border-radius:var(--r-full);color:var(--text-inverse);font-size:var(--fs-meta);font-weight:var(--w-semibold);font-variant-numeric:tabular-nums;transition:background-color var(--dur-1) var(--ease-out), transform var(--dur-1) var(--ease-out);flex:none;place-items:center;display:grid}.player-btn:hover{background:#ffffff24}.player-btn:active{transform:scale(.92)}.player-btn:focus-visible{box-shadow:0 0 0 2px var(--text-inverse);outline:none}.player-btn--text{min-width:48px}.player--slow .player-btn--text{background:var(--accent);color:var(--on-accent)}.player-progress{height:36px;padding:0 var(--sp-2);cursor:pointer;touch-action:none;flex:1;align-items:center;display:grid;position:relative}.player-progress:focus-visible{outline:none}.player-progress:focus-visible .player-progress-track{box-shadow:0 0 0 2px var(--text-inverse)}.player-progress-track{border-radius:var(--r-full);height:4px;transition:height var(--dur-2) var(--ease-out);background:#ffffff47;position:relative;container-type:inline-size}.player-progress:hover .player-progress-track,.player--scrubbing .player-progress-track{height:6px}.player-progress-fill{border-radius:inherit;background:var(--text-inverse);transform-origin:0;will-change:transform;position:absolute;inset:0;transform:scaleX(0)}.player-progress-thumb{border-radius:var(--r-full);background:var(--text-inverse);opacity:0;width:14px;height:14px;transition:opacity var(--dur-2) var(--ease-out), scale var(--dur-2) var(--ease-bounce);will-change:transform;margin-top:-7px;position:absolute;top:50%;left:0;box-shadow:0 1px 4px #0000004d}.player-progress:hover .player-progress-thumb,.player--scrubbing .player-progress-thumb,.player-progress:focus-visible .player-progress-thumb{opacity:1}.player--scrubbing .player-progress-thumb{scale:1.2}.player:fullscreen{background:var(--inverse-bg);border-radius:0}.player:fullscreen .player-video{object-fit:contain}.own-card{gap:var(--sp-4);border-radius:var(--r-card);box-shadow:inset 0 0 0 1px var(--line);display:grid}.own-head{gap:var(--sp-3);align-items:flex-start;display:flex}.own-head .section-title{margin-bottom:var(--sp-1)}.own-head-icon{border-radius:var(--r-full);background:var(--accent-soft);width:40px;height:40px;color:var(--accent-ink);flex:none;place-items:center;display:grid}.own-head-text{color:var(--text-2);font-size:var(--fs-label)}.own-body{gap:var(--sp-4);display:grid}.own-choices{gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.own-choice{align-items:center;gap:var(--sp-3);min-height:68px;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line-2);color:var(--text);text-align:left;transition:background-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:flex}.own-choice:hover{background:var(--surface);box-shadow:inset 0 0 0 1px var(--accent), var(--shadow-1)}.own-choice:focus-visible{box-shadow:inset 0 0 0 1px var(--accent), var(--shadow-focus);outline:none}.own-choice-icon{border-radius:var(--r-md);background:var(--surface);width:40px;height:40px;box-shadow:var(--shadow-1);color:var(--accent-ink);flex:none;place-items:center;display:grid}.own-choice-text{gap:var(--sp-0);display:grid}.own-choice-text strong{font-size:var(--fs-15)}.own-choice-text span{color:var(--text-3);font-size:var(--fs-meta)}.own-row{gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);display:grid}.own-row-main{align-items:center;gap:var(--sp-3);display:flex}.own-row-thumb{aspect-ratio:16/9;border-radius:var(--r-sm);background:var(--surface-3);width:64px;color:var(--text-2);flex:none;place-items:center;display:grid;overflow:hidden}.own-row-thumb-img{object-fit:cover;width:100%;height:100%}.own-row-text{gap:var(--sp-0);flex:1;min-width:0;display:grid}.own-row-text strong{font-size:var(--fs-15)}.own-row-text span{color:var(--text-3);font-size:var(--fs-meta);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.own-row .inline-confirm{justify-self:start}.own-form{gap:var(--sp-4);display:grid}.own-form-actions{justify-content:flex-end;gap:var(--sp-2);display:flex}.link-preview:empty{display:none}.link-preview-card{align-items:center;gap:var(--sp-3);padding:var(--sp-2);border-radius:var(--r-lg);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);display:flex}.link-preview-media{aspect-ratio:16/9;border-radius:var(--r-sm);flex:none;width:120px;position:relative;overflow:hidden}.link-preview-img{z-index:1;object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity var(--dur-4) var(--ease-out);position:absolute;inset:0}.link-preview-card--loaded .link-preview-img{opacity:1}.link-preview-play{z-index:2;color:var(--text-inverse);place-items:center;display:grid;position:absolute;inset:0}.link-preview-play .icon{padding:var(--sp-2);box-sizing:content-box;border-radius:var(--r-full);background:#14100c80}.link-preview-text{gap:var(--sp-0);min-width:0;display:grid}.link-preview-text span{color:var(--text-3);font-size:var(--fs-meta);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clip-preview{align-items:center;gap:var(--sp-3);display:flex}.clip-preview-frame{aspect-ratio:16/9;border-radius:var(--r-md);background:var(--inverse-bg);flex:none;width:132px;overflow:hidden}.clip-preview-video{object-fit:cover;width:100%;height:100%}.clip-preview-text{gap:var(--sp-0);min-width:0;display:grid}.clip-preview-text strong{font-size:var(--fs-15);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clip-preview-meta{color:var(--text-3);font-size:var(--fs-meta);font-variant-numeric:tabular-nums}.clip-message:empty{display:none}.clip-progress{gap:var(--sp-2);animation:rt-rise-in var(--dur-3) var(--ease-out) both;display:grid}.clip-progress[hidden]{display:none}.clip-progress-head{font-size:var(--fs-label);font-weight:var(--w-medium);justify-content:space-between;display:flex}.clip-progress-pct{font-variant-numeric:tabular-nums}.clip-progress-track{border-radius:var(--r-full);background:var(--surface-3);height:8px;position:relative;overflow:hidden}.clip-progress-fill{border-radius:inherit;background:var(--accent);transform-origin:0;transition:transform var(--dur-3) var(--ease-out);position:absolute;inset:0;transform:scaleX(0)}.clip-form[data-step=processing] .clip-progress-fill,.clip-form[data-step=requesting] .clip-progress-fill{background:var(--ok)}.clip-form[data-step=processing] .clip-progress-track:after,.clip-form[data-step=requesting] .clip-progress-track:after{content:"";background:linear-gradient(90deg, transparent, var(--shimmer), transparent);animation:rt-shimmer 1.2s var(--ease-in-out) infinite;position:absolute;inset:0;transform:translate(-100%)}.clip-progress-detail{color:var(--text-3);font-size:var(--fs-meta);font-variant-numeric:tabular-nums}.clip-done{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--ok-soft);display:flex}.clip-done>span:last-child{gap:var(--sp-0);font-size:var(--fs-label);display:grid}.clip-done>span:last-child span{color:var(--text-2);font-size:var(--fs-meta)}.clip-done-icon{border-radius:var(--r-full);background:var(--ok);width:36px;height:36px;color:var(--text-inverse);flex:none;place-items:center;display:grid}.clip-done-icon .icon{width:20px;height:20px}.clip-note{color:var(--text-2);font-size:var(--fs-label)}.ex-create{padding-bottom:var(--sp-16)}.dictate-card{gap:var(--sp-4);margin-bottom:var(--sp-5);border-radius:var(--r-card);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow var(--dur-3) var(--ease-out), background-color var(--dur-3) var(--ease-out);display:grid}.dictate-card[data-state=listening]{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-soft-2)}.dictate-head{align-items:center;gap:var(--sp-5);display:flex}.dictate-text{gap:var(--sp-1);display:grid}.dictate-text .section-title{margin-bottom:0}.dictate-text p{color:var(--text-2);font-size:var(--fs-label)}.dictate-orb-label{margin-top:var(--sp-1);color:var(--accent-ink);font-size:var(--fs-meta);font-weight:var(--w-semibold)}.dictate-orb{border-radius:var(--r-full);width:76px;height:76px;color:var(--on-accent);transition:transform var(--dur-2) var(--ease-bounce);flex:none;place-items:center;display:grid;position:relative}.dictate-orb[hidden]{display:none}.dictate-orb:active{transform:scale(.94)}.dictate-orb:focus-visible{outline:none}.dictate-orb:focus-visible .dictate-orb-core{box-shadow:var(--shadow-focus), var(--shadow-2)}.dictate-orb-core{z-index:1;border-radius:inherit;background:var(--accent);width:100%;height:100%;box-shadow:var(--shadow-2);transition:background-color var(--dur-2) var(--ease-out), box-shadow var(--dur-3) var(--ease-out);place-items:center;display:grid;position:relative}.dictate-orb:hover .dictate-orb-core{background:var(--accent-strong)}.dictate-orb-ring{border-radius:inherit;background:var(--accent);opacity:0;position:absolute;inset:0}.dictate-orb[aria-pressed=true] .dictate-orb-ring{animation:rt-ripple 1.6s var(--ease-out) infinite}.dictate-orb[aria-pressed=true] .dictate-orb-ring--2{animation-delay:.8s}.dictate-card[data-state=parsing] .dictate-orb-core{animation:rt-breathe 1.2s var(--ease-in-out) infinite}.dictate-transcript{min-height:0;color:var(--text);font-size:var(--fs-18);line-height:var(--lh-snug);letter-spacing:var(--ls-title)}.dictate-transcript:empty{display:none}.dictate-transcript--live:after{content:"";vertical-align:-.15em;background:var(--accent);width:2px;height:1.1em;margin-left:2px;animation:1s step-end infinite rt-caret;display:inline-block}.dictate-typed{gap:var(--sp-3);animation:rt-rise-in var(--dur-3) var(--ease-out) both;display:grid}.dictate-typed[hidden]{display:none}.dictate-typed>.btn,.dictate-switch{justify-self:start}.ex-form{gap:var(--sp-5);display:grid}.ex-form-card{border-radius:var(--r-card);box-shadow:inset 0 0 0 1px var(--line)}.ex-form-card .section-title{margin-bottom:0}.ex-form-submit{bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--sp-3));z-index:4;position:sticky}@media (min-width:768px){.ex-form-submit{bottom:var(--sp-4)}.ex-form-submit .btn{width:auto;min-width:240px}}.ex-form-submit .btn{box-shadow:var(--shadow-float)}.ex-form--parsing .field-control,.ex-form--parsing .picker-control,.ex-form--parsing .tag-control{position:relative;overflow:hidden}.ex-form--parsing .field-control:after,.ex-form--parsing .picker-control:after,.ex-form--parsing .tag-control:after{content:"";background:linear-gradient(90deg, transparent, var(--accent-soft), transparent);animation:rt-shimmer 1.1s var(--ease-in-out) infinite;pointer-events:none;position:absolute;inset:0;transform:translate(-100%)}.field-flash{animation:field-flash 1.1s var(--ease-out)}@keyframes field-flash{0%{background-color:var(--accent-soft-2);box-shadow:0 0 0 4px var(--accent-ring)}to{background-color:var(--surface);box-shadow:0 0 #0000}}.dup-hint:empty{display:none}.dup-card{align-items:flex-start;gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-md);background:var(--info-soft);color:var(--info-strong);font-size:var(--fs-label);display:flex}.dup-card .icon{flex:none;margin-top:1px}.picker-control{align-items:center;gap:var(--sp-1) var(--sp-2);width:100%;min-height:var(--field-h);padding:var(--sp-2) var(--sp-4);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-control);color:var(--text);text-align:left;transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);grid-template-columns:1fr auto;display:grid}.picker-control:hover{border-color:var(--line-3)}.picker-control:focus-visible{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.picker-label{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-medium);grid-column:1}.picker-required{color:var(--accent-ink)}.picker-value{gap:var(--sp-1);flex-wrap:wrap;grid-column:1;display:flex}.picker-chevron{color:var(--text-3);grid-area:1/2/span 2}.picker-placeholder{color:var(--text-3);font-size:var(--fs-input)}.picker-pill{min-height:26px;padding:0 var(--sp-2);border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent-ink);font-size:var(--fs-meta);font-weight:var(--w-medium);animation:rt-pop-in var(--dur-3) var(--ease-bounce) both;align-items:center;display:inline-flex}.picker[data-state=error] .picker-control{border-color:var(--danger);box-shadow:var(--shadow-danger)}.picker[data-state=error] .field-message{color:var(--danger-strong)}.tag-control{gap:var(--sp-1);min-height:var(--field-h);padding:var(--sp-2) var(--sp-4);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-control);cursor:text;transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);display:grid}.tag-field--focus .tag-control{border-color:var(--accent);box-shadow:var(--shadow-focus)}.tag-label{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-medium)}.tag-row{align-items:center;gap:var(--sp-1);flex-wrap:wrap;display:flex}.tag-list{display:contents}.tag{align-items:center;gap:var(--sp-1);min-height:28px;padding:0 var(--sp-1) 0 var(--sp-3);border-radius:var(--r-full);background:var(--surface-3);color:var(--text);font-size:var(--fs-meta);font-weight:var(--w-medium);display:inline-flex}.tag-remove{border-radius:var(--r-full);width:22px;height:22px;color:var(--text-2);transition:background-color var(--dur-1) var(--ease-out);place-items:center;display:grid}.tag-remove:hover{background:var(--surface-4)}.tag-input{min-width:140px;min-height:28px;color:var(--text);font-size:var(--fs-input);caret-color:var(--accent);background:0 0;border:0;flex:1}.tag-input::placeholder{color:var(--text-3)}.exercise-link{align-items:center;gap:var(--sp-2);color:var(--text);text-decoration:none;display:inline-flex}.exercise-link .icon{padding:var(--sp-1);box-sizing:content-box;border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent-ink);transition:transform var(--dur-2) var(--ease-bounce)}.exercise-link:hover .icon{transform:scale(1.1)}@media (prefers-reduced-motion:reduce){.library-progress:after,.player[data-state=loading]:after,.ex-form--parsing .field-control:after,.ex-form--parsing .picker-control:after,.ex-form--parsing .tag-control:after{display:none}.ex-card[href]:hover{transform:none}.dictate-orb[aria-pressed=true] .dictate-orb-ring,.player-pulse>span{opacity:.25;animation:none}.player-spinner{animation-duration:1.2s!important;animation-iteration-count:infinite!important}}.ex-real-angle{align-items:center;display:flex}.ex-real-note{color:var(--text-3);font-size:var(--fs-meta)}.filter-section--toggles{gap:var(--sp-1)}.yt-start{gap:var(--sp-2);flex-wrap:wrap;display:flex}.yt-panel{gap:var(--sp-3);min-width:0;display:grid}.yt-search{background:var(--surface-2);box-shadow:none}.yt-search:focus-within{background:var(--surface)}.yt-chips{gap:var(--sp-2);padding:var(--sp-1) 0;scrollbar-width:none;display:flex;overflow-x:auto}.yt-chips::-webkit-scrollbar{display:none}.yt-chips .chip{transition:opacity var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out)}.yt-chip--dim{opacity:.55}.yt-saved-chip{margin-left:auto}.yt-saved-chip--empty .chip-count{display:none}.yt-saved-chip[aria-pressed=true] .icon path{fill:currentColor}.yt-status{min-height:1.4em;color:var(--text-3);font-size:var(--fs-meta)}.yt-status:empty{display:none}.yt-grid{gap:var(--sp-5) var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(208px,1fr));display:grid}.yt-state{grid-column:1/-1}.yt-card{min-width:0;position:relative}.yt-card-open{gap:var(--sp-2);border-radius:var(--r-lg);width:100%;color:var(--text);text-align:left;transition:transform var(--dur-1) var(--ease-out);align-content:start;padding:0;display:grid}.yt-card-open:focus-visible{box-shadow:var(--shadow-focus);outline:none}.yt-card-media{aspect-ratio:16/9;border-radius:var(--r-md);background:var(--surface-3);display:block;position:relative;overflow:hidden}.yt-card-img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity var(--dur-3) var(--ease-out), transform var(--dur-4) var(--ease-out);position:absolute;inset:0}.yt-card-media--loaded .yt-card-img{opacity:1}.yt-card-media--broken .yt-card-img{display:none}.yt-card-play{border-radius:var(--r-full);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:44px;height:44px;color:var(--on-accent);opacity:0;transition:opacity var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-bounce);background:#14100c8f;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.8)}.yt-card-duration,.yt-card-flag{bottom:var(--sp-2);align-items:center;gap:var(--sp-1);min-height:22px;padding:0 var(--sp-2);border-radius:var(--r-xs);font-size:var(--fs-12);font-weight:var(--w-semibold);line-height:1;display:inline-flex;position:absolute}.yt-card-duration{right:var(--sp-2);color:var(--on-accent);font-variant-numeric:tabular-nums;background:#14100cb8}.yt-card-flag{left:var(--sp-2);background:var(--accent);color:var(--on-accent)}.yt-card-flag--own{background:var(--ok)}.yt-card-body{gap:var(--sp-1);min-width:0;padding-right:var(--sp-8);display:grid}.yt-card-title{font-size:var(--fs-14);font-weight:var(--w-semibold);line-height:var(--lh-snug);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.yt-card-meta{color:var(--text-3);font-size:var(--fs-meta);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.yt-card-save{border-radius:var(--r-full);width:36px;height:36px;color:var(--text-2);transition:background-color var(--dur-1) var(--ease-out), color var(--dur-1) var(--ease-out);place-items:center;display:grid;position:absolute;bottom:0;right:0}.yt-card-save:hover{background:var(--surface-3);color:var(--text)}.yt-card-save:focus-visible{box-shadow:var(--shadow-focus);outline:none}.yt-card-save[aria-pressed=true]{color:var(--accent-ink)}.yt-card-save[aria-pressed=true] .icon path{fill:currentColor}.yt-card--own .yt-card-media{box-shadow:0 0 0 2px var(--ok)}.yt-card--skeleton{gap:var(--sp-2);pointer-events:none;display:grid}.yt-card--skeleton .yt-card-body{padding-right:0}.yt-skeleton-short{width:60%}@media (hover:hover){.yt-card-open:hover .yt-card-img{transform:scale(1.04)}.yt-card-open:hover .yt-card-play{opacity:1;transform:translate(-50%,-50%)scale(1)}}.yt-card-open:active{transform:scale(.98)}.yt-footer{justify-content:center;display:flex}.yt-footer:empty{display:none}.yt-sentinel{height:1px;margin-top:calc(var(--sp-3) * -1)}.yt-end{color:var(--text-3);font-size:var(--fs-meta);text-align:center}.yt-more-error{justify-content:center;align-items:center;gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-label);flex-wrap:wrap;display:flex}.yt-preview{gap:var(--sp-4);display:grid}.yt-preview-player--short{aspect-ratio:9/16;width:auto;height:min(62dvh,560px);margin:0 auto}.yt-preview-info{gap:var(--sp-1);display:grid}.yt-preview-title{font-size:var(--fs-18);font-weight:var(--w-semibold);line-height:var(--lh-snug)}.yt-preview-meta{color:var(--text-3);font-size:var(--fs-meta)}.yt-preview-link{justify-self:start;align-items:center;gap:var(--sp-1);margin-top:var(--sp-1);color:var(--accent-ink);font-size:var(--fs-label);font-weight:var(--w-medium);display:inline-flex}.yt-preview-link:hover{text-decoration:underline}.yt-preview-note{align-items:center;gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--ok-soft);color:var(--ok-strong);font-size:var(--fs-label);display:flex}.yt-preview-actions{gap:var(--sp-2);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.yt-preview-save--on{color:var(--accent-ink)}.yt-preview-save--on .icon path{fill:currentColor}@media (max-width:479px){.yt-grid{gap:var(--sp-3);grid-template-columns:1fr}.yt-card-open,.yt-card--skeleton{gap:var(--sp-3);grid-template-columns:148px minmax(0,1fr);align-items:start}.yt-card-body{padding-right:var(--sp-6)}.yt-saved-chip{margin-left:0}}@media (prefers-reduced-motion:reduce){.yt-card-img,.yt-card-play,.yt-card-open{transition:none}}.page--board{max-width:var(--content-wide);padding-top:var(--sp-4);padding-bottom:calc(var(--sp-20) + var(--sp-10))}.board{gap:var(--sp-4);flex-direction:column;min-width:0;display:flex}.board-header{gap:var(--sp-3);flex-direction:column;display:flex}.board-header-top{align-items:flex-start;gap:var(--sp-2);margin-left:calc(var(--sp-2) * -1);display:flex}.board-titles{gap:var(--sp-1);min-width:0;padding-top:var(--sp-1);flex-direction:column;flex:1;display:flex}.board-kicker-row{align-items:center;gap:var(--sp-2);flex-wrap:wrap;min-height:24px;display:flex}.board-kicker{color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-semibold)}.board-status{gap:var(--sp-1);display:inline-flex}.board-title{color:var(--text);font-size:var(--fs-title);font-weight:var(--w-bold);letter-spacing:var(--ls-title);line-height:var(--lh-tight);margin:0}.inline-text{width:100%;min-width:0;padding:var(--sp-1) var(--sp-2);margin:0 calc(var(--sp-2) * -1);border-radius:var(--r-sm);color:inherit;font:inherit;resize:none;transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);background:0 0;border:1px solid #0000}.inline-text:hover{background:var(--surface-3)}.inline-text:focus{border-color:var(--accent);background:var(--surface);box-shadow:var(--shadow-focus);outline:none}.inline-text::placeholder{color:var(--text-3)}.inline-text--multi{line-height:var(--lh-base);overflow:hidden}.board-title--input{font-size:var(--fs-title);font-weight:var(--w-bold);letter-spacing:var(--ls-title);line-height:var(--lh-tight)}.sheet-inline{padding:var(--sp-3);border-color:var(--line-2);border-radius:var(--r-control);background:var(--surface);font-size:var(--fs-input);margin:0}.sync-pill{align-items:center;gap:var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-medium);white-space:nowrap;margin-left:auto;display:inline-flex}.sync-dot{border-radius:var(--r-full);background:var(--ok);width:7px;height:7px;transition:background-color var(--dur-3) var(--ease-out)}.sync-pill[data-tone=busy] .sync-dot{background:var(--info);animation:rt-breathe 1.1s var(--ease-in-out) infinite}.sync-pill[data-tone=warn]{color:var(--warn-strong)}.sync-pill[data-tone=warn] .sync-dot{background:var(--warn)}.board-toolbar{align-items:center;gap:var(--sp-1);margin-left:calc(var(--sp-2) * -1);scrollbar-width:none;display:flex;overflow-x:auto}.board-toolbar::-webkit-scrollbar{display:none}.board-toolbar.is-readonly>.icon-btn:nth-child(-n+2){display:none}.board-mara{margin-left:auto}.board-mara.is-working{animation:rt-avatar-pulse 1.8s var(--ease-out) infinite}.review-host{display:contents}.review-badge{align-items:center;gap:var(--sp-1);height:var(--control-h-sm);padding:0 var(--sp-3) 0 var(--sp-2);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-semibold);white-space:nowrap;transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:inline-flex}.review-badge:active{transform:scale(.97)}.review-badge--ok{background:var(--ok-soft);color:var(--ok-strong)}.review-badge--danger{background:var(--danger-soft);color:var(--danger-strong)}.review-badge--warn{background:var(--warn-soft);color:var(--warn-strong)}.review-badge--info{background:var(--info-soft);color:var(--info-strong)}.review-count{min-width:20px;height:20px;padding:0 var(--sp-1);border-radius:var(--r-full);color:var(--on-accent);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;place-items:center;display:inline-grid}.review-count--danger{background:var(--danger)}.review-count--warn{background:var(--warn)}.review-count--info{background:var(--info)}.board-notices{gap:var(--sp-2);display:grid}.board-notices:empty{display:none}.board-notices .banner{animation:rt-rise-in var(--dur-3) var(--ease-out) both}.goal-card{border-radius:var(--r-card);background:var(--surface);box-shadow:var(--shadow-1)}.goal-toggle{align-items:center;gap:var(--sp-3);width:100%;min-height:var(--tap-min);padding:var(--sp-3) var(--sp-4);color:var(--text);text-align:left;display:flex}.goal-kicker{align-items:center;gap:var(--sp-1);color:var(--accent-ink);font-size:var(--fs-caption);font-weight:var(--w-bold);letter-spacing:var(--ls-kicker);text-transform:uppercase;flex:none;display:inline-flex}.goal-peek{min-width:0;color:var(--text-2);font-size:var(--fs-label);text-overflow:ellipsis;white-space:nowrap;transition:opacity var(--dur-2) var(--ease-out);flex:1;overflow:hidden}.goal-card[data-open=true] .goal-peek{opacity:0}.goal-chevron{color:var(--text-3);transition:transform var(--dur-3) var(--ease-spring);display:grid}.goal-card[data-open=true] .goal-chevron{transform:rotate(180deg)}.goal-detail{transition:grid-template-rows var(--dur-4) var(--ease-spring);grid-template-rows:0fr;display:grid}.goal-card[data-open=true] .goal-detail{grid-template-rows:1fr}.goal-detail-inner{gap:var(--sp-3);min-height:0;padding:0 var(--sp-4);display:grid;overflow:hidden}.goal-card[data-open=true] .goal-detail-inner{padding-bottom:var(--sp-4)}.goal-input,.goal-text{color:var(--text);font-size:var(--fs-body);margin:0}.goal-summary{align-items:center;gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-label);flex-wrap:wrap;margin:0;display:flex}.goal-edited{padding:var(--sp-0) var(--sp-2);border-radius:var(--r-full);background:var(--plum-soft);color:var(--plum-strong);font-size:var(--fs-caption);font-weight:var(--w-semibold)}.goal-facts{gap:var(--sp-1);flex-wrap:wrap;display:flex}.goal-fact{padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-medium)}.goal-fact--accent{background:var(--accent-soft);color:var(--accent-ink)}.goal-fact--warn{background:var(--warn-soft);color:var(--warn-strong)}.goal-questions{gap:var(--sp-1);color:var(--info-strong);font-size:var(--fs-meta);margin:0;padding:0;list-style:none;display:grid}.goal-questions li{gap:var(--sp-2);align-items:flex-start;display:flex}.goal-pending{gap:var(--sp-2);display:grid}.goal-pending .skeleton-line{width:70%}.goal-pending-text{color:var(--text-3);font-size:var(--fs-meta)}.goal-actions{margin-left:calc(var(--sp-3) * -1);display:flex}.day-tabs{top:calc(var(--topbar-h) + var(--safe-top));z-index:5;align-items:center;gap:var(--sp-2);margin:0 calc(var(--gutter) * -1);padding:var(--sp-2) var(--gutter);background:var(--bg);display:flex;position:sticky}.day-tabs[hidden]{display:none}.day-tabs-track{gap:var(--sp-1);min-width:0;padding:var(--sp-1);border-radius:var(--r-full);background:var(--surface-3);scrollbar-width:none;scroll-behavior:smooth;flex:1;display:flex;position:relative;overflow-x:auto}.day-tabs-track::-webkit-scrollbar{display:none}.day-tabs-indicator{top:var(--sp-1);bottom:var(--sp-1);width:var(--w,0);border-radius:var(--r-full);background:var(--surface);box-shadow:var(--shadow-1);transform:translateX(var(--x,0));transition:transform var(--dur-4) var(--ease-spring), width var(--dur-4) var(--ease-spring), opacity var(--dur-2) var(--ease-out);position:absolute;left:0}.day-tab{z-index:1;min-height:var(--control-h-md);padding:0 var(--sp-4);border-radius:var(--r-full);color:var(--text-2);line-height:var(--lh-tight);transition:color var(--dur-2) var(--ease-out);flex-direction:column;flex:none;justify-content:center;align-items:flex-start;display:flex;position:relative}.day-tab[aria-selected=true]{color:var(--text)}.day-tab-title{font-size:var(--fs-label);font-weight:var(--w-semibold)}.day-tab-meta{max-width:160px;color:var(--text-3);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.day-tab-dot{top:var(--sp-2);right:var(--sp-2);border-radius:var(--r-full);background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 2px var(--surface-3);transition:transform var(--dur-3) var(--ease-bounce);position:absolute;transform:scale(0)}.day-tab.has-dot .day-tab-dot{animation:rt-avatar-pulse 1.6s var(--ease-out) 2;transform:scale(1)}.day-tabs-add{width:var(--control-h-md);height:var(--control-h-md);border-radius:var(--r-full);background:var(--surface);color:var(--accent-ink);box-shadow:var(--shadow-1);transition:transform var(--dur-1) var(--ease-out);flex:none;place-items:center;display:grid}.day-tabs-add:active{transform:scale(.94)}.board-days{gap:var(--gutter);margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter) var(--sp-2);overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding:0 var(--gutter);scrollbar-width:none;align-items:flex-start;display:flex;overflow-x:auto}.board-days::-webkit-scrollbar{display:none}.day-col{gap:var(--sp-4);scroll-snap-align:start;scroll-snap-stop:always;flex-direction:column;flex:0 0 100%;min-width:0;display:flex}.day-head{align-items:flex-start;gap:var(--sp-2);display:flex}.day-titles{gap:var(--sp-0);flex:1;min-width:0;display:grid}.day-title{color:var(--text);font-size:var(--fs-title-sm);font-weight:var(--w-bold);letter-spacing:var(--ls-title);margin:0}.day-meta{color:var(--text-3);font-size:var(--fs-meta)}.day-grip{display:none}.day-empty{padding:var(--sp-6) var(--sp-4);border-radius:var(--r-card);background:var(--surface-2);color:var(--text-3);font-size:var(--fs-label);text-align:center;margin:0}.day-sections{gap:var(--sp-5);flex-direction:column;display:flex}.add-section,.add-btn,.block-add{justify-content:center;align-items:center;gap:var(--sp-1);min-height:var(--control-h-sm);padding:0 var(--sp-3);border-radius:var(--r-full);color:var(--accent-ink);font-size:var(--fs-label);font-weight:var(--w-semibold);transition:background-color var(--dur-1) var(--ease-out), transform var(--dur-1) var(--ease-out);display:inline-flex}.add-section:hover,.add-btn:hover,.block-add:hover{background:var(--accent-soft)}.add-section:active,.add-btn:active,.block-add:active{transform:scale(.96)}.add-section{background:var(--surface-3);color:var(--text-2);align-self:flex-start}.add-btn--quiet{color:var(--text-2)}.board-section{gap:var(--sp-2);flex-direction:column;display:flex}.section-head{align-items:center;gap:var(--sp-2);min-height:var(--control-h-sm);display:flex}.section-title{color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-bold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.section-count{color:var(--text-3);font-size:var(--fs-caption);flex:1}.section-items{gap:var(--sp-2);min-height:var(--sp-2);flex-direction:column;display:flex;position:relative}.board-section.is-empty .section-items{min-height:var(--sp-14);border-radius:var(--r-card);background:var(--surface-2)}.board-section.is-empty .section-items:before{content:attr(data-empty-label);color:var(--text-3);font-size:var(--fs-meta);pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.page--board.is-dragging .section-items,.page--board.is-dragging .block-items{min-height:var(--sp-12)}.page--board.is-dragging .section-items{border-radius:var(--r-card);background:var(--surface-2);transition:background-color var(--dur-2) var(--ease-out)}.section-add{gap:var(--sp-1);margin-left:calc(var(--sp-3) * -1);display:flex}.grip{padding:var(--sp-2) var(--sp-1);color:var(--text-3);cursor:grab;opacity:0;transition:opacity var(--dur-2) var(--ease-out);flex:none;grid-template-columns:repeat(2,3px);gap:3px;display:none}.grip i{border-radius:var(--r-full);background:currentColor;width:3px;height:3px}.item-card{align-items:center;gap:var(--sp-3);min-height:var(--sp-16);padding:var(--sp-2) var(--sp-3) var(--sp-2) var(--sp-2);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-1);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transition:box-shadow var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out);display:flex;position:relative}.item-card:focus-visible{box-shadow:var(--shadow-focus), var(--shadow-1);outline:none}.item-card:active{transform:scale(.985)}.item-card--nested{min-height:var(--sp-12);padding:var(--sp-1) var(--sp-3) var(--sp-1) var(--sp-1);border-radius:var(--r-md);box-shadow:none;background:var(--surface)}.item-card--unmatched{background:var(--warn-soft)}.item-card.is-pending{opacity:.72}.item-thumb{border-radius:var(--r-md);background:var(--surface-3);color:var(--text-3);flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.item-thumb img{object-fit:cover;pointer-events:none;width:100%;height:100%}.item-thumb--md{width:var(--sp-12);height:var(--sp-12)}.item-thumb--sm{width:var(--sp-10);height:var(--sp-10);border-radius:var(--r-sm)}.item-thumb--lg{width:var(--sp-16);height:var(--sp-16);border-radius:var(--r-lg)}.item-letter{bottom:var(--sp-0);left:var(--sp-0);border-radius:var(--r-xs);background:var(--block-tone,var(--accent));width:18px;height:18px;color:var(--on-accent);font-size:var(--fs-caption);font-weight:var(--w-bold);place-items:center;line-height:1;display:grid;position:absolute}.item-body{gap:var(--sp-0);flex:1;min-width:0;display:grid}.item-name{color:var(--text);font-size:var(--fs-15);font-weight:var(--w-semibold);line-height:var(--lh-snug);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.item-card--nested .item-name{font-size:var(--fs-14)}.item-line{color:var(--text-2);font-size:var(--fs-meta);font-variant-numeric:tabular-nums;line-height:var(--lh-snug)}.item-tags{gap:var(--sp-1);margin-top:var(--sp-1);flex-wrap:wrap;display:flex}.item-tag{align-items:center;gap:var(--sp-1);padding:var(--sp-0) var(--sp-2);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-medium);display:inline-flex}.item-tag--warn{background:var(--warn-soft-2);color:var(--warn-strong)}.item-tag--plum{background:var(--plum-soft);color:var(--plum-strong)}.item-tag--quiet{color:var(--text-3);background:0 0}.block-card{gap:var(--sp-2);padding:var(--sp-2);border-radius:var(--r-xl);background:var(--block-soft,var(--accent-soft));transition:background-color var(--dur-4) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);flex-direction:column;display:flex;position:relative}.block-top{gap:var(--sp-2);display:grid}.block-head{align-items:center;gap:var(--sp-1) var(--sp-2);padding:var(--sp-1) var(--sp-2);border-radius:var(--r-md);color:var(--text-2);text-align:left;transition:background-color var(--dur-1) var(--ease-out);flex-wrap:wrap;display:flex}.block-head:hover{background:color-mix(in srgb, var(--surface) 55%, transparent)}.block-badge{align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-2);border-radius:var(--r-full);background:var(--block-tone,var(--accent));color:var(--on-accent);font-size:var(--fs-caption);font-weight:var(--w-bold);letter-spacing:.02em;transition:background-color var(--dur-4) var(--ease-out);display:inline-flex}.block-badge--accent{--block-tone:var(--accent)}.block-badge--plum{--block-tone:var(--plum)}.block-badge--info{--block-tone:var(--info)}.block-badge--ok{--block-tone:var(--ok)}.block-badge--warn{--block-tone:var(--warn)}.block-badge--lg{width:var(--sp-14);height:var(--sp-14);border-radius:var(--r-lg);place-items:center;padding:0;display:grid}.block-detail{min-width:0;font-size:var(--fs-meta);font-weight:var(--w-medium);font-variant-numeric:tabular-nums;flex:1}.block-edit{color:var(--text-3);display:grid}.block-rotation{gap:var(--sp-1);padding:0 var(--sp-2);font-size:var(--fs-meta);margin:0;list-style:none;display:grid}.block-rotation li{gap:var(--sp-2);grid-template-columns:minmax(0,7.5em) minmax(0,1fr);display:grid}.block-rotation-label{color:var(--text-3);font-weight:var(--w-semibold)}.block-rotation-text{color:var(--text-2)}.block-note{padding:0 var(--sp-2);color:var(--text-2);font-size:var(--fs-meta);margin:0}.block-items{gap:var(--sp-1);min-height:var(--sp-2);flex-direction:column;display:flex}.block-add{min-height:var(--control-h-sm);align-self:flex-start}.grip--block{top:var(--sp-2);right:var(--sp-2);position:absolute}.is-entering{animation:board-enter var(--dur-5) var(--ease-spring) both}@keyframes board-enter{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}.is-leaving{opacity:0;pointer-events:none;transition:height var(--dur-4) var(--ease-spring), opacity var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-out), margin var(--dur-4) var(--ease-spring), padding var(--dur-4) var(--ease-spring);margin-top:calc(var(--sp-2) * -1);padding-top:0;padding-bottom:0;overflow:hidden;transform:scale(.97)}.is-flash{animation:board-flash 1.6s var(--ease-out)}.is-flash-soft{animation:board-flash-soft 1.1s var(--ease-out)}.is-flash-warn{animation:board-flash-warn 1.6s var(--ease-out)}@keyframes board-flash{0%{box-shadow:0 0 0 0 var(--accent-ring), var(--shadow-1);background-color:var(--accent-soft-2)}25%{box-shadow:0 0 0 6px var(--accent-ring), var(--shadow-2);background-color:var(--accent-soft)}to{box-shadow:0 0 0 0 transparent, var(--shadow-1)}}@keyframes board-flash-soft{0%{box-shadow:0 0 0 0 var(--ok-ring), var(--shadow-1)}30%{box-shadow:0 0 0 4px var(--ok-ring), var(--shadow-1)}to{box-shadow:0 0 0 0 transparent, var(--shadow-1)}}@keyframes board-flash-warn{0%{box-shadow:0 0 0 0 var(--warn-soft-2), var(--shadow-1);background-color:var(--warn-soft-2)}25%{box-shadow:0 0 0 6px var(--warn-soft-2), var(--shadow-2)}to{box-shadow:0 0 0 0 transparent, var(--shadow-1)}}.drag-ghost{opacity:.4;box-shadow:none;background:var(--accent-soft)}.drag-ghost>*{visibility:hidden}.drag-chosen{box-shadow:var(--shadow-float)}.drag-active{box-shadow:var(--shadow-float);opacity:.96;transform:rotate(1.2deg)scale(1.02)}body.is-dragging,body.is-dragging *{cursor:grabbing}.page--board.is-mara-working .board-days{position:relative}.page--board.is-mara-working .day-tabs-track{background-image:linear-gradient(90deg, var(--surface-3) 0%, var(--accent-soft) 50%, var(--surface-3) 100%);background-size:200% 100%;animation:2.4s linear infinite board-working}@keyframes board-working{0%{background-position:100% 0}to{background-position:-100% 0}}.board-empty:empty{display:none}.board-skeleton{gap:var(--sp-5);flex-direction:column;display:flex}.board-skeleton-head{gap:var(--sp-3);display:grid}.board-skeleton-tabs{gap:var(--sp-2);display:flex}.day-tab-skeleton{width:96px;height:var(--control-h-md);border-radius:var(--r-full)}.board-days--skeleton{overflow:hidden}.day-col--skeleton{gap:var(--sp-3)}.item-card--skeleton{box-shadow:none;cursor:default}.undo-bar{left:50%;bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--sp-3));z-index:calc(var(--z-pop) - 1);align-items:center;gap:var(--sp-3);width:min(calc(100vw - var(--sp-6)), 520px);min-height:var(--control-h);padding:var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-4);border-radius:var(--r-xl);background:var(--inverse-bg);color:var(--inverse-fg);box-shadow:var(--shadow-float);display:flex;position:fixed;overflow:hidden;transform:translate(-50%)}.undo-bar[hidden]{display:none}body:not(.has-tabbar) .undo-bar{bottom:calc(var(--safe-bottom) + var(--sp-5))}.undo-bar--in{animation:undo-in var(--dur-4) var(--ease-spring) both}.undo-bar--leaving{animation:undo-out var(--dur-2) var(--ease-in-out) forwards}@keyframes undo-in{0%{opacity:0;transform:translate(-50%,16px)scale(.98)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes undo-out{to{opacity:0;transform:translate(-50%,12px)scale(.98)}}.undo-lead{color:var(--ok);flex:none;place-items:center;display:grid}.undo-bar[data-tone=warn] .undo-lead{color:var(--warn)}.undo-bar[data-tone=danger] .undo-lead{color:var(--danger)}.undo-bar[data-tone=accent] .undo-lead{color:var(--accent-soft-2)}.undo-text{min-width:0;font-size:var(--fs-label);line-height:var(--lh-snug);flex:1}.undo-actions{gap:var(--sp-1);flex:none;display:flex}.undo-action{min-height:var(--control-h-sm);padding:0 var(--sp-3);border-radius:var(--r-full);color:var(--inverse-fg);font-size:var(--fs-label);font-weight:var(--w-bold);transition:background-color var(--dur-1) var(--ease-out)}.undo-action--primary{background:color-mix(in srgb, var(--inverse-fg) 16%, transparent)}.undo-action:hover{background:color-mix(in srgb, var(--inverse-fg) 24%, transparent)}.undo-action--ghost{color:var(--inverse-fg-2)}.undo-progress{background:color-mix(in srgb, var(--inverse-fg) 40%, transparent);transform-origin:0;width:100%;height:2px;position:absolute;bottom:0;left:0;transform:scaleX(0)}.undo-bar--timed .undo-progress{animation:linear forwards undo-progress}@keyframes undo-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.sheet--editor .sheet-body{padding-top:var(--sp-1)}.item-sheet,.block-sheet,.menu-sheet,.create-sheet,.move-sheet,.history-sheet{gap:var(--sp-5);display:grid}.item-sheet-head{align-items:center;gap:var(--sp-3);display:flex}.item-sheet-titles{gap:var(--sp-0);flex:1;min-width:0;display:grid}.item-sheet-titles .sheet-title{font-size:var(--fs-title-sm);line-height:var(--lh-tight)}.ref-chip{align-items:center;gap:var(--sp-1);padding:0 var(--sp-2);border-radius:var(--r-xs);background:var(--surface-3);color:var(--text-3);font-family:var(--font-mono);font-size:var(--fs-caption);justify-self:start;line-height:20px;display:inline-flex}.ref-chip--action{color:var(--accent-ink);transition:background-color var(--dur-1) var(--ease-out);margin-left:auto}.ref-chip--action:hover{background:var(--accent-soft)}.sheet-group{gap:var(--sp-3);display:grid}.sheet-group-title{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-bold);letter-spacing:var(--ls-kicker);text-transform:uppercase;margin:0}.sheet-actions{gap:var(--sp-2);width:100%;display:flex}.sheet-actions>*{flex:1}.stepper-grid{gap:var(--sp-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.stepper{gap:var(--sp-1);min-width:0;display:grid}.stepper-label{color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-semibold)}.stepper-row{height:var(--control-h);padding:var(--sp-1);border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface);transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);align-items:center;display:flex}.stepper--focus .stepper-row{border-color:var(--accent);box-shadow:var(--shadow-focus)}.stepper-btn{width:calc(var(--control-h) - var(--sp-3));height:calc(var(--control-h) - var(--sp-3));border-radius:var(--r-full);background:var(--surface-3);color:var(--text);touch-action:manipulation;transition:background-color var(--dur-1) var(--ease-out), transform var(--dur-1) var(--ease-out), opacity var(--dur-2) var(--ease-out);flex:none;place-items:center;display:grid}.stepper-btn:hover:not(:disabled){background:var(--surface-4)}.stepper-btn:active:not(:disabled){background:var(--accent-soft-2);transform:scale(.9)}.stepper-btn:disabled{opacity:.35}.stepper-value{justify-content:center;align-items:baseline;gap:var(--sp-1);cursor:text;flex:1;min-width:0;display:flex}.stepper-input{width:100%;min-width:0;max-width:5.5em;color:var(--text);font-size:var(--fs-18);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;text-align:center;background:0 0;border:0;padding:0}.stepper-input:focus{outline:none}.stepper-input::placeholder{color:var(--text-3);font-size:var(--fs-label);font-weight:var(--w-medium)}.stepper-unit{color:var(--text-3);font-size:var(--fs-meta);font-weight:var(--w-semibold)}.stepper-hint{color:var(--text-3);font-size:var(--fs-caption)}.stepper-bump .stepper-input{animation:stepper-bump var(--dur-3) var(--ease-bounce)}@keyframes stepper-bump{0%{transform:scale(1)}40%{color:var(--accent-ink);transform:scale(1.16)}to{transform:scale(1)}}.stepper-limit{animation:rt-shake var(--dur-3) var(--ease-out)}.stepper--sm .stepper-row{height:var(--control-h-md)}.stepper--sm .stepper-btn{width:calc(var(--control-h-md) - var(--sp-3));height:calc(var(--control-h-md) - var(--sp-3))}.stepper--sm .stepper-input{font-size:var(--fs-16)}.stepper--disabled{opacity:.55}.pill-group{gap:var(--sp-2);display:flex}.pill-group--scroll{--bleed:var(--sp-6);margin:0 calc(var(--bleed) * -1);padding:var(--sp-0) var(--bleed);scroll-snap-type:x proximity;scroll-padding-inline:var(--bleed);scrollbar-width:none;overflow-x:auto}.pill-group--scroll::-webkit-scrollbar{display:none}.pill-group--wrap{flex-wrap:wrap}.pill{min-height:var(--control-h-sm);padding:0 var(--sp-4);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-semibold);white-space:nowrap;scroll-snap-align:start;transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);flex:none}.pill:hover{background:var(--surface-4)}.pill:active{transform:scale(.95)}.pill[aria-checked=true],.pill[aria-pressed=true]{background:var(--inverse-bg);color:var(--inverse-fg);box-shadow:var(--shadow-1)}.pill--action{background:var(--surface);color:var(--accent-ink);box-shadow:var(--shadow-1)}.scheme-fields{gap:var(--sp-3);display:grid}.fixed-sets{align-items:center;gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-control);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-label);display:flex}.set-preview-wrap{gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-card);background:var(--surface-2);display:grid}.set-preview-head{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);justify-content:space-between;display:flex}.set-preview{gap:var(--sp-1);transition:opacity var(--dur-2) var(--ease-out);margin:0;padding:0;list-style:none;display:grid}.set-preview.is-loading{opacity:.55}.set-row{gap:var(--sp-2);min-height:32px;padding:0 var(--sp-2);border-radius:var(--r-sm);background:var(--surface);font-size:var(--fs-meta);font-variant-numeric:tabular-nums;grid-template-columns:24px minmax(0,5.5em) minmax(0,1fr) minmax(0,1fr) auto;align-items:center;display:grid}.set-row.enter{animation-duration:var(--dur-3)}.set-row--aproximacion{color:var(--text-3);background:0 0}.set-row--top .set-kind{color:var(--accent-ink)}.set-index{border-radius:var(--r-full);background:var(--surface-3);width:22px;height:22px;color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-bold);place-items:center;display:grid}.set-kind{color:var(--text-3);font-weight:var(--w-semibold)}.set-reps{color:var(--text);font-weight:var(--w-semibold)}.set-load,.set-rir{color:var(--text-2)}.set-tech{color:var(--plum-strong);font-size:var(--fs-caption);grid-column:2/-1}.set-preview-error{color:var(--danger-strong);font-size:var(--fs-meta);margin:0}.custom-sets{gap:var(--sp-2);display:grid}.custom-set{grid-template-columns:24px minmax(0, 1fr) minmax(0, 1fr) var(--control-h-sm);gap:var(--sp-2);align-items:end;display:grid}.custom-set .set-index{margin-top:var(--sp-5);align-self:center}.technique-params{gap:var(--sp-3);display:grid}.technique-params:empty{display:none}.suggestions{gap:var(--sp-2);display:grid}.suggestions-label{color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-semibold)}.menu-list{gap:var(--sp-1);display:grid}.menu-item{align-items:center;gap:var(--sp-3);width:100%;min-height:var(--tap-min);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);color:var(--text);text-align:left;transition:background-color var(--dur-1) var(--ease-out), transform var(--dur-1) var(--ease-out);display:flex}.menu-item:hover{background:var(--surface-3)}.menu-item:active{transform:scale(.985)}.menu-item:disabled{opacity:.45}.menu-item-icon{width:var(--control-h-sm);height:var(--control-h-sm);border-radius:var(--r-md);background:var(--surface-3);color:var(--text-2);flex:none;place-items:center;display:grid}.menu-item-body{gap:var(--sp-0);min-width:0;display:grid}.menu-item-label{font-size:var(--fs-15);font-weight:var(--w-semibold)}.menu-item-hint{color:var(--text-3);font-size:var(--fs-meta)}.menu-list .inline-confirm{margin-top:var(--sp-2)}.block-form{gap:var(--sp-4);display:grid}.block-types{gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(132px,1fr));display:grid}.block-type{gap:var(--sp-0);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);text-align:left;transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:grid}.block-type:active:not(:disabled){transform:scale(.97)}.block-type:disabled{opacity:.5;cursor:not-allowed}.block-type-name{color:var(--text);font-size:var(--fs-15);font-weight:var(--w-bold)}.block-type-range{color:var(--text-3);font-size:var(--fs-caption)}.block-type--accent[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-ring)}.block-type--plum[aria-checked=true]{border-color:var(--plum);background:var(--plum-soft);box-shadow:0 0 0 3px var(--plum-soft-2)}.block-type--info[aria-checked=true]{border-color:var(--info);background:var(--info-soft);box-shadow:0 0 0 3px var(--info-soft-2)}.block-type--ok[aria-checked=true]{border-color:var(--ok);background:var(--ok-soft);box-shadow:0 0 0 3px var(--ok-ring)}.block-type--warn[aria-checked=true]{border-color:var(--warn);background:var(--warn-soft);box-shadow:0 0 0 3px var(--warn-soft-2)}.block-form-preview{padding:var(--sp-3);border-radius:var(--r-control);background:var(--surface-2);color:var(--text);font-size:var(--fs-label);font-weight:var(--w-semibold);font-variant-numeric:tabular-nums;margin:0}.block-fields{gap:var(--sp-3);display:grid}.block-hint{color:var(--text-3);font-size:var(--fs-meta);margin:0}.block-hint--warn{color:var(--warn-strong)}.sheet--picker .sheet-body{padding-top:0}.picker{gap:var(--sp-3);display:grid}.picker-search{z-index:2;align-items:center;gap:var(--sp-2);height:var(--field-h);padding:0 var(--sp-2) 0 var(--sp-4);border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface);color:var(--text-3);box-shadow:0 var(--sp-2) var(--sp-4) var(--surface);transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);display:flex;position:sticky;top:0}.picker-search:focus-within{border-color:var(--accent);box-shadow:var(--shadow-focus)}.picker-input{min-width:0;height:100%;color:var(--text);font-size:var(--fs-input);background:0 0;border:0;flex:1}.picker-input:focus{outline:none}.picker-input::-webkit-search-cancel-button{display:none}.picker-clear{width:var(--control-h-sm);height:var(--control-h-sm);border-radius:var(--r-full);color:var(--text-3);place-items:center;display:grid}.picker-list{gap:var(--sp-1);display:grid}.picker-caption{margin:var(--sp-2) 0 0;color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-bold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.picker-row{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-2);border-radius:var(--r-lg);text-align:left;transition:background-color var(--dur-1) var(--ease-out), transform var(--dur-1) var(--ease-out);display:flex}.picker-row:hover{background:var(--surface-3)}.picker-row:active{transform:scale(.985)}.picker-row[aria-selected=true],.picker-row.is-picked{background:var(--accent-soft)}.picker-row-body{flex:1;min-width:0;display:grid}.picker-row-name{color:var(--text);font-size:var(--fs-15);font-weight:var(--w-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker-row-meta{color:var(--text-3);font-size:var(--fs-meta);text-transform:capitalize}.picker-row-state{width:var(--control-h-sm);height:var(--control-h-sm);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);flex:none;place-items:center;display:grid}.picker-row.is-picked .picker-row-state,.picker-row[aria-selected=true] .picker-row-state{background:var(--accent);color:var(--on-accent)}.picker-order{font-size:var(--fs-label);font-weight:var(--w-bold)}.picker-skeleton{padding:var(--sp-2)}.picker-footer{gap:var(--sp-3);width:100%;display:grid}.picker-tray{gap:var(--sp-2);scrollbar-width:none;display:flex;overflow-x:auto}.picker-tray[hidden]{display:none}.picker-token{align-items:center;gap:var(--sp-1);min-height:var(--control-h-sm);padding:0 var(--sp-2) 0 var(--sp-1);border-radius:var(--r-full);background:var(--surface-3);color:var(--text);font-size:var(--fs-meta);font-weight:var(--w-semibold);animation:rt-pop-in var(--dur-3) var(--ease-bounce) both;flex:none;display:inline-flex}.picker-token-index{border-radius:var(--r-full);background:var(--accent);width:22px;height:22px;color:var(--on-accent);font-size:var(--fs-caption);place-items:center;display:grid}.move-list{gap:var(--sp-1);display:grid}.move-day{margin:var(--sp-3) 0 var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-bold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.move-row{align-items:center;gap:var(--sp-3);width:100%;min-height:var(--tap-min);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);text-align:left;transition:background-color var(--dur-1) var(--ease-out), transform var(--dur-1) var(--ease-out);display:flex}.move-row:hover:not(:disabled){background:var(--surface-3)}.move-row:active:not(:disabled){transform:scale(.985)}.move-row--nested{margin-left:var(--sp-5);background:0 0}.move-row.is-current{opacity:.6}.move-row-body{flex:1;min-width:0;display:grid}.move-row-title{color:var(--text);font-size:var(--fs-15);font-weight:var(--w-semibold)}.move-row-meta,.move-row-here{color:var(--text-3);font-size:var(--fs-meta)}.move-row-icon{color:var(--text-3);display:grid}.history-body,.review-body{gap:var(--sp-4);display:grid}.history-list{gap:var(--sp-2);display:grid}.history-row{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--surface-2);transition:opacity var(--dur-3) var(--ease-out);display:flex}.history-row.is-undone{opacity:.6}.history-icon{width:var(--control-h-sm);height:var(--control-h-sm);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);flex:none;place-items:center;display:grid}.history-icon--accent{background:var(--accent-soft);color:var(--accent-ink)}.history-icon--info{background:var(--info-soft);color:var(--info-strong)}.history-icon--plum{background:var(--plum-soft);color:var(--plum-strong)}.history-main{gap:var(--sp-1);flex:1;min-width:0;display:grid}.history-top{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.history-label{color:var(--text);font-size:var(--fs-15)}.history-chips{gap:var(--sp-0);color:var(--text-2);font-size:var(--fs-meta);margin:0;padding:0;list-style:none;display:grid}.history-chips .is-warn{color:var(--warn-strong)}.history-meta{color:var(--text-3);font-size:var(--fs-caption)}.history-error{color:var(--warn-strong);font-size:var(--fs-meta);margin:0}.history-actions{align-items:flex-end;gap:var(--sp-1);flex-direction:column;display:flex}.history-more{justify-content:center;display:flex}.snapshot-detail{gap:var(--sp-1);margin-top:var(--sp-2);display:grid}.snapshot-day{justify-content:space-between;gap:var(--sp-2);font-size:var(--fs-meta);display:flex}.snapshot-day span{color:var(--text-3)}.review-group{gap:var(--sp-2);display:grid}.review-group-title{color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-bold);letter-spacing:var(--ls-kicker);text-transform:uppercase;justify-content:space-between;align-items:center;margin:0;display:flex}.review-group-title span{color:var(--text-3);font-weight:var(--w-medium);letter-spacing:0;text-transform:none}.review-group-title--danger{color:var(--danger-strong)}.review-group-title--warn{color:var(--warn-strong)}.review-group-title--info{color:var(--info-strong)}.finding{gap:var(--sp-2);padding:var(--sp-4);border-radius:var(--r-lg);background:var(--surface-2);transition:opacity var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-out), background-color var(--dur-3) var(--ease-out);display:grid}.finding--danger{background:var(--danger-soft)}.finding--warn{background:var(--warn-soft)}.finding.is-resolved{opacity:.5;background:var(--ok-soft);transform:scale(.98)}.finding.is-dismissed{opacity:.7}.finding-top{align-items:center;gap:var(--sp-2);display:flex}.finding-icon{color:var(--text-2);display:grid}.finding--danger .finding-icon{color:var(--danger)}.finding--warn .finding-icon{color:var(--warn)}.finding--info .finding-icon{color:var(--info)}.finding-title{color:var(--text);font-size:var(--fs-15);flex:1}.finding-text,.finding-suggestion,.finding-why{font-size:var(--fs-label);line-height:var(--lh-base);margin:0}.finding-text{color:var(--text)}.finding-suggestion{color:var(--ok-strong);font-weight:var(--w-semibold)}.finding-why{color:var(--text-3);font-size:var(--fs-caption)}.finding-actions{gap:var(--sp-1);margin-left:calc(var(--sp-2) * -1);flex-wrap:wrap;display:flex}.finding-actions:empty{display:none}.volume{gap:var(--sp-2);display:grid}.volume-row{gap:var(--sp-3);font-size:var(--fs-meta);grid-template-columns:minmax(0,7em) minmax(0,1fr) 3em;align-items:center;display:grid}.volume-name{color:var(--text-2);font-weight:var(--w-semibold)}.volume-track{border-radius:var(--r-full);background:var(--surface-3);height:10px;position:relative;overflow:hidden}.volume-band{background:var(--ok-soft-2);position:absolute;top:0;bottom:0}.volume-fill{width:var(--w);border-radius:var(--r-full);background:var(--ok);animation:volume-grow var(--dur-5) var(--ease-spring) both;transform-origin:0;position:absolute;top:2px;bottom:2px;left:0}.volume-row--bajo .volume-fill{background:var(--info)}.volume-row--alto .volume-fill{background:var(--warn)}@keyframes volume-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.volume-value{color:var(--text);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;text-align:right}.sessions{gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(96px,1fr));display:grid}.session{gap:var(--sp-0);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);font-size:var(--fs-meta);display:grid}.session strong{color:var(--text);font-size:var(--fs-18);font-variant-numeric:tabular-nums}.session span{color:var(--text-2)}.session-meta{color:var(--text-3)}.review-more{padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2)}.review-more summary{color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-semibold);cursor:pointer}.review-more[open]{gap:var(--sp-2);display:grid}.review-unavailable{gap:var(--sp-1);margin:var(--sp-2) 0 0;padding-left:var(--sp-5);color:var(--text-3);font-size:var(--fs-meta);display:grid}.review-clear{justify-items:center;gap:var(--sp-2);padding:var(--sp-6) var(--sp-4);border-radius:var(--r-card);background:var(--ok-soft);color:var(--ok-strong);text-align:center;display:grid}.review-clear-icon{width:var(--sp-14);height:var(--sp-14);border-radius:var(--r-full);background:var(--surface);animation:rt-scale-in var(--dur-4) var(--ease-bounce) both;place-items:center;display:grid}.routines .page-header{margin-bottom:var(--sp-4)}.routines-bar{gap:var(--sp-3);margin-bottom:var(--sp-5);flex-wrap:wrap;align-items:center;display:flex}.routines-bar .segmented{flex:none}.routines-search{height:var(--control-h-md);box-shadow:none;flex:240px;position:static}.routine-groups{gap:var(--sp-6);display:grid}.routine-group{gap:var(--sp-3);display:grid}.routine-group-head{align-items:center;gap:var(--sp-2);display:flex}.routine-group-head h2{color:var(--text);font-size:var(--fs-16);font-weight:var(--w-bold);margin:0}.routine-group-count{color:var(--text-3);font-size:var(--fs-meta)}.routine-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.routine-card{gap:var(--sp-2);padding:var(--sp-4);border-radius:var(--r-card);background:var(--surface);box-shadow:var(--shadow-1);cursor:pointer;transition:box-shadow var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:grid}.routine-card:hover{box-shadow:var(--shadow-2)}.routine-card:focus-visible{box-shadow:var(--shadow-focus), var(--shadow-1);outline:none}.routine-card-top{justify-content:space-between;align-items:flex-start;gap:var(--sp-2);display:flex}.routine-name{color:var(--text);font-size:var(--fs-16);line-height:var(--lh-snug)}.routine-meta{color:var(--text-3);font-size:var(--fs-meta)}.routine-goal{color:var(--text-2);font-size:var(--fs-meta);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.routine-card-bottom{align-items:center;gap:var(--sp-2);min-height:var(--control-h-sm);display:flex}.routine-days{gap:var(--sp-1);flex:1;display:flex}.routine-day{min-width:26px;height:26px;padding:0 var(--sp-1);border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent-ink);font-size:var(--fs-caption);font-weight:var(--w-bold);place-items:center;display:grid}.routine-review{gap:var(--sp-1);display:flex}.routine-open{color:var(--text-3);display:grid}.routine-card--skeleton{box-shadow:none;cursor:default}.assign-students{gap:var(--sp-2);display:grid}.student-picks{gap:var(--sp-1);display:grid}.student-pick{align-items:center;gap:var(--sp-3);min-height:var(--tap-min);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);color:var(--text);font-size:var(--fs-15);font-weight:var(--w-semibold);text-align:left;transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:flex}.student-pick:active{transform:scale(.985)}.student-pick span:nth-child(2){flex:1}.student-pick-check{border-radius:var(--r-full);color:#0000;width:24px;height:24px;box-shadow:inset 0 0 0 2px var(--line-2);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);place-items:center;display:grid}.student-pick[aria-checked=true]{background:var(--accent-soft)}.student-pick[aria-checked=true] .student-pick-check{background:var(--accent);color:var(--on-accent);box-shadow:none}.form-hint-error{margin:var(--sp-2) 0 0;color:var(--danger-strong);font-size:var(--fs-meta)}@media (hover:hover) and (pointer:fine){.grip{display:grid}.item-card:hover,.board-section:hover .grip--section,.block-card:hover>.grip--block{opacity:1}.item-card:hover{box-shadow:var(--shadow-2)}.item-card:hover .grip,.block-card:hover>.grip--block,.section-head:hover .grip--section{opacity:1}.grip--section{margin-left:calc(var(--sp-2) * -1)}}@media (min-width:768px){.day-col{flex-basis:calc(50% - var(--gutter) / 2)}.stepper-grid{grid-template-columns:repeat(2,minmax(0,220px))}}@media (min-width:1280px){.board-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-6);flex-direction:row}.board-header-top{flex:1;min-width:0}.board-toolbar{padding-top:var(--sp-1);flex:none;margin:0}}@media (min-width:1024px){.page--board{max-width:none;padding-top:var(--sp-6)}.board-title,.board-title--input{font-size:var(--fs-title-lg)}.board-goal,.board-notices{max-width:880px}.day-tabs{background:0 0;margin:0;padding:0;position:static}.day-tabs-track{flex:0 auto}.board-days{gap:var(--sp-4);margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter) var(--sp-6);scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;grid-auto-columns:minmax(300px,340px);grid-auto-flow:column;display:grid}.board-days::-webkit-scrollbar{height:8px;display:block}.board-days::-webkit-scrollbar-thumb{border-radius:var(--r-full);background:var(--line-2)}.day-col{gap:var(--sp-4);padding:var(--sp-4);border-radius:var(--r-2xl);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);scroll-snap-stop:normal}.day-grip{padding:var(--sp-2) var(--sp-1);margin:var(--sp-1) 0 0 calc(var(--sp-2) * -1);color:var(--text-3);cursor:grab;opacity:0;transition:opacity var(--dur-2) var(--ease-out);flex:none;grid-template-columns:repeat(2,3px);gap:3px;display:grid}.day-grip i{border-radius:var(--r-full);background:currentColor;width:3px;height:3px}.day-col:hover .day-grip{opacity:1}.undo-bar,body:not(.has-tabbar) .undo-bar{left:calc(var(--sidebar-w) + (100vw - var(--sidebar-w)) / 2);bottom:var(--sp-6)}.stepper-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.is-flash,.is-flash-warn{box-shadow:0 0 0 3px var(--accent-ring), var(--shadow-1);animation:none}.is-flash-soft,.page--board.is-mara-working .day-tabs-track,.day-tab.has-dot .day-tab-dot{animation:none}}.import-page{max-width:760px}.import-host{display:grid}.import-form{gap:var(--sp-4);display:grid}.import-swap-in{animation:rt-rise-in var(--dur-5) var(--ease-out) both}.import-swap-out{animation:rt-fade-out var(--dur-3) var(--ease-in-out) forwards}.import-boot{gap:var(--sp-4);display:grid}.import-boot-card{border-radius:var(--r-card);height:220px}.import-boot-card--short{height:120px}.import-sources{gap:var(--sp-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (min-width:640px){.import-sources{grid-template-columns:repeat(4,minmax(0,1fr))}}.import-source{align-content:start;justify-items:start;gap:var(--sp-1);min-height:112px;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);color:var(--text);text-align:left;transition:border-color var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:grid;position:relative}.import-source:hover{border-color:var(--line-3);box-shadow:var(--shadow-1)}.import-source:active{transform:scale(.97)}.import-source:focus-visible{box-shadow:var(--shadow-focus);outline:none}.import-source[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-ring)}.import-sources[data-chosen=true] .import-source[aria-checked=false]{opacity:.72}.import-sources[data-chosen=true] .import-source[aria-checked=false]:hover{opacity:1}.import-source-art{width:44px;height:44px;margin-bottom:var(--sp-1);border-radius:var(--r-md);background:var(--surface);color:var(--accent-ink);box-shadow:var(--shadow-1);transition:transform var(--dur-3) var(--ease-bounce);place-items:center;display:grid}.import-source[aria-checked=true] .import-source-art{transform:scale(1.06)rotate(-3deg)}.import-source-title{font-weight:var(--w-semibold)}.import-source-caption{color:var(--text-3);font-size:var(--fs-caption);line-height:var(--lh-snug)}.import-body{gap:var(--sp-3);margin-top:var(--sp-4);display:grid}.import-drop{justify-items:center;gap:var(--sp-2);padding:var(--sp-8) var(--sp-4);border:1.5px dashed var(--line-3);border-radius:var(--r-xl);background:var(--surface-2);text-align:center;cursor:pointer;transition:border-color var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-spring);display:grid}.import-drop:hover{border-color:var(--accent)}.import-drop:focus-visible{box-shadow:var(--shadow-focus);outline:none}.import-drop[data-over=true]{border-color:var(--accent);background:var(--accent-soft);transform:scale(1.01)}.import-drop-icon{border-radius:var(--r-full);background:var(--surface);width:56px;height:56px;color:var(--accent-ink);box-shadow:var(--shadow-2);transition:transform var(--dur-4) var(--ease-bounce);place-items:center;display:grid}.import-drop[data-over=true] .import-drop-icon{transform:translateY(-4px)scale(1.08)}.import-drop-title{font-size:var(--fs-title-sm)}.import-drop-caption{color:var(--text-3);font-size:var(--fs-meta)}.import-drop-actions{justify-content:center;gap:var(--sp-2);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}@media (pointer:fine){.import-drop-actions .btn:last-child:not(:first-child){display:none}}.import-files{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.import-files[hidden]{display:none}.import-file{align-items:center;gap:var(--sp-3);padding:var(--sp-2);border-radius:var(--r-md);background:var(--surface-2);display:flex}.import-file-thumb{border-radius:var(--r-sm);object-fit:cover;background:var(--surface-3);flex:none;place-items:center;width:44px;height:44px;display:grid}.import-file-thumb--doc{background:var(--accent-soft);color:var(--accent-ink);font-size:var(--fs-caption);font-weight:var(--w-bold)}.import-file-text{flex:1;min-width:0;display:grid}.import-file-name{font-size:var(--fs-label);font-weight:var(--w-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.import-file-size{color:var(--text-3);font-size:var(--fs-caption)}.import-text{position:relative}.import-textarea{width:100%;min-height:180px;padding:var(--sp-3) var(--sp-4) var(--sp-6);border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--surface);color:var(--text);font:inherit;font-size:var(--fs-16);line-height:var(--lh-base);resize:vertical;transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out)}.import-textarea--short{min-height:84px;padding-bottom:var(--sp-3);padding-right:var(--sp-14)}.import-textarea::placeholder{color:var(--text-3)}.import-textarea:focus-visible,.import-input:focus-visible{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.import-count{right:var(--sp-3);bottom:var(--sp-2);color:var(--text-3);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;transition:color var(--dur-2) var(--ease-out);position:absolute}.import-count[data-near=true]{color:var(--warn-strong)}.import-instructions{position:relative}.import-mic{right:var(--sp-2);bottom:var(--sp-3);width:var(--tap-min);height:var(--tap-min);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);place-items:center;display:grid;position:absolute}.import-mic:active{transform:scale(.92)}.import-mic[aria-pressed=true]{background:var(--accent);color:var(--on-accent);animation:rt-avatar-pulse 1.1s var(--ease-in-out) infinite}.import-instructions[data-listening=true] .import-textarea{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.import-input{width:100%;height:var(--field-h);margin-top:var(--sp-3);padding:0 var(--sp-4);border:1px solid var(--line-2);border-radius:var(--r-control);background:var(--surface);color:var(--text);font:inherit;font-size:var(--fs-input);transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out)}.import-students{gap:var(--sp-2);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.import-students[hidden]{display:none}.import-student{align-items:center;gap:var(--sp-2);min-height:var(--control-h-sm);padding:0 var(--sp-3) 0 var(--sp-1);border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface);color:var(--text);font-size:var(--fs-label);transition:border-color var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:inline-flex}.import-student:active{transform:scale(.96)}.import-student[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.import-student-initial{border-radius:var(--r-full);background:var(--surface-3);width:26px;height:26px;font-size:var(--fs-caption);font-weight:var(--w-bold);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);place-items:center;display:grid}.import-student[aria-checked=true] .import-student-initial{background:var(--accent);color:var(--on-accent)}.import-muted{margin-top:var(--sp-2);color:var(--text-3);font-size:var(--fs-meta)}.import-error{margin-top:var(--sp-3);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--danger-soft);color:var(--danger-strong);font-size:var(--fs-label)}.import-error[hidden]{display:none}.import-submit{bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--sp-2));gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-xl);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-float);display:grid;position:sticky}@media (min-width:1024px){.import-submit{bottom:var(--sp-4)}}.import-estimate{justify-content:center;align-items:center;gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-caption);text-align:center;display:flex}.import-progress{gap:var(--sp-5);display:grid}.import-progress--phase .import-progress-hero{animation:rt-pop-scale var(--dur-4) var(--ease-bounce)}.import-progress-hero{align-items:center;gap:var(--sp-4);display:flex}.import-ring{flex:none;place-items:center;width:88px;height:88px;display:grid;position:relative}.import-ring svg{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.import-ring-track,.import-ring-value{fill:none;stroke-width:7px}.import-ring-track{stroke:var(--surface-3)}.import-ring-value{stroke:var(--accent);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--p,2));transition:stroke-dashoffset var(--dur-5) var(--ease-out), stroke var(--dur-3) var(--ease-out)}.import-progress[data-phase=processing] .import-ring svg,.import-progress[data-phase=creating] .import-ring svg{animation:rt-ring-breathe 2.4s var(--ease-in-out) infinite}.import-ring[data-done=true] .import-ring-value{stroke:var(--ok)}.import-ring[data-failed=true] .import-ring-value{stroke:var(--danger)}.import-ring-label{font-size:var(--fs-18);font-variant-numeric:tabular-nums}.import-ring[data-done=true] .import-ring-label:before{content:"";border-bottom:3px solid var(--ok);border-left:3px solid var(--ok);width:26px;height:14px;animation:rt-pop-scale var(--dur-4) var(--ease-bounce);margin-top:-6px;display:block;transform:rotate(-45deg)}.import-progress-text{gap:var(--sp-1);min-width:0;display:grid}.import-progress-title{font-size:var(--fs-title);letter-spacing:var(--ls-title)}.import-progress-subtitle{color:var(--text-2)}.import-progress-time{color:var(--text-3);font-size:var(--fs-caption);font-variant-numeric:tabular-nums}.import-progress-time[hidden]{display:none}.import-offline{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--info-soft);color:var(--info-strong);font-size:var(--fs-meta);animation:rt-rise-in var(--dur-3) var(--ease-out);display:flex}.import-offline[hidden]{display:none}.import-uploads{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.import-uploads[hidden]{display:none}.import-upload{justify-content:space-between;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);font-size:var(--fs-meta);display:flex;position:relative;overflow:hidden}.import-upload-name{text-overflow:ellipsis;white-space:nowrap;position:relative;overflow:hidden}.import-upload-meta{color:var(--text-3);font-variant-numeric:tabular-nums;flex:none;position:relative}.import-upload-bar{width:var(--p,0%);border-radius:var(--r-full);background:var(--accent);height:3px;transition:width var(--dur-3) var(--ease-out);position:absolute;inset:auto 0 0}.import-upload[data-state=done] .import-upload-bar{background:var(--ok)}.import-upload[data-state=error] .import-upload-meta{color:var(--danger-strong)}.import-steps{gap:0;margin:0;padding:0;list-style:none;display:grid}.import-steps[hidden]{display:none}.import-step{gap:var(--sp-3);padding-bottom:var(--sp-4);display:flex;position:relative}.import-step:last-child{padding-bottom:0}.import-step:not(:last-child):after{content:"";border-radius:var(--r-full);background:var(--line);width:2px;transition:background-color var(--dur-4) var(--ease-out);position:absolute;top:26px;bottom:2px;left:11px}.import-step[data-state=done]:not(:last-child):after{background:var(--ok-soft-2)}.import-step-mark{z-index:1;border-radius:var(--r-full);background:var(--surface-3);width:24px;height:24px;color:var(--text-3);transition:background-color var(--dur-3) var(--ease-out), color var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-bounce);flex:none;place-items:center;display:grid;position:relative}.import-step-dot{border-radius:var(--r-full);background:currentColor;width:8px;height:8px}.import-step[data-state=active] .import-step-mark{background:var(--accent-soft);color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);animation:rt-step-pulse 1.6s var(--ease-in-out) infinite}.import-step[data-state=done] .import-step-mark,.import-step[data-state=ready] .import-step-mark{background:var(--ok);color:var(--text-inverse)}.import-step[data-state=ready] .import-step-mark{transform:scale(1.08)}.import-step[data-state=failed] .import-step-mark{background:var(--danger);color:var(--text-inverse)}.import-step[data-state=canceled] .import-step-mark{background:var(--surface-4);color:var(--text-2)}.import-step-check{width:14px;height:14px}.import-step-body{gap:2px;padding-top:2px;display:grid}.import-step-label{color:var(--text-3);font-size:var(--fs-label);transition:color var(--dur-3) var(--ease-out)}.import-step[data-state=done] .import-step-label{color:var(--text-2)}.import-step[data-state=ready] .import-step-label{color:var(--text);font-weight:var(--w-semibold)}.import-step[data-state=active] .import-step-label{background:linear-gradient(90deg, var(--text) 0%, var(--text) 38%, var(--accent-ink) 50%, var(--text) 62%, var(--text) 100%);color:#0000;font-weight:var(--w-semibold);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;animation:2.2s linear infinite rt-text-shimmer}.import-step[data-state=failed] .import-step-label{color:var(--danger-strong);font-weight:var(--w-semibold)}.import-step-message{color:var(--text-3);font-size:var(--fs-caption);animation:rt-rise-in var(--dur-3) var(--ease-out)}.import-result{gap:var(--sp-5);display:grid}.import-result[hidden]{display:none}.import-result-block{gap:var(--sp-2);display:grid}.import-result-title{font-size:var(--fs-title-sm)}.import-routines,.import-pending-list,.import-doubts{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.import-routine{align-items:center;gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--surface-2);flex-wrap:wrap;display:flex}.import-routine-text{flex:1;min-width:160px;display:grid}.import-routine-text span{color:var(--text-3);font-size:var(--fs-meta)}.import-badge{padding:var(--sp-0) var(--sp-2);border-radius:var(--r-full);font-size:var(--fs-caption);font-weight:var(--w-semibold)}.import-badge--warn{background:var(--warn-soft);color:var(--warn-strong)}.import-badge--ok{background:var(--ok-soft);color:var(--ok-strong)}.import-pending{gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--warn-soft);transition:background-color var(--dur-4) var(--ease-out), opacity var(--dur-4) var(--ease-out);display:grid}.import-pending--done{background:var(--ok-soft)}.import-pending-head{justify-content:space-between;align-items:baseline;gap:var(--sp-2);flex-wrap:wrap;display:flex}.import-pending-raw{font-weight:var(--w-semibold)}.import-pending-status{color:var(--text-2);font-size:var(--fs-caption)}.import-pending--done .import-pending-status{color:var(--ok-strong);font-weight:var(--w-semibold)}.import-pending-options{gap:var(--sp-1);flex-wrap:wrap;display:flex}.import-option{align-items:center;gap:var(--sp-2);min-height:var(--control-h-sm);padding:0 var(--sp-3);border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface);color:var(--text);font-size:var(--fs-meta);transition:border-color var(--dur-1) var(--ease-out), background-color var(--dur-1) var(--ease-out), transform var(--dur-1) var(--ease-out);display:inline-flex}.import-option:hover:not(:disabled){border-color:var(--accent)}.import-option:active:not(:disabled){transform:scale(.96)}.import-option:disabled{opacity:.55}.import-option[data-state=loading]{opacity:1;border-color:var(--accent);background:var(--accent-soft);animation:rt-breathe 1s var(--ease-in-out) infinite}.import-option-score{color:var(--text-3);font-size:var(--fs-caption);font-variant-numeric:tabular-nums}.import-doubts li{gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-label);display:flex}.import-doubts .icon{color:var(--info);flex:none;margin-top:2px}.import-cost{color:var(--text-3);font-size:var(--fs-caption)}.import-actions{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.import-actions>.import-muted{flex-basis:100%;margin-top:0}.import-confirm{display:contents}@keyframes rt-step-pulse{0%,to{box-shadow:0 0 0 4px var(--accent-soft)}50%{box-shadow:0 0 0 8px #0000}}@keyframes rt-ring-breathe{0%,to{transform:rotate(-90deg)scale(1)}50%{transform:rotate(-90deg)scale(1.03)}}@media (prefers-reduced-motion:reduce){.import-step[data-state=active] .import-step-label{color:var(--text);background:0 0}.import-progress[data-phase=processing] .import-ring svg{animation:none}}.import-progress-word{min-height:1.4em;display:grid}.import-progress-word[hidden]{display:none}.import-word{background:linear-gradient(90deg, var(--accent-ink) 0%, var(--accent-ink) 38%, var(--plum-strong) 50%, var(--accent-ink) 62%, var(--accent-ink) 100%);color:#0000;font-size:var(--fs-label);font-weight:var(--w-semibold);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;grid-area:1/1;animation:2.2s linear infinite rt-text-shimmer}.import-word--in{animation:rt-label-in var(--dur-3) var(--ease-out) both, rt-text-shimmer 2.2s linear infinite}.import-word--out{animation:rt-label-out var(--dur-2) var(--ease-in-out) forwards}@media (prefers-reduced-motion:reduce){.import-word{color:var(--accent-ink);background:0 0}}.concept-help{width:22px;height:22px;margin:-4px 0 -4px var(--sp-1);border-radius:var(--r-full);color:var(--text-3);vertical-align:middle;text-transform:none;letter-spacing:normal;transition:color var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);flex:none;place-items:center;display:inline-grid;position:relative}.concept-help:before{content:"";border-radius:var(--r-full);position:absolute;inset:-8px}.concept-help:hover{background:var(--accent-soft);color:var(--accent-ink)}.concept-help:active{transform:scale(.88)}.concept-help:focus-visible{box-shadow:var(--shadow-focus);outline:none}.concept-help[hidden]{display:none}.stepper-label.has-concept-help{align-items:center;min-width:0;display:flex}.concept-term{border-radius:var(--r-xs);color:inherit;font:inherit;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-color:var(--line-3);text-decoration-color:var(--line-3);text-underline-offset:3px;transition:color var(--dur-2) var(--ease-out), text-decoration-color var(--dur-2) var(--ease-out);margin:-2px 0;padding:2px 0;text-decoration-thickness:1.5px;display:inline}.concept-term:hover{color:var(--accent-ink);text-decoration-color:currentColor}.concept-term:focus-visible{box-shadow:var(--shadow-focus);outline:none}.concept-tag{cursor:pointer;transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out)}.concept-tag:hover{background:var(--plum-soft-2)}.concept-tag:active{transform:scale(.95)}.concept-tag:focus-visible{box-shadow:var(--shadow-focus);outline:none}.concept-layer{z-index:calc(var(--z-pop) + 2);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.concept-scrim{background:var(--scrim);animation:rt-fade-in var(--dur-3) var(--ease-out) both;transition:opacity var(--dur-2) var(--ease-out);position:absolute;inset:0}.concept-panel{width:100%;max-height:calc(100dvh - var(--safe-top) - var(--sp-10));padding-bottom:var(--safe-bottom);background:var(--surface);border-radius:var(--r-2xl) var(--r-2xl) 0 0;box-shadow:var(--shadow-3);animation:concept-in-up var(--dur-5) var(--ease-spring) both;transition:transform var(--dur-3) var(--ease-spring);outline:none;flex-direction:column;display:flex;position:relative}.concept-panel--dragging{transition:none}.concept-panel--nudge{animation:concept-nudge var(--dur-4) var(--ease-bounce)}.concept-layer--closing .concept-panel{animation:concept-out-down var(--dur-3) var(--ease-in-out) forwards}.concept-layer--closing .concept-scrim{animation:rt-fade-out var(--dur-3) var(--ease-in-out) forwards}.concept-grabber{cursor:grab;touch-action:none;flex:none;place-items:center;height:22px;display:grid}.concept-grabber span{border-radius:var(--r-full);background:var(--line-2);width:40px;height:5px}.concept-head{align-items:flex-start;gap:var(--sp-2);padding:0 var(--sp-4) var(--sp-3) var(--sp-5);touch-action:none;flex:none;display:flex}.concept-back{margin-left:calc(var(--sp-2) * -1)}.concept-back[hidden]{display:none}.concept-titles{gap:var(--sp-0);min-width:0;padding-top:var(--sp-1);flex:1;display:grid}.concept-kicker{color:var(--accent-ink);font-size:var(--fs-caption);font-weight:var(--w-bold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.concept-title{font-size:var(--fs-title);letter-spacing:var(--ls-title);line-height:var(--lh-tight);margin:0}.concept-title--swap{animation:concept-title-in var(--dur-4) var(--ease-out)}.concept-body{min-height:0;padding:var(--sp-1) var(--sp-5) var(--sp-6);overscroll-behavior:contain;flex:1;overflow-y:auto}.concept-view{gap:var(--sp-4);display:grid}.concept-view--forward{animation:concept-view-forward var(--dur-4) var(--ease-out) both}.concept-view--back{animation:concept-view-back var(--dur-4) var(--ease-out) both}.concept-lead{color:var(--text);font-size:var(--fs-16);font-weight:var(--w-medium);line-height:var(--lh-base);margin:0}.concept-stage{padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface-2)}.concept-text{gap:var(--sp-3);display:grid}.concept-text p{color:var(--text-2);font-size:var(--fs-15);line-height:var(--lh-loose);margin:0}.concept-points{gap:var(--sp-2);margin:0;display:grid}.concept-point{gap:var(--sp-1);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--surface-3);display:grid}.concept-point dt{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-bold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.concept-point dd{color:var(--text);font-size:var(--fs-label);line-height:var(--lh-base);margin:0}.concept-related{gap:var(--sp-2);display:grid}.concept-related-label,.concept-group-title{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-bold);letter-spacing:var(--ls-kicker);text-transform:uppercase;margin:0}.concept-chips{gap:var(--sp-2);flex-wrap:wrap;display:flex}.concept-chip{align-items:center;gap:var(--sp-1);min-height:var(--control-h-sm);padding:0 var(--sp-3) 0 var(--sp-4);border-radius:var(--r-full);background:var(--surface-3);color:var(--text);font-size:var(--fs-label);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:inline-flex}.concept-chip:hover{background:var(--surface-4)}.concept-chip:active{transform:scale(.95)}.concept-chip .icon,.concept-chip svg{color:var(--text-3)}.concept-all{justify-self:start;align-items:center;gap:var(--sp-2);min-height:var(--tap-min);color:var(--accent-ink);font-size:var(--fs-label);font-weight:var(--w-semibold);display:inline-flex}.concept-chip:focus-visible,.concept-all:focus-visible,.concept-row:focus-visible{box-shadow:var(--shadow-focus);outline:none}.concept-index{gap:var(--sp-5)}.concept-group{gap:var(--sp-2);scroll-margin-top:var(--sp-2);display:grid}.concept-group.is-focus .concept-group-title{color:var(--accent-ink)}.concept-group-list{gap:var(--sp-1);display:grid}.concept-row{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3);border-radius:var(--r-lg);background:var(--surface-2);color:var(--text-3);text-align:left;transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:flex}.concept-row:hover{background:var(--surface-3)}.concept-row:active{transform:scale(.985)}.concept-row-body{gap:var(--sp-0);flex:1;min-width:0;display:grid}.concept-row-title{color:var(--text);font-size:var(--fs-15);font-weight:var(--w-semibold)}.concept-row-text{color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-snug);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (min-width:768px){.concept-layer{padding:var(--sp-6)}.concept-panel{max-width:560px;max-height:calc(100dvh - var(--sp-12));border-radius:var(--r-2xl);padding-bottom:0;animation-name:concept-in-pop}.concept-layer--closing .concept-panel{animation-name:concept-out-pop}}@media (min-width:1024px){.concept-layer{pointer-events:none;justify-content:flex-end;align-items:flex-start}.concept-scrim{display:none}.concept-panel{width:400px;max-width:calc(100vw - var(--sp-12));max-height:100%;box-shadow:var(--shadow-float);pointer-events:auto;animation-name:concept-in-side}.concept-layer--closing .concept-panel{animation-name:concept-out-side}.concept-grabber{height:var(--sp-4);cursor:default}.concept-grabber span{display:none}}@keyframes concept-in-up{0%{transform:translateY(100%)}to{transform:translate(0,0)}}@keyframes concept-out-down{to{transform:translateY(100%)}}@keyframes concept-in-pop{0%{opacity:0;transform:translateY(28px)scale(.98)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes concept-out-pop{to{opacity:0;transform:translateY(20px)scale(.98)}}@keyframes concept-in-side{0%{opacity:0;transform:translate(40px)scale(.98)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes concept-out-side{to{opacity:0;transform:translate(32px)scale(.98)}}@keyframes concept-nudge{40%{transform:scale(1.012)}}@keyframes concept-view-forward{0%{opacity:0;transform:translate(24px)}}@keyframes concept-view-back{0%{opacity:0;transform:translate(-24px)}}@keyframes concept-title-in{0%{opacity:0;transform:translateY(6px)}}.cdemo{gap:var(--sp-4);min-width:0;display:grid}.cdemo-readout{gap:var(--sp-1);min-width:0;display:grid}.cdemo-headline{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.cdemo-big{color:var(--text);font-size:var(--fs-28);font-variant-numeric:tabular-nums;font-weight:var(--w-bold);letter-spacing:var(--ls-display);line-height:var(--lh-tight);justify-self:start;display:inline-block}.cdemo-big--sm{font-size:var(--fs-20);letter-spacing:var(--ls-title)}.cdemo-sub{color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-snug);margin:0}.cdemo-eq{color:var(--accent-ink);font-size:var(--fs-label);font-variant-numeric:tabular-nums;font-weight:var(--w-semibold)}.cdemo-feel{padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--surface-3);color:var(--text);font-size:var(--fs-label);line-height:var(--lh-snug);transition:background-color var(--dur-3) var(--ease-out), color var(--dur-3) var(--ease-out);margin:0}.cdemo-feel[hidden]{display:none}.cdemo-feel[data-tone=ok]{background:var(--ok-soft);color:var(--ok-strong)}.cdemo-feel[data-tone=low]{background:var(--warn-soft);color:var(--warn-strong)}.cdemo-feel[data-tone=high]{background:var(--info-soft);color:var(--info-strong)}.cdemo-zone{padding:var(--sp-0) var(--sp-2);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-bold);transition:background-color var(--dur-3) var(--ease-out), color var(--dur-3) var(--ease-out)}.cdemo-zone[data-zone=fallo]{background:var(--danger-soft);color:var(--danger-strong)}.cdemo-zone[data-zone=efectivo]{background:var(--ok-soft);color:var(--ok-strong)}.cdemo-row{justify-content:space-between;align-items:center;gap:var(--sp-2) var(--sp-3);flex-wrap:wrap;display:flex}.cdemo-row>.cdemo-feel{flex:200px}.cdemo-link{min-height:var(--control-h-sm);padding:0 var(--sp-2);border-radius:var(--r-sm);color:var(--accent-ink);font-size:var(--fs-label);font-weight:var(--w-semibold)}.cdemo-link[hidden]{display:none}.cdemo-link:focus-visible{box-shadow:var(--shadow-focus);outline:none}.cdemo-bump{animation:concept-bump var(--dur-4) var(--ease-bounce)}@keyframes concept-bump{40%{transform:scale(1.08)}}.cslider{gap:var(--sp-1);display:grid}.cslider-head{justify-content:space-between;align-items:baseline;gap:var(--sp-3);display:flex}.cslider-label{color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-semibold)}.cslider-value{color:var(--text);font-size:var(--fs-label);font-variant-numeric:tabular-nums;font-weight:var(--w-bold)}.cslider-input{cursor:pointer;appearance:none;touch-action:pan-y;background:0 0;width:100%;height:32px;margin:0}.cslider-input:focus{outline:none}.cslider-input::-webkit-slider-runnable-track{border-radius:var(--r-full);background:linear-gradient(to right, var(--accent) var(--fill,50%), var(--surface-4) var(--fill,50%));height:6px}.cslider-input::-moz-range-track{border-radius:var(--r-full);background:var(--surface-4);height:6px}.cslider-input::-moz-range-progress{border-radius:var(--r-full);background:var(--accent);height:6px}.cslider-input::-webkit-slider-thumb{border-radius:var(--r-full);background:var(--surface);width:26px;height:26px;box-shadow:var(--shadow-2), 0 0 0 1px var(--line-2);appearance:none;transition:transform var(--dur-2) var(--ease-bounce), box-shadow var(--dur-2) var(--ease-out);border:0;margin-top:-10px}.cslider-input::-moz-range-thumb{border-radius:var(--r-full);background:var(--surface);width:26px;height:26px;box-shadow:var(--shadow-2), 0 0 0 1px var(--line-2);transition:transform var(--dur-2) var(--ease-bounce);border:0}.cslider-input:active::-webkit-slider-thumb{transform:scale(1.15)}.cslider-input:active::-moz-range-thumb{transform:scale(1.15)}.cslider-input:focus-visible::-webkit-slider-thumb{box-shadow:var(--shadow-2), var(--shadow-focus)}.cslider-input:focus-visible::-moz-range-thumb{box-shadow:var(--shadow-2), var(--shadow-focus)}.cchoice{gap:var(--sp-1);padding:var(--sp-1);border-radius:var(--r-full);background:var(--surface-3);scrollbar-width:none;display:flex;overflow-x:auto}.cchoice::-webkit-scrollbar{display:none}.cchoice--wrap{border-radius:var(--r-lg);flex-wrap:wrap}.cchoice-option{min-height:var(--control-h-sm);padding:0 var(--sp-3);border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-semibold);white-space:nowrap;transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);flex:1 0 auto}.cchoice-option:hover{color:var(--text)}.cchoice-option:active{transform:scale(.96)}.cchoice-option[aria-checked=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}.cchoice-option:focus-visible{box-shadow:var(--shadow-focus);outline:none}.cplay{justify-self:start;align-items:center;gap:var(--sp-2);min-height:var(--control-h-sm);padding:0 var(--sp-4) 0 var(--sp-3);border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent-ink);font-size:var(--fs-meta);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:inline-flex}.cplay:hover{background:var(--accent-soft-2)}.cplay:active{transform:scale(.95)}.cplay:focus-visible{box-shadow:var(--shadow-focus);outline:none}.cplay-icon{border-radius:var(--r-full);background:var(--accent);width:24px;height:24px;color:var(--on-accent);place-items:center;display:inline-grid}.cstep{gap:var(--sp-1);min-width:0;display:grid}.cstep-label{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold)}.cstep-row{justify-content:space-between;align-items:center;gap:var(--sp-1);display:flex}.cstep-value{min-width:3ch;color:var(--text);font-size:var(--fs-label);font-variant-numeric:tabular-nums;font-weight:var(--w-bold);text-align:center;display:inline-block}.cstep-btn{border-radius:var(--r-full);background:var(--surface-3);width:30px;height:30px;color:var(--text-2);transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);flex:none;place-items:center;display:inline-grid}.cstep-btn:hover:not(:disabled){background:var(--surface-4);color:var(--text)}.cstep-btn:active:not(:disabled){transform:scale(.9)}.cstep-btn:disabled{opacity:.4}.cstep-btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.cbeads{gap:var(--sp-1);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.cbead{aspect-ratio:1;border-radius:var(--r-full);background:var(--surface-3);color:var(--text-3);font-variant-numeric:tabular-nums;font-size:10px;font-weight:var(--w-bold);transition:background-color var(--dur-3) var(--ease-out), color var(--dur-3) var(--ease-out), box-shadow var(--dur-3) var(--ease-out), transform var(--dur-4) var(--ease-bounce);transition-delay:calc(var(--i,0) * 16ms);place-items:center;display:grid}.cbead.is-done{background:var(--accent);color:var(--on-accent)}.cbead.is-reserve{background:var(--ok-soft);color:var(--ok-strong);box-shadow:inset 0 0 0 2px var(--ok);animation:concept-breathe 2.4s var(--ease-in-out) infinite;animation-delay:calc(var(--i,0) * .11s)}@keyframes concept-breathe{50%{opacity:.7;transform:scale(.86)}}.cbeads-legend{gap:var(--sp-1) var(--sp-4);margin-top:calc(var(--sp-2) * -1);flex-wrap:wrap;display:flex}.cbeads-key{align-items:center;gap:var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-medium);display:inline-flex}.cbeads-key:before{content:"";border-radius:var(--r-full);background:var(--surface-4);width:10px;height:10px}.cbeads-key--done:before{background:var(--accent)}.cbeads-key--reserve:before,.cbeads-key--ok:before{background:var(--ok-soft);box-shadow:inset 0 0 0 2px var(--ok)}.cbeads-key--danger:before{background:var(--danger-soft-2)}.cgauge-wrap{justify-items:center;gap:var(--sp-1);text-align:center;display:grid}.cgauge-wrap .cdemo-readout{justify-items:center}.cgauge-wrap .cdemo-big{justify-self:center}.cgauge{width:100%;max-width:280px;height:auto;display:block;overflow:visible}.cgauge-track,.cgauge-fill{fill:none;stroke-linecap:round;stroke-width:14px}.cgauge-track{stroke:var(--surface-4)}.cgauge-fill{stroke:var(--accent);transition:stroke-dashoffset var(--dur-5) var(--ease-spring), stroke var(--dur-3) var(--ease-out)}.cgauge-fill[data-zone=fallo]{stroke:var(--danger)}.cgauge-fill[data-zone=liviano]{stroke:var(--text-3)}.cgauge-ticks text{fill:var(--text-3);font-size:11px;font-weight:var(--w-semibold)}.cgauge-needle{transition:transform var(--dur-5) var(--ease-spring)}.cgauge-needle line{stroke:var(--text);stroke-linecap:round;stroke-width:3px}.cgauge-needle circle{fill:var(--text)}.cscale{gap:var(--sp-0);margin:0;padding:0;list-style:none;display:grid}.cscale-row{gap:var(--sp-2);padding:var(--sp-1) var(--sp-3);border-radius:var(--r-sm);color:var(--text-2);font-size:var(--fs-meta);font-variant-numeric:tabular-nums;transition:background-color var(--dur-3) var(--ease-out), color var(--dur-3) var(--ease-out);grid-template-columns:4.6em 4.2em minmax(0,1fr);align-items:center;display:grid}.cscale-rpe,.cscale-rir{font-weight:var(--w-semibold)}.cscale-row.is-current{background:var(--accent-soft);color:var(--accent-ink)}.cbars{width:100%;height:auto;display:block;overflow:visible}.cbars-base{stroke:var(--line-2);stroke-width:1px}.cbars-rect{fill:var(--surface-4);transform:scaleY(var(--v,0));transform-box:fill-box;transform-origin:50% 100%;transition:transform var(--dur-5) var(--ease-spring), fill var(--dur-3) var(--ease-out);transition-delay:calc(var(--i,0) * 45ms), 0s}.cbars-top{fill:var(--text);font-variant-numeric:tabular-nums;font-size:12px;font-weight:var(--w-bold);transition:transform var(--dur-5) var(--ease-spring);transition-delay:calc(var(--i,0) * 45ms)}.cbars-bottom{fill:var(--text-3);font-size:10.5px;font-weight:var(--w-semibold)}.cbars-bar--accent .cbars-rect{fill:var(--accent)}.cbars-bar--soft .cbars-rect{fill:var(--accent-soft-2)}.cbars-bar--plum .cbars-rect{fill:var(--plum-soft-2)}.cbars-bar--quiet .cbars-rect{fill:var(--surface-4)}.cbars-bar.is-active .cbars-rect{fill:var(--accent)}.cbars-bar.is-active .cbars-bottom{fill:var(--accent-ink)}.cbars-path{fill:none;stroke:var(--text-3);stroke-dasharray:1;stroke-dashoffset:0;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;opacity:.6}.cbars-path--draw{animation:concept-draw .9s var(--ease-out) both;animation-delay:.16s}@keyframes concept-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.cring{width:100%;height:auto;display:block;overflow:visible}.cring-track{fill:none;stroke:var(--surface-4)}.cring-arc{fill:none;stroke-linecap:round;transition:stroke-dasharray var(--dur-5) var(--ease-spring), stroke-dashoffset var(--dur-5) var(--ease-spring)}.cring-arc--accent{stroke:var(--accent)}.cring-arc--ok{stroke:var(--ok)}.cring-arc--ok-soft{stroke:var(--ok-soft-2)}.cring-arc--danger{stroke:var(--danger-soft-2)}.cring-hand line{display:none}.cring-hand circle{fill:var(--surface);stroke:var(--text);stroke-width:3px}.cring-mark line{stroke:var(--ok-strong);stroke-dasharray:3 4;stroke-linecap:round;stroke-width:2px}.cring-mark circle{fill:none}.cring-box{flex:none;width:156px;position:relative}.cring-center{place-content:center;gap:var(--sp-0);padding:var(--sp-5);text-align:center;pointer-events:none;display:grid;position:absolute;inset:0}.cring-count{color:var(--text);font-size:var(--fs-34);font-variant-numeric:tabular-nums;font-weight:var(--w-bold);letter-spacing:var(--ls-display);justify-self:center;line-height:1;display:inline-block}.cring-count--sm{font-size:var(--fs-16);letter-spacing:normal;line-height:var(--lh-tight)}.cring-caption{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-medium);line-height:var(--lh-snug)}.camrap,.crest,.cemom{align-items:center;gap:var(--sp-4);flex-wrap:wrap;display:flex}.camrap-side,.crest-side,.cemom-side{gap:var(--sp-2);flex:160px;min-width:0;display:grid}.camrap-tap{border-radius:var(--r-full);-webkit-tap-highlight-color:transparent;width:148px;transition:transform var(--dur-1) var(--ease-out);flex:none;position:relative}.camrap-tap:active{transform:scale(.95)}.camrap-tap:focus-visible{box-shadow:var(--shadow-focus);outline:none}.cprog-head{justify-content:space-between;align-items:center;gap:var(--sp-3);display:flex}.cprog-nav{align-items:center;gap:var(--sp-2);display:flex}.cprog-load{padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);background:var(--inverse-bg);color:var(--inverse-fg);font-size:var(--fs-label);font-variant-numeric:tabular-nums;font-weight:var(--w-bold);transition:background-color var(--dur-3) var(--ease-out);display:inline-block}.cprog-load.is-up{background:var(--ok);color:var(--text-inverse)}.cprog{gap:var(--sp-3);height:140px;padding-left:var(--sp-8);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;position:relative}.cprog-band{height:57.14%;padding:var(--sp-1) var(--sp-2);border-radius:var(--r-md);background:var(--ok-soft);color:var(--ok-strong);font-size:var(--fs-caption);font-weight:var(--w-bold);flex-direction:column;justify-content:space-between;display:flex;position:absolute;bottom:28.57%;left:0;right:0}.cprog-bar{height:100%;position:relative}.cprog-fill{border-radius:var(--r-md) var(--r-md) var(--r-xs) var(--r-xs);background:var(--accent);transform:scaleY(var(--v,0));transform-origin:50% 100%;transition:transform var(--dur-5) var(--ease-spring), background-color var(--dur-3) var(--ease-out);position:absolute;inset:0}.cprog-bar.is-top .cprog-fill{background:var(--ok)}.cprog-reps{color:var(--text);font-size:var(--fs-label);font-variant-numeric:tabular-nums;font-weight:var(--w-bold);transform:translate3d(-50%, calc((1 - var(--v,0)) * 140px - 100% - 4px), 0);transition:transform var(--dur-5) var(--ease-spring);position:absolute;top:0;left:50%}.crange-plot{gap:var(--sp-2);padding-left:var(--sp-8);display:grid;position:relative}.crange-band{top:calc(var(--top) * 1.32px);right:0;left:var(--sp-6);height:calc((var(--bottom) - var(--top)) * 1.32px);border-radius:var(--r-md);background:var(--ok-soft);transition:opacity var(--dur-4) var(--ease-out);position:absolute}.crange-band-top,.crange-band-bottom{left:var(--sp-1);color:var(--ok-strong);font-size:var(--fs-caption);font-weight:var(--w-bold);position:absolute}.crange-band-top{top:var(--sp-1)}.crange-band-bottom{bottom:var(--sp-1)}.crange-plot.is-fixed .crange-band{opacity:0}.crange-cols{gap:var(--sp-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:relative}.crange-col{grid-template-rows:132px auto;justify-items:center;display:grid;position:relative}.crange-dot{border-radius:var(--r-full);background:var(--accent);width:32px;height:32px;box-shadow:var(--shadow-2);color:var(--on-accent);font-size:var(--fs-meta);font-variant-numeric:tabular-nums;font-weight:var(--w-bold);transform:translate3d(-50%, calc(var(--y,50) * 1.32px - 50%), 0);transition:transform var(--dur-5) var(--ease-spring), background-color var(--dur-3) var(--ease-out);transition-delay:calc(var(--i,0) * 60ms), 0s;place-items:center;display:grid;position:absolute;top:0;left:50%}.crange-plot.is-fixed .crange-dot{background:var(--inverse-bg);color:var(--inverse-fg)}.crange-set{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);grid-row:2}.ctl-stack{gap:var(--sp-3);display:grid}.ctl-row{gap:var(--sp-1);display:grid}.ctl-name{justify-content:space-between;align-items:baseline;gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-semibold);display:flex}.ctl-time{color:var(--text-3);font-variant-numeric:tabular-nums}.ctl-clip{width:calc(var(--scale,1) * 100%);border-radius:var(--r-sm);transition:width var(--dur-5) var(--ease-spring);position:relative;overflow:hidden}.ctl-track{gap:2px;height:36px;display:flex}.ctl-row--quiet .ctl-track{height:28px}.ctl-seg{border-radius:var(--r-xs);min-width:3px;transition:opacity var(--dur-3) var(--ease-out), box-shadow var(--dur-3) var(--ease-out);flex-basis:0;place-items:center;display:grid;position:relative;overflow:hidden}.ctl-seg--work{background:var(--tone-x,var(--tone,var(--accent)));color:var(--on-accent)}.ctl-seg--rest{background:repeating-linear-gradient(135deg, var(--surface-3) 0 5px, var(--surface-4) 5px 10px);color:var(--text-3)}.ctl-label{max-width:100%;padding:0 var(--sp-1);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;font-weight:var(--w-bold);white-space:nowrap;overflow:hidden}.ctl-seg.is-past{opacity:.45}.ctl-seg.is-active{box-shadow:inset 0 0 0 2px var(--text)}.ctl-track--draw .ctl-seg{animation:concept-seg-in var(--dur-4) var(--ease-out) both;animation-delay:calc(var(--i,0) * 22ms)}@keyframes concept-seg-in{0%{opacity:0;transform:scaleY(.4)}}.ctl-head{pointer-events:none;position:absolute;inset:0}.ctl-head span{border-radius:var(--r-full);background:var(--text);opacity:0;width:3px;transition:opacity var(--dur-2) var(--ease-out);position:absolute;top:0;bottom:0;left:0}.ctl-head.is-on span{opacity:1}.ctl-caption{min-height:1.4em;color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-semibold)}.ctl-legend{gap:var(--sp-1) var(--sp-3);flex-wrap:wrap;display:flex}.ctl-key{align-items:center;gap:var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-medium);display:inline-flex}.ctl-key:before{content:"";border-radius:var(--r-xs);background:var(--tone-x,var(--accent));width:10px;height:10px}.ctl-key--rest:before{background:repeating-linear-gradient(135deg, var(--surface-3) 0 3px, var(--surface-4) 3px 6px)}.ctempo{gap:var(--sp-4);align-items:stretch;display:flex}.ctempo-rail{border-radius:var(--r-full);background:var(--surface-3);flex:none;width:60px;height:208px;position:relative}.ctempo-rail:before{content:"";background:var(--line-2);width:2px;position:absolute;top:30px;bottom:30px;left:50%;transform:translate(-50%)}.ctempo-top,.ctempo-bottom{color:var(--text-3);font-size:10px;font-weight:var(--w-bold);text-align:center;position:absolute;left:0;right:0}.ctempo-top{top:var(--sp-2)}.ctempo-bottom{bottom:var(--sp-2)}.ctempo-weight{border-radius:var(--r-sm);background:var(--accent);width:44px;height:18px;box-shadow:var(--shadow-2);transform:translate3d(-50%, calc(var(--depth,0) * 130px), 0);will-change:transform;position:absolute;top:30px;left:50%}.ctempo-side{align-content:start;gap:var(--sp-3);flex:1;min-width:0;display:grid}.ctempo-phases{gap:var(--sp-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ctempo-phase{padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out)}.ctempo-phase.is-active{border-color:var(--accent);background:var(--accent-soft)}.ccircuit-box{width:min(220px,100%);margin-inline:auto;position:relative}.ccircuit{width:100%;height:auto;display:block}.ccircuit-track{fill:none;stroke:var(--line-2);stroke-dasharray:3 5;stroke-width:2px}.ccircuit-dot circle{fill:var(--surface-3);stroke:var(--line-3);stroke-width:1.5px;transition:fill var(--dur-2) var(--ease-out), stroke var(--dur-2) var(--ease-out)}.ccircuit-dot text{fill:var(--text-2);font-size:10px;font-weight:var(--w-bold)}.ccircuit-dot{animation:concept-pop var(--dur-4) var(--ease-bounce) both;animation-delay:calc(var(--i,0) * 40ms);transform-box:fill-box;transform-origin:50%}.ccircuit-dot.is-active circle{fill:var(--accent);stroke:var(--accent)}.ccircuit-dot.is-active text{fill:var(--on-accent)}.ccircuit-runner{fill:var(--accent);opacity:.28}@keyframes concept-pop{0%{opacity:0;transform:scale(.4)}}.ccircuit-center{place-content:center;gap:var(--sp-0);text-align:center;pointer-events:none;display:grid;position:absolute;inset:0}.ccircuit-lap{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-bold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.ccircuit-station{color:var(--text);font-size:var(--fs-label)}.cemom-list{gap:var(--sp-1);grid-template-columns:repeat(10,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.cemom-slot{padding:var(--sp-1) 0;border-radius:var(--r-sm);background:var(--surface-3);font-size:var(--fs-caption);transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-bounce);place-items:center;display:grid}.cemom-slot span{color:var(--text-3);font-variant-numeric:tabular-nums}.cemom-slot--a b{color:var(--accent-ink)}.cemom-slot--b b{color:var(--plum-strong)}.cemom-slot.is-active{background:var(--accent-soft);transform:translateY(-3px)}@media (max-width:380px){.camrap-tap,.cring-box{width:128px}.ctempo-rail{width:48px}.ctempo-weight{width:34px}}.concepts-entry{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-card);background:var(--surface);box-shadow:var(--shadow-1);color:var(--accent-ink);text-align:left;transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:flex}.concepts-entry:hover{background:var(--surface-2)}.concepts-entry:active{transform:scale(.985)}.concepts-entry:focus-visible{box-shadow:var(--shadow-focus);outline:none}.concepts-entry-text{gap:var(--sp-0);flex:1;min-width:0;display:grid}.concepts-entry-text strong{color:var(--text);font-size:var(--fs-15)}.concepts-entry-text span{color:var(--text-2);font-size:var(--fs-meta)}.progress-grid{gap:var(--sp-5);display:grid}.progress-main,.progress-side{align-content:start;gap:var(--sp-5);min-width:0;display:grid}@media (min-width:1024px){.page.progress-page{max-width:var(--content-wide)}.progress-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start}.progress-side{top:var(--sp-6);position:sticky}}.progress-back{align-items:center;gap:var(--sp-1);min-height:var(--tap-min);margin-left:calc(var(--sp-2) * -1);padding:0 var(--sp-2);border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-semibold);transition:background var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);display:inline-flex}.progress-back:hover{background:var(--surface-3);color:var(--text)}.progress-back:focus-visible{box-shadow:var(--shadow-focus);outline:none}.progress-note{color:var(--text-3);font-size:var(--fs-meta);line-height:var(--lh-base)}.progress-hero{align-items:center;gap:var(--sp-5);grid-template-columns:auto minmax(0,1fr);display:grid}.progress-hero-ring{place-items:center;display:grid;position:relative}.progress-hero-pct{font-size:var(--fs-20);font-weight:var(--w-bold);letter-spacing:var(--ls-title);font-variant-numeric:tabular-nums;position:absolute}.progress-hero-text{gap:var(--sp-2);min-width:0;display:grid}.progress-hero-word{font-size:var(--fs-title);letter-spacing:var(--ls-title);line-height:var(--lh-tight)}.progress-hero-stats{gap:var(--sp-2) var(--sp-5);margin-top:var(--sp-1);flex-wrap:wrap;display:flex}.progress-hero-stats div{gap:var(--sp-0);display:grid}.progress-hero-stats dt{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold)}.progress-hero-stats dd{font-size:var(--fs-label);font-weight:var(--w-semibold);font-variant-numeric:tabular-nums}@media (max-width:420px){.progress-hero{grid-template-columns:1fr;justify-items:start}}.progress-weeks .chart-weeks{margin:var(--sp-2) 0 var(--sp-3)}.progress-list{margin:0 calc(var(--sp-3) * -1);display:grid}.progress-exercise,.progress-record,.progress-history-link{align-items:center;gap:var(--sp-3);width:100%;min-height:60px;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);text-align:left;transition:background var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);display:flex}button.progress-exercise:hover,button.progress-record:hover,.progress-history-link:hover{background:var(--surface-2)}button.progress-exercise:active,button.progress-record:active,.progress-history-link:active{transform:scale(.985)}.progress-exercise:focus-visible,.progress-record:focus-visible,.progress-history-link:focus-visible{box-shadow:var(--shadow-focus);outline:none}.progress-list li+li .progress-exercise,.progress-list li+li .progress-record,.progress-list li+li.progress-record{box-shadow:0 -1px 0 var(--line)}.progress-thumb{border-radius:var(--r-md);background:var(--surface-3);width:44px;height:44px;color:var(--text-3);flex:none;place-items:center;display:grid;overflow:hidden}.progress-thumb img{object-fit:cover;width:100%;height:100%}.progress-exercise-body{gap:var(--sp-0);flex:1;min-width:0;display:grid}.progress-exercise-name{font-weight:var(--w-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.progress-exercise-meta{color:var(--text-2);font-size:var(--fs-meta);font-variant-numeric:tabular-nums}.progress-exercise-trend{justify-items:end;gap:var(--sp-0);flex:none;display:grid}.progress-trend{align-items:center;gap:var(--sp-0);color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);display:inline-flex}.progress-trend--up{color:var(--ok-strong)}.progress-trend--down{color:var(--warn-strong)}.progress-chevron{color:var(--text-3);flex:none}.progress-record-icon{border-radius:var(--r-full);background:var(--ok-soft);width:36px;height:36px;color:var(--ok-strong);flex:none;place-items:center;display:grid}.progress-record-date{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);flex:none}.progress-history-link{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);box-shadow:var(--shadow-1)}.progress-history-link .progress-record-icon{background:var(--info-soft);color:var(--info-strong)}.progress-plan-rows{gap:var(--sp-3);display:grid}.progress-plan-row{align-items:baseline;gap:var(--sp-3);color:var(--text-2);font-size:var(--fs-label);display:flex}.progress-plan-big{min-width:2ch;color:var(--text);font-size:var(--fs-28);font-weight:var(--w-bold);letter-spacing:var(--ls-display);font-variant-numeric:tabular-nums}.progress-chart-card .card-head{gap:var(--sp-3);flex-wrap:wrap}.progress-chart-host{min-height:180px}.progress-delta{margin-top:var(--sp-2);font-weight:var(--w-semibold)}.progress-best{gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(88px,1fr));display:grid}.progress-best-cell{gap:var(--sp-0);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);display:grid}.progress-best-reps{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold)}.progress-best-kg{font-size:var(--fs-18);font-variant-numeric:tabular-nums}.progress-sets{gap:var(--sp-1);display:grid}.progress-set{align-items:center;gap:var(--sp-3);min-height:40px;display:flex}.progress-set-index{border-radius:var(--r-full);background:var(--surface-3);width:28px;height:28px;color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-semibold);flex:none;place-items:center;display:grid}.progress-set-main{font-weight:var(--w-semibold);font-variant-numeric:tabular-nums;flex:1}.progress-set-effort{color:var(--text-3);font-size:var(--fs-meta)}.chart{gap:var(--sp-2);margin:0;display:grid}.chart-svg{width:100%;height:auto;display:block;overflow:visible}.chart-grid{stroke:var(--line);stroke-width:1px;stroke-dasharray:3 4}.chart-band{fill:var(--plum-soft)}.chart-line{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.chart-line--wide{stroke-width:2.5px}.chart-line--info{stroke:var(--info)}.chart-line--warn{stroke:var(--warn)}.chart-line--ok{stroke:var(--ok)}.chart-draw{transition:stroke-dashoffset .9s var(--ease-out)}.chart-area{fill:var(--accent-soft);opacity:.7;animation:rt-fade-in var(--dur-5) var(--ease-out) both}.chart-area--info{fill:var(--info-soft)}.chart-dot{fill:var(--surface);stroke:var(--accent);stroke-width:2px;animation:rt-fade-in var(--dur-4) var(--ease-out) both;animation-delay:.5s}.chart-dot--info{stroke:var(--info)}.chart-dot--warn{stroke:var(--warn)}.chart-dot--swap{fill:var(--info);stroke:var(--surface)}.chart-axis{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);justify-content:space-between;display:flex}.chart-legend{gap:var(--sp-2) var(--sp-4);color:var(--text-2);font-size:var(--fs-caption);flex-wrap:wrap;display:flex}.chart-legend-item{align-items:center;gap:var(--sp-1);display:inline-flex}.chart-key{border-radius:var(--r-full);width:12px;height:12px;display:inline-block}.chart-key--band{background:var(--plum-soft);box-shadow:inset 0 0 0 1px var(--plum)}.chart-key--swap{background:var(--info)}.chart-empty{padding:var(--sp-6) var(--sp-4);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-meta);text-align:center}.chart-spark{width:96px;height:32px;display:block;overflow:visible}.chart-spark--empty{border-radius:var(--r-full);background:var(--line);width:96px;height:2px;display:block}.chart-bars{gap:var(--sp-3);display:grid}.chart-bar{gap:var(--sp-1);display:grid}.chart-bar-top{justify-content:space-between;gap:var(--sp-3);font-size:var(--fs-label);display:flex}.chart-bar-label{font-weight:var(--w-semibold)}.chart-bar-value{color:var(--text-2);font-size:var(--fs-meta);font-variant-numeric:tabular-nums}.chart-bar-track{border-radius:var(--r-full);background:var(--surface-3);height:10px;position:relative;overflow:hidden}.chart-bar-fill{width:var(--w);border-radius:var(--r-full);background:var(--accent);transform-origin:0;animation:chart-grow .7s var(--ease-out) both;animation-delay:calc(var(--i,0) * 45ms + .12s);position:absolute;inset:0 auto 0 0}.chart-bar-fill--full{background:var(--ok)}.chart-bar-fill--over{background:var(--plum)}@keyframes chart-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.chart-weeks{align-items:end;gap:var(--sp-1);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;height:112px;display:grid}.chart-week{justify-items:center;gap:var(--sp-1);grid-template-rows:1fr auto;height:100%;display:grid}.chart-week-col{width:min(100%,22px);height:100%;position:relative}.chart-week-plan,.chart-week-done{border-radius:var(--r-sm);position:absolute;inset:auto 0 0}.chart-week-plan{height:var(--p);background:var(--surface-3)}.chart-week-done{height:var(--h);background:var(--line-3);transform-origin:bottom;animation:chart-rise .6s var(--ease-out) both;animation-delay:calc(var(--i,0) * 35ms)}.chart-week--ok .chart-week-done{background:var(--ok)}.chart-week--deload .chart-week-done{background:var(--plum)}.chart-week--current .chart-week-plan{background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent-soft-2)}.chart-week--current.chart-week--ok .chart-week-done{background:var(--accent)}.chart-week-label{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);font-variant-numeric:tabular-nums}.chart-week--current .chart-week-label{color:var(--accent-ink)}@keyframes chart-rise{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.chart-ring-track{fill:none;stroke:var(--surface-3)}.chart-ring-arc{fill:none;stroke:var(--ok);stroke-linecap:round;transition:stroke-dashoffset 1s var(--ease-out)}.chart-ring-arc--accent{stroke:var(--accent)}.history-weeks{gap:var(--sp-6);display:grid}.history-panel{gap:var(--sp-5);display:grid}.history-week{gap:var(--sp-2);display:grid}.history-week-title{justify-content:space-between;align-items:baseline;gap:var(--sp-3);padding:0 var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase;display:flex}.history-week-count{letter-spacing:normal;text-transform:none}.history-week-list{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);box-shadow:var(--shadow-1);display:grid;overflow:hidden}.history-week-list li+li .history-session{box-shadow:0 -1px 0 var(--line)}.history-session{align-items:center;gap:var(--sp-3);width:100%;min-height:72px;padding:var(--sp-3) var(--sp-4);text-align:left;transition:background var(--dur-2) var(--ease-out);display:flex}.history-session:hover{background:var(--surface-2)}.history-session:active{background:var(--surface-3)}.history-session:focus-visible{box-shadow:inset var(--shadow-focus);outline:none}.history-session-date{border-radius:var(--r-md);background:var(--surface-3);flex:none;place-items:center;width:48px;height:52px;display:grid}.history-session-weekday{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);text-transform:uppercase}.history-session-date strong{font-size:var(--fs-18);font-variant-numeric:tabular-nums;line-height:1}.history-session-body{gap:var(--sp-0);flex:1;min-width:0;display:grid}.history-session-title{font-weight:var(--w-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-session-meta{color:var(--text-2);font-size:var(--fs-meta);font-variant-numeric:tabular-nums}.history-session-tags{gap:var(--sp-1);margin-top:var(--sp-1);flex-wrap:wrap;display:flex}.history-session-ring{border-radius:var(--r-full);background:conic-gradient(var(--ok) var(--p), var(--surface-3) 0);flex:none;width:28px;height:28px;-webkit-mask:radial-gradient(circle,#0000 8px,#000 9px);mask:radial-gradient(circle,#0000 8px,#000 9px)}.session-detail{gap:var(--sp-4);display:grid}.session-detail-stats{gap:var(--sp-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.session-detail-stat{gap:var(--sp-0);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);display:grid}.session-detail-stat dt{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold)}.session-detail-stat dd{font-size:var(--fs-18);font-weight:var(--w-semibold);font-variant-numeric:tabular-nums}@media (max-width:480px){.session-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.session-detail-flags{gap:var(--sp-2);flex-wrap:wrap;display:flex}.session-detail-legend{gap:var(--sp-3);padding:0 var(--sp-4);color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) 72px;display:grid}.session-detail-legend span:first-child{grid-column:2}.session-detail-entries{gap:var(--sp-3);display:grid}.session-detail-entry{gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);box-shadow:var(--shadow-1);display:grid}.session-detail-entry--skipped{background:var(--surface-2);box-shadow:none}.session-detail-entry-head{align-items:flex-start;gap:var(--sp-3);display:flex}.session-detail-entry-index{border-radius:var(--r-full);background:var(--surface-3);width:28px;height:28px;color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-semibold);flex:none;place-items:center;display:grid}.session-detail-entry-titles{gap:var(--sp-0);flex:1;min-width:0;display:grid}.session-detail-entry-name{font-size:var(--fs-18);letter-spacing:var(--ls-title)}.session-detail-entry--skipped .session-detail-entry-name{color:var(--text-2)}.session-detail-entry-swap{align-items:center;gap:var(--sp-1);color:var(--info-strong);font-size:var(--fs-meta);display:inline-flex}.session-detail-entry-meta{color:var(--text-3);font-size:var(--fs-meta)}.session-detail-entry-badges{justify-content:flex-end;gap:var(--sp-1);flex-wrap:wrap;display:flex}.session-detail-sets{gap:var(--sp-1);display:grid}.session-detail-set{align-items:center;gap:var(--sp-3);min-height:36px;padding:0 var(--sp-1);border-radius:var(--r-sm);font-variant-numeric:tabular-nums;grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) 72px;display:grid}.session-detail-set-index{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);text-align:center}.session-detail-set-done{font-weight:var(--w-semibold)}.session-detail-set-plan,.session-detail-set-effort{color:var(--text-3);font-size:var(--fs-meta)}.session-detail-set--above{background:var(--ok-soft)}.session-detail-set--above .session-detail-set-done{color:var(--ok-strong)}.session-detail-set--below .session-detail-set-done{color:var(--warn-strong)}.session-detail-set--missing .session-detail-set-done,.session-detail-set--skipped .session-detail-set-done,.session-detail-set--failed .session-detail-set-done{color:var(--text-3);font-weight:var(--w-medium)}.session-detail-set--extra{background:var(--plum-soft)}.session-detail-skipped,.session-detail-note{color:var(--text-2);font-size:var(--fs-meta)}.session-detail-group-list{gap:var(--sp-2);flex-wrap:wrap;display:flex}.session-detail-group-list li{align-items:center;gap:var(--sp-2);min-height:32px;padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--surface-3);font-size:var(--fs-meta);display:inline-flex}@media (prefers-reduced-motion:reduce){.chart-draw,.chart-ring-arc{transition:none}.chart-area,.chart-dot,.chart-bar-fill,.chart-week-done{animation:none}}.today-kicker{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:inline-flex}.today-sync{align-items:center;gap:var(--sp-1);min-height:22px;padding:0 var(--sp-2);border-radius:var(--r-full);font-size:var(--fs-caption);font-weight:var(--w-medium);letter-spacing:0;text-transform:none;animation:rt-fade-in var(--dur-3) var(--ease-out) both;display:inline-flex}.today-sync--offline{background:var(--warn-soft);color:var(--warn-strong)}.today-sync--pending{background:var(--info-soft);color:var(--info-strong)}.today-offline{align-items:flex-start;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--warn-soft);color:var(--warn-strong);font-size:var(--fs-meta);display:flex}.today-notice{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-card);background:var(--surface);border:1px solid var(--line);display:flex}.today-notice--info{background:var(--info-soft);border-color:#0000}.today-notice--ok{background:var(--ok-soft);border-color:#0000}.today-notice-icon{border-radius:var(--r-full);background:var(--surface);width:36px;height:36px;color:var(--info);flex:none;place-items:center;display:grid}.today-notice--ok .today-notice-icon{color:var(--ok)}.today-notice-body{gap:var(--sp-1);min-width:0;font-size:var(--fs-label);display:grid}.today-notice-body>span{color:var(--text-2)}.today-notice-chips{gap:var(--sp-1);flex-wrap:wrap;display:flex}.today-notice-chips li{padding:var(--sp-0) var(--sp-2);border-radius:var(--r-full);background:var(--surface);color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-medium)}.today-conflicts{gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-card);background:var(--info-soft);display:grid}.today-conflicts[hidden]{display:none}.today-conflicts-head{align-items:flex-start;gap:var(--sp-3);color:var(--info-strong);display:flex}.today-conflicts-head>div{gap:var(--sp-0);display:grid}.today-conflicts-head span{color:var(--text-2);font-size:var(--fs-meta)}.today-conflicts-list{gap:var(--sp-2);display:grid}.today-checkin{gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-radius:var(--r-card);background:var(--accent-soft);display:grid}.today-checkin-head{align-items:flex-start;gap:var(--sp-3);display:flex}.today-checkin-head .mara-avatar{width:44px;height:44px;box-shadow:0 0 0 3px var(--surface);animation:rt-avatar-pulse 2.4s var(--ease-in-out) 2}.today-checkin-kicker{color:var(--accent-ink);font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase;display:block}.today-checkin-intro{margin-top:var(--sp-1);color:var(--text-2);font-size:var(--fs-label)}.today-checkin-body{gap:var(--sp-3);display:grid}.today-checkin-text{font-size:var(--fs-title-sm);font-weight:var(--w-semibold);letter-spacing:var(--ls-title)}.today-checkin-options{gap:var(--sp-2);flex-wrap:wrap;display:flex}.today-checkin-option{min-height:var(--control-h-md);padding:0 var(--sp-4);border-radius:var(--r-full);background:var(--surface);color:var(--text);font-weight:var(--w-semibold);box-shadow:var(--shadow-1);transition:transform var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out)}.today-checkin-option:hover:not(:disabled){transform:translateY(-1px)}.today-checkin-option:active:not(:disabled){transform:scale(.97)}.today-checkin-option--other{color:var(--accent-ink);box-shadow:inset 0 0 0 1px var(--accent-soft-2);background:0 0}.today-checkin-option.is-chosen{background:var(--accent);color:var(--on-accent)}.today-checkin-option:disabled:not(.is-chosen){opacity:.5}.today-checkin-done{align-items:center;gap:var(--sp-2);color:var(--ok-strong);font-weight:var(--w-medium);display:flex}.readiness-card{gap:var(--sp-4);padding:var(--sp-5);border-radius:var(--r-card);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-1);transition:opacity var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-out);display:grid}.readiness-card--closing{opacity:0;transform:translateY(-6px)scale(.98)}.readiness-card-head{justify-content:space-between;align-items:flex-end;gap:var(--sp-3);display:flex}.readiness-card-kicker{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase;display:block}.readiness-card-title{font-size:var(--fs-title);letter-spacing:var(--ls-title)}.readiness-card-hint{padding:var(--sp-0) var(--sp-2);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-medium);flex:none}.readiness-flow{display:grid}.readiness-flow>*{animation:rt-fade-in var(--dur-3) var(--ease-out) both}.readiness-leave{animation:rt-fade-out var(--dur-2) var(--ease-in-out) forwards}.readiness-questions{gap:var(--sp-4);display:grid}.readiness-question{gap:var(--sp-2);display:grid}.readiness-question-text{font-size:var(--fs-label);font-weight:var(--w-semibold)}.readiness-pills{gap:var(--sp-2);grid-template-columns:repeat(auto-fit,minmax(0,1fr));grid-auto-flow:column;display:grid}.readiness-pill{min-height:var(--control-h);padding:0 var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-body);font-weight:var(--w-semibold);box-shadow:inset 0 0 0 1px var(--line-2);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out)}.readiness-pill:hover{background:var(--surface-3);color:var(--text)}.readiness-pill:active{transform:scale(.97)}.readiness-pill:focus-visible{box-shadow:inset 0 0 0 1px var(--line-2), var(--shadow-focus)}.readiness-pill[aria-checked=true]{background:var(--accent-soft);color:var(--accent-ink);box-shadow:inset 0 0 0 2px var(--accent)}.readiness-pill--sleep-bien[aria-checked=true],.readiness-pill--energy-alta[aria-checked=true],.readiness-pill--pain-no[aria-checked=true]{background:var(--ok-soft);color:var(--ok-strong);box-shadow:inset 0 0 0 2px var(--ok)}.readiness-pill--sleep-mal[aria-checked=true],.readiness-pill--energy-baja[aria-checked=true],.readiness-pill--pain-si[aria-checked=true]{background:var(--warn-soft);color:var(--warn-strong);box-shadow:inset 0 0 0 2px var(--warn)}.readiness-pill-label{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.readiness-pill--pop{animation:rt-pop-scale var(--dur-3) var(--ease-bounce)}.readiness-other-wrap{gap:var(--sp-2);display:grid}.readiness-other-toggle{justify-self:start;align-items:center;gap:var(--sp-1);min-height:var(--control-h-sm);padding:0 var(--sp-2);margin-left:calc(var(--sp-2) * -1);border-radius:var(--r-full);color:var(--accent-ink);font-size:var(--fs-label);font-weight:var(--w-semibold);display:inline-flex}.readiness-other-toggle svg{transition:transform var(--dur-3) var(--ease-out)}.readiness-other-toggle[aria-expanded=true] svg{transform:rotate(45deg)}.readiness-other--open{animation:rt-rise-in var(--dur-3) var(--ease-out) both}.readiness-text{align-items:flex-end;gap:var(--sp-2);display:flex;position:relative}.readiness-text-input{min-width:0;min-height:72px;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-control);background:var(--surface);border:1px solid var(--line-2);color:var(--text);font:inherit;font-size:var(--fs-input);line-height:var(--lh-base);resize:vertical;transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);flex:1}.readiness-text-input:focus{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.readiness-mic{width:var(--control-h);height:var(--control-h);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);flex:none;place-items:center;display:grid}.readiness-mic[aria-pressed=true]{background:var(--accent);color:var(--on-accent);animation:rt-breathe 1.6s var(--ease-in-out) infinite}.readiness-actions{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.readiness-actions--split>*{flex:160px}.readiness-consent{gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-md);background:var(--surface-2);display:grid}.readiness-consent-head{align-items:center;gap:var(--sp-2);color:var(--text);display:flex}.readiness-consent-list{gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-label);display:grid}.readiness-consent-list li{gap:var(--sp-2);display:flex}.readiness-consent-list li:before{content:"";border-radius:var(--r-full);background:var(--accent);flex:none;width:6px;height:6px;margin-top:.55em}.readiness-wait{align-items:center;gap:var(--sp-3);min-height:72px;color:var(--text-2);font-weight:var(--w-medium);display:flex}.readiness-wait-word{transition:opacity var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out)}.readiness-wait-word--out{opacity:0;transform:translateY(-4px)}.readiness-wait-dots{gap:3px;display:inline-flex}.readiness-wait-dots i{border-radius:var(--r-full);background:var(--accent);width:5px;height:5px;animation:rt-breathe 1.2s var(--ease-in-out) infinite}.readiness-wait-dots i:nth-child(2){animation-delay:.15s}.readiness-wait-dots i:nth-child(3){animation-delay:.3s}.readiness-result{align-items:center;gap:var(--sp-3);min-height:72px;display:flex}.readiness-result-icon{border-radius:var(--r-full);background:var(--ok);width:44px;height:44px;color:var(--text-inverse);flex:none;place-items:center;display:grid}.readiness-result-body{gap:var(--sp-0);display:grid}.readiness-result-body span{color:var(--text-2);font-size:var(--fs-label)}.readiness-proposal{gap:var(--sp-3);display:grid}.readiness-proposal-head{align-items:flex-start;gap:var(--sp-3);display:flex}.readiness-proposal-head .mara-avatar{width:40px;height:40px}.readiness-proposal-kicker{color:var(--warn-strong);font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase;display:block}.readiness-proposal-title{font-size:var(--fs-title-sm);line-height:var(--lh-snug);letter-spacing:var(--ls-title);display:block}.readiness-proposal-why{color:var(--text-2);font-size:var(--fs-label)}.readiness-proposal-note{align-items:flex-start;gap:var(--sp-2);color:var(--text-3);font-size:var(--fs-meta);display:flex}.readiness-changes{gap:var(--sp-1);padding:var(--sp-3);border-radius:var(--r-md);background:var(--warn-soft);display:grid}.readiness-changes li{justify-content:space-between;gap:var(--sp-3);font-size:var(--fs-label);display:flex}.readiness-changes span{min-width:0;color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.readiness-changes strong{color:var(--warn-strong);font-variant-numeric:tabular-nums;flex:none}.readiness-summary{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3) var(--sp-2) var(--sp-4);border-radius:var(--r-full);background:var(--surface);border:1px solid var(--line);font-size:var(--fs-label);justify-self:start;display:flex}.readiness-summary-dot{border-radius:var(--r-full);background:var(--ok);width:10px;height:10px}.readiness-summary-dot--1,.readiness-summary-dot--2{background:var(--warn)}.readiness-summary-dot--3{background:var(--plum)}.readiness-summary-text{color:var(--text-2)}.readiness-summary-text strong{color:var(--text)}.readiness-summary-change{min-height:var(--control-h-sm);padding:0 var(--sp-3);border-radius:var(--r-full);color:var(--accent-ink);font-weight:var(--w-semibold)}.readiness-summary-change:hover,.readiness-chip:hover{background:var(--accent-soft)}.readiness-chip{justify-self:start;align-items:center;gap:var(--sp-2);min-height:var(--control-h-md);padding:0 var(--sp-3) 0 var(--sp-4);border-radius:var(--r-full);background:var(--surface);border:1px solid var(--line);color:var(--text);font-size:var(--fs-label);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out);display:inline-flex}.readiness-chip>svg{color:var(--accent)}.readiness-sheet{gap:var(--sp-4);padding-bottom:var(--sp-2);display:grid}.today-hero{gap:var(--sp-3);padding:var(--sp-6);border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-2);display:grid;position:relative;overflow:hidden}.today-hero--accent:before{content:"";aspect-ratio:1;border-radius:var(--r-full);background:radial-gradient(circle, var(--accent-soft) 0%, transparent 70%);pointer-events:none;width:70%;position:absolute;top:-40%;right:-20%}.today-hero>*{position:relative}.today-hero--rest,.today-hero--info{background:var(--info-soft);box-shadow:none;border-color:#0000}.today-hero--ok{background:var(--ok-soft);box-shadow:none;border-color:#0000}.today-hero--empty{text-align:center;justify-items:center}.today-hero-art .empty-art{width:96px;height:96px}.today-hero:not(.today-hero--empty) .today-hero-art{top:var(--sp-4);right:var(--sp-4);opacity:.9;position:absolute}.today-hero:not(.today-hero--empty) .today-hero-art .empty-art{width:64px;height:64px}:is(.today-hero:has(.today-hero-art):not(.today-hero--empty) .today-hero-title,.today-hero:has(.today-hero-art):not(.today-hero--empty) .today-hero-kicker){padding-right:72px}.today-hero-top{justify-content:space-between;align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.today-hero-kicker{color:var(--accent-ink);font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.today-hero--rest .today-hero-kicker,.today-hero--info .today-hero-kicker{color:var(--info-strong)}.today-hero--ok .today-hero-kicker{color:var(--ok-strong)}.today-hero--empty .today-hero-kicker{color:var(--text-3)}.today-hero-routine{color:var(--text-3);font-size:var(--fs-meta);font-weight:var(--w-medium)}.today-hero-title{max-width:22ch;font-size:var(--fs-title-lg);line-height:var(--lh-tight);letter-spacing:var(--ls-display)}.today-hero-text{max-width:48ch;color:var(--text-2)}.today-hero-meta{align-items:center;gap:var(--sp-2) var(--sp-4);color:var(--text-2);font-size:var(--fs-label);flex-wrap:wrap;display:flex}.today-hero-meta>span:not(.badge){align-items:center;gap:var(--sp-1);display:inline-flex}.today-hero-mara{align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-3) var(--sp-1) var(--sp-1);border-radius:var(--r-full);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-meta);display:inline-flex}.today-hero-actions{justify-content:center;gap:var(--sp-2);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.today-hero:not(.today-hero--empty) .today-hero-actions{justify-content:flex-start}.today-hero-actions--grid{justify-content:stretch;display:grid}.today-hero:not(.today-hero--empty) .today-hero-actions--grid{justify-content:stretch}@media (min-width:640px){.today-hero-actions--grid{grid-template-columns:1.3fr 1fr}}.today-start{box-shadow:0 8px 20px color-mix(in srgb, var(--accent) 28%, transparent)}.today-start:active{transform:scale(.98)}.today-hero-links{gap:var(--sp-1) var(--sp-3);flex-wrap:wrap;display:flex}.today-link{align-items:center;gap:var(--sp-1);min-height:var(--tap-min);padding:0 var(--sp-2);margin-left:calc(var(--sp-2) * -1);border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-medium);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);display:inline-flex}.today-link:hover{background:var(--surface-3);color:var(--text)}.today-hero-scale{color:var(--text-3);font-size:var(--fs-meta)}.today-progress{gap:var(--sp-1);display:grid}.today-progress-track{border-radius:var(--r-full);background:var(--surface-3);height:8px;overflow:hidden}.today-progress-fill{border-radius:inherit;background:var(--accent);height:100%;transition:width var(--dur-5) var(--ease-out);display:block}.today-progress-text{color:var(--text-2);font-size:var(--fs-meta)}.today-day{gap:var(--sp-6);display:grid}.today-day-note{align-items:flex-start;gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-label);display:flex}.today-section{gap:var(--sp-2);display:grid}.today-section-title{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.today-items,.today-block-items{display:grid}.today-item{gap:var(--sp-3);padding:var(--sp-3) 0;display:flex}.today-items>.today-item+.today-item,.today-items>.today-block+.today-item,.today-items>.today-item+.today-block{box-shadow:0 -1px 0 var(--line)}.today-item-thumb{border-radius:var(--r-md);background:var(--surface-3);width:56px;height:56px;color:var(--text-3);flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.today-item-thumb img{object-fit:cover;width:100%;height:100%}.today-item-number{left:var(--sp-1);bottom:var(--sp-1);min-width:20px;height:20px;padding:0 var(--sp-1);border-radius:var(--r-full);background:var(--inverse-bg);color:var(--inverse-fg);font-size:11px;font-weight:var(--w-bold);text-align:center;line-height:20px;position:absolute}.today-item-body{gap:var(--sp-1);min-width:0;display:grid}.today-item-name{align-items:center;gap:var(--sp-2);color:var(--text);font-size:var(--fs-18);font-weight:var(--w-semibold);letter-spacing:var(--ls-title);line-height:var(--lh-snug);display:inline-flex}a.today-item-name:hover{color:var(--accent-ink)}.today-item-play{border-radius:var(--r-full);background:var(--accent-soft);width:22px;height:22px;color:var(--accent-ink);flex:none;place-items:center;display:grid}.today-item-rx{font-size:var(--fs-20);font-weight:var(--w-semibold);letter-spacing:var(--ls-title);line-height:var(--lh-snug);font-variant-numeric:tabular-nums}.today-item--adjusted .today-item-rx{color:var(--warn-strong)}.today-item-tags{gap:var(--sp-1);flex-wrap:wrap;display:flex}.today-tag{align-items:center;gap:var(--sp-1);min-height:22px;padding:0 var(--sp-2);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-semibold);display:inline-flex}.today-tag--plum{background:var(--plum-soft);color:var(--plum-strong)}.today-tag-adjusted{animation:rt-pop-in var(--dur-4) var(--ease-bounce) both;animation-delay:.24s}.today-item-swap{align-items:flex-start;gap:var(--sp-1);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);background:var(--info-soft);color:var(--info-strong);font-size:var(--fs-meta);display:flex}.today-item-last{color:var(--ok-strong);font-size:var(--fs-meta);font-weight:var(--w-medium);font-variant-numeric:tabular-nums}.today-item-note{align-items:flex-start;gap:var(--sp-1);color:var(--text-3);font-size:var(--fs-meta);display:flex}.today-item-note svg{flex:none;margin-top:2px}.today-block{gap:var(--sp-2);margin:var(--sp-2) 0;padding:var(--sp-3) var(--sp-3) var(--sp-1);border-radius:var(--r-lg);background:var(--surface-2);display:grid}.today-block-head{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.today-block-badge{padding:var(--sp-0) var(--sp-2);border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent-ink);font-size:var(--fs-caption);font-weight:var(--w-bold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.today-block--triserie .today-block-badge{background:var(--plum-soft);color:var(--plum-strong)}.today-block--serie-gigante .today-block-badge{background:var(--info-soft);color:var(--info-strong)}.today-block--circuito .today-block-badge{background:var(--ok-soft);color:var(--ok-strong)}.today-block--emom .today-block-badge{background:var(--warn-soft);color:var(--warn-strong)}.today-block-detail{color:var(--text-2);font-size:var(--fs-meta)}.today-block-help{width:var(--tap-min);height:var(--control-h-sm);border-radius:var(--r-full);color:var(--text-3);place-items:center;margin-left:auto;display:grid}.today-block-help:hover{background:var(--surface-3);color:var(--text)}.today-block-rotation{gap:var(--sp-1);font-size:var(--fs-meta);display:grid}.today-block-rotation li{gap:var(--sp-2);display:flex}.today-block-rotation span{min-width:96px;color:var(--text-3);flex:none}.today-block-items .today-item+.today-item{box-shadow:0 -1px 0 var(--line)}.today-block-items .today-item-thumb{width:48px;height:48px}.today-week{margin-top:var(--sp-1)}.today-week .week-day-dot{transition:transform var(--dur-2) var(--ease-out)}.today-week a.week-day-dot:hover{transform:scale(1.08)}.today-streak{align-items:center;gap:var(--sp-3);margin-top:var(--sp-4);padding-top:var(--sp-4);box-shadow:0 -1px 0 var(--line);display:flex}.today-streak>div{gap:var(--sp-0);font-size:var(--fs-label);display:grid}.today-streak span{color:var(--text-2);font-size:var(--fs-meta)}.today-streak-flame{border-radius:var(--r-full);background:var(--surface-3);width:40px;height:40px;color:var(--text-3);flex:none;place-items:center;display:grid}.today-streak-flame--on{background:var(--accent-soft);color:var(--accent);animation:rt-float 3.2s var(--ease-in-out) infinite}.today-side-link{align-items:center;gap:var(--sp-1);margin-top:var(--sp-3);color:var(--accent-ink);font-size:var(--fs-label);font-weight:var(--w-semibold);display:inline-flex}.today-pain-entry{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-4);border-radius:var(--r-card);background:var(--surface);border:1px solid var(--line);color:var(--text);text-align:left;transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);display:flex}.today-pain-entry:hover{background:var(--surface-2)}.today-pain-entry:active{transform:scale(.99)}.today-pain-entry>svg:first-child{color:var(--accent);flex:none}.today-pain-entry>span{gap:var(--sp-0);font-size:var(--fs-label);flex:1;display:grid}.today-pain-entry>span span{color:var(--text-2);font-size:var(--fs-meta)}.today-complaint{gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-card);background:var(--surface);border:1px solid var(--line);display:grid}.today-complaint-head{align-items:center;gap:var(--sp-3);display:flex}.today-complaint-head>div{gap:var(--sp-0);display:grid}.today-complaint-head span:not(.today-complaint-icon){color:var(--text-3);font-size:var(--fs-meta)}.today-complaint-icon{border-radius:var(--r-full);background:var(--accent-soft);width:36px;height:36px;color:var(--accent);flex:none;place-items:center;display:grid}.today-complaint-options{gap:var(--sp-2);flex-wrap:wrap;display:flex}.today-complaint-option{min-height:var(--control-h-md);padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--surface-2);color:var(--text);font-size:var(--fs-label);font-weight:var(--w-semibold);box-shadow:inset 0 0 0 1px var(--line-2);transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);flex:auto}.today-complaint-option:hover:not(:disabled){background:var(--surface-3)}.today-complaint-option:active:not(:disabled){transform:scale(.97)}.today-complaint-option--mejora:hover:not(:disabled),.today-complaint-option--resolved:hover:not(:disabled){background:var(--ok-soft)}.today-complaint-option--empeora:hover:not(:disabled){background:var(--warn-soft)}.today-complaint-option:disabled{opacity:.55}.today-complaint-option.is-busy{opacity:1;animation:rt-breathe 1s var(--ease-in-out) infinite}.day-picker{gap:var(--sp-2);padding-bottom:var(--sp-3);display:grid}.day-picker-row{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);color:var(--text);text-align:left;transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);display:flex}.day-picker-row:hover{background:var(--surface-3)}.day-picker-row:active{transform:scale(.99)}.day-picker-row--recommended{background:var(--accent-soft)}.day-picker-ref{border-radius:var(--r-full);background:var(--surface);width:36px;height:36px;font-weight:var(--w-bold);flex:none;place-items:center;display:grid}.day-picker-text{gap:var(--sp-0);flex:1;min-width:0;display:grid}.day-picker-text span{color:var(--text-3);font-size:var(--fs-meta)}.today-scenario{align-items:center;gap:var(--sp-2);margin-top:var(--sp-8);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);border:1px dashed var(--line-3);color:var(--text-3);font-size:var(--fs-meta);flex-wrap:wrap;display:flex}.today-scenario-label{align-items:center;gap:var(--sp-1);font-weight:var(--w-semibold);display:inline-flex}.today-scenario-select{min-height:var(--control-h-sm);padding:0 var(--sp-2);border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line-2);color:var(--text);font:inherit}.complaint-sheet{gap:var(--sp-5);padding-bottom:var(--sp-2);display:grid}.complaint-form{gap:var(--sp-5);display:grid}.complaint-where{align-items:start;gap:var(--sp-4);grid-template-columns:104px minmax(0,1fr);display:grid}.complaint-where-list{gap:var(--sp-3);min-width:0;display:grid}.body-map{width:104px;height:auto;overflow:visible}.body-shape{fill:var(--surface-3);stroke:var(--line-3);stroke-width:1px}.body-spot{cursor:pointer;outline:none}.body-spot-hit{fill:#0000}.body-spot-dot{fill:var(--surface);stroke:var(--line-3);stroke-width:1.5px;transform-box:fill-box;transform-origin:50%;transition:fill var(--dur-2) var(--ease-out), stroke var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-bounce)}.body-spot:hover .body-spot-dot,.body-spot:focus-visible .body-spot-dot{stroke:var(--accent);transform:scale(1.3)}.body-spot--on .body-spot-dot{fill:var(--accent);stroke:var(--accent);transform:scale(1.5)}.body-side-label{fill:var(--text-3);font-size:8px;font-weight:600}.complaint-label{margin-bottom:var(--sp-2);font-size:var(--fs-label);font-weight:var(--w-semibold);display:block}.complaint-optional{color:var(--text-3);font-weight:var(--w-regular)}.complaint-pills{gap:var(--sp-2);flex-wrap:wrap;display:flex}.complaint-pill{min-height:var(--control-h-md);padding:var(--sp-1) var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);color:var(--text);font-size:var(--fs-label);font-weight:var(--w-semibold);text-align:left;box-shadow:inset 0 0 0 1px var(--line-2);transition:background-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);justify-items:start;gap:0;display:grid}.complaint-pill:hover{background:var(--surface-3)}.complaint-pill:active{transform:scale(.97)}.complaint-pill[aria-checked=true]{background:var(--accent-soft);color:var(--accent-ink);box-shadow:inset 0 0 0 2px var(--accent)}.complaint-pill-hint{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-regular)}.complaint-pills--quality{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (min-width:560px){.complaint-pills--quality{grid-template-columns:repeat(3,minmax(0,1fr))}.complaint-where{grid-template-columns:132px minmax(0,1fr)}.body-map{width:132px}}.complaint-side{animation:rt-rise-in var(--dur-3) var(--ease-out) both}.complaint-side[hidden]{display:none}.pain-slider{--pain-color:color-mix(in oklab, var(--danger) calc(var(--pain) * 10%), var(--ok));gap:var(--sp-2);display:grid}.pain-value{align-items:baseline;gap:var(--sp-2);display:flex}.pain-value-number{min-width:2ch;color:var(--pain-color);font-size:var(--fs-40);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;transition:color var(--dur-2) var(--ease-out);line-height:1}.pain-value-word{color:var(--text-2);font-weight:var(--w-semibold)}.pain-range{appearance:none;cursor:pointer;background:0 0;width:100%;height:44px;margin:0}.pain-range::-webkit-slider-runnable-track{border-radius:var(--r-full);background:linear-gradient(90deg, var(--ok), var(--warn), var(--danger));height:12px}.pain-range::-moz-range-track{border-radius:var(--r-full);background:linear-gradient(90deg, var(--ok), var(--warn), var(--danger));height:12px}.pain-range::-webkit-slider-thumb{border:4px solid var(--surface);border-radius:var(--r-full);background:var(--pain-color);width:36px;height:36px;box-shadow:var(--shadow-2);appearance:none;transition:transform var(--dur-2) var(--ease-out);margin-top:-12px}.pain-range::-moz-range-thumb{border:4px solid var(--surface);border-radius:var(--r-full);background:var(--pain-color);width:28px;height:28px;box-shadow:var(--shadow-2)}.pain-range:active::-webkit-slider-thumb{transform:scale(1.12)}.pain-range:focus-visible{outline:none}.pain-range:focus-visible::-webkit-slider-thumb{box-shadow:var(--shadow-focus)}.pain-scale{color:var(--text-3);font-size:var(--fs-caption);justify-content:space-between;display:flex}.complaint-footer{width:100%}.complaint-result{justify-items:center;gap:var(--sp-3);padding:var(--sp-4) 0 var(--sp-2);text-align:center;display:grid}.complaint-result-icon{border-radius:var(--r-full);background:var(--info-soft);width:64px;height:64px;color:var(--info);place-items:center;display:grid}.complaint-result--warn .complaint-result-icon{background:var(--warn-soft);color:var(--warn-strong)}.complaint-result--danger .complaint-result-icon{background:var(--danger-soft);color:var(--danger)}.complaint-result-title{font-size:var(--fs-title);letter-spacing:var(--ls-title)}.complaint-result-text{max-width:44ch;color:var(--text-2)}.complaint-result-text--fixed{padding:var(--sp-4);border-radius:var(--r-md);background:var(--danger-soft);color:var(--danger-strong);font-size:var(--fs-18);font-weight:var(--w-semibold);line-height:var(--lh-snug)}.complaint-result-saved{align-items:center;gap:var(--sp-1);color:var(--ok-strong);font-size:var(--fs-meta);font-weight:var(--w-medium);display:inline-flex}.complaint-result-consent{justify-items:center;gap:var(--sp-2);max-width:44ch;padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-meta);display:grid}.complaint-result-actions{gap:var(--sp-2);width:100%;max-width:420px;margin-top:var(--sp-2);display:grid}.quicklog-head{justify-content:space-between;align-items:baseline;gap:var(--sp-3);display:flex}.quicklog-count{color:var(--text-3);font-size:var(--fs-meta);font-variant-numeric:tabular-nums}.quicklog-list{padding:var(--sp-2) var(--sp-4);display:grid}.quicklog-row{align-items:center;gap:var(--sp-3);padding:var(--sp-3) 0;transition:opacity var(--dur-3) var(--ease-out);display:flex}.quicklog-row+.quicklog-row{box-shadow:0 -1px 0 var(--line)}.quicklog-body{gap:var(--sp-0);flex:1;min-width:0;display:grid}.quicklog-block{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.quicklog-name{font-size:var(--fs-body)}.quicklog-rx{color:var(--text-2);font-size:var(--fs-meta)}.quicklog-row--done .quicklog-name{color:var(--text-2)}.quicklog-check{border-radius:var(--r-full);background:var(--surface-2);width:52px;height:52px;color:var(--text-3);box-shadow:inset 0 0 0 2px var(--line-2);transition:background-color var(--dur-3) var(--ease-out), color var(--dur-3) var(--ease-out), box-shadow var(--dur-3) var(--ease-out), transform var(--dur-2) var(--ease-out);flex:none;place-items:center;display:grid;position:relative}.quicklog-check:hover:not(:disabled){color:var(--ok);box-shadow:inset 0 0 0 2px var(--ok)}.quicklog-check:active:not(:disabled){transform:scale(.94)}.quicklog-check[aria-pressed=true]{background:var(--ok);color:var(--text-inverse);box-shadow:none}.quicklog-check:disabled{cursor:default}.quicklog-check.is-busy .quicklog-check-ring{border:3px solid #0000;border-top-color:var(--ok);border-radius:var(--r-full);animation:.8s linear infinite rt-spin;position:absolute;inset:-3px}.quicklog-row--pop .quicklog-check{animation:rt-pop-scale var(--dur-4) var(--ease-bounce)}.quicklog-footer{bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--sp-3));gap:var(--sp-1);padding:var(--sp-3);border-radius:var(--r-xl);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-float);display:grid;position:sticky}@media (min-width:1024px){.quicklog-footer{bottom:var(--sp-4)}.today-hero{padding:var(--sp-8)}.today-item-thumb{width:64px;height:64px}}.sala.sala--voice{grid-template-rows:auto auto 1fr}.sala-top.sala-top--voice{grid-template-columns:44px 1fr 44px 44px}.sala-voice-toggle{transition:transform var(--dur-1) var(--ease-out), background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out)}.sala-voice-toggle.sala-voice-toggle--on{background:var(--accent-soft);color:var(--accent-strong);border-color:#0000}.voicebar,.voice-primer{width:calc(100% - 2 * var(--gutter));max-width:var(--sala-max,560px);margin:0 auto var(--sp-2);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-1);animation:voice-bar-in var(--dur-4) var(--ease-spring) both}.voicebar{gap:var(--sp-2);padding:var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-2);transition:background-color var(--dur-3) var(--ease-out), box-shadow var(--dur-3) var(--ease-out);display:grid}.voicebar[data-state=listening]{box-shadow:var(--shadow-1), 0 0 0 3px var(--accent-ring)}.voicebar[data-state=speaking]{background:var(--plum-soft)}@keyframes voice-bar-in{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:none}}.voice-row{align-items:center;gap:var(--sp-3);grid-template-columns:auto 1fr auto;min-width:0;display:grid}.voice-orb{border-radius:var(--r-full);width:56px;height:56px;color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-2) var(--ease-spring);background:0 0;border:0;place-items:center;padding:0;display:grid;position:relative}.voice-orb:active{transform:scale(.92)}.voice-orb:focus-visible{box-shadow:var(--shadow-focus);outline:none}.voice-orb.voice-orb--lg{width:96px;height:96px}.voice-orb-core{z-index:1;border-radius:var(--r-full);background:var(--surface-2);width:44px;height:44px;color:var(--text);transition:background-color var(--dur-3) var(--ease-out), color var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-spring);place-items:center;display:grid;position:relative}.voice-orb--lg .voice-orb-core{width:76px;height:76px}.voice-orb-ring{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.voice-orb-track{fill:none;stroke:#0000;stroke-width:3px}.voice-orb-arc{fill:none;stroke:var(--accent);stroke-width:3px;stroke-linecap:round;opacity:0;transition:opacity var(--dur-2) var(--ease-out)}.voice-orb-wave{border-radius:var(--r-full);background:var(--accent-ring);opacity:0;pointer-events:none;position:absolute;inset:6px}.voice-orb-mic,.voice-orb-off,.voice-orb-bars,.voice-orb-spin{opacity:0;transition:opacity var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-spring);place-items:center;display:grid;position:absolute;inset:0;transform:scale(.7)}.voice-orb[data-state=idle] .voice-orb-mic,.voice-orb[data-state=listening] .voice-orb-mic,.voice-orb[data-state=off] .voice-orb-off,.voice-orb[data-state=paused] .voice-orb-off{opacity:1;transform:none}.voice-orb[data-state=off] .voice-orb-core,.voice-orb[data-state=paused] .voice-orb-core{color:var(--text-3)}.voice-orb[data-state=listening] .voice-orb-core{background:var(--accent);color:var(--on-accent);transform:scale(calc(1 + var(--level,0) * .08))}.voice-orb[data-state=listening] .voice-orb-arc{opacity:1}.voice-orb[data-state=listening] .voice-orb-wave{animation:rt-ripple 1.6s var(--ease-out) infinite}.voice-orb[data-state=listening] .voice-orb-wave--late{animation-delay:.8s}.voice-orb[data-state=speaking] .voice-orb-core{background:var(--plum);color:var(--on-accent)}.voice-orb[data-state=speaking] .voice-orb-bars{opacity:1;transform:none}.voice-orb-bars{grid-auto-flow:column;justify-content:center;align-items:center;gap:3px}.voice-orb-bars i{border-radius:var(--r-full);transform-origin:50%;width:3px;height:16px;animation:voice-bars .9s var(--ease-in-out) infinite;background:currentColor;display:block}.voice-orb-bars i:nth-child(2){animation-delay:.15s}.voice-orb-bars i:nth-child(3){animation-delay:.3s}.voice-orb-bars i:nth-child(4){animation-delay:.45s}@keyframes voice-bars{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}.voice-orb[data-state=processing] .voice-orb-core{background:var(--accent-soft);color:var(--accent-strong)}.voice-orb[data-state=processing] .voice-orb-spin{opacity:1;transform:none}.voice-orb-spin:before{content:"";border:2.5px solid var(--accent-ring);border-top-color:var(--accent);border-radius:var(--r-full);width:22px;height:22px;animation:.8s linear infinite rt-spin}.voice-text{gap:2px;min-width:0;display:grid}.voice-status{color:var(--text-2);font-size:var(--fs-12);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.voicebar[data-state=listening] .voice-status{color:var(--accent-strong)}.voicebar[data-state=speaking] .voice-status{color:var(--plum-strong)}.voice-caption{min-height:1.35em;color:var(--text);font-size:var(--fs-15);line-height:var(--lh-snug);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.voice-caption[data-tone=hint]{color:var(--text-3)}.voice-caption[data-tone=heard]{color:var(--text);font-weight:var(--w-medium)}.voice-caption[data-tone=ok]{color:var(--ok-strong);font-weight:var(--w-semibold)}.voice-caption[data-tone=warn]{color:var(--warn-strong);font-weight:var(--w-semibold)}.voice-caption--in{animation:voice-caption-in var(--dur-3) var(--ease-out) both}@keyframes voice-caption-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.voice-actions{align-items:center;gap:var(--sp-1);display:flex}.voice-icon-btn{border-radius:var(--r-full);width:40px;height:40px;color:var(--text-2);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);background:0 0;border:0;place-items:center;display:grid}.voice-icon-btn:hover{background:var(--surface-2);color:var(--text)}.voice-icon-btn:active{transform:scale(.9)}.voice-icon-btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.voice-icon-btn[aria-pressed=true]{background:var(--surface-3);color:var(--text)}.voice-icon-btn.voice-icon-btn--sm{width:34px;height:34px}.voice-undo{align-items:center;gap:var(--sp-1);min-height:36px;padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--inverse-bg);color:var(--inverse-fg);font-size:var(--fs-13);font-weight:var(--w-semibold);transition:transform var(--dur-1) var(--ease-out);border:0;display:inline-flex}.voice-undo:active{transform:scale(.94)}.voice-undo[hidden]{display:none}.voice-options{gap:var(--sp-2);padding:0 var(--sp-1);flex-wrap:wrap;display:flex}.voice-options[hidden],.voice-chips:empty{display:none}.voice-option{align-items:center;gap:var(--sp-2);min-height:40px;padding:0 var(--sp-3) 0 var(--sp-1);border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface);color:var(--text);font-size:var(--fs-14);font-weight:var(--w-medium);transition:transform var(--dur-1) var(--ease-out), background-color var(--dur-2) var(--ease-out);display:inline-flex}.voice-option:active{background:var(--surface-2);transform:scale(.96)}.voice-option-index{border-radius:var(--r-full);background:var(--accent-soft);width:28px;height:28px;color:var(--accent-strong);font-size:var(--fs-13);font-weight:var(--w-bold);place-items:center;display:grid}.voice-chips{gap:var(--sp-2);padding:0 var(--sp-1) var(--sp-1);flex-wrap:wrap;display:flex}.voice-chip{align-items:center;gap:var(--sp-1);min-height:28px;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-12);font-weight:var(--w-medium);line-height:var(--lh-snug);text-align:left;border:0;display:inline-flex}.voice-chip.voice-chip--warn{background:var(--warn-soft);color:var(--warn-strong)}.voice-chip.voice-chip--accent{background:var(--accent-soft);color:var(--accent-strong)}.voice-chip.voice-chip--action{cursor:pointer;transition:transform var(--dur-1) var(--ease-out)}.voice-chip.voice-chip--action:active{transform:scale(.96)}.voice-chip.voice-chip--action:focus-visible{box-shadow:var(--shadow-focus);outline:none}.voice-primer{gap:var(--sp-3);padding:var(--sp-4);display:grid}.voice-primer-title{font-size:var(--fs-18);font-weight:var(--w-semibold);letter-spacing:var(--ls-title);margin:0}.voice-primer-lines{gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-14);line-height:var(--lh-base);margin:0;padding:0;list-style:none;display:grid}.voice-primer-lines li{align-items:start;gap:var(--sp-2);grid-template-columns:28px 1fr;display:grid}.voice-primer-icon{border-radius:var(--r-full);background:var(--accent-soft);width:28px;height:28px;color:var(--accent-strong);place-items:center;display:grid}.voice-primer-note{color:var(--text-3);font-size:var(--fs-13);margin:0}.voice-primer-note:empty{display:none}.voice-primer-actions{justify-content:flex-end;gap:var(--sp-2);display:flex}.voice-settings{gap:var(--sp-5);display:grid}.voice-settings-group{gap:var(--sp-3);display:grid}.voice-settings-title{color:var(--text-2);font-size:var(--fs-12);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase;margin:0}.voice-settings-field{gap:var(--sp-2);display:grid}.voice-settings-field[hidden]{display:none}.voice-settings-label{font-size:var(--fs-15);font-weight:var(--w-medium)}.voice-settings-hint{color:var(--text-3);font-size:var(--fs-13);line-height:var(--lh-base)}.voice-settings-voices{gap:var(--sp-1);display:grid}.voice-settings-voice{align-items:center;gap:var(--sp-2);padding:var(--sp-1);border-radius:var(--r-md);transition:background-color var(--dur-2) var(--ease-out);grid-template-columns:1fr auto;display:grid}.voice-settings-voice[data-selected=true]{background:var(--accent-soft)}.voice-settings-voice-pick{align-items:center;gap:var(--sp-2);min-height:40px;padding:0 var(--sp-2);color:var(--text);font-size:var(--fs-14);text-align:left;background:0 0;border:0;display:flex}.voice-settings-voice-pick:focus-visible{box-shadow:var(--shadow-focus);border-radius:var(--r-sm);outline:none}.voice-settings-radio{border:2px solid var(--line-3);border-radius:var(--r-full);width:18px;height:18px;transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);flex:none}.voice-settings-voice[data-selected=true] .voice-settings-radio{border-color:var(--accent);box-shadow:inset 0 0 0 4px var(--surface), inset 0 0 0 10px var(--accent)}.voice-settings-tag{padding:2px var(--sp-2);border-radius:var(--r-full);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-12)}.voice-settings-voice[data-disabled=true]{opacity:.56}.voice-download{gap:var(--sp-2);padding:var(--sp-1) var(--sp-2) var(--sp-2);display:grid}.voice-download:empty{display:none}.voice-download .progress-fill{transition:width var(--dur-2) var(--ease-out)}.voice-download-btn{justify-self:start}.voice-settings-actions{gap:var(--sp-2);display:grid}.voice-settings-foot{margin:0}.pocket-voice{align-items:center;gap:var(--sp-2);min-height:32px;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);color:#ffffff9e;font-size:var(--fs-14);font-weight:var(--w-semibold);background:#ffffff0f;display:inline-flex}.pocket-voice-dot{border-radius:var(--r-full);width:10px;height:10px;transition:background-color var(--dur-2) var(--ease-out);background:#ffffff59;position:relative}.pocket-voice[data-state=listening] .pocket-voice-dot{background:var(--accent)}.pocket-voice[data-state=listening] .pocket-voice-dot:after{content:"";border-radius:inherit;background:var(--accent);animation:rt-ripple 1.4s var(--ease-out) infinite;position:absolute;inset:0}.pocket-voice[data-state=speaking] .pocket-voice-dot{background:var(--plum);animation:rt-breathe 1.2s var(--ease-in-out) infinite}.pocket-caption{color:#ffffff80;max-width:32ch;min-height:2.6em;font-size:var(--fs-16);line-height:var(--lh-snug)}.pocket-hold{opacity:0;pointer-events:none;width:80px;height:80px;transition:opacity var(--dur-2) var(--ease-out);margin:-40px 0 0 -40px;position:fixed}.pocket.pocket--holding .pocket-hold{opacity:1}.pocket-hold svg{width:100%;height:100%;transform:rotate(-90deg)}.pocket-hold-arc{fill:none;stroke:#ffffff8c;stroke-width:3px;stroke-linecap:round}@media (max-width:380px){.voice-row{gap:var(--sp-2)}.voice-actions .voice-icon-btn{width:36px;height:36px}}@media (prefers-reduced-motion:reduce){.voice-orb[data-state=listening] .voice-orb-wave,.voice-orb-bars i,.pocket-voice[data-state=listening] .pocket-voice-dot:after,.pocket-voice[data-state=speaking] .pocket-voice-dot{animation:none!important}.voice-orb[data-state=listening] .voice-orb-wave{opacity:.4;transform:scale(1.15)}.voice-orb-bars i{transform:scaleY(.7)}.voice-orb-spin:before{animation-duration:1.2s!important;animation-iteration-count:infinite!important}}.sala-open,.sala-open body{overscroll-behavior:none;overflow:hidden}.sala-anchor{display:none}.sala{--sala-figure:clamp(46px, 14vw, 76px);--sala-name:clamp(28px, 7.6vw, 42px);--sala-cta-h:76px;--sala-max:560px;--sala-ring:min(74vw, 300px);--sala-time:clamp(56px, 17vw, 92px);z-index:calc(var(--z-pop) - 5);padding:var(--safe-top) var(--safe-right) 0 var(--safe-left);background:var(--bg);color:var(--text);animation:sala-in var(--dur-5) var(--ease-spring) both;-webkit-tap-highlight-color:transparent;grid-template-rows:auto 1fr;display:grid;position:fixed;inset:0;overflow:hidden}.sala--leaving{pointer-events:none;animation:sala-out var(--dur-3) var(--ease-in-out) forwards}@keyframes sala-in{0%{opacity:0;transform:translateY(3%)scale(.985)}to{opacity:1;transform:none}}@keyframes sala-out{to{opacity:0;transform:scale(.985)}}.sala-top{align-items:center;gap:var(--sp-3);width:100%;max-width:calc(var(--sala-max) + 2 * var(--gutter));padding:var(--sp-3) var(--gutter) var(--sp-2);grid-template-columns:44px 1fr 44px;margin:0 auto;display:grid}.sala-top-center{gap:var(--sp-2);min-width:0;display:grid}.sala-top--summary .sala-top-center{justify-content:center;align-items:center;gap:var(--sp-2);display:flex}.sala-top-title{font-size:var(--fs-16);font-weight:var(--w-semibold)}.sala-top-meta{justify-content:space-between;align-items:center;gap:var(--sp-2);min-width:0;min-height:24px;display:flex}.sala-progress-text{min-width:0;color:var(--text-2);font-size:var(--fs-meta);font-weight:var(--w-medium);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sala-progress{border-radius:var(--r-full);background:var(--surface-3);height:6px;overflow:hidden}.sala-progress-fill{border-radius:inherit;background:var(--ok);transform-origin:0;height:100%;transition:transform var(--dur-5) var(--ease-spring);display:block;transform:scaleX(0)}.sala-icon-btn{border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface);width:44px;height:44px;color:var(--text);box-shadow:var(--shadow-1);transition:transform var(--dur-1) var(--ease-out), background-color var(--dur-2) var(--ease-out);place-items:center;display:grid}.sala-icon-btn:active{transform:scale(.92)}.sala-icon-btn:disabled{opacity:.4}.sala-icon-btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.sala-icon-spacer{width:44px}.sala-stage{overscroll-behavior:contain;scrollbar-width:none;min-height:0;position:relative;overflow:hidden auto}.sala-stage::-webkit-scrollbar{display:none}.sala-scene{min-height:100%;position:relative}.sala-scene--leaving{pointer-events:none;animation:sala-scene-out .22s var(--ease-in-out) forwards;position:absolute;inset:0}.sala-scene--leaving-back{animation-name:sala-scene-out-back}.sala-scene--entering{animation:sala-scene-in var(--dur-5) var(--ease-spring) both}.sala-scene--entering-back{animation-name:sala-scene-in-back}@keyframes sala-scene-in{0%{opacity:0;transform:translateY(22px)scale(.99)}to{opacity:1;transform:none}}@keyframes sala-scene-in-back{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}@keyframes sala-scene-out{to{opacity:0;transform:translateY(-14px)scale(.985)}}@keyframes sala-scene-out-back{to{opacity:0;transform:translateY(16px)}}.sala-set,.sala-transition,.sala-rest,.sala-message,.sala-complete,.sala-loading{gap:var(--sp-4);width:100%;max-width:calc(var(--sala-max) + 2 * var(--gutter));padding:var(--sp-2) var(--gutter) calc(var(--sp-4) + var(--safe-bottom));flex-direction:column;margin:0 auto;display:flex}.sala-controls{z-index:2;gap:var(--sp-3);margin-top:auto;margin-bottom:calc((var(--sp-4) + var(--safe-bottom)) * -1);padding:var(--sp-3) 0 calc(var(--sp-3) + var(--safe-bottom));background:linear-gradient(to bottom, transparent 0, var(--bg) var(--sp-4));flex-direction:column;display:flex;position:sticky;bottom:0}.sala-editing{align-self:center;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-full);background:var(--info-soft);color:var(--info-strong);font-size:var(--fs-14);font-weight:var(--w-semibold);animation:rt-pop-in var(--dur-3) var(--ease-bounce) both;margin:0;display:inline-flex}.sala-poster{border-radius:var(--r-2xl);background:var(--surface-3);color:var(--text-3);isolation:isolate;border:0;place-items:center;display:grid;position:relative;overflow:hidden}.sala-poster--lg{aspect-ratio:16/10;width:100%;max-height:26vh;box-shadow:var(--shadow-2)}.sala-poster--xl{aspect-ratio:4/3;width:min(100%,420px);box-shadow:var(--shadow-3);align-self:center}.sala-poster--sm{border-radius:var(--r-md);flex:none;width:56px;height:56px}.sala-poster-img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-5) var(--ease-out)}.sala-poster--interactive{cursor:pointer}.sala-poster--interactive:active .sala-poster-img{transform:scale(1.03)}.sala-poster--interactive:focus-visible{box-shadow:var(--shadow-focus);outline:none}.sala-poster-initials{font-size:var(--fs-28);font-weight:var(--w-bold);letter-spacing:var(--ls-title)}.sala-poster--sm .sala-poster-initials{font-size:var(--fs-16)}.sala-poster-play{right:var(--sp-3);bottom:var(--sp-3);border-radius:var(--r-full);background:var(--glass-bg);width:40px;height:40px;color:var(--text);box-shadow:var(--shadow-2);-webkit-backdrop-filter:blur(var(--glass-blur));place-items:center;display:grid;position:absolute}.step-card{gap:var(--sp-4);display:grid}.step-card-body{gap:var(--sp-2);display:grid}.step-kicker{align-items:center;gap:var(--sp-1) var(--sp-2);color:var(--text-3);font-size:var(--fs-14);font-weight:var(--w-medium);flex-wrap:wrap;margin:0;display:flex}.step-kicker-strong{color:var(--accent-ink);font-weight:var(--w-bold);letter-spacing:.01em}.step-kicker-strong+span:before{content:"·";margin-right:var(--sp-2);color:var(--line-3)}.step-name{font-size:var(--sala-name);font-weight:var(--w-bold);letter-spacing:var(--ls-display);text-wrap:balance;margin:0;line-height:1.06}.step-name--center,.step-rx--center{text-align:center}.step-rx{color:var(--text-2);font-size:var(--fs-18);font-weight:var(--w-medium);line-height:var(--lh-snug);margin:0}.step-chips{gap:var(--sp-2);flex-wrap:wrap;display:flex}.step-chip{min-height:28px;padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-13);font-weight:var(--w-semibold);align-items:center;gap:6px;display:inline-flex}.step-chip--soft{background:var(--ok-soft);color:var(--ok-strong)}.step-chip--warn{background:var(--warn-soft);color:var(--warn-strong)}.step-note{-webkit-line-clamp:2;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-lg);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-15);line-height:var(--lh-base);-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.set-controls{gap:var(--sp-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.set-controls--single{grid-template-columns:minmax(0,340px);justify-content:center}.set-controls-add{min-height:var(--tap-min);border:1px dashed var(--line-2);border-radius:var(--r-xl);color:var(--text-2);font-size:var(--fs-14);font-weight:var(--w-semibold);background:0 0;justify-content:center;align-items:center;gap:6px;display:inline-flex}.dial{justify-items:center;gap:var(--sp-1);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-2xl);background:var(--surface);box-shadow:var(--shadow-1);transition:background-color var(--dur-3) var(--ease-out), border-color var(--dur-3) var(--ease-out), transform var(--dur-2) var(--ease-out);display:grid}.dial[data-changed=true]{border-color:var(--accent-soft-2);background:var(--accent-soft)}.dial[data-pressing=true]{transform:scale(.975)}.dial[data-dragging=true],.dial[data-editing=true]{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring)}.dial-label{color:var(--text-3);font-size:var(--fs-12);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.dial-row{align-items:center;gap:var(--sp-2);grid-template-columns:1fr 1fr;grid-template-areas:"value value""minus plus";width:100%;display:grid}.dial-row .dial-value{grid-area:value}.dial-row .dial-step:first-child{grid-area:minus}.dial-row .dial-step:last-child{grid-area:plus}.set-controls--single .dial-row{grid-template-columns:56px minmax(0,1fr) 56px;grid-template-areas:"minus value plus"}.set-controls--single .dial-step{width:56px;height:56px}.dial-step{border-radius:var(--r-full);background:var(--surface-3);width:100%;height:48px;color:var(--text);touch-action:manipulation;transition:transform var(--dur-1) var(--ease-out), background-color var(--dur-2) var(--ease-out);border:0;place-items:center;display:grid}.dial-step:active{background:var(--surface-4);transform:scale(.88)}.dial-step:disabled{opacity:.35}.dial-step:focus-visible,.dial-value:focus-visible{box-shadow:var(--shadow-focus);outline:none}.dial-value{min-width:0;padding:var(--sp-1) 0;border-radius:var(--r-lg);cursor:ew-resize;touch-action:pan-y;-webkit-user-select:none;user-select:none;justify-items:center;display:grid;overflow:hidden}.dial-number{font-size:var(--sala-figure);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;letter-spacing:-.045em;white-space:nowrap;line-height:1;display:block}.dial[data-changed=true] .dial-number{color:var(--accent-ink)}.dial-number--up{animation:dial-up var(--dur-3) var(--ease-spring)}.dial-number--down{animation:dial-down var(--dur-3) var(--ease-spring)}@keyframes dial-up{0%{opacity:.25;transform:translateY(32%)}to{opacity:1;transform:none}}@keyframes dial-down{0%{opacity:.25;transform:translateY(-32%)}to{opacity:1;transform:none}}.dial-unit{color:var(--text-3);font-size:var(--fs-14);font-weight:var(--w-semibold)}.dial--reps .dial-unit,.dial--duration .dial-unit{text-transform:none}.set-effort,.rest-effort{padding:var(--sp-3);border-radius:var(--r-xl);background:var(--surface-2)}.effort{justify-items:center;gap:var(--sp-3);display:grid}.effort-question{font-size:var(--fs-15);font-weight:var(--w-semibold)}.effort-row{justify-content:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.effort-row--half{margin-top:calc(var(--sp-1) * -1)}.effort-chip{min-width:54px;height:52px;padding:0 var(--sp-3);border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--surface);color:var(--text);font-variant-numeric:tabular-nums;transition:transform var(--dur-1) var(--ease-out), background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);place-content:center;justify-items:center;display:grid}.effort-row--half .effort-chip{min-width:52px;height:40px}.effort-chip-value{font-size:var(--fs-18);font-weight:var(--w-bold);line-height:1}.effort-chip-hint{color:var(--text-3);font-size:11px;font-weight:var(--w-semibold);margin-top:2px}.effort-chip:active{transform:scale(.92)}.effort-chip[aria-pressed=true]{border-color:var(--inverse-bg);background:var(--inverse-bg);color:var(--inverse-fg);animation:rt-pop-scale var(--dur-3) var(--ease-bounce)}.effort-chip[aria-pressed=true] .effort-chip-hint{color:var(--inverse-fg-2)}.effort-chip:focus-visible{box-shadow:var(--shadow-focus);outline:none}.sala-dock{gap:var(--sp-2);display:grid}.sala-cta{width:100%;height:var(--sala-cta-h);border-radius:var(--r-2xl);background:var(--accent);color:var(--on-accent);box-shadow:0 10px 28px var(--accent-ring), var(--shadow-1);touch-action:manipulation;transition:transform var(--dur-1) var(--ease-out), background-color var(--dur-3) var(--ease-out), box-shadow var(--dur-3) var(--ease-out);border:0;place-items:center;display:grid;position:relative;overflow:hidden}.sala-cta--ink{background:var(--inverse-bg);color:var(--inverse-fg);box-shadow:var(--shadow-2)}.sala-cta:active{transform:scale(.975)}.sala-cta:focus-visible{box-shadow:0 0 0 4px var(--accent-ring), var(--shadow-2);outline:none}.sala-cta-content,.sala-cta-done{justify-content:center;align-items:center;gap:var(--sp-3);transition:opacity var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-spring);grid-area:1/1;display:inline-flex}.sala-cta-label{font-size:var(--fs-22);font-weight:var(--w-bold);letter-spacing:var(--ls-title)}.sala-cta-done{opacity:0;transform:scale(.4)}.sala-cta--done{background:var(--ok);box-shadow:0 10px 28px var(--ok-ring)}.sala-cta--done .sala-cta-content{opacity:0;transform:scale(.85)translateY(6px)}.sala-cta--done .sala-cta-done{opacity:1;transition-timing-function:var(--ease-bounce);transform:scale(1)}.sala-cta--done:after{content:"";border-radius:inherit;background:radial-gradient(circle at center, var(--shimmer) 0%, transparent 60%);animation:rt-ripple var(--dur-5) var(--ease-out) forwards;position:absolute;inset:0}.sala-secondary{flex-wrap:wrap;justify-content:center;gap:0;display:flex}.sala-secondary .sala-link{padding:0 var(--sp-2);font-size:var(--fs-14)}.sala-link{min-height:var(--tap-min);padding:0 var(--sp-3);border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-15);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);background:0 0;border:0;align-items:center;gap:6px;display:inline-flex}.sala-link:hover{background:var(--surface-3);color:var(--text)}.sala-link:active{transform:scale(.96)}.sala-link:focus-visible{box-shadow:var(--shadow-focus);outline:none}.sala-link--center{align-self:center}.sala-next{justify-content:center;gap:var(--sp-1) var(--sp-2);color:var(--text-3);font-size:var(--fs-14);text-align:center;flex-wrap:wrap;margin:0;display:flex}.sala-next span{color:var(--text-2);font-weight:var(--w-semibold)}.emom-clock{justify-content:center;align-items:baseline;gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-15);display:flex}.emom-clock strong{color:var(--ok-strong);font-size:var(--fs-28);font-variant-numeric:tabular-nums;transition:color var(--dur-3) var(--ease-out)}.emom-clock[data-phase=ending] strong{color:var(--accent-ink)}.work-ring{align-self:center}.sala-rest{justify-content:flex-start;align-items:center;gap:var(--sp-5);text-align:center}.rest-logged{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-full);background:var(--ok-soft);color:var(--ok-strong);font-size:var(--fs-15);font-weight:var(--w-semibold);animation:rt-pop-in var(--dur-4) var(--ease-bounce) both;display:inline-flex}.rest{align-items:center;gap:var(--sp-5);flex-direction:column;width:100%;display:flex}.rest-face{width:var(--sala-ring);height:var(--sala-ring);transition:width var(--dur-4) var(--ease-spring), height var(--dur-4) var(--ease-spring)}.rest:has(.rest-effort){--sala-ring:min(56vw, 232px);--sala-time:clamp(48px, 14vw, 72px)}.rest-ring .ring-track,.rest-ring .ring-progress{stroke-width:7px}.rest-ring .ring-progress{transition:stroke var(--dur-4) var(--ease-out)}.rest-ring-glow{fill:none;stroke:var(--ok);stroke-width:14px;opacity:.12;transition:stroke var(--dur-4) var(--ease-out), opacity var(--dur-4) var(--ease-out)}.rest-ring[data-phase=ending] .rest-ring-glow{stroke:var(--accent);opacity:.2}.rest-ring[data-phase=ending] .rest-face{animation:rt-breathe 1s var(--ease-in-out) infinite}.rest-time{font-size:var(--sala-time);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;letter-spacing:-.04em;transition:color var(--dur-3) var(--ease-out)}.rest-ring[data-phase=ending] .rest-time{color:var(--accent-ink)}.rest-caption{font-size:var(--fs-15)}.rest[data-paused=true] .rest-time{opacity:.55}.rest-controls .ring-step{min-width:64px;height:52px;font-size:var(--fs-16)}.rest-controls .ring-step--icon{min-width:52px}.rest-effort{width:100%;animation:rt-rise-in var(--dur-4) var(--ease-out) both}.rest-next{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);text-align:left;box-shadow:var(--shadow-1);grid-template-columns:auto 1fr;display:grid}.rest-next-poster{border-radius:var(--r-md);object-fit:cover;background:var(--surface-3);width:56px;height:56px}.rest-next-poster--empty{color:var(--text-3);place-items:center;display:grid}.rest-next--exercise{padding:var(--sp-4);background:var(--surface)}.rest-next--exercise .rest-next-poster{border-radius:var(--r-lg);width:76px;height:76px}.rest-next-body{gap:2px;min-width:0;display:grid}.rest-next-kicker{color:var(--text-3);font-size:var(--fs-12);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.rest-next--exercise .rest-next-kicker{color:var(--accent-ink)}.rest-next-name{font-size:var(--fs-18);line-height:var(--lh-tight);text-overflow:ellipsis;overflow:hidden}.rest-next--exercise .rest-next-name{font-size:var(--fs-20)}.rest-next-meta{color:var(--text-2);font-size:var(--fs-14)}.rest-actions{justify-items:center;gap:var(--sp-1);width:100%;display:grid}.rest-skip{border-radius:var(--r-xl);height:60px}.rest-back{min-height:var(--tap-min);padding:0 var(--sp-3);border-radius:var(--r-full);color:var(--text-3);font-size:var(--fs-14);font-weight:var(--w-semibold);background:0 0;border:0;align-items:center;gap:6px;display:inline-flex}.rest-back:hover{color:var(--text)}.sala-transition{justify-content:center}.transition-card{justify-items:center;gap:var(--sp-3);text-align:center;margin-block:auto;display:grid}.transition-card .step-kicker{justify-content:center}.sala-message,.sala-complete{text-align:center;justify-content:center;align-items:center}.sala-message-art{border-radius:var(--r-full);background:var(--surface-3);width:72px;height:72px;color:var(--text-2);place-items:center;display:grid}.sala-message-title{font-size:var(--fs-28);font-weight:var(--w-bold);letter-spacing:var(--ls-title);text-wrap:balance;margin:0}.sala-message-text{max-width:34ch;color:var(--text-2);font-size:var(--fs-16);line-height:var(--lh-base);margin:0}.sala-message-actions{gap:var(--sp-2);width:min(100%,380px);margin-top:var(--sp-3);display:grid}.sala-complete{min-height:100%;position:relative}.complete-glow{border-radius:var(--r-full);background:radial-gradient(circle, var(--ok-soft-2) 0%, transparent 70%);opacity:.8;height:50%;animation:rt-fade-in var(--dur-5) var(--ease-out) both;pointer-events:none;position:absolute;inset:20% 10% auto}.complete-mark{border-radius:var(--r-full);background:var(--ok);width:104px;height:104px;color:var(--on-accent);box-shadow:0 12px 36px var(--ok-ring);animation:rt-scale-in var(--dur-5) var(--ease-bounce) both;place-items:center;display:grid;position:relative}.sala-loading{gap:var(--sp-4)}.sala-loading-poster{aspect-ratio:16/10;border-radius:var(--r-2xl);width:100%;max-height:34vh}.sala-loading-lines{gap:var(--sp-3);display:grid}.sala-skel-title{height:30px}.sala-loading-dials{gap:var(--sp-3);grid-template-columns:1fr 1fr;margin-top:auto;display:grid}.sala-loading-dial{border-radius:var(--r-2xl);height:140px}.keypad-root{z-index:calc(var(--z-pop) + 3);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.keypad-scrim{background:var(--scrim);animation:rt-fade-in var(--dur-2) var(--ease-out) both;position:absolute;inset:0}.keypad{gap:var(--sp-3);width:min(100%,440px);padding:var(--sp-4) var(--gutter) calc(var(--sp-4) + var(--safe-bottom));border-radius:var(--r-2xl) var(--r-2xl) 0 0;background:var(--surface);box-shadow:var(--shadow-float);animation:keypad-in var(--dur-4) var(--ease-spring) both;display:grid;position:relative}.keypad-root--leaving .keypad{animation:keypad-out var(--dur-2) var(--ease-in-out) forwards}.keypad-root--leaving .keypad-scrim{animation:rt-fade-out var(--dur-2) var(--ease-in-out) forwards}@keyframes keypad-in{0%{transform:translateY(100%)}to{transform:none}}@keyframes keypad-out{to{transform:translateY(100%)}}.keypad-head{justify-content:space-between;align-items:center;display:flex}.keypad-title{color:var(--text-2);font-size:var(--fs-14);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.keypad-cancel{min-height:var(--tap-min);padding:0 var(--sp-2);color:var(--text-2);font-size:var(--fs-15);font-weight:var(--w-semibold);background:0 0;border:0}.keypad-screen{justify-content:center;align-items:baseline;gap:var(--sp-2);padding:var(--sp-2) 0;display:flex}.keypad-number{font-size:clamp(48px,14vw,68px);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;letter-spacing:-.04em;line-height:1}.keypad-unit{color:var(--text-3);font-size:var(--fs-18);font-weight:var(--w-semibold)}.keypad-screen--tick .keypad-number{animation:rt-pop-scale var(--dur-2) var(--ease-bounce)}.keypad-grid{gap:var(--sp-2);grid-template-columns:repeat(3,1fr);display:grid}.keypad-key{border-radius:var(--r-lg);background:var(--surface-3);height:60px;color:var(--text);font-size:var(--fs-24);font-weight:var(--w-semibold);touch-action:manipulation;transition:transform var(--dur-1) var(--ease-out), background-color var(--dur-1) var(--ease-out);border:0;place-items:center;display:grid}.keypad-key:active{background:var(--surface-4);transform:scale(.94)}.keypad-key--blank,.keypad-key--back{background:0 0}.keypad-done{justify-content:center;align-items:center;gap:var(--sp-2);border-radius:var(--r-xl);background:var(--accent);height:60px;color:var(--on-accent);font-size:var(--fs-18);font-weight:var(--w-bold);border:0;display:inline-flex}.keypad-key:focus-visible,.keypad-done:focus-visible,.keypad-cancel:focus-visible{box-shadow:var(--shadow-focus);outline:none}.sync-pill{max-width:220px;height:24px;padding:0 var(--sp-2);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-12);font-weight:var(--w-semibold);white-space:nowrap;transition:opacity var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-spring), max-width var(--dur-4) var(--ease-spring), padding var(--dur-4) var(--ease-spring), background-color var(--dur-3) var(--ease-out), color var(--dur-3) var(--ease-out);border:0;flex:none;align-items:center;gap:5px;display:inline-flex;overflow:hidden}.sync-pill[data-visible=false]{opacity:0;pointer-events:none;max-width:0;padding:0;transform:scale(.9)}.sync-pill[data-tone=ok]{background:var(--ok-soft);color:var(--ok-strong)}.sync-pill[data-tone=info]{background:var(--info-soft);color:var(--info-strong)}.sync-pill[data-tone=warn]{background:var(--warn-soft);color:var(--warn-strong)}.sync-pill[data-tone=danger]{background:var(--danger-soft);color:var(--danger-strong)}.sync-pill-icon{place-items:center;display:grid}.sync-pill[data-syncing=true] .sync-pill-icon{animation:1s linear infinite rt-spin}.sync-pill:focus-visible{box-shadow:var(--shadow-focus);outline:none}.sync-failed-list{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.sync-failed{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--danger-soft);display:flex}.sync-failed-body{color:var(--danger-strong);font-size:var(--fs-14);gap:2px;display:grid}.sala-menu{gap:var(--sp-1);display:grid}.sala-menu-row{align-items:center;gap:var(--sp-3);width:100%;min-height:56px;padding:var(--sp-2);border-radius:var(--r-lg);color:var(--text);text-align:left;transition:background-color var(--dur-2) var(--ease-out);background:0 0;border:0;grid-template-columns:40px 1fr;display:grid}.sala-menu-row:hover,.sala-menu-row:focus-visible{background:var(--surface-3);outline:none}.sala-menu-row:active{transform:scale(.985)}.sala-menu-icon{border-radius:var(--r-full);background:var(--surface-3);width:40px;height:40px;color:var(--text-2);place-items:center;display:grid}.sala-menu-text{gap:2px;display:grid}.sala-menu-text strong{font-size:var(--fs-16);font-weight:var(--w-semibold)}.sala-menu-text span{color:var(--text-3);font-size:var(--fs-13)}.sala-menu-toggles{gap:var(--sp-1);margin-top:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-lg);background:var(--surface-2);display:grid}.sala-menu-end{gap:var(--sp-2);margin-top:var(--sp-3);display:grid}.sala-note{gap:var(--sp-2);padding:0 var(--sp-2) var(--sp-2) 52px;animation:rt-rise-in var(--dur-3) var(--ease-out) both;display:grid}.sala-note-input,.summary-note{width:100%;padding:var(--sp-3);border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--surface);color:var(--text);font:inherit;font-size:var(--fs-input);line-height:var(--lh-base);resize:vertical;transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out)}.sala-note-input:focus,.summary-note:focus{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.sala-note-actions{justify-content:flex-end;display:flex}.swap-sheet{gap:var(--sp-3);display:grid}.swap-reasons{flex-wrap:wrap}.swap-subtitle{margin:var(--sp-2) 0 0;color:var(--text-3);font-size:var(--fs-12);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.swap-list{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.swap-option{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);color:var(--text);text-align:left;transition:transform var(--dur-1) var(--ease-out), border-color var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out);grid-template-columns:auto 1fr auto;display:grid}.swap-option:hover{border-color:var(--line-2)}.swap-option:active{background:var(--surface-2);transform:scale(.985)}.swap-option:focus-visible{box-shadow:var(--shadow-focus);outline:none}.swap-option--quiet{background:var(--surface-2)}.swap-option-body{gap:2px;min-width:0;display:grid}.swap-option-body strong{font-size:var(--fs-16)}.swap-option-body span{color:var(--text-3);font-size:var(--fs-13)}.swap-empty{padding:var(--sp-3);border-radius:var(--r-lg);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-14);line-height:var(--lh-base);margin:0}.swap-restore{min-height:var(--tap-min);padding:0 var(--sp-3);border-radius:var(--r-full);color:var(--text-2);font-weight:var(--w-semibold);background:0 0;border:0;justify-self:center;align-items:center;gap:6px;display:inline-flex}.conflict-row{gap:var(--sp-2) var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--warn-soft);color:var(--text);animation:rt-rise-in var(--dur-4) var(--ease-out) both;transition:background-color var(--dur-3) var(--ease-out), opacity var(--dur-3) var(--ease-out);grid-template-columns:auto 1fr;display:grid}.conflict-row--confirm{background:var(--info-soft)}.conflict-row[data-state=resolved]{background:var(--ok-soft)}.conflict-row--leaving{animation:rt-leave var(--dur-3) var(--ease-in-out) forwards}.conflict-icon{border-radius:var(--r-full);background:var(--surface);width:32px;height:32px;color:var(--warn-strong);place-items:center;display:grid}.conflict-row--confirm .conflict-icon{color:var(--info-strong)}.conflict-body{gap:2px;display:grid}.conflict-title{font-size:var(--fs-15)}.conflict-text{color:var(--text-2);font-size:var(--fs-14);line-height:var(--lh-base);margin:0}.conflict-actions{gap:var(--sp-2);flex-wrap:wrap;grid-column:1/-1;display:flex}.conflict-done{color:var(--ok-strong);font-size:var(--fs-14);font-weight:var(--w-semibold);animation:rt-pop-in var(--dur-3) var(--ease-bounce) both;align-items:center;gap:6px;display:inline-flex}.pocket{z-index:10;place-content:center;justify-items:center;gap:var(--sp-4);padding:var(--gutter);color:#ffffff80;text-align:center;animation:rt-fade-in var(--dur-4) var(--ease-out) both;-webkit-user-select:none;user-select:none;background:#000;display:grid;position:absolute;inset:0}.pocket:focus{outline:none}.pocket--leaving{animation:rt-fade-out var(--dur-3) var(--ease-in-out) forwards}.pocket-status,.pocket-hint{font-size:var(--fs-13);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.pocket-big{color:#ffffffb8;font-size:clamp(48px,16vw,120px);font-weight:var(--w-semibold);font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1.05}.pocket-line{font-size:var(--fs-18)}.pocket-hint{bottom:calc(var(--sp-8) + var(--safe-bottom));opacity:.6;position:absolute;left:0;right:0}.sala--summary .summary{overscroll-behavior:contain;height:100%;overflow-y:auto}.summary{align-content:start;gap:var(--sp-4);width:100%;max-width:calc(600px + 2 * var(--gutter));padding:var(--sp-2) var(--gutter) calc(var(--sp-8) + var(--safe-bottom));margin:0 auto;display:grid}.summary-loading{gap:var(--sp-4);display:grid}.summary-skeleton-hero{border-radius:var(--r-2xl);height:220px}.summary-skeleton-block{border-radius:var(--r-xl);height:120px}.summary-hero{justify-items:center;gap:var(--sp-2);padding:var(--sp-5) 0 var(--sp-2);text-align:center;display:grid}.summary-mark{width:76px;height:76px;margin-bottom:var(--sp-2);border-radius:var(--r-full);background:var(--ok);color:var(--on-accent);box-shadow:0 0 0 10px var(--ok-soft), 0 12px 32px var(--ok-ring);animation:rt-scale-in var(--dur-5) var(--ease-bounce) both;place-items:center;display:grid}.summary-kicker{color:var(--ok-strong);font-size:var(--fs-13);font-weight:var(--w-bold);letter-spacing:var(--ls-kicker);text-transform:uppercase;margin:0}.summary-day{font-size:var(--fs-title-lg);font-weight:var(--w-bold);letter-spacing:var(--ls-title);text-wrap:balance;margin:0}.summary-stats{gap:var(--sp-2);width:100%;margin-top:var(--sp-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.summary-stat{padding:var(--sp-3) var(--sp-2);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-1);justify-items:center;gap:2px;display:grid}.summary-stat-value{font-size:var(--fs-24);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;letter-spacing:var(--ls-title);white-space:nowrap}.summary-stat-label{color:var(--text-3);font-size:var(--fs-12);font-weight:var(--w-semibold);letter-spacing:var(--ls-kicker);text-transform:uppercase}.summary-stat-hint{color:var(--text-3);font-size:var(--fs-13)}.summary-block{gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);display:grid}.summary-attention{border-color:var(--warn-soft-2);background:var(--surface)}.summary-title{font-size:var(--fs-18);font-weight:var(--w-bold);letter-spacing:var(--ls-title);margin:0}.summary-hint{color:var(--text-3);font-size:var(--fs-13);margin:0}.summary-failed{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--danger-soft);color:var(--danger-strong);font-size:var(--fs-14);font-weight:var(--w-semibold);text-align:left;border:0;display:flex}.summary-records{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.summary-record{align-items:center;gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--warn-soft);grid-template-columns:auto 1fr;display:grid;position:relative;overflow:hidden}.summary-record:after{content:"";background:linear-gradient(100deg, transparent 20%, var(--shimmer) 50%, transparent 80%);animation:rt-shimmer 1.6s var(--ease-in-out) .5s 1 both;pointer-events:none;position:absolute;inset:0;transform:translate(-100%)}.summary-record div{gap:2px;display:grid}.summary-record span{color:var(--text-2);font-size:var(--fs-14)}.summary-record-icon{border-radius:var(--r-full);background:var(--surface);width:36px;height:36px;color:var(--warn-strong);place-items:center;display:grid}.summary-list{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.summary-list-row{padding:var(--sp-2) 0;gap:2px;display:grid}.summary-list-row>span{color:var(--text-2);font-size:var(--fs-14)}.summary-sets{margin-top:var(--sp-1);flex-wrap:wrap;gap:6px;display:flex}.summary-set{padding:2px var(--sp-2);border-radius:var(--r-full);background:var(--surface-3);color:var(--text);font-size:var(--fs-13);font-weight:var(--w-semibold);font-variant-numeric:tabular-nums}.summary-set--warm{color:var(--text-3)}.summary-set--conflict{background:var(--warn-soft);color:var(--warn-strong)}.hardness-wrap{gap:var(--sp-2);display:grid}.hardness{grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;display:grid}.hardness-dot{--tint:color-mix(in oklab, var(--accent) calc(var(--level) * 100%), var(--ok));border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);height:48px;color:var(--text-2);font-size:var(--fs-16);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;touch-action:manipulation;transition:transform var(--dur-2) var(--ease-spring), background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);place-items:center;display:grid}.hardness-dot:active{transform:scale(.9)}.hardness-dot[aria-checked=true]{background:var(--tint);color:var(--on-accent);border-color:#0000;transform:scale(1.06)}.hardness-dot:focus-visible{box-shadow:var(--shadow-focus);outline:none}.hardness-legend{color:var(--text-3);font-size:var(--fs-12);justify-content:space-between;align-items:center;display:flex}.hardness-caption{color:var(--text);font-size:var(--fs-14);font-weight:var(--w-semibold)}.summary-footer{gap:var(--sp-2);padding-top:var(--sp-2);display:grid}.summary-fix{padding-bottom:var(--sp-2)}@media (max-height:700px){.sala{--sala-cta-h:64px;--sala-figure:clamp(40px, 12vw, 60px);--sala-name:clamp(24px, 6.6vw, 34px);--sala-ring:min(60vw, 220px)}.sala-poster--lg{aspect-ratio:21/9}.sala-set,.sala-rest{gap:var(--sp-3)}}@media (min-width:1024px){.sala{--sala-max:1040px;--sala-ring:320px}.sala-set{align-content:center;align-items:center;gap:var(--sp-10);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);min-height:100%;display:grid}.sala-set>.sala-editing{grid-column:1/-1}.sala-set .sala-poster--lg{aspect-ratio:4/3;max-height:none}.sala-set .sala-controls{background:0 0;margin:0;padding:0;position:static}.sala-rest{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-content:center;align-items:center;min-height:100%;display:grid}.sala-rest .rest-logged{grid-column:1/-1;justify-self:center}.sala-rest .rest{justify-content:center;gap:var(--sp-6) var(--sp-10);grid-column:1/-1;grid-template-columns:auto minmax(0,420px);display:grid}.sala-rest .rest-ring{grid-row:span 3}.sala-top{max-width:1100px}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .sala-poster-img,:root:not([data-theme=light]) .rest-next-poster{filter:brightness(.9)}}:root[data-theme=dark] .sala-poster-img,:root[data-theme=dark] .rest-next-poster{filter:brightness(.9)}@media (prefers-reduced-motion:reduce){.sala,.sala-scene--entering,.sala-scene--leaving,.rest-ring[data-phase=ending] .rest-face,.summary-record:after{animation:none!important}.sala-progress-fill{transition:none}}.summary-footer .sala-link--center{justify-self:center}.mara-avatar--xs{width:22px;height:22px}@keyframes rt-pane-in-forward{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:none}}@keyframes rt-pane-in-back{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:none}}@keyframes rt-pane-out{to{opacity:0;transform:translateY(6px)}}@keyframes rt-collapse{0%{max-height:var(--h,240px);opacity:1}to{opacity:0;max-height:0;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;transform:scale(.97)}}@keyframes rt-row-flash{0%,35%{background:var(--accent-soft)}to{background:0 0}}@keyframes rt-text-swap{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes rt-ring-out{0%{opacity:.7;transform:scale(.6)}to{opacity:0;transform:scale(1.6)}}@keyframes rt-pulse-dot{0%,to{opacity:.35}50%{opacity:1}}.collapse-out{animation:rt-collapse var(--dur-4) var(--ease-in-out) forwards;overflow:hidden}.digest-count--link{text-align:left;background:var(--accent-soft);transition:transform var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out);position:relative}.digest-count--link:hover{background:var(--accent-soft-2)}.digest-count--link:active{transform:scale(.97)}.digest-count--link:focus-visible{box-shadow:var(--shadow-focus);outline:none}.digest-count-go{top:var(--sp-3);right:var(--sp-3);color:var(--accent-ink);position:absolute}.detail-page{max-width:var(--content-wide)}.detail-hero{gap:var(--sp-4);padding:var(--sp-5) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-2xl);background:var(--surface);box-shadow:var(--shadow-1);isolation:isolate;grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid;position:relative;overflow:hidden}.detail-hero-glow{z-index:-1;background:radial-gradient(80% 120% at 0% 0%, var(--accent-soft) 0%, transparent 60%), radial-gradient(60% 100% at 100% 0%, var(--plum-soft) 0%, transparent 70%);pointer-events:none;position:absolute;inset:0}.detail-hero-skeleton{width:72px;height:72px}.detail-hero-text{gap:var(--sp-1);min-width:0;display:grid}.detail-name{color:var(--text);font-size:var(--fs-title);font-weight:var(--w-bold);letter-spacing:var(--ls-title);line-height:var(--lh-tight);margin:0}.detail-sub{color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-snug);margin:0}.detail-badges{gap:var(--sp-1);margin-top:var(--sp-1);flex-wrap:wrap;display:flex}.detail-routine-pill{align-items:center;gap:var(--sp-1);min-height:26px;padding:0 var(--sp-2);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-medium);transition:background-color var(--dur-2) var(--ease-out);display:inline-flex}.detail-routine-pill:hover{background:var(--surface-4);color:var(--text)}.detail-actions{gap:var(--sp-2);grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.detail-action{justify-content:center;align-items:center;gap:var(--sp-1);width:100%;min-height:64px;padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);color:var(--text);font-size:var(--fs-meta);font-weight:var(--w-semibold);transition:transform var(--dur-2) var(--ease-out), background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);flex-direction:column;display:flex}.detail-action:hover{border-color:var(--line-2);background:var(--surface);box-shadow:var(--shadow-1)}.detail-action:active{transform:scale(.97)}.detail-action:focus-visible{box-shadow:var(--shadow-focus);outline:none}.detail-action-icon{border-radius:var(--r-full);background:var(--surface-3);width:32px;height:32px;color:var(--text-2);place-items:center;display:grid}.detail-action--mara .detail-action-icon{background:var(--accent-soft)}.detail-action--mara{border-color:var(--accent-soft-2);background:linear-gradient(180deg, var(--accent-soft) 0%, var(--surface-2) 100%)}.detail-pause{position:relative}.detail-pause-menu{right:0;top:calc(100% + var(--sp-2));z-index:var(--z-pop);gap:var(--sp-1);min-width:220px;padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-float);transform-origin:100% 0;display:grid;position:absolute}.detail-pause-title{padding:var(--sp-1) var(--sp-2) var(--sp-2);color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-semibold)}.detail-pause-option{min-height:var(--control-h-sm);padding:0 var(--sp-3);border-radius:var(--r-md);color:var(--text);font-size:var(--fs-label);text-align:left;transition:background-color var(--dur-1) var(--ease-out)}.detail-pause-option:hover:not(:disabled){background:var(--surface-3)}.detail-pause-option:disabled{color:var(--text-3);cursor:not-allowed}.detail-notice-host:empty{display:none}.detail-tabs-host{top:calc(var(--topbar-h) + var(--safe-top));z-index:5;margin:var(--sp-4) calc(var(--gutter) * -1) var(--sp-4);padding:var(--sp-2) var(--gutter);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(1.4) blur(var(--glass-blur));position:sticky}.detail-tabs-rail{gap:var(--sp-1);padding:var(--sp-1);border-radius:var(--r-full);background:var(--surface-3);scroll-snap-type:x proximity;scrollbar-width:none;display:flex;position:relative;overflow-x:auto}.detail-tabs-rail::-webkit-scrollbar{display:none}.detail-tab{z-index:1;align-items:center;gap:var(--sp-1);min-height:38px;padding:0 var(--sp-3);border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-medium);white-space:nowrap;scroll-snap-align:center;transition:color var(--dur-2) var(--ease-out);flex:none;display:inline-flex;position:relative}.detail-tab[aria-selected=true]{color:var(--text);font-weight:var(--w-semibold)}.detail-tab:focus-visible{box-shadow:var(--shadow-focus);outline:none}.detail-tab-count{border-radius:var(--r-full);background:var(--accent);min-width:18px;height:18px;color:var(--on-accent);font-size:11px;font-weight:var(--w-bold);font-variant-numeric:tabular-nums;place-items:center;padding:0 5px;display:inline-grid}.detail-tabs-indicator{top:var(--sp-1);border-radius:var(--r-full);background:var(--surface);height:38px;box-shadow:var(--shadow-1);transition:transform var(--dur-4) var(--ease-spring), width var(--dur-4) var(--ease-spring);will-change:transform;position:absolute;left:0}.detail-panel{outline:none;min-height:40vh}.pane-enter-forward{animation:rt-pane-in-forward var(--dur-4) var(--ease-out) both}.pane-enter-back{animation:rt-pane-in-back var(--dur-4) var(--ease-out) both}.pane-leave-forward,.pane-leave-back{animation:rt-pane-out var(--dur-2) var(--ease-in-out) forwards}.detail-summary{gap:var(--sp-4);display:grid}.detail-section-title{align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-2);color:var(--text);font-size:var(--fs-title-sm);font-weight:var(--w-semibold);letter-spacing:var(--ls-title);display:flex}.detail-count{border-radius:var(--r-full);background:var(--surface-3);min-width:22px;height:22px;color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;place-items:center;padding:0 6px;display:inline-grid}.detail-attention-list{gap:var(--sp-2);display:grid}.detail-calm{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--ok-soft);color:var(--ok-strong);display:flex}.detail-calm p{font-size:var(--fs-label);font-weight:var(--w-medium);margin:0}.detail-stats{gap:var(--sp-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.detail-stat{align-items:center;gap:var(--sp-3);min-height:84px;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);display:flex}.detail-stat-text{gap:2px;min-width:0;display:grid}.detail-stat-text span{color:var(--text-2);font-size:var(--fs-caption)}.detail-stat-text strong{color:var(--text);font-size:var(--fs-20);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;letter-spacing:var(--ls-title);line-height:var(--lh-tight)}.detail-stat-text small{color:var(--text-3);font-size:var(--fs-caption)}.detail-stat-ring{flex:none;display:grid}.detail-proposal{gap:var(--sp-3);width:100%;padding:var(--sp-4);border:1px solid var(--accent-soft-2);border-radius:var(--r-xl);background:linear-gradient(135deg, var(--accent-soft) 0%, var(--surface) 70%);text-align:left;transition:transform var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.detail-proposal:hover{box-shadow:var(--shadow-2)}.detail-proposal:active{transform:scale(.99)}.detail-proposal:focus-visible{box-shadow:var(--shadow-focus);outline:none}.detail-proposal-body{gap:var(--sp-1);display:grid}.detail-proposal-body strong{color:var(--text);font-size:var(--fs-label);font-weight:var(--w-medium);line-height:var(--lh-base)}.detail-proposal-counts{color:var(--text-2);font-size:var(--fs-caption)}.detail-proposal-go{align-items:center;gap:var(--sp-1);color:var(--accent-ink);font-size:var(--fs-label);font-weight:var(--w-semibold);grid-column:2;display:inline-flex}.detail-summary-grid{gap:var(--sp-3);display:grid}.detail-summary-grid:empty{display:none}.detail-mini-list{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.detail-mini-list li{align-items:center;gap:var(--sp-2);font-size:var(--fs-label);display:flex}.detail-mini-meta{color:var(--text-3);font-size:var(--fs-caption);white-space:nowrap;margin-left:auto}.detail-mini-dot{border-radius:var(--r-full);background:var(--info);width:8px;height:8px}.detail-mini-dot--moderada{background:var(--warn)}.detail-mini-dot--fuerte,.detail-mini-dot--bandera_roja{background:var(--danger)}.detail-routine{gap:var(--sp-3);display:grid}.detail-routine-hero{gap:var(--sp-3);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.detail-routine-icon{border-radius:var(--r-lg);background:var(--accent-soft);width:48px;height:48px;color:var(--accent-ink);place-items:center;display:grid}.detail-routine-text{gap:2px;min-width:0;display:grid}.detail-routine-text h3{font-size:var(--fs-title-sm);font-weight:var(--w-semibold);margin:0}.detail-routine-text>span:last-child{color:var(--text-2);font-size:var(--fs-meta)}.detail-routine-actions{gap:var(--sp-2);flex-wrap:wrap;grid-column:1/-1;display:flex}.detail-routine-locked{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-meta);margin:0;display:flex}.detail-days{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.detail-day{padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.detail-day-head{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-2);display:flex}.detail-day-head div{display:grid}.detail-day-head span:not(.detail-day-index){color:var(--text-3);font-size:var(--fs-caption)}.detail-day-index{border-radius:var(--r-full);background:var(--surface-3);width:28px;height:28px;color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-bold);place-items:center;display:grid}.detail-day-items{gap:var(--sp-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.detail-day-items li{padding:3px var(--sp-2);border-radius:var(--r-full);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-caption);align-items:center;gap:4px;display:inline-flex}.detail-day-lock{color:var(--text-3)}.detail-proposals{gap:var(--sp-4);display:grid}.detail-proposal-card .proposal-footer{margin:var(--sp-3) calc(var(--sp-4) * -1) calc(var(--sp-4) * -1);padding:var(--sp-3) var(--sp-4);border-radius:0 0 var(--r-card) var(--r-card);background:var(--surface-2)}.detail-proposal-card .proposal-footer:empty{display:none}.detail-history-list{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.detail-history-item{gap:var(--sp-3);width:100%;padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);text-align:left;transition:border-color var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.detail-history-item:hover{border-color:var(--line-2)}.detail-history-item:active{transform:scale(.99)}.detail-history-body{gap:2px;min-width:0;display:grid}.detail-history-body span{color:var(--text-2);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.detail-history-dot{border-radius:var(--r-full);background:var(--line-3);width:10px;height:10px}.detail-history-dot--ok{background:var(--ok)}.detail-history-dot--info{background:var(--info)}.mara-ask{gap:var(--sp-4);display:grid}.mara-ask-head{align-items:center;gap:var(--sp-3);display:flex}.mara-ask-head p{color:var(--text);font-size:var(--fs-body);font-weight:var(--w-medium);margin:0}.mara-ask-options{gap:var(--sp-2);display:grid}.mara-ask-option{gap:var(--sp-3);min-height:var(--control-h);padding:0 var(--sp-4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);color:var(--text);font-size:var(--fs-label);font-weight:var(--w-medium);text-align:left;transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.mara-ask-option svg:first-child{color:var(--accent-ink)}.mara-ask-option:hover{border-color:var(--accent-soft-2);background:var(--accent-soft)}.mara-ask-option:active{transform:scale(.98)}.health-notice{gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-xl);background:var(--info-soft);color:var(--info-strong);display:flex}.health-notice--compact{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg)}.health-notice-icon{border-radius:var(--r-full);background:var(--surface);flex:none;place-items:center;width:40px;height:40px;display:grid}.health-notice--compact .health-notice-icon{width:32px;height:32px}.health-notice-body strong{color:var(--text);font-size:var(--fs-label);display:block}.health-notice-body p{color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-base);margin:2px 0 0}.pain-intro{align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-3);color:var(--text-3);font-size:var(--fs-caption);display:flex}.pain-calm{align-items:center;gap:var(--sp-2);color:var(--ok-strong);font-size:var(--fs-label);display:flex}.pain-group+.pain-group{margin-top:var(--sp-5)}.pain-group--resolved summary{cursor:pointer;list-style:none}.pain-group--resolved summary::-webkit-details-marker{display:none}.pain-group--resolved[open] .proposal-fold-icon{transform:rotate(180deg)}.pain-list{gap:var(--sp-3);display:grid}.pain-card{gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-1);display:grid}.pain-card--fuerte,.pain-card--bandera_roja{border-color:var(--danger-soft-2);background:linear-gradient(180deg, var(--danger-soft) 0%, var(--surface) 46%)}.pain-card--moderada{border-color:var(--warn-soft-2)}.pain-card--resolved{box-shadow:none;opacity:.86}.pain-card-head{gap:var(--sp-3);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.pain-card-icon{border-radius:var(--r-full);background:var(--info-soft);width:40px;height:40px;color:var(--info-strong);place-items:center;display:grid}.pain-card-icon--warn{background:var(--warn-soft);color:var(--warn-strong)}.pain-card-icon--danger{background:var(--danger-soft);color:var(--danger-strong)}.pain-card-titles{min-width:0;display:grid}.pain-card-titles strong{font-size:var(--fs-body)}.pain-card-titles span{color:var(--text-2);font-size:var(--fs-caption)}.pain-card-badges{gap:var(--sp-1);flex-wrap:wrap;grid-column:1/-1;display:flex}.pain-meter{gap:var(--sp-1);display:grid}.pain-meter-track{grid-template-columns:repeat(10,minmax(0,1fr));gap:3px;display:grid}.pain-meter-cell{border-radius:var(--r-full);background:var(--surface-3);height:8px}.pain-meter-cell--on{background:linear-gradient(90deg, var(--warn) 0%, var(--danger) 100%);background-size:1000% 100%;background-position:calc(var(--i) * 11%) 0;animation:rt-scale-in var(--dur-3) var(--ease-out) both;animation-delay:calc(var(--i) * 30ms)}.pain-meter-value{color:var(--text-2);font-size:var(--fs-caption)}.pain-meter-value strong{color:var(--text);font-variant-numeric:tabular-nums}.pain-card-quote{padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);color:var(--text);font-size:var(--fs-label);font-style:italic;line-height:var(--lh-base);margin:0}.pain-card-referral{align-items:flex-start;gap:var(--sp-2);color:var(--danger-strong);font-size:var(--fs-meta);line-height:var(--lh-snug);margin:0;display:flex}.pain-timeline{gap:0;margin:0;padding:0;list-style:none;display:grid}.pain-timeline-step{gap:var(--sp-2);min-height:30px;font-size:var(--fs-meta);grid-template-columns:16px minmax(0,1fr) auto;align-items:center;display:grid;position:relative}.pain-timeline-step:not(:last-child):after{content:"";border-radius:var(--r-full);background:var(--line);width:2px;position:absolute;top:20px;bottom:-10px;left:7px}.pain-timeline-dot{border-radius:var(--r-full);background:var(--line-3);width:10px;height:10px;margin-left:3px}.pain-timeline-step--reported .pain-timeline-dot{background:var(--warn)}.pain-timeline-step--referral .pain-timeline-dot{background:var(--danger)}.pain-timeline-step--trend .pain-timeline-dot{background:var(--info)}.pain-timeline-step--resolved .pain-timeline-dot{background:var(--ok)}.pain-timeline-text{color:var(--text)}.pain-timeline-date{color:var(--text-3);font-size:var(--fs-caption);font-variant-numeric:tabular-nums}.pain-card-foot{justify-content:space-between;align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.pain-card-days{align-items:center;gap:var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);display:inline-flex}.ready-panel{gap:var(--sp-3);display:grid}.ready-stats{gap:var(--sp-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ready-stat{min-width:0;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);align-content:start;gap:2px;display:grid}.ready-stat>span{color:var(--text-2);font-size:var(--fs-caption)}.ready-stat strong{font-size:var(--fs-18);font-weight:var(--w-bold);font-variant-numeric:tabular-nums}.ready-stat small{color:var(--text-3);font-size:var(--fs-caption)}.ready-stat .chart-spark{width:100%;margin-top:var(--sp-1)}.ready-grid{gap:var(--sp-2);display:grid}.ready-grid-row{gap:var(--sp-1);grid-template-columns:52px repeat(7,minmax(0,1fr));align-items:center;display:grid}.ready-grid-row--head span{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold);text-align:center}.ready-grid-week{color:var(--text-2);font-size:var(--fs-caption);text-align:left!important}.ready-cell{aspect-ratio:1;border-radius:var(--r-md);background:var(--surface-2);max-height:44px;transition:transform var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);place-items:center;display:grid}button.ready-cell:hover{transform:scale(1.06)}button.ready-cell:focus-visible{box-shadow:var(--shadow-focus);outline:none}button.ready-cell[aria-pressed=true]{box-shadow:0 0 0 2px var(--text)}.ready-cell--empty{outline:1px dashed var(--line);outline-offset:-4px;background:0 0}.ready-cell-dot{border-radius:var(--r-full);background:var(--line-3);width:46%;height:46%;display:block}.ready-cell--ok{background:var(--ok-soft)}.ready-cell--ok .ready-cell-dot{background:var(--ok)}.ready-cell--info{background:var(--info-soft)}.ready-cell--info .ready-cell-dot{background:var(--info)}.ready-cell--warn{background:var(--warn-soft)}.ready-cell--warn .ready-cell-dot{background:var(--warn)}.ready-cell--danger{background:var(--danger-soft)}.ready-cell--danger .ready-cell-dot{background:var(--danger)}.ready-cell--adjusted .ready-cell-dot{box-shadow:0 0 0 3px var(--surface), 0 0 0 5px currentColor;color:var(--line-3)}.ready-cell--static{flex:none;width:34px;height:34px}.ready-legend{gap:var(--sp-2) var(--sp-4);margin-top:var(--sp-3);flex-wrap:wrap;display:flex}.ready-legend-item{align-items:center;gap:var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);display:inline-flex}.ready-legend-item .ready-cell-dot{width:10px;height:10px}.ready-legend-dot--ok{background:var(--ok)}.ready-legend-dot--info{background:var(--info)}.ready-legend-dot--warn{background:var(--warn)}.ready-legend-dot--danger{background:var(--danger)}.ready-legend-ring{border:2px solid var(--line-3);border-radius:var(--r-full);width:10px;height:10px}.ready-detail-host:empty{display:none}.ready-detail{gap:var(--sp-2);margin-top:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--surface-2);display:grid}.ready-detail p{color:var(--text-2);font-size:var(--fs-label);margin:0}.ready-detail-head{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.ready-detail-score{color:var(--text-3);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;margin-left:auto}.ready-detail-choice{align-items:center;gap:var(--sp-1);display:flex;font-size:var(--fs-meta)!important}.ready-low-list{gap:var(--sp-3);margin:0;padding:0;list-style:none;display:grid}.ready-low-list li{align-items:center;gap:var(--sp-3);display:flex}.ready-low-list li div{min-width:0;display:grid}.ready-low-list span,.ready-low-list em{color:var(--text-2);font-size:var(--fs-caption)}.checkins-list{gap:var(--sp-3);margin:0;padding:0;list-style:none;display:grid}.checkin-reply{gap:var(--sp-1);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--surface-2);display:grid}.checkin-reply--new{background:var(--accent-soft)}.checkin-reply-kind{align-items:center;gap:var(--sp-1);color:var(--accent-ink);font-size:var(--fs-caption);font-weight:var(--w-semibold);display:flex}.checkin-reply-date{color:var(--text-3);font-weight:var(--w-regular);margin-left:auto}.checkin-reply-question{color:var(--text-2);font-size:var(--fs-meta);margin:0}.checkin-reply-answer{color:var(--text);font-size:var(--fs-label);font-weight:var(--w-medium);margin:0}.log-panel{gap:var(--sp-3);display:grid}.proposal{gap:var(--sp-4);display:grid}.proposal-head{gap:var(--sp-3);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.proposal-head-text{min-width:0;display:grid}.proposal-head-text strong{font-size:var(--fs-title-sm)}.proposal-head-text span,.proposal-meta{color:var(--text-2);font-size:var(--fs-meta)}.proposal-meta{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.proposal-bubble{gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-xl);background:var(--surface-2);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.proposal-bubble-text p{color:var(--text);font-size:var(--fs-label);line-height:var(--lh-base);margin:0}.proposal-stats{margin-top:var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);display:block}.proposal-skeleton{gap:var(--sp-3);display:grid}.proposal-skeleton-face{width:28px;height:28px}.proposal-skeleton-lines{min-width:0}.proposal-deload{gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-xl);background:var(--plum-soft);grid-template-columns:auto minmax(0,1fr);display:grid}.proposal-deload-icon{border-radius:var(--r-full);background:var(--surface);width:40px;height:40px;color:var(--plum-strong);place-items:center;display:grid}.proposal-deload strong{color:var(--plum-strong);font-size:var(--fs-body)}.proposal-deload p{margin:var(--sp-1) 0 0;color:var(--text);font-size:var(--fs-label);line-height:var(--lh-base)}.proposal-deload-what,.proposal-deload-after{color:var(--text-2)!important;font-size:var(--fs-meta)!important}.proposal-closed{gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--surface-3);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.proposal-closed--applied,.proposal-closed--approved,.proposal-closed--partial{background:var(--ok-soft)}.proposal-closed-icon{border-radius:var(--r-full);background:var(--surface);width:32px;height:32px;color:var(--ok-strong);place-items:center;display:grid}.proposal-closed-text{display:grid}.proposal-closed-text span{color:var(--text-2);font-size:var(--fs-caption)}.proposal-group-title{align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-2);color:var(--text);font-size:var(--fs-label);font-weight:var(--w-semibold);display:flex}.proposal-group-count{border-radius:var(--r-full);background:var(--surface-3);min-width:22px;height:22px;color:var(--text-2);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;place-items:center;padding:0 6px;display:inline-grid}.proposal-group-hint{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-regular)}.proposal-group--fold>summary{min-height:var(--tap-min);padding:0 var(--sp-1);border-radius:var(--r-md);cursor:pointer;transition:background-color var(--dur-2) var(--ease-out);margin:0;list-style:none}.proposal-group--fold>summary:hover{background:var(--surface-2)}.proposal-group--fold>summary::-webkit-details-marker{display:none}.proposal-fold-icon{color:var(--text-3);transition:transform var(--dur-3) var(--ease-out);margin-left:auto}.proposal-group--fold[open] .proposal-fold-icon{transform:rotate(180deg)}.proposal-group--fold[open]>.pitem-list{margin-top:var(--sp-2)}.pitem-list{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.pitem{gap:var(--sp-3);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);transition:opacity var(--dur-3) var(--ease-out), background-color var(--dur-3) var(--ease-out), border-color var(--dur-3) var(--ease-out);grid-template-columns:48px minmax(0,1fr);display:grid}.pitem--loading{align-items:center}.pitem[data-state=rejected]{background:var(--surface-2);opacity:.62}.pitem[data-state=rejected] .pitem-change-to{text-decoration:line-through}.pitem[data-state=edited]{border-color:var(--accent-soft-2);background:linear-gradient(180deg, var(--accent-soft) 0%, var(--surface) 60%)}.pitem--flash{animation:rt-row-flash var(--dur-5) var(--ease-out)}.pitem-thumb{border-radius:var(--r-md);background:var(--surface-3);width:48px;height:48px;color:var(--text-3);place-items:center;display:grid;overflow:hidden}.pitem-thumb img{object-fit:cover;width:100%;height:100%}.pitem-body{gap:var(--sp-2);min-width:0;display:grid}.pitem-head{align-items:center;gap:var(--sp-1) var(--sp-2);flex-wrap:wrap;display:flex}.pitem-name{color:var(--text);font-size:var(--fs-label);font-weight:var(--w-semibold);margin-right:auto}.pitem-changes{gap:var(--sp-1);display:grid}.pitem-change{gap:var(--sp-2);padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);background:var(--surface-2);font-size:var(--fs-label);font-variant-numeric:tabular-nums;grid-template-columns:auto auto auto auto;justify-self:start;align-items:center;display:inline-grid}.pitem-change-label{color:var(--text-3);font-size:var(--fs-caption)}.pitem-change-from{color:var(--text-2)}.pitem-change-arrow{color:var(--text-3);display:grid}.pitem-change--up{background:var(--ok-soft)}.pitem-change--up .pitem-change-to,.pitem-change--up .pitem-change-arrow{color:var(--ok-strong)}.pitem-change--down{background:var(--warn-soft)}.pitem-change--down .pitem-change-to,.pitem-change--down .pitem-change-arrow{color:var(--warn-strong)}.pitem-change--easier{background:var(--plum-soft)}.pitem-change--easier .pitem-change-to{color:var(--plum-strong)}.pitem-current{color:var(--text-2);font-size:var(--fs-meta);margin:0}.pitem-reason{color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-base);margin:0}.pitem-suggestions{gap:var(--sp-1);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--info-soft);margin:0;list-style:none;display:grid}.pitem-suggestions li{align-items:flex-start;gap:var(--sp-2);color:var(--text);font-size:var(--fs-meta);display:flex}.pitem-suggestions svg{color:var(--info);flex:none;margin-top:2px}.pitem-edit{gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);animation:rt-rise-in var(--dur-3) var(--ease-out) both;display:grid}.pitem-edit-fields{gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.pitem-edit-error{color:var(--danger-strong);font-size:var(--fs-meta);margin:0}.pitem-edit>.btn{justify-self:start}.pitem-actions{align-items:center;gap:var(--sp-1);display:flex}.pitem-actions-spacer{flex:1}.pitem-toggle{align-items:center;gap:var(--sp-2);min-height:36px;padding:0 var(--sp-3) 0 var(--sp-1);border-radius:var(--r-full);background:var(--ok-soft);color:var(--ok-strong);font-size:var(--fs-meta);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-spring);display:inline-flex}.pitem-toggle:active{transform:scale(.95)}.pitem-toggle:focus-visible,.pitem-icon:focus-visible{box-shadow:var(--shadow-focus);outline:none}.pitem-toggle-icon{border-radius:var(--r-full);background:var(--ok);width:28px;height:28px;color:var(--on-accent);transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-3) var(--ease-bounce);place-items:center;display:grid}.pitem-toggle--off{background:var(--surface-3);color:var(--text-2)}.pitem-toggle--off .pitem-toggle-icon{background:var(--line-3);transform:rotate(-90deg)}.pitem-icon{border-radius:var(--r-full);width:36px;height:36px;color:var(--text-2);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);place-items:center;display:grid}.pitem-icon:hover,.pitem-icon[aria-expanded=true]{background:var(--surface-3);color:var(--text)}.pitem-icon--on,.pitem-icon--on:hover{background:var(--inverse-bg);color:var(--inverse-fg)}.proposal-empty,.proposal-error p{color:var(--text-2);font-size:var(--fs-label);margin:0}.proposal-error{justify-items:start;gap:var(--sp-3);display:grid}.sheet-footer:has(>.proposal-footer:empty){display:none}.proposal-footer{width:100%}.proposal-footer-row{gap:var(--sp-2);grid-template-columns:auto minmax(0,1fr);width:100%;display:grid}.proposal-reject{gap:var(--sp-2);width:100%;display:grid}.proposal-reject-title{color:var(--text-2);font-size:var(--fs-meta)}.proposal-reject-chips{gap:var(--sp-1);flex-wrap:wrap;display:flex}.proposal-reject-chip{min-height:34px;padding:0 var(--sp-3);border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface);color:var(--text);font-size:var(--fs-meta);transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out)}.proposal-reject-chip[aria-pressed=true]{border-color:var(--inverse-bg);background:var(--inverse-bg);color:var(--inverse-fg)}.proposal-reject-input{width:100%;min-height:var(--control-h-md);padding:0 var(--sp-3);border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--surface);color:var(--text);font:inherit;font-size:var(--fs-input);transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out)}.proposal-reject-input:focus{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.proposal-reject-actions{justify-content:flex-end;gap:var(--sp-2);display:flex}.proposal-done{justify-items:center;gap:var(--sp-2);padding:var(--sp-8) var(--sp-4);text-align:center;animation:rt-rise-in var(--dur-4) var(--ease-out) both;display:grid}.proposal-done h3{margin:var(--sp-2) 0 0;font-size:var(--fs-title-sm)}.proposal-done p{max-width:360px;color:var(--text-2);font-size:var(--fs-label);margin:0}.proposal-done-mark{border-radius:var(--r-full);background:var(--ok);width:72px;height:72px;color:var(--on-accent);animation:rt-pop-scale var(--dur-5) var(--ease-bounce) both;place-items:center;display:grid;position:relative}.proposal-done-ring{border-radius:var(--r-full);box-shadow:0 0 0 4px var(--ok-ring);animation:rt-ring-out .9s var(--ease-out) .12s both;position:absolute;inset:0}.proposal-done-actions{justify-content:center;gap:var(--sp-2);margin-top:var(--sp-3);flex-wrap:wrap;display:flex}.inbox-page{max-width:var(--content-wide)}.inbox-hero{gap:var(--sp-4);margin-bottom:var(--sp-4);padding:var(--sp-5) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-2xl);background:var(--surface);box-shadow:var(--shadow-2);isolation:isolate;display:grid;position:relative;overflow:hidden}.inbox-hero-glow{z-index:-1;background:radial-gradient(100% 120% at 0% 0%, var(--ok-soft) 0%, transparent 60%), radial-gradient(80% 100% at 100% 0%, var(--accent-soft) 0%, transparent 70%);pointer-events:none;position:absolute;inset:0}.inbox-hero-head{gap:var(--sp-3);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.inbox-hero-text{margin:var(--sp-1) 0 0;color:var(--text);font-size:var(--fs-body);line-height:var(--lh-base)}.inbox-hero-actions{gap:var(--sp-2);display:grid}.inbox-hero-note{align-items:center;gap:var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);display:flex}.inbox-tabs{margin-bottom:var(--sp-4)}.inbox-section+.inbox-section{margin-top:var(--sp-6)}.inbox-section-title{align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-3);font-size:var(--fs-title-sm);font-weight:var(--w-semibold);display:flex}.inbox-section-count{border-radius:var(--r-full);background:var(--surface-3);min-width:24px;height:24px;color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-bold);place-items:center;padding:0 6px;display:inline-grid}.inbox-section--review .inbox-section-count{background:var(--info-soft);color:var(--info-strong)}.inbox-section--ready .inbox-section-count{background:var(--ok-soft);color:var(--ok-strong)}.inbox-grid{gap:var(--sp-3);display:grid}.inbox-card{border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-1);transition:box-shadow var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-out);display:grid;overflow:hidden}.inbox-card:hover{box-shadow:var(--shadow-2)}.inbox-card--deload{background:linear-gradient(180deg, var(--plum-soft) 0%, var(--surface) 52%)}.inbox-card--closed{box-shadow:none}.inbox-card-main{gap:var(--sp-3);padding:var(--sp-4);text-align:left;display:grid}.inbox-card-main:focus-visible{box-shadow:inset var(--shadow-focus);outline:none}.inbox-card-main:active{background:var(--surface-2)}.inbox-card-head{gap:var(--sp-3);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;display:grid}.inbox-card-titles{min-width:0;display:grid}.inbox-card-titles strong{font-size:var(--fs-body)}.inbox-card-titles span{color:var(--text-2);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inbox-card-chevron{color:var(--text-3)}.inbox-card-summary{color:var(--text);font-size:var(--fs-label);line-height:var(--lh-base);margin:0}.inbox-counts{gap:var(--sp-1);flex-wrap:wrap;display:flex}.inbox-count{min-height:26px;padding:0 var(--sp-2);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-caption);align-items:center;gap:4px;display:inline-flex}.inbox-count strong{color:var(--text);font-variant-numeric:tabular-nums}.inbox-count--ok{background:var(--ok-soft);color:var(--ok-strong)}.inbox-count--ok strong{color:var(--ok-strong)}.inbox-count--warn{background:var(--warn-soft);color:var(--warn-strong)}.inbox-count--warn strong{color:var(--warn-strong)}.inbox-count--info{background:var(--info-soft);color:var(--info-strong)}.inbox-count--info strong{color:var(--info-strong)}.inbox-card-foot{justify-content:space-between;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);background:var(--surface-2);flex-wrap:wrap;display:flex}.inbox-card-reason{align-items:center;gap:var(--sp-1);color:var(--text-2);font-size:var(--fs-caption);display:inline-flex}.inbox-card-reason--ok{color:var(--ok-strong)}.inbox-empty{justify-items:center;gap:var(--sp-2);padding:var(--sp-10) var(--sp-4);text-align:center;display:grid}.inbox-empty h2{margin:var(--sp-2) 0 0;font-size:var(--fs-title-sm)}.inbox-empty p{max-width:420px;color:var(--text-2);margin:0}.policy{gap:var(--sp-4);display:grid}.policy-head{justify-content:space-between;align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.policy-head-text{gap:var(--sp-2);max-width:560px;display:grid}.policy-head-text p{color:var(--text-2);font-size:var(--fs-label);line-height:var(--lh-base);margin:0}.policy-head-actions{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.policy-save{align-items:center;gap:var(--sp-1);min-height:28px;padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-medium);opacity:1;transition:opacity var(--dur-3) var(--ease-out), background-color var(--dur-2) var(--ease-out);display:inline-flex}.policy-save[data-state=idle]{opacity:0;pointer-events:none}.policy-save[data-state=saved]{background:var(--ok-soft);color:var(--ok-strong)}.policy-save[data-state=error]{background:var(--danger-soft);color:var(--danger-strong)}.policy-save-dot{border-radius:var(--r-full);width:6px;height:6px;animation:rt-pulse-dot .9s var(--ease-in-out) infinite;background:currentColor}.policy-save-retry{color:inherit;font:inherit;text-decoration:underline}.policy-layout{gap:var(--sp-4);align-items:start;display:grid}.policy-main,.policy-side{gap:var(--sp-4);min-width:0;display:grid}.policy-group{padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface)}.policy-group-head h3{font-size:var(--fs-body);font-weight:var(--w-semibold);margin:0}.policy-group-head p{margin:var(--sp-1) 0 var(--sp-3);color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-base)}.policy-fields{gap:var(--sp-2);display:grid}.policy-field{gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--surface-2);transition:opacity var(--dur-3) var(--ease-out);display:grid}.policy-field--muted{opacity:.45}.policy-field-label{color:var(--text);font-size:var(--fs-label);font-weight:var(--w-semibold)}.policy-field .switch-row{padding:0}.policy-field .segmented{width:100%}.policy-field .stepper{max-width:260px}.policy-field .stepper .stepper-label{display:none}.policy-explain{color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-base);margin:0}.policy-explain--swap{animation:rt-text-swap var(--dur-3) var(--ease-out)}.policy-warn{align-items:center;gap:var(--sp-1);color:var(--warn-strong);font-size:var(--fs-caption);font-weight:var(--w-semibold);display:none}.policy-field[data-warn=true] .policy-warn{animation:rt-text-swap var(--dur-3) var(--ease-out);display:inline-flex}.policy-field[data-warn=true]{background:var(--warn-soft)}.policy-scope{justify-content:space-between;align-items:center;gap:var(--sp-2);padding-top:var(--sp-1);flex-wrap:wrap;display:flex}.policy-scope-label{align-items:center;gap:var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);display:inline-flex}.policy-scope[data-own=true] .policy-scope-label{color:var(--accent-ink);font-weight:var(--w-semibold)}.policy-scope-reset{min-height:28px;padding:0 var(--sp-2);border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-caption);transition:background-color var(--dur-2) var(--ease-out);align-items:center;gap:4px;display:inline-flex}.policy-scope-reset:hover{background:var(--surface-3);color:var(--text)}.ladder{grid-template-columns:repeat(var(--count), minmax(0, 1fr));padding:var(--sp-1) 0;display:grid;position:relative}.ladder-track{top:calc(var(--sp-1) + 15px);right:calc(50% / var(--count));left:calc(50% / var(--count));border-radius:var(--r-full);background:var(--line-2);height:4px;position:absolute}.ladder-fill{width:calc(var(--index) / (var(--count) - 1) * 100%);border-radius:inherit;background:linear-gradient(90deg, var(--ok) 0%, var(--warn) 70%, var(--accent) 100%);height:100%;transition:width var(--dur-4) var(--ease-spring);display:block}.ladder-step{justify-items:center;gap:var(--sp-1);min-height:var(--tap-min);color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-medium);text-align:center;padding:0 2px;display:grid;position:relative}.ladder-dot{border:3px solid var(--line-2);border-radius:var(--r-full);background:var(--surface);width:30px;height:30px;transition:border-color var(--dur-3) var(--ease-out), background-color var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-bounce), box-shadow var(--dur-3) var(--ease-out);display:block}.ladder-step--in{color:var(--text-2)}.ladder-step--in .ladder-dot{border-color:var(--ok);background:var(--ok-soft)}.ladder-step[aria-checked=true]{color:var(--text);font-weight:var(--w-semibold)}.ladder-step[aria-checked=true] .ladder-dot{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 5px var(--accent-ring);transform:scale(1.08)}.ladder-step:focus-visible{outline:none}.ladder-step:focus-visible .ladder-dot{box-shadow:var(--shadow-focus)}.policy-locked-list{gap:var(--sp-2);flex-wrap:wrap;display:flex}.policy-locked{align-items:center;gap:var(--sp-2);min-height:40px;padding:0 var(--sp-3) 0 var(--sp-1);border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface);color:var(--text);font-size:var(--fs-meta);transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-spring);display:inline-flex}.policy-locked:active{transform:scale(.96)}.policy-locked-check{border-radius:var(--r-full);background:var(--surface-3);width:30px;height:30px;color:var(--text-3);transition:background-color var(--dur-2) var(--ease-out);place-items:center;display:grid}.policy-locked-day{color:var(--text-3);font-size:var(--fs-caption)}.policy-locked[aria-pressed=true]{border-color:var(--inverse-bg);background:var(--inverse-bg);color:var(--inverse-fg)}.policy-locked[aria-pressed=true] .policy-locked-check{background:var(--inverse-fg);color:var(--inverse-bg)}.policy-locked[aria-pressed=true] .policy-locked-day{color:var(--inverse-fg-2)}.policy-levels{padding:0 var(--sp-4);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface)}.policy-levels summary{align-items:center;gap:var(--sp-2);min-height:var(--control-h);color:var(--text);font-size:var(--fs-label);font-weight:var(--w-semibold);cursor:pointer;list-style:none;display:flex}.policy-levels summary::-webkit-details-marker{display:none}.policy-levels-chevron{color:var(--text-3);transition:transform var(--dur-3) var(--ease-out);margin-left:auto}.policy-levels[open] .policy-levels-chevron{transform:rotate(180deg)}.policy-levels-list{gap:var(--sp-2);padding:0 0 var(--sp-3);margin:0;list-style:none;display:grid}.policy-levels-list li{padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);gap:2px;display:grid}.policy-levels-list strong{font-size:var(--fs-label)}.policy-levels-list span{color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-base)}.policy-levels-foot{margin:0 0 var(--sp-4);color:var(--text-3);font-size:var(--fs-caption)}.policy-preview{gap:var(--sp-3);display:grid}.policy-preview-head{align-items:center;gap:var(--sp-3);display:flex}.policy-preview-label{color:var(--text-2);font-size:var(--fs-meta)}.policy-preview-body{gap:var(--sp-3);display:grid}.policy-preview-scenario{color:var(--text-2);font-size:var(--fs-meta);margin:0;font-style:italic}.policy-preview-level{justify-content:space-between;align-items:baseline;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--ok-soft);transition:background-color var(--dur-3) var(--ease-out);display:flex}.policy-preview-level span{color:var(--text-2);font-size:var(--fs-meta)}.policy-preview-level strong{font-size:var(--fs-title-sm)}.policy-preview-level--1{background:var(--info-soft)}.policy-preview-level--2{background:var(--warn-soft)}.policy-preview-level--3{background:var(--plum-soft)}.policy-preview-list{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.policy-preview-item{gap:var(--sp-1);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-2);display:grid}.policy-preview-item--same{opacity:.7}.policy-preview-item-head{justify-content:space-between;align-items:baseline;gap:var(--sp-1) var(--sp-2);flex-wrap:wrap;display:flex}.policy-preview-item-head strong{font-size:var(--fs-label)}.policy-preview-item-head span,.policy-preview-same{color:var(--text-3);font-size:var(--fs-caption);font-variant-numeric:tabular-nums}.policy-preview-parts{gap:var(--sp-1);flex-wrap:wrap;display:flex}.policy-part{padding:2px var(--sp-2);border-radius:var(--r-full);background:var(--warn-soft);color:var(--warn-strong);font-size:var(--fs-caption);font-weight:var(--w-semibold);font-variant-numeric:tabular-nums;animation:rt-text-swap var(--dur-3) var(--ease-out)}.policy-part--rir{background:var(--plum-soft);color:var(--plum-strong)}.policy-part--sets{background:var(--info-soft);color:var(--info-strong)}.policy-preview-note,.policy-preview-notify{align-items:flex-start;gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-snug);margin:0;display:flex}.policy-preview-note svg,.policy-preview-notify svg{flex:none;margin-top:2px}.policy-summary{gap:var(--sp-3);display:grid}.policy-summary-ladder{gap:var(--sp-1);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.policy-summary-step{padding:var(--sp-2) var(--sp-1);border-radius:var(--r-md);background:var(--surface-3);color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-medium);text-align:center}.policy-summary-step--in{background:var(--ok-soft);color:var(--ok-strong)}.policy-summary-lines{gap:var(--sp-1);color:var(--text-2);font-size:var(--fs-meta);margin:0;padding:0;list-style:none;display:grid}.policy-summary-link{justify-content:space-between;align-items:center;gap:var(--sp-2);min-height:var(--control-h-md);padding:0 var(--sp-4);border-radius:var(--r-md);background:var(--surface-3);color:var(--text);font-size:var(--fs-label);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);display:inline-flex}.policy-summary-link:hover{background:var(--surface-4)}.policy-summary-link:active{transform:scale(.98)}.prefs{gap:var(--sp-4);display:grid}.prefs-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-2);flex-wrap:wrap;display:flex}.prefs-head .settings-text{margin:0}.prefs-block{gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--surface-2);display:grid}.prefs-title{color:var(--text);font-size:var(--fs-label);font-weight:var(--w-semibold);margin:0}.prefs-row .stepper{max-width:260px}@media (min-width:768px){.detail-hero{padding:var(--sp-6);grid-template-columns:auto minmax(0,1fr) auto}.detail-actions{grid-column:auto;grid-template-columns:repeat(3,96px)}.detail-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.detail-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-routine-hero{grid-template-columns:auto minmax(0,1fr) auto}.detail-routine-actions{grid-column:auto}.detail-days,.inbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inbox-hero{padding:var(--sp-6)}.inbox-hero-actions{grid-template-columns:auto minmax(0,1fr);align-items:center}}@media (max-width:1023px){.policy-main,.policy-side{display:contents}}@media (min-width:1024px){.detail-tabs-host{top:0}.policy--split .policy-layout{grid-template-columns:minmax(0,1fr) 360px}.policy--split .policy-side{top:var(--sp-6);position:sticky}.policy--stacked .policy-layout{grid-template-columns:minmax(0,1fr) 340px}.policy--stacked .policy-side{position:sticky;top:80px}.inbox-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.pane-enter-forward,.pane-enter-back,.pane-leave-forward,.pane-leave-back,.pitem--flash,.pitem-edit,.proposal-done,.proposal-done-mark,.proposal-done-ring,.policy-explain--swap,.policy-part,.policy-save-dot,.pain-meter-cell--on,.collapse-out{animation:none}.detail-tabs-indicator,.ladder-fill,.ladder-dot,.pitem-toggle-icon{transition:none}}.item-sheet .field-note{margin:var(--sp-2) 0 0;color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-base)}.swap-list{gap:var(--sp-2);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.swap-chip{align-items:center;gap:var(--sp-1);min-height:36px;padding:0 var(--sp-1) 0 var(--sp-3);border-radius:var(--r-full);background:var(--surface-3);color:var(--text);font-size:var(--fs-meta);font-weight:var(--w-medium);display:inline-flex}.swap-chip-remove{border-radius:var(--r-full);width:28px;height:28px;color:var(--text-2);transition:background-color var(--dur-2) var(--ease-out);place-items:center;display:grid}.swap-chip-remove:hover{background:var(--surface-4);color:var(--text)}.swap-add{align-items:center;gap:var(--sp-1);min-height:36px;padding:0 var(--sp-3);border:1px dashed var(--line-3);border-radius:var(--r-full);color:var(--accent-ink);font-size:var(--fs-meta);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out);display:inline-flex}.swap-add:hover{border-color:var(--accent);background:var(--accent-soft)}.back-link{align-items:center;gap:var(--sp-1);min-height:var(--control-h-sm);margin:0 0 var(--sp-3) calc(var(--sp-2) * -1);padding:0 var(--sp-2);border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-medium);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);display:inline-flex}.back-link:hover{background:var(--surface-3);color:var(--text)}.back-link:focus-visible{box-shadow:var(--shadow-focus);outline:none}.page--narrow{max-width:680px}.digest-host{margin-bottom:var(--sp-5)}.digest{gap:var(--sp-4);padding:var(--sp-5) var(--sp-4) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-2xl);background:var(--surface);box-shadow:var(--shadow-2);isolation:isolate;display:grid;position:relative;overflow:hidden}.digest-glow{z-index:-1;background:radial-gradient(120% 100% at 0% 0%, var(--accent-soft) 0%, transparent 70%), radial-gradient(90% 100% at 100% 0%, var(--plum-soft) 0%, transparent 70%);pointer-events:none;height:140px;position:absolute;inset:0 0 auto}.digest-head{align-items:flex-start;gap:var(--sp-3);display:flex}.digest-face{flex:none;position:relative}.digest-face:after{content:"";border:2px solid var(--surface);border-radius:var(--r-full);background:var(--ok);width:12px;height:12px;position:absolute;bottom:2px;right:0}.digest-titles{gap:var(--sp-1);min-width:0;display:grid}.digest-headline{color:var(--text);font-size:var(--fs-16);font-weight:var(--w-medium);line-height:var(--lh-snug);text-wrap:pretty}.digest-counts{gap:var(--sp-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.digest-count{padding:var(--sp-3);border-radius:var(--r-lg);background:var(--surface-2);gap:2px;display:grid}.digest-count strong{color:var(--text);font-size:var(--fs-22);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;letter-spacing:var(--ls-title);line-height:var(--lh-tight)}.digest-count span{color:var(--text-2);font-size:var(--fs-caption);line-height:var(--lh-snug)}.digest-alerts{gap:var(--sp-2);display:grid}.digest-alerts:empty{display:none}.digest-calm{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--ok-soft);color:var(--ok-strong);font-size:var(--fs-label);display:flex}.digest-calm[hidden]{display:none}.digest-calm-icon{border-radius:var(--r-full);background:var(--surface);flex:none;place-items:center;width:30px;height:30px;display:grid}.digest-more{justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--control-h-md);padding:0 var(--sp-4);border-radius:var(--r-full);background:var(--surface-3);color:var(--text);font-size:var(--fs-label);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);justify-self:start;display:inline-flex}.digest-more:hover{background:var(--surface-4)}.digest-more:active{transform:scale(.97)}.digest-more:focus-visible{box-shadow:var(--shadow-focus);outline:none}.digest-more .icon{transition:transform var(--dur-2) var(--ease-out)}.digest-more:hover .icon{transform:translate(3px)}.digest--loading .digest-head{align-items:center}.digest-skeleton-face{width:48px;height:48px}.digest-skeleton-lines{gap:var(--sp-2);flex:1;display:grid}.digest-skeleton-count{border-radius:var(--r-lg);height:64px}.digest-skeleton-row{border-radius:var(--r-lg);height:72px}.alert-row{gap:var(--sp-3);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);animation:rt-enter var(--dur-4) var(--ease-out) both;animation-delay:calc(var(--i,0) * 60ms);transition:background-color var(--dur-3) var(--ease-out), border-color var(--dur-3) var(--ease-out);grid-template-columns:auto minmax(0,1fr);display:grid}.alert-row[data-severity=high]{border-color:var(--danger-soft-2);background:var(--danger-soft)}.alert-row--compact{background:var(--surface-2);border-color:#0000}.alert-row--done{border-color:var(--ok-soft-2);background:var(--ok-soft)}.alert-row--leaving{animation:rt-alert-leave .36s var(--ease-in-out) forwards;pointer-events:none;overflow:hidden}.alert-row--back{animation:rt-pop-in var(--dur-4) var(--ease-spring) both}@keyframes rt-alert-leave{0%{max-height:var(--h,160px);opacity:1;transform:none}45%{opacity:0;transform:translate(24px)}to{max-height:0;margin-top:calc(var(--sp-2) * -1);opacity:0;border-width:0;padding-top:0;padding-bottom:0;transform:translate(24px)}}.alert-lead{width:36px;height:36px;position:relative}.alert-lead .avatar{width:36px;height:36px}.alert-icon{border:2px solid var(--surface);border-radius:var(--r-full);place-items:center;width:20px;height:20px;display:grid;position:absolute;bottom:-4px;right:-4px}.alert-lead>.alert-icon:only-child{border:0;width:36px;height:36px;position:static}.alert-icon--info{background:var(--info-soft-2);color:var(--info-strong)}.alert-icon--warn{background:var(--warn-soft-2);color:var(--warn-strong)}.alert-icon--accent{background:var(--accent-soft-2);color:var(--accent-ink)}.alert-icon--danger{background:var(--danger-soft-2);color:var(--danger-strong)}.alert-icon--ok{background:var(--ok-soft-2);color:var(--ok-strong)}.alert-row--compact .alert-icon{border-color:var(--surface-2)}.alert-body{gap:var(--sp-1);min-width:0;display:grid}.alert-heading{justify-content:space-between;align-items:baseline;gap:var(--sp-2);display:flex}.alert-title{color:var(--text);font-size:var(--fs-15);font-weight:var(--w-semibold);line-height:var(--lh-snug)}.alert-when{color:var(--text-3);font-size:var(--fs-caption);flex:none}.alert-text{color:var(--text-2);font-size:var(--fs-label);line-height:var(--lh-snug)}.alert-actions{align-items:center;gap:var(--sp-2);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.alert-actions-spacer{flex:auto}.alert-action{align-items:center;gap:var(--sp-2);min-height:36px;padding:0 var(--sp-3);border:1px solid var(--line-2);border-radius:var(--r-full);background:var(--surface);color:var(--text);font-size:var(--fs-meta);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:inline-flex}.alert-action:hover{background:var(--surface-3)}.alert-action:active,.alert-quiet:active,.alert-snooze:active{transform:scale(.95)}.alert-action:focus-visible,.alert-quiet:focus-visible,.alert-snooze:focus-visible{box-shadow:var(--shadow-focus);outline:none}.alert-action--primary{background:var(--inverse-bg);color:var(--inverse-fg);border-color:#0000}.alert-action--primary:hover{background:var(--inverse-bg);opacity:.9}.alert-action[data-state=done]{background:var(--ok);color:var(--on-accent);border-color:#0000}.alert-quiet{border-radius:var(--r-full);width:36px;height:36px;color:var(--text-3);transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);place-items:center;display:grid}.alert-quiet:hover,.alert-quiet[aria-expanded=true]{background:var(--surface-3);color:var(--text)}.alert-more{align-items:center;gap:var(--sp-2);margin-top:var(--sp-2);padding:var(--sp-2);border-radius:var(--r-md);background:var(--surface-3);flex-wrap:wrap;display:flex}.alert-more[hidden]{display:none}.alert-more--in{animation:rt-rise-in var(--dur-3) var(--ease-out) both}.alert-more-label{padding:0 var(--sp-1);color:var(--text-2);font-size:var(--fs-caption);font-weight:var(--w-semibold)}.alert-snooze{min-height:32px;padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--surface);color:var(--text);font-size:var(--fs-meta);font-weight:var(--w-medium);box-shadow:var(--shadow-1);transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out)}.alert-snooze:hover{background:var(--accent-soft);color:var(--accent-ink)}.for-today .segmented{margin-bottom:var(--sp-5)}.for-today-list{gap:var(--sp-6);display:grid}.for-today-group{gap:var(--sp-3);display:grid}.for-today-group[hidden]{display:none}.for-today-group-title{align-items:center;gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-semibold);display:flex}.for-today-count{min-width:22px;height:22px;padding:0 var(--sp-1);border-radius:var(--r-full);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-caption);place-items:center;display:inline-grid}.for-today-group--high .for-today-count{background:var(--danger-soft);color:var(--danger-strong)}.for-today-group-list{gap:var(--sp-2);display:grid}.for-today-empty,.students-empty{justify-items:center;gap:var(--sp-3);padding:var(--sp-10) var(--sp-4);text-align:center;display:grid}.for-today-empty h2,.students-empty h2{font-size:var(--fs-title-sm)}.for-today-empty p,.students-empty p{max-width:42ch;color:var(--text-2)}.students-empty-actions{justify-content:center;gap:var(--sp-2);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.students-search{flex:auto}.students-filters{padding:0 var(--sp-4) var(--sp-3);scrollbar-width:none;overflow-x:auto}.students-filters::-webkit-scrollbar{display:none}.students-filters .chip-group{flex-wrap:nowrap}.students-list{display:grid}.students-list .skeleton-list{padding:var(--sp-2) var(--sp-4)}.student-row{align-items:center;gap:var(--sp-2);padding-right:var(--sp-3);box-shadow:0 -1px 0 var(--line);transition:background-color var(--dur-2) var(--ease-out);display:flex;position:relative}.student-row:hover{background:var(--surface-2)}.student-row--flash{animation:rt-row-flash 1.8s var(--ease-out)}.student-row-main{align-items:center;gap:var(--sp-3);min-width:0;min-height:68px;padding:var(--sp-3) var(--sp-2) var(--sp-3) var(--sp-4);text-align:left;-webkit-tap-highlight-color:transparent;flex:auto;display:flex}.student-row-main:focus-visible{box-shadow:var(--shadow-focus) inset;outline:none}.student-row-main:active{background:var(--surface-3)}.student-text{flex:auto;gap:2px;min-width:0;display:grid}.student-name{color:var(--text);font-size:var(--fs-15);font-weight:var(--w-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-sub{color:var(--text-2);font-size:var(--fs-meta);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-badges{align-items:flex-end;gap:var(--sp-1);flex-direction:column;flex:none;display:flex}.student-badges:empty{display:none}.avatar--pending{outline:2px dashed var(--info);outline-offset:2px;background:var(--info-soft);color:var(--info-strong)}.student-share{align-items:center;gap:var(--sp-1);min-height:36px;padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--info-soft);color:var(--info-strong);font-size:var(--fs-meta);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);flex:none;display:inline-flex}.student-share:hover{background:var(--info-soft-2)}.student-share:active{transform:scale(.95)}.student-share:focus-visible{box-shadow:var(--shadow-focus);outline:none}@media (max-width:479.98px){.student-badges{display:none}.student-row--attention .student-avatar{position:relative}.student-row--attention .student-avatar:after{content:"";border:2px solid var(--surface);border-radius:var(--r-full);background:var(--warn);width:11px;height:11px;position:absolute;top:-1px;right:-1px}}.student-avatar{flex:none;display:inline-flex}.student-sheet{gap:var(--sp-4);display:grid}.student-sheet-head{align-items:center;gap:var(--sp-3);display:flex}.student-sheet-head div{gap:2px;display:grid}.student-sheet-head strong{font-size:var(--fs-title-sm)}.student-sheet-head span{color:var(--text-2);font-size:var(--fs-label)}.student-sheet-link{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);text-align:left;transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:flex}.student-sheet-link:hover{background:var(--surface-3)}.student-sheet-link:active{transform:scale(.99)}.student-sheet-link:focus-visible{box-shadow:var(--shadow-focus);outline:none}.student-sheet-link>span:nth-child(2){flex:auto;gap:2px;display:grid}.student-sheet-link>span:nth-child(2) span{color:var(--text-2);font-size:var(--fs-meta)}.student-sheet-link>.icon:last-child{color:var(--text-3)}.student-sheet-link-icon{border-radius:var(--r-md);background:var(--accent-soft);width:40px;height:40px;color:var(--accent-ink);flex:none;place-items:center;display:grid}.student-sheet-empty{align-items:center;gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-label);display:flex}.student-sheet-alerts{gap:var(--sp-2);display:grid}.student-sheet-note{color:var(--text-3);font-size:var(--fs-caption);text-align:center}.pending-hero{align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-5);display:flex}.pending-hero .avatar--xl{outline-offset:4px}.pending-hero-text{gap:var(--sp-2);min-width:0;display:grid}.pending-hero-text h1{font-size:var(--fs-title);letter-spacing:var(--ls-title);line-height:var(--lh-tight)}.pending-hero-text p{color:var(--text-2);font-size:var(--fs-label)}.pending-hero-text .pending-hero-problem{padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--warn-soft);color:var(--warn-strong);font-size:var(--fs-meta)}.pending-hero-badges{gap:var(--sp-1);flex-wrap:wrap;display:flex}.pending-grid,.pending-main,.pending-side{align-content:start;gap:var(--sp-4);min-width:0;display:grid}@media (min-width:1024px){.pending-page{max-width:var(--content-wide)}.pending-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start}}.pending-routine-empty{justify-items:start;gap:var(--sp-3);display:grid}.pending-info-list{display:grid}.pending-info-row{gap:var(--sp-2);padding:var(--sp-2) 0;font-size:var(--fs-label);grid-template-columns:minmax(110px,40%) minmax(0,1fr);display:grid}.pending-info-row+.pending-info-row{box-shadow:0 -1px 0 var(--line)}.pending-info-row dt{color:var(--text-2)}.pending-info-row dd{color:var(--text);overflow-wrap:anywhere;margin:0}.pending-pills{gap:var(--sp-1);flex-wrap:wrap;display:flex}.pending-danger{gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-card);background:var(--surface-2);font-size:var(--fs-label);display:grid}.invite-share{gap:var(--sp-4);grid-template-columns:minmax(0,1fr);min-width:0;display:grid;container-type:inline-size}.pending-card,.invite-sheet-body{min-width:0}.invite-link{align-items:center;gap:var(--sp-2);min-height:var(--control-h);padding:var(--sp-1) var(--sp-1) var(--sp-1) var(--sp-3);border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--surface-2);display:flex}.invite-link--expired{border-color:var(--warn-soft-2);background:var(--warn-soft)}.invite-link-icon{color:var(--text-3);flex:none;place-items:center;display:grid}.invite-link-url{min-width:0;color:var(--text);font-family:var(--font-mono);font-size:var(--fs-meta);text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.invite-link-copy{align-items:center;gap:var(--sp-1);min-height:40px;padding:0 var(--sp-3);border-radius:var(--r-md);background:var(--inverse-bg);color:var(--inverse-fg);font-size:var(--fs-meta);font-weight:var(--w-semibold);transition:background-color var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);flex:none;display:inline-flex}.invite-link-copy:active{transform:scale(.95)}.invite-link-copy:focus-visible,.invite-tile:focus-visible{box-shadow:var(--shadow-focus);outline:none}.invite-link-copy[data-state=done]{background:var(--ok);color:var(--on-accent)}.invite-tiles{gap:var(--sp-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.invite-tile{align-items:center;gap:var(--sp-3);min-height:64px;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);text-align:left;transition:background-color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);display:flex}.invite-tile:hover{border-color:var(--line-3);box-shadow:var(--shadow-1)}.invite-tile:active{transform:scale(.97)}.invite-tile[data-state=done]{border-color:var(--ok-soft-2);background:var(--ok-soft)}.invite-tile-icon{border-radius:var(--r-md);background:var(--surface-3);width:40px;height:40px;color:var(--text);flex:none;place-items:center;display:grid}.invite-tile--whatsapp .invite-tile-icon{background:var(--ok-soft);color:var(--ok-strong)}.invite-tile-text{gap:1px;min-width:0;display:grid}.invite-tile-text strong{font-size:var(--fs-label);font-weight:var(--w-semibold)}.invite-tile-text span{color:var(--text-3);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.invite-preview{gap:var(--sp-2);display:grid}.invite-preview-label{color:var(--text-3);font-size:var(--fs-caption);font-weight:var(--w-semibold)}.invite-preview-bubble{max-width:92%;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-xl) var(--r-xl) var(--r-xl) var(--r-xs);background:var(--ok-soft);color:var(--text);font-size:var(--fs-label);line-height:var(--lh-base);overflow-wrap:anywhere;justify-self:start}.invite-foot{justify-content:space-between;align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.invite-expiry{align-items:center;gap:var(--sp-1);color:var(--text-3);font-size:var(--fs-caption);display:inline-flex}.invite-expiry--late{color:var(--warn-strong)}.invite-link-skeleton{height:var(--control-h);border-radius:var(--r-lg)}.invite-tile-skeleton{border-radius:var(--r-lg);height:64px}.sform{gap:var(--sp-5);display:grid}.sform-section{gap:var(--sp-3);display:grid}.sform-section-title{align-items:center;gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-semibold);display:flex}.sform-group{gap:var(--sp-2);min-width:0;display:grid}.sform-label{color:var(--text-2);font-size:var(--fs-label);font-weight:var(--w-semibold)}.sform-hint{color:var(--text-3);font-size:var(--fs-caption)}.sform-row{gap:var(--sp-5);display:grid}@media (min-width:640px){.sform-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.sform-chips{flex-wrap:wrap}.sform-similar:empty{display:none}.sform-similar-note{align-items:flex-start;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--warn-soft);color:var(--warn-strong);font-size:var(--fs-meta);display:flex}.sform-similar-note .icon{flex:none;margin-top:2px}.sform-footer{display:grid}.sform-done{gap:var(--sp-5);animation:rt-rise-in var(--dur-4) var(--ease-out) both;display:grid}.sform-done-head{align-items:center;gap:var(--sp-3);display:flex}.sform-done-head h3{font-size:var(--fs-title-sm)}.sform-done-head p{color:var(--text-2);font-size:var(--fs-label)}.sform-done-check{border-radius:var(--r-full);background:var(--ok);width:48px;height:48px;color:var(--on-accent);flex:none;place-items:center;display:grid}.sform-done-actions{gap:var(--sp-2);display:grid}@media (min-width:640px){.sform-done-actions{grid-template-columns:auto 1fr}}.invite-card .btn+.btn{justify-self:start}@container (width<=440px){.invite-tiles{grid-template-columns:minmax(0,1fr)}.invite-tile{min-height:56px;padding:var(--sp-2) var(--sp-3)}}.style-notes-region,.style-notes{gap:var(--sp-4);display:grid}.style-notes-consent{gap:var(--sp-2);padding:var(--sp-2) var(--sp-4) var(--sp-4);border-radius:var(--r-card);background:var(--surface-2);display:grid}.style-notes-state{color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-snug)}.style-notes-explain{gap:var(--sp-2);color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-base);display:grid}.style-notes-explain ul{gap:var(--sp-1);padding-left:var(--sp-5);margin:0;display:grid}.style-notes-summary{color:var(--text-3);font-size:var(--fs-meta)}.style-notes-list{margin:0;padding:0;list-style:none;display:grid}.style-notes-list[hidden],.style-notes-empty[hidden],.style-notes-clear[hidden]{display:none}.style-note{transition:grid-template-rows var(--dur-3) var(--ease-out), opacity var(--dur-3) var(--ease-out);grid-template-rows:1fr;display:grid}.style-note+.style-note{box-shadow:0 -1px 0 var(--line)}.style-note[data-leaving]{opacity:0;grid-template-rows:0fr}.style-note-body{align-items:center;gap:var(--sp-2) var(--sp-3);min-height:0;padding:var(--sp-3) 0;grid-template-columns:minmax(0,1fr) auto;display:grid;overflow:hidden}.style-note[data-mode=edit] .style-note-body,.style-note[data-mode=delete] .style-note-body{grid-template-columns:minmax(0,1fr)}.style-note-main{gap:var(--sp-2);min-width:0;display:grid}.style-note-text{min-height:var(--tap-min);padding:var(--sp-2) 0;color:var(--text);font:inherit;line-height:var(--lh-snug);text-align:left;cursor:text;border-radius:var(--r-sm);transition:color var(--dur-2) var(--ease-out);background:0 0;border:0;display:block}.style-note-text:hover{color:var(--accent-ink)}.style-note-text:focus-visible{box-shadow:var(--shadow-focus);outline:none}.style-note-text--static{color:var(--text-2);cursor:default;margin:0}.style-note[data-status=muted] .style-note-text{color:var(--text-3)}.style-note-meta{gap:var(--sp-1);flex-wrap:wrap;display:flex}.style-note-actions{align-items:center;gap:var(--sp-2);display:flex}.style-note-edit-actions{justify-content:flex-end;gap:var(--sp-1);flex-wrap:wrap;display:flex}.style-note-confirm{justify-content:space-between;align-items:center;gap:var(--sp-2) var(--sp-3);padding:var(--sp-1) var(--sp-1) var(--sp-1) var(--sp-4);border-radius:var(--r-control);background:var(--danger-soft);color:var(--danger-strong);font-size:var(--fs-label);font-weight:var(--w-medium);flex-wrap:wrap;display:flex}.style-notes-empty{justify-items:center;gap:var(--sp-2);padding:var(--sp-5) var(--sp-4);border-radius:var(--r-card);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-label);text-align:center;display:grid}.style-notes-empty p{max-width:36ch;margin:0}.style-notes-empty-icon{border-radius:var(--r-full);background:var(--accent-soft);width:44px;height:44px;color:var(--accent-ink);place-items:center;display:grid}@media (max-width:480px){.style-note-body{grid-template-columns:minmax(0,1fr)}.style-note-actions{justify-content:space-between}}@media (prefers-reduced-motion:reduce){.style-note{transition:none}}.privacy-card{scroll-margin-top:calc(var(--topbar-h) + var(--sp-4))}.privacy-card.privacy-highlight{animation:privacy-highlight var(--dur-5) var(--ease-out)}@keyframes privacy-highlight{0%{box-shadow:0 0 0 0 var(--accent-ring)}40%{box-shadow:0 0 0 6px var(--accent-ring)}to{box-shadow:var(--shadow-1)}}.privacy-intro{margin:0 0 var(--sp-4);color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-base)}.privacy{gap:var(--sp-4);display:grid}.privacy-block{gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-card);background:var(--surface-2);display:grid}.privacy-block--danger{background:var(--danger-soft)}.privacy-head{gap:var(--sp-3);grid-template-columns:auto 1fr;align-items:start;display:grid}.privacy-head-icon{border-radius:var(--r-full);background:var(--surface);width:32px;height:32px;color:var(--accent-strong);place-items:center;display:grid}.privacy-block--danger .privacy-head-icon{color:var(--danger-strong)}.privacy-head-text{gap:var(--sp-1);display:grid}.privacy-title{font-size:var(--fs-16);font-weight:var(--w-semibold);letter-spacing:var(--ls-title);margin:0}.privacy-subtitle{font-size:var(--fs-14);font-weight:var(--w-semibold);margin:0}.privacy-text,.privacy-note{color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-base);margin:0}.privacy-note{color:var(--text-3)}.privacy-warn{color:var(--danger-strong);font-size:var(--fs-meta);margin:0}.privacy-consents{gap:var(--sp-2);display:grid}.privacy-consent{gap:var(--sp-2);padding:var(--sp-2) var(--sp-3) var(--sp-3);border-radius:var(--r-lg);background:var(--surface);transition:background var(--dur-2) var(--ease-out);display:grid}.privacy-consent--nested{margin-left:var(--sp-4)}.privacy-consent:has(.switch-input:disabled) .switch-row{opacity:.55}.privacy-consent-state{color:var(--text-3);font-size:var(--fs-caption);line-height:var(--lh-snug);margin:0}.privacy-consent-badge{justify-self:start}.privacy-consent-extra:empty{display:none}.privacy-offer{gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-md);background:var(--warn-soft);display:grid;overflow:hidden}.privacy-offer-text{font-size:var(--fs-meta);line-height:var(--lh-base);margin:0}.privacy-offer-actions,.privacy-confirm-actions{gap:var(--sp-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.privacy-collapse{animation:privacy-collapse var(--dur-3) var(--ease-in-out) forwards}@keyframes privacy-collapse{to{opacity:0;max-height:0;padding-top:0;padding-bottom:0;transform:translateY(-4px)scale(.98)}}.privacy-terms{gap:var(--sp-1) var(--sp-2);color:var(--text-2);font-size:var(--fs-meta);grid-template-columns:auto 1fr;align-items:start;display:grid}.privacy-terms>svg{color:var(--ok);margin-top:2px}.privacy-terms .legal-disclosure{grid-column:2}.legal-disclosure{border-radius:var(--r-md)}.legal-summary{gap:var(--sp-1);min-height:var(--tap-min);color:var(--accent-strong);font-size:var(--fs-meta);font-weight:var(--w-medium);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;list-style:none;display:inline-flex}.legal-summary::-webkit-details-marker{display:none}.legal-summary svg{transition:transform var(--dur-3) var(--ease-spring)}.legal-disclosure[open] .legal-summary svg{transform:rotate(180deg)}.legal-summary:focus-visible{box-shadow:var(--shadow-focus);border-radius:var(--r-sm);outline:none}.legal-body{padding:0 0 var(--sp-2)}.legal-disclosure[open] .legal-body{animation:rt-rise-in var(--dur-3) var(--ease-out)}.legal-text{gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-loose);display:grid}.legal-text p{margin:0}.legal-version{color:var(--text-3);font-size:var(--fs-caption)}.legal-error{color:var(--danger-strong)}.privacy-swap{display:grid}.privacy-leave{animation:rt-fade-out var(--dur-2) var(--ease-in-out) forwards}.privacy-enter{animation:rt-rise-in var(--dur-3) var(--ease-out)}.privacy-export{gap:var(--sp-3);display:grid}.privacy-export-bar{border-radius:var(--r-full);background:var(--surface-3);height:6px;position:relative;overflow:hidden}.privacy-export-bar span{border-radius:inherit;background:var(--accent);width:40%;animation:privacy-indeterminate 1.4s var(--ease-in-out) infinite;position:absolute;inset:0 auto 0 0}@keyframes privacy-indeterminate{0%{transform:translate(-100%)}to{transform:translate(260%)}}.privacy-export-ready{gap:var(--sp-3);grid-template-columns:auto 1fr;align-items:center;display:grid}.privacy-export-ready>div{gap:2px;display:grid}.privacy-export-check{border-radius:var(--r-full);background:var(--ok-soft);width:36px;height:36px;color:var(--ok-strong);place-items:center;display:grid}.privacy-files-wrap{gap:var(--sp-2);justify-items:start;display:grid}.privacy-files{gap:var(--sp-1);width:100%;margin:0;padding:0;list-style:none;display:grid}.privacy-file{gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--surface);color:var(--text-2);grid-template-columns:auto 1fr auto;align-items:center;display:grid}.privacy-file-name{min-width:0;font-size:var(--fs-caption);display:grid}.privacy-file-name strong{color:var(--text);font-size:var(--fs-meta);font-weight:var(--w-medium)}.privacy-file-name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.privacy-list{gap:var(--sp-1);padding-left:var(--sp-5);color:var(--text-2);font-size:var(--fs-meta);line-height:var(--lh-base);margin:0;display:grid}.privacy-delete{gap:var(--sp-3);display:grid}.privacy-confirm-wrap{transition:grid-template-rows var(--dur-3) var(--ease-out);grid-template-rows:0fr;display:grid}.privacy-confirm-wrap[data-open]{grid-template-rows:1fr}.privacy-confirm{gap:var(--sp-3);opacity:0;min-height:0;transition:opacity var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-out);display:grid;overflow:hidden;transform:translateY(-6px)}.privacy-confirm-wrap[data-open] .privacy-confirm{opacity:1;transform:none}.privacy-countdown{gap:var(--sp-3);display:grid}.privacy-countdown-top{gap:var(--sp-4);grid-template-columns:auto 1fr;align-items:center;display:grid}.privacy-countdown-text{gap:var(--sp-1);display:grid}.privacy-countdown-label{color:var(--danger-strong);font-size:var(--fs-18);font-weight:var(--w-semibold);letter-spacing:var(--ls-title)}.privacy-ring{place-items:center;width:80px;height:80px;display:grid;position:relative}.privacy-ring-svg{position:absolute;inset:0;transform:rotate(-90deg)}.privacy-ring-track,.privacy-ring-value{fill:none;stroke-width:6px}.privacy-ring-track{stroke:var(--surface)}.privacy-ring-value{stroke:var(--danger);stroke-linecap:round;transition:stroke-dashoffset var(--dur-5) var(--ease-out)}.privacy-ring-number{font-size:var(--fs-24);font-weight:var(--w-bold);font-variant-numeric:tabular-nums;line-height:1}.privacy-ring-unit{color:var(--text-2);font-size:var(--fs-12);position:absolute;bottom:18px}.privacy-ring-number{margin-top:-8px}.consent-sheet{gap:var(--sp-3);display:grid}.consent-sheet-lines{gap:var(--sp-3);margin:0;padding:0;list-style:none;display:grid}.consent-sheet-line{gap:var(--sp-3);font-size:var(--fs-15);line-height:var(--lh-base);grid-template-columns:auto 1fr;align-items:start;display:grid}.consent-sheet-icon{border-radius:var(--r-full);background:var(--accent-soft);width:32px;height:32px;color:var(--accent-strong);place-items:center;display:grid}.consent-sheet-error{color:var(--danger-strong);font-size:var(--fs-meta);margin:0}.consent-sheet-actions{gap:var(--sp-2);justify-content:flex-end;display:flex}.consent-sheet-actions .btn{flex:1 1 0}@media (min-width:720px){.consent-sheet-actions .btn{flex:none}}@media (prefers-reduced-motion:reduce){.privacy-export-bar span{opacity:.5;width:100%;animation:none}.privacy-confirm-wrap,.privacy-confirm,.privacy-ring-value{transition:none}}
