@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/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(/assets/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(/assets/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(/assets/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(/assets/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(/assets/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(/assets/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{--bg:#0b1f2a;--accent:#4caf50;--accent-deep:#1f7a3a;--accent-soft:#4caf502e;--fg-primary:#fff;--fg-secondary:#ffffff9e;--fg-tertiary:#fff6;--fg-on-accent:#fff;--surface:#ffffff0f;--surface-hi:#ffffff1a;--surface-sunken:#ffffff08;--divider:#ffffff14;--stroke-subtle:#ffffff1f;--stroke-accent:#4caf508c;--success:#4caf50;--warning:#ffb74d;--danger:#ef5350;--danger-deep:#c62828;--info:#4caf50;--success-soft:#4caf502e;--warning-soft:#ffb74d2e;--danger-soft:#ef53502e;--info-soft:#4caf502e;--shadow-sm:0 1px 2px #00000059, 0 1px 1px #0003;--shadow-md:0 4px 10px #00000073, 0 2px 4px #0000004d;--shadow-lg:0 12px 28px #0000008c, 0 6px 12px #0006;--shadow-focus:0 0 0 2px var(--bg), 0 0 0 4px var(--accent);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-pill:999px;--font-display:"Inter Variable", ui-rounded, "SF Pro Rounded", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font-body)}*{box-sizing:border-box}html,body,#root{background:var(--bg);min-height:100dvh;color:var(--fg-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;padding:0}button{font-family:inherit}.screen{flex-direction:column;gap:20px;width:100%;max-width:720px;min-height:100dvh;margin:0 auto;padding:24px 20px;display:flex}@media (min-width:768px){.screen{gap:24px;max-width:860px;padding:32px 28px}}@media (min-width:1024px){.screen{gap:28px;max-width:960px;padding:36px 40px}.desktop-shell-canvas .screen{margin:0}}@media (min-width:1600px){.screen{max-width:1080px;padding:40px 48px}}.screen-header{flex-direction:column;gap:6px;display:flex}.screen-header h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:34px;font-weight:800;line-height:1.15}.tagline{color:var(--fg-secondary);margin:0;font-size:15px;line-height:1.45}.screen-footer{color:var(--fg-tertiary);margin-top:auto;font-size:12px}.brand-monogram{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-deep) 100%);color:var(--fg-on-accent);font-family:var(--font-display);-webkit-user-select:none;user-select:none;border-radius:22% 22% 32%;flex-shrink:0;justify-content:center;align-items:center;font-weight:900;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #4caf5059,0 2px 4px #4caf5033}.brand-monogram:before{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff2e 0%,#0000 50%);position:absolute;inset:0}.brand-monogram>span{line-height:1;position:relative;transform:translate(4%)}.brand-monogram--breathing{animation:.85s ease-in-out infinite alternate brand-breathe}@keyframes brand-breathe{0%{transform:scale(1)}to{transform:scale(1.06)}}.brand-wordmark{font-family:var(--font-display);color:var(--fg-primary);align-items:center;gap:12px;font-weight:700;display:inline-flex}.snap-button,.btn-primary{appearance:none;background:linear-gradient(180deg, var(--accent) 0%, var(--accent-deep) 100%);color:var(--fg-on-accent);font-family:var(--font-display);letter-spacing:-.01em;border-radius:var(--radius-lg);cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:12px 20px;font-size:16px;font-weight:600;transition:transform .12s,box-shadow .12s,filter .12s,background .12s;display:inline-flex;box-shadow:0 4px 14px #4caf504d,inset 0 1px #ffffff26}.snap-button:not(.btn-primary):not(.btn-secondary):not(.btn-tertiary):not(.btn-danger):not(.btn-ghost):not(.btn-icon){min-height:50px;padding:14px 20px;font-size:17px}.snap-button:hover:not(:disabled),.btn-primary:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 6px 18px #4caf5066,inset 0 1px #ffffff2e}.snap-button:active:not(:disabled),.btn-primary:active:not(:disabled){filter:brightness(.95);transform:scale(.98)}.snap-button:disabled,.btn-primary:disabled{background:var(--surface-hi);color:var(--fg-tertiary);box-shadow:none;cursor:not-allowed}.btn-tertiary{appearance:none;color:var(--fg-primary);font-family:var(--font-display);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:12px 14px;font-size:15px;font-weight:600;transition:background .12s,transform .12s;display:inline-flex}.btn-tertiary:hover:not(:disabled){background:var(--surface-sunken)}.btn-tertiary:active:not(:disabled){transform:scale(.98)}.btn-tertiary:disabled{color:var(--fg-tertiary);cursor:not-allowed}.btn-danger{appearance:none;background:linear-gradient(180deg, var(--danger) 0%, var(--danger-deep) 100%);color:var(--fg-on-accent);font-family:var(--font-display);letter-spacing:-.01em;border-radius:var(--radius-lg);cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:12px 20px;font-size:16px;font-weight:600;transition:transform .12s,box-shadow .12s,filter .12s;display:inline-flex;box-shadow:0 4px 14px #ef53504d,inset 0 1px #ffffff26}.btn-danger:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 6px 18px #ef535066,inset 0 1px #ffffff2e}.btn-danger:active:not(:disabled){transform:scale(.98)}.btn-danger:disabled{background:var(--surface-hi);color:var(--fg-tertiary);box-shadow:none;cursor:not-allowed}.btn-ghost{appearance:none;color:var(--accent);font-family:var(--font-display);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:10px 14px;font-size:15px;font-weight:600;transition:background .12s,color .12s,transform .12s;display:inline-flex}.btn-ghost:hover:not(:disabled){background:var(--accent-soft);color:var(--fg-primary)}.btn-ghost:active:not(:disabled){transform:scale(.98)}.btn-ghost:disabled{color:var(--fg-tertiary);cursor:not-allowed}.btn-icon{appearance:none;color:var(--fg-secondary);cursor:pointer;border-radius:var(--radius-md);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;width:40px;height:40px;min-height:40px;padding:0;transition:background .12s,color .12s,transform .12s,border-color .12s;display:inline-flex}.btn-icon:hover:not(:disabled){background:var(--surface);color:var(--fg-primary)}.btn-icon:active:not(:disabled){transform:scale(.95)}.btn-icon:disabled{color:var(--fg-tertiary);cursor:not-allowed}.btn-secondary{appearance:none;border:1px solid var(--stroke-subtle);color:var(--fg-primary);font-family:var(--font-display);border-radius:var(--radius-lg);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:12px 20px;font-size:16px;font-weight:600;transition:background .12s,border-color .12s,transform .12s;display:inline-flex}.btn-secondary:hover:not(:disabled){background:var(--surface);border-color:var(--stroke-accent)}.btn-secondary:active:not(:disabled){transform:scale(.98)}.btn-secondary:disabled{color:var(--fg-tertiary);cursor:not-allowed}.btn-sm{min-height:36px;padding:8px 14px;font-size:14px}.btn-lg{min-height:52px;padding:16px 24px;font-size:18px}.btn-icon.btn-sm{width:32px;height:32px;min-height:32px}.btn-icon.btn-lg{width:48px;height:48px;min-height:48px}.btn-loading{pointer-events:none;cursor:progress;position:relative;color:#0000!important}.btn-loading:after{content:"";width:18px;height:18px;color:var(--fg-on-accent);border:2px solid;border-top-color:#0000;border-radius:50%;animation:.72s linear infinite btn-spin;position:absolute}.btn-ghost.btn-loading:after{color:var(--accent)}.btn-tertiary.btn-loading:after,.btn-secondary.btn-loading:after,.btn-icon.btn-loading:after{color:var(--fg-primary)}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn-success{background:linear-gradient(180deg, var(--success) 0%, #2e7d32 100%)!important;color:var(--fg-on-accent)!important}.btn-success:after{content:"✓";justify-content:center;align-items:center;margin-left:4px;font-weight:700;display:inline-flex}.snap-button.selected.correct{border:2px solid var(--success);box-shadow:0 0 0 3px color-mix(in srgb, var(--success) 25%, transparent), inset 0 1px 0 #ffffff2e}.snap-button.selected.correct:after{content:"✓";color:var(--success);margin-left:6px;font-weight:700}.snap-button.selected.incorrect{border:2px solid var(--danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 25%, transparent), inset 0 1px 0 #ffffff2e}.snap-button.selected.incorrect:after{content:"✗";color:var(--danger);margin-left:6px;font-weight:700}.snap-button.muted{filter:brightness(.55)saturate(.6);opacity:.7}.link-button{appearance:none;color:var(--accent);cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:6px;padding:4px 0;font-size:14px;font-weight:500;transition:color .12s;display:inline-flex}.link-button:hover{color:var(--fg-primary)}.error{color:var(--danger);margin:0;font-size:14px}.card{background:var(--surface);border:1px solid var(--stroke-subtle);border-radius:var(--radius-lg);padding:var(--space-4);transition:transform .12s,box-shadow .12s,border-color .12s,background .12s}.card-elevated{background:var(--surface-hi);box-shadow:var(--shadow-md);border-color:#0000}.card-elevated:hover{box-shadow:var(--shadow-lg)}.card-interactive{cursor:pointer}.card-interactive:hover{border-color:var(--stroke-accent);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.card-interactive:active{transform:translateY(0)}.card-selected{border:2px solid var(--accent);background:var(--accent-soft)}.card--emphasized{background:var(--surface-hi);border-color:var(--stroke-accent)}.card-sm{padding:var(--space-3)}.card-md{padding:var(--space-4)}.card-lg{padding:var(--space-6)}.card-xl{padding:var(--space-8)}.badge{font-family:var(--font-display);letter-spacing:.02em;text-transform:uppercase;border-radius:var(--radius-pill);white-space:nowrap;border:1px solid #0000;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;line-height:1.4;display:inline-flex}.badge--neutral{background:var(--surface-hi);color:var(--fg-secondary);border-color:var(--stroke-subtle)}.badge--success{background:var(--success-soft);color:var(--success);border-color:#4caf5059}.badge--warning{background:var(--warning-soft);color:var(--warning);border-color:#ffb74d59}.badge--danger{background:var(--danger-soft);color:var(--danger);border-color:#ef535059}.badge--info{background:var(--info-soft);color:var(--info);border-color:#4caf5059}.chip{background:var(--accent-soft);color:var(--fg-primary);border-radius:var(--radius-pill);font-family:var(--font-display);letter-spacing:.01em;text-transform:capitalize;cursor:pointer;border:none;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:600;transition:background .12s,color .12s,transform .12s;display:inline-flex}.chip:hover{background:color-mix(in srgb, var(--accent) 60%, var(--accent-soft));color:#fff}.chip:active{transform:scale(.98)}.chip-active{background:var(--accent);color:#fff}.chip-sm{padding:2px 8px;font-size:10px;font-weight:600}.chip-lg{padding:6px 14px;font-size:14px;font-weight:600}.chip-icon{align-items:center;gap:6px;display:inline-flex}.chip-icon>svg,.chip-icon>.icon{width:12px;height:12px;color:var(--fg-secondary);flex-shrink:0}.chip-count{min-width:18px;height:18px;color:var(--fg-primary);border-radius:var(--radius-pill);text-transform:none;letter-spacing:0;background:#00000040;justify-content:center;align-items:center;margin-left:2px;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex}.chip-dismiss{padding-right:6px}.chip-dismiss:after{content:"×";width:16px;height:16px;color:var(--fg-secondary);background:#0003;border-radius:50%;justify-content:center;align-items:center;margin-left:4px;font-size:14px;line-height:1;transition:background .12s,color .12s;display:inline-flex}.chip-dismiss:hover:after{color:var(--fg-primary);background:#0006}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.activity-search{margin-bottom:10px;position:relative}.activity-search-input{appearance:none;border:1px solid var(--stroke-subtle);background:var(--surface);width:100%;color:var(--fg-primary);font:inherit;border-radius:var(--radius-btn);padding:10px 36px 10px 14px;font-size:15px;transition:border-color .2s,box-shadow .2s}.activity-search-input:focus{border-color:var(--stroke-accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.activity-search-input::placeholder{color:var(--fg-tertiary)}.activity-search-clear{appearance:none;background:var(--surface-hi);color:var(--fg-secondary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;line-height:1;transition:background .15s,color .15s;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.activity-search-clear:hover{background:var(--accent);color:#fff}.activity-library{flex-direction:column;gap:10px;max-height:420px;padding-right:4px;display:flex;overflow-y:auto}@media (min-width:768px){.activity-library{grid-template-columns:1fr 1fr;gap:12px;max-height:520px;display:grid}}.activity-card{padding:14px;transition:border-color .15s,box-shadow .15s}.activity-card:hover{border-color:var(--stroke-accent);box-shadow:0 2px 8px #0003}.activity-card-header{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.activity-card-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.activity-card-area{letter-spacing:.04em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:600;font-family:var(--font-mono)}.activity-add-btn{appearance:none;border:1px solid var(--stroke-accent);color:var(--accent);font-family:var(--font-display);cursor:pointer;background:0 0;border-radius:999px;flex-shrink:0;padding:6px 14px;font-size:13px;font-weight:600;transition:background .15s,color .15s,border-color .15s}.activity-add-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.activity-add-btn:active{transform:scale(.96)}.activity-card-materials{margin-bottom:0;font-size:14px;line-height:1.4}.activity-empty{text-align:center;color:var(--fg-tertiary);padding:32px 16px;font-style:italic}.avatar{background:linear-gradient(135deg, var(--avatar-from,var(--accent)) 0%, var(--avatar-to,var(--accent-deep)) 100%);color:#fff;font-family:var(--font-display);-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}.avatar:before{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff2e 0%,#0000 50%);position:absolute;inset:0}.avatar>span{text-shadow:0 1px 1px #0003;line-height:1;position:relative}.onboarding{justify-content:space-between;align-items:stretch}.onboarding-eyebrow{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-tertiary);margin:0;font-size:13px;font-weight:700}.onboarding-slide{flex-direction:column;flex:1;justify-content:center;gap:14px;padding:24px 0;display:flex}.onboarding-title{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:34px;font-weight:800;line-height:1.15}.onboarding-body{color:var(--fg-secondary);margin:0;font-size:17px;line-height:1.55}.onboarding-body p{margin:8px 0}.onboarding-body--scrollable{max-height:min(60vh,200px);padding-right:8px;overflow-y:auto}.onboarding-body-spacer{min-height:160px}.onboarding-dots{justify-content:center;gap:8px;padding:12px 0;display:flex}.onboarding-dot{background:var(--surface-hi);border-radius:999px;width:8px;height:8px;transition:background .12s,transform .12s}.onboarding-dot.is-active{background:var(--accent);transform:scale(1.25)}.onboarding-actions{flex-direction:column;gap:12px;padding-bottom:8px;display:flex}.onboarding-actions .link-button{align-self:center;font-size:15px}.onboarding-toggle-row{border:1px solid var(--stroke-subtle);background:var(--surface);border-radius:12px;flex-direction:column;gap:8px;padding:14px 16px;font-size:14px;line-height:1.4;display:flex}.onboarding-toggle{align-items:center;gap:10px;margin-top:6px;display:flex}.auth{align-items:stretch}.auth-hero{flex-direction:column;align-items:flex-start;gap:18px;padding:24px 0 8px;display:flex}.auth h1{margin:0}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-form label,.form-screen label{font-family:var(--font-display);color:var(--fg-secondary);letter-spacing:.01em;flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.auth-form input:not([type=checkbox]):not([type=radio]),.form-screen input:not([type=checkbox]):not([type=radio]),.form-screen textarea,.form-screen select{appearance:none;border:1px solid var(--stroke-subtle);background:var(--surface);color:var(--fg-primary);border-radius:12px;padding:14px 16px;font-family:inherit;font-size:16px;transition:border-color .12s,box-shadow .12s,background .12s}.auth-form input::placeholder,.form-screen input::placeholder,.form-screen textarea::placeholder{color:var(--fg-tertiary)}.auth-form input:not([type=checkbox]):not([type=radio]):focus,.form-screen input:not([type=checkbox]):not([type=radio]):focus,.form-screen textarea:focus,.form-screen select:focus{border-color:var(--stroke-accent);background:var(--surface-hi);box-shadow:0 0 0 3px var(--accent-soft);outline:none}input[type=checkbox],input[type=radio]{accent-color:var(--accent);cursor:pointer;flex-shrink:0;width:18px;height:18px}.eval-form{flex-direction:column;gap:16px;display:flex}.eval-section{padding:20px}.eval-section h3{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-secondary);margin-top:0;margin-bottom:14px;font-size:13px;font-weight:600}.eval-field{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.eval-field:last-child{margin-bottom:0}.eval-field-label{color:var(--fg-secondary);font-size:13px;font-weight:500}.eval-field textarea,.eval-field input{appearance:none;border:1px solid var(--stroke-subtle);background:var(--surface);color:var(--fg-primary);font:inherit;border-radius:var(--radius-btn);resize:vertical;padding:12px 14px;font-size:15px;transition:border-color .2s,box-shadow .2s,background .2s}.eval-field textarea:focus,.eval-field input:focus{border-color:var(--stroke-accent);background:var(--surface-hi);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.form-screen textarea{resize:vertical;min-height:100px}.auth-divider{color:var(--fg-tertiary);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:12px;margin:4px 0;font-size:12px;font-weight:500;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--divider);flex:1;height:1px}.auth-apple,.auth-google{appearance:none;border:1px solid var(--stroke-subtle);background:var(--surface);color:var(--fg-primary);font-family:var(--font-display);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:50px;padding:14px 18px;font-size:16px;font-weight:600;transition:background .12s,border-color .12s,transform .12s;display:inline-flex}.auth-apple:hover:not(:disabled),.auth-google:hover:not(:disabled){background:var(--surface-hi);border-color:var(--stroke-accent)}.auth-apple:active:not(:disabled),.auth-google:active:not(:disabled){transform:scale(.98)}.auth-apple:disabled,.auth-google:disabled{opacity:.5;cursor:progress}.auth-confirm{border:1px solid var(--stroke-subtle);background:var(--surface);border-radius:14px;flex-direction:column;gap:14px;padding:18px;line-height:1.5;display:flex}.auth-confirm p{color:var(--fg-secondary);margin:0;font-size:15px}.caseload{align-items:stretch}.caseload-list{flex-direction:column;gap:10px;display:flex}.caseload-row{appearance:none;border:1px solid var(--stroke-subtle);background:var(--surface);cursor:pointer;text-align:left;color:inherit;font:inherit;border-radius:14px;align-items:center;gap:14px;width:100%;padding:14px 16px;transition:background .12s,border-color .12s,transform .12s;display:flex}.caseload-row:hover{background:var(--surface-hi);border-color:var(--stroke-accent)}.caseload-row:active{transform:scale(.99)}label.caseload-row{cursor:pointer}.caseload-row-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.caseload-row-main{justify-content:space-between;align-items:center;gap:8px;display:flex}.caseload-row-name{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg-primary);font-size:17px;font-weight:600}.caseload-row-meta{color:var(--fg-secondary);font-size:13px}.caseload-chip{background:var(--accent-soft);color:var(--fg-primary);font-family:var(--font-display);letter-spacing:.02em;text-transform:capitalize;border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.caseload-chevron{color:var(--fg-tertiary);flex-shrink:0;font-size:18px}.form-screen{align-items:stretch}.form-screen form{flex-direction:column;gap:16px;display:flex}.form-fieldset{border:1px solid var(--stroke-subtle);background:var(--surface);border-radius:14px;flex-direction:column;gap:12px;margin:0;padding:16px;display:flex}.form-fieldset legend{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-tertiary);padding:0 4px;font-size:13px;font-weight:700}.form-actions{flex-direction:column;gap:10px;margin-top:16px;display:flex}.handoff object{border:1px solid var(--stroke-subtle);background:var(--surface);border-radius:14px}.button-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.button-row .btn-secondary{width:100%}.student-hero{align-items:flex-start;gap:16px;padding:8px 0 4px;display:flex}.student-hero-text{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.student-hero-text h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:32px;font-weight:800;line-height:1.1}.settings-hero{align-items:center;gap:14px;padding:8px 0 4px;display:flex}.settings-hero h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:28px;font-weight:800}.settings-hero .tagline{margin:4px 0 0}.plan-summary{flex-direction:column;gap:16px;display:flex}.plan-summary-header{justify-content:space-between;align-items:center;display:flex}.plan-edit-btn{appearance:none;border:1px solid var(--stroke-accent);color:var(--accent);font-family:var(--font-display);border-radius:var(--radius-btn);cursor:pointer;background:0 0;padding:8px 16px;font-size:13px;font-weight:600;transition:background .15s,color .15s}.plan-edit-btn:hover{background:var(--accent);color:#fff}.plan-summary-section{flex-direction:column;gap:8px;display:flex}.plan-summary-label{color:var(--fg-tertiary);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:700;font-family:var(--font-mono);margin:0}.plan-summary-text{color:var(--fg-primary);white-space:pre-wrap;margin:0;font-size:15px;line-height:1.6}.plan-summary-activities{flex-direction:column;gap:10px;display:flex}@media (min-width:768px){.plan-summary-activities{grid-template-columns:1fr 1fr;gap:12px;display:grid}}.plan-summary-activity{background:var(--surface-card);border:1px solid var(--stroke-subtle);border-radius:var(--radius-card);flex-direction:column;gap:6px;padding:14px;display:flex}.plan-summary-activity-head{justify-content:space-between;align-items:baseline;display:flex}.plan-summary-activity-name{color:var(--fg-primary);font-size:15px;font-weight:600}.plan-summary-activity-duration{color:var(--fg-tertiary);font-size:12px;font-family:var(--font-mono);flex-shrink:0;font-weight:500}.plan-summary-activity-detail{color:var(--fg-secondary);margin:0;font-size:13px;line-height:1.5}.plan-summary-activity-detail strong{color:var(--fg-primary);font-weight:600}.plan-summary-prompts{color:var(--fg-primary);margin:0;padding-left:18px;font-size:14px;line-height:1.6}.plan-form-header{justify-content:space-between;align-items:center;display:flex}.parent-share{margin-top:8px}.parent-share-actions{flex-wrap:wrap;gap:10px;display:flex}.parent-share-btn{appearance:none;border:1px solid var(--stroke-accent);color:var(--accent);font-family:var(--font-display);border-radius:var(--radius-btn);cursor:pointer;background:0 0;padding:10px 18px;font-size:14px;font-weight:600;transition:background .15s,color .15s}.parent-share-btn:hover{background:var(--accent);color:#fff}.parent-share-btn:active{transform:scale(.97)}.plan-form{flex-direction:column;gap:18px;display:flex}@media (min-width:1024px){.plan-form{grid-template-columns:1fr 1fr;gap:18px 24px;display:grid}.plan-form>h2,.plan-form>.form-actions,.plan-form>.parent-share,.plan-form>.plan-form-header,.plan-form>.plan-activity-card{grid-column:1/-1}}.plan-form-field{flex-direction:column;gap:6px;display:flex}@media (min-width:1024px){.plan-form-field--full{grid-column:1/-1}}.plan-form-hint{color:var(--fg-tertiary);margin:0;font-size:13px;line-height:1.4}.plan-prompt-row{align-items:flex-start;gap:8px;display:flex;position:relative}.plan-prompt-row .plan-form-textarea{flex:1}.plan-prompt-remove{appearance:none;background:var(--surface-hi);color:var(--fg-secondary);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;margin-top:8px;font-size:14px;line-height:1;transition:background .15s,color .15s;display:flex}.plan-prompt-remove:hover{color:var(--danger);background:#ef535033}.plan-prompt-add{align-self:flex-start;font-size:13px}.plan-form-label{color:var(--fg-secondary);letter-spacing:.02em;text-transform:uppercase;font-size:13px;font-weight:600;font-family:var(--font-mono)}.plan-form-input,.plan-form-textarea{appearance:none;border:1px solid var(--stroke-subtle);background:var(--surface-sunken);color:var(--fg-primary);font:inherit;border-radius:var(--radius-btn);padding:10px 14px;font-size:15px;line-height:1.45;transition:border-color .2s,box-shadow .2s,background .2s}.plan-form-input:focus,.plan-form-textarea:focus{border-color:var(--stroke-accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.plan-form-input::placeholder,.plan-form-textarea::placeholder{color:var(--fg-tertiary)}.plan-form-input--narrow{width:100px}.plan-form-textarea{resize:vertical;min-height:60px}.plan-activity-card{background:var(--surface-sunken);border:1px solid var(--stroke-subtle);border-radius:14px;flex-direction:column;gap:14px;padding:16px;transition:border-color .15s;display:flex}.plan-activity-card:focus-within{border-color:var(--stroke-accent)}@media (min-width:1024px){.plan-activity-card{grid-template-columns:1fr 1fr;gap:14px 18px;display:grid}.plan-activity-header{grid-column:1/-1}}.plan-activity-header{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.plan-activity-number{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-tertiary);font-size:12px;font-weight:600}.plan-activity-remove{appearance:none;color:var(--danger);font-family:var(--font-display);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:13px;font-weight:500;transition:background .15s}.plan-activity-remove:hover{background:#ef535026}.student-notes-card{align-items:flex-start;gap:10px;margin-top:14px;display:flex}.student-notes-icon{flex-shrink:0;font-size:16px;line-height:1.4}.student-notes-text{color:var(--fg-primary);margin:0;font-size:15px;line-height:1.5}.next-session-card{cursor:pointer;text-align:left;align-items:center;gap:12px;width:100%;margin-top:12px;transition:border-color .14s,background .14s;display:flex}.next-session-card:hover{border-color:var(--stroke-accent);background:var(--surface-hi)}.next-session-icon{background:var(--accent-soft);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.next-session-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.next-session-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-secondary);font-size:11px;font-weight:700}.next-session-date{color:var(--fg-primary);font-size:15px;font-weight:600}.admin-nav{flex-wrap:wrap;gap:8px;padding:4px 0;display:flex}.admin-nav-link{appearance:none;background:var(--surface);border:1px solid var(--stroke-subtle);color:var(--fg-secondary);font-family:var(--font-display);cursor:pointer;border-radius:12px;padding:10px 16px;font-size:14px;font-weight:600;transition:background .12s,border-color .12s,color .12s}.admin-nav-link:hover{background:var(--surface-hi);color:var(--fg-primary)}.admin-nav-link.active{background:var(--accent-soft);border-color:var(--stroke-accent);color:var(--fg-primary)}.admin-pane{flex-direction:column;gap:20px;display:flex}.admin-table{border-collapse:collapse;width:100%;font-size:14px}.admin-table th{text-align:left;font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-tertiary);border-bottom:1px solid var(--stroke-subtle);padding:10px 12px;font-size:12px;font-weight:700}.admin-table td{border-bottom:1px solid var(--divider);color:var(--fg-primary);vertical-align:middle;padding:12px}.admin-table tr:last-child td{border-bottom:0}.admin-table code{font-family:var(--font-mono);background:var(--surface-hi);border-radius:6px;padding:2px 6px;font-size:13px}.admin-section{flex-direction:column;gap:12px;display:flex}.admin-section h2{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:20px;font-weight:700}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:0;display:grid}.metric{background:var(--surface);border:1px solid var(--stroke-subtle);border-radius:14px;flex-direction:column;gap:4px;padding:16px;display:flex}.metric dt{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-tertiary);margin:0;font-size:12px;font-weight:600}.metric dd{font-family:var(--font-display);letter-spacing:-.02em;color:var(--fg-primary);margin:0;font-size:28px;font-weight:800}.settings-list{flex-direction:column;gap:12px;margin:0;display:flex}.settings-list>div{background:var(--surface);border:1px solid var(--stroke-subtle);border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.settings-list dt{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-tertiary);margin:0;font-size:12px;font-weight:600}.settings-list dd{color:var(--fg-primary);margin:0;font-size:15px}.settings-list code{font-family:var(--font-mono);word-break:break-all;font-size:13px}.form-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.form-row input{flex:1;min-width:200px}.success{color:var(--success);margin:0;font-size:14px}.code-link{appearance:none;color:var(--accent);font-family:var(--font-mono);cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;font-weight:600;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:text-decoration-color .12s}.code-link:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.stack-sm{flex-direction:column;gap:8px;display:flex}.stack-md{flex-direction:column;gap:14px;display:flex}.stack-lg{flex-direction:column;gap:20px;display:flex}.demo-banner{z-index:5;background:var(--accent-soft);border:1px solid var(--stroke-accent);border-radius:12px;padding:12px 16px;font-size:14px;line-height:1.4;position:sticky;top:0}.demo-flow{flex-direction:column;gap:6px;margin:0;padding-left:20px;display:flex}.goal-trend-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.goal-trend-row{border-bottom:1px solid var(--stroke-subtle);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.goal-trend-row:last-child{border-bottom:none}.marketing-section{flex-direction:column;gap:16px;padding:8px 0;display:flex}.marketing-section h2{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg-primary);margin:0;font-size:24px;font-weight:700}.handoff .paywall-hero{text-align:center;align-items:center;gap:16px;padding:40px 28px}.handoff .paywall-hero-headline{font-size:30px}@media (min-width:768px){.handoff .paywall-hero-headline{font-size:38px}}.handoff .paywall-hero-subhead{max-width:520px;margin:0 auto}.handoff .marketing-hero-cta{min-width:220px;margin-top:8px}.process-steps{flex-direction:column;gap:20px;display:flex}.process-steps-header h2{margin:0}.process-steps-list{grid-template-columns:1fr;gap:14px;margin:0;padding:0;list-style:none;display:grid}@media (min-width:768px){.process-steps-list{grid-template-columns:repeat(3,1fr)}}.process-step{background:var(--surface);border:1px solid var(--stroke-subtle);border-radius:16px;flex-direction:column;align-items:flex-start;gap:12px;padding:20px;display:flex}.process-step-number{background:var(--accent);width:36px;height:36px;color:var(--fg-on-accent);font-family:var(--font-display);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.process-step-illustration{justify-content:center;align-items:center;width:60px;height:60px;display:flex}.process-step-illustration svg{display:block}.process-step-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg-primary);margin:0;font-size:17px;font-weight:700}.process-step-body{color:var(--fg-secondary);margin:0;font-size:14px;line-height:1.5}.preview-cards{grid-template-columns:1fr;gap:14px;display:grid}@media (min-width:768px){.preview-cards{grid-template-columns:repeat(3,1fr)}}@media (min-width:1280px){.preview-cards{max-width:1080px}}.preview-card{background:var(--surface);border:1px solid var(--stroke-subtle);border-radius:16px;flex-direction:column;gap:12px;padding:20px;display:flex}.preview-card-thumb{background:var(--surface-sunken);border-radius:8px;justify-content:center;align-items:center;width:100%;max-width:160px;height:90px;display:flex}.preview-card-thumb svg{max-width:100%;height:auto;display:block}.preview-card-title{font-family:var(--font-display);color:var(--fg-primary);margin:0;font-size:16px;font-weight:700}.preview-card-body{color:var(--fg-secondary);margin:0;font-size:14px;line-height:1.5}.preview-card-caption{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-tertiary);margin:0;font-size:11px;font-weight:500}.trust-cards-grid{grid-template-columns:1fr;gap:14px;display:grid}@media (min-width:768px){.trust-cards-grid{grid-template-columns:repeat(2,1fr)}}.trust-card{background:var(--surface);border:1px solid var(--stroke-subtle);border-radius:16px;flex-direction:column;gap:10px;padding:20px;display:flex}.trust-card-illustration{background:var(--accent-soft);border-radius:12px;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.trust-card-illustration svg{display:block}.trust-card-title{font-family:var(--font-display);color:var(--fg-primary);margin:0;font-size:16px;font-weight:700}.trust-card-body{color:var(--fg-secondary);margin:0;font-size:14px;line-height:1.5}.trusted-by{background:var(--surface-sunken);border:1px dashed var(--stroke-subtle);border-radius:16px;flex-direction:column;gap:14px;padding:20px;display:flex}.trusted-by-row{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}@media (min-width:768px){.trusted-by-row{grid-template-columns:repeat(5,1fr)}}.trusted-by-logo{background:var(--surface);border:1px dashed var(--stroke-subtle);height:44px;color:var(--fg-tertiary);letter-spacing:.04em;border-radius:10px;justify-content:center;align-items:center;font-size:11px;font-weight:500;display:flex}.trusted-by-caption{color:var(--fg-tertiary);text-align:center;margin:0;font-size:13px;line-height:1.5}.trusted-by-caption a{color:var(--fg-secondary);text-decoration:underline;-webkit-text-decoration-color:var(--stroke-subtle);text-decoration-color:var(--stroke-subtle)}.handoff-bottom-cta{background:var(--surface);border:1px solid var(--stroke-subtle);border-radius:18px;flex-direction:column;align-items:center;gap:12px;padding:24px 20px;display:flex}.handoff-bottom-cta-text{font-family:var(--font-display);color:var(--fg-primary);text-align:center;margin:0;font-size:18px;font-weight:700}.handoff-bottom-cta-button{min-width:220px}.dropoff-chart{flex-direction:column;gap:8px;display:flex}.dropoff-chart-scroll{max-width:100%;overflow:auto hidden}.dropoff-chart svg{display:block}.dropoff-chart-legend{margin:0}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:32px 20px;display:flex}.empty-state-illustration{justify-content:center;align-items:center;width:72px;height:72px;display:flex}.empty-state-illustration svg{display:block}.empty-state-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg-primary);margin:4px 0 0;font-size:22px;font-weight:600}.empty-state-body{color:var(--fg-secondary);max-width:360px;margin:0;font-size:15px;line-height:1.4}.empty-state-cta{min-width:200px;margin-top:8px}.skeleton{flex-direction:column;gap:12px;padding:16px 0;display:flex}.skeleton-boot{justify-content:center;align-items:center;min-height:100dvh;padding:24px}.skeleton-box{background:linear-gradient(90deg, var(--surface-sunken) 0%, var(--accent-soft) 50%, var(--surface-sunken) 100%);background-size:200% 100%;background-color:var(--surface);animation:1.5s ease-in-out infinite skeleton-shimmer;display:block}.skeleton-box-rounded{border-radius:8px}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.skeleton-caseload-row{background:var(--surface);border:1px solid var(--stroke-subtle);border-radius:14px;align-items:center;gap:14px;padding:14px 16px;display:flex}.skeleton-caseload-row-body{flex-direction:column;flex:1;gap:6px;display:flex}.skeleton-avatar{background:linear-gradient(90deg, var(--surface-sunken) 0%, var(--accent-soft) 50%, var(--surface-sunken) 100%);background-size:200% 100%;background-color:var(--surface);border-radius:50%;width:44px;height:44px;animation:1.5s ease-in-out infinite skeleton-shimmer}@media (prefers-reduced-motion:reduce){.skeleton-box,.skeleton-avatar{animation:none}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.desktop-shell{background:var(--bg);width:100%;min-height:100dvh;color:var(--fg-primary);flex-direction:row;display:flex}.desktop-shell-sidebar{background:var(--surface-sunken);border-right:1px solid var(--divider);z-index:4;flex-direction:column;flex-shrink:0;align-self:flex-start;gap:14px;height:100dvh;padding:20px 16px;transition:width .18s;display:flex;position:sticky;top:0}.desktop-shell-brand{align-items:center;gap:12px;padding-bottom:8px;display:flex}.desktop-shell-brand-word{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg-primary);font-size:18px;font-weight:700}.desktop-shell-collapse{appearance:none;border:1px solid var(--stroke-subtle);background:var(--surface);width:26px;height:26px;color:var(--fg-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;margin-left:auto;font-size:14px;transition:background .12s,color .12s;display:flex}.desktop-shell-collapse:hover{background:var(--surface-hi);color:var(--fg-primary)}.desktop-shell-nav{flex-direction:column;gap:4px;display:flex}.desktop-shell-nav-item{color:var(--fg-secondary);font-family:var(--font-display);border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-size:15px;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex;position:relative}.desktop-shell-nav-item:hover{background:var(--surface);color:var(--fg-primary)}.desktop-shell-nav-item.active{background:var(--surface-hi);color:var(--fg-primary)}.desktop-shell-nav-glyph{text-align:center;flex-shrink:0;width:22px;font-size:16px;line-height:1}.desktop-shell-nav-label{flex:1}.desktop-shell-nav-stroke{background:var(--accent);opacity:0;border-radius:2px;width:3px;position:absolute;top:8px;bottom:8px;left:-16px}.desktop-shell-nav-item.active .desktop-shell-nav-stroke{opacity:1}.desktop-shell-divider{background:var(--divider);height:1px;margin:4px 0}.desktop-shell-user{align-items:center;gap:10px;margin-top:auto;padding:4px 4px 8px;display:flex}.desktop-shell-avatar{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-deep) 100%);width:36px;height:36px;color:var(--fg-on-accent);font-family:var(--font-display);text-transform:uppercase;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex}.desktop-shell-user-meta{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.desktop-shell-user-email{color:var(--fg-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.desktop-shell-upgrade{color:var(--accent);font-size:12px;font-family:var(--font-display);letter-spacing:.02em;font-weight:600;text-decoration:none}.desktop-shell-upgrade:hover{text-decoration:underline}.desktop-shell-signout{appearance:none;border:1px solid var(--stroke-subtle);color:var(--fg-secondary);font:inherit;font-family:var(--font-display);cursor:pointer;background:0 0;border-radius:10px;padding:10px 12px;font-size:14px;transition:background .12s,color .12s}.desktop-shell-signout:hover{background:var(--surface);color:var(--fg-primary)}.desktop-shell-canvas{flex-direction:column;flex:1;min-width:0;display:flex}.context-bar{z-index:3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--divider);color:var(--fg-secondary);background:#0b1f2aeb;justify-content:space-between;align-items:center;gap:16px;padding:14px 40px;font-size:13px;display:flex;position:sticky;top:0}.context-bar-breadcrumb{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.context-bar-segment{align-items:center;gap:6px;min-width:0;display:inline-flex}.context-bar-link{color:var(--fg-secondary);text-decoration:none;transition:color .12s}.context-bar-link:hover{color:var(--fg-primary)}.context-bar-link-static{color:var(--fg-tertiary);cursor:default}.context-bar-current{color:var(--fg-primary);font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.context-bar-sep{color:var(--fg-tertiary);font-size:14px}.context-bar-status{font-family:var(--font-display);letter-spacing:.02em;border:1px solid var(--stroke-subtle);background:var(--surface);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.context-bar-status--synced{color:var(--success);border-color:var(--stroke-subtle)}.context-bar-status--saving{color:var(--warning)}.context-bar-status--offline{color:var(--danger)}.context-bar-status--unsaved{color:var(--fg-secondary)}.caseload-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.caseload-card{appearance:none;border:1px solid var(--stroke-subtle);background:var(--surface);color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:16px;flex-direction:column;gap:12px;padding:18px;transition:background .12s,border-color .12s,box-shadow .12s,transform .12s;display:flex}.caseload-card:hover{background:var(--surface-hi);border-color:var(--stroke-accent);box-shadow:0 4px 18px #00000040}.caseload-card:active{transform:translateY(1px)}.caseload-card-head{align-items:center;gap:12px;display:flex}.caseload-card-name{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.caseload-card-body{flex-direction:column;gap:4px;display:flex}.caseload-empty-filter{text-align:center;margin:24px 0}.caseload-toolbar{background:var(--surface-sunken);border:1px solid var(--divider);border-radius:14px;grid-template-columns:minmax(240px,1fr) auto auto;align-items:center;gap:16px;padding:12px 16px;display:grid}.caseload-toolbar-search{align-items:center;width:100%;display:flex}.caseload-toolbar-input{appearance:none;border:1px solid var(--stroke-subtle);background:var(--surface);width:100%;color:var(--fg-primary);font:inherit;border-radius:10px;padding:10px 14px;font-size:15px;transition:border-color .12s,box-shadow .12s}.caseload-toolbar-input:focus{border-color:var(--stroke-accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.caseload-toolbar-input::placeholder{color:var(--fg-tertiary)}.caseload-toolbar-chips{flex-wrap:wrap;gap:6px;display:flex}.data-table-wrapper{border:1px solid var(--stroke-subtle);border-radius:14px;width:100%;overflow-x:auto}.data-table thead th{z-index:1;background:var(--surface-sunken);position:sticky;top:0}.data-table tr:hover td,.data-table tr:hover th{background:var(--surface-sunken)}@media (max-width:1023.98px){.data-table--mobile,.data-table--mobile thead,.data-table--mobile tbody,.data-table--mobile tr,.data-table--mobile td,.data-table--mobile th{width:100%;display:block}.data-table--mobile thead{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.data-table--mobile tr{border-bottom:1px solid var(--divider);padding:8px 0}.data-table--mobile td,.data-table--mobile th{text-align:left;border-bottom:none;align-items:baseline;gap:10px;padding:8px 12px;font-weight:400;display:flex}.data-table-mobile-label{width:110px;font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-tertiary);flex-shrink:0;font-size:11px;font-weight:700}.data-table-mobile-value{flex:1;min-width:0}}.planner-grid{grid-template-columns:1fr 1.4fr;align-items:start;gap:32px;display:grid}.planner-grid-col{flex-direction:column;gap:24px;min-width:0;display:flex}.planner-grid-col--left{max-height:calc(100dvh - 100px);padding-right:4px;position:sticky;top:80px;overflow-y:auto}@media (min-width:1024px){.session-planner-shell{flex:1;min-height:0}.planner-grid{height:100%}.planner-grid-col{height:100%;overflow-y:auto}.planner-grid-col--left{max-height:none;position:relative;top:auto}.planner-pane-section--goals{z-index:1;background:var(--bg);padding:4px 0;position:sticky;top:24px}}.form-hint{color:var(--fg-tertiary);font-size:13px;font-style:italic}.kbd-hint{color:var(--fg-tertiary);align-items:center;gap:6px;margin-left:6px;font-size:12px;display:inline-flex}.kbd-hint-label{font-style:italic}kbd{border:1px solid var(--stroke-subtle);border-radius:var(--radius-sm);background:var(--surface-hi);min-width:22px;height:22px;color:var(--fg-primary);font-family:var(--font-mono);border-bottom-width:2px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.kbd{border:1px solid var(--stroke-subtle);border-radius:var(--radius-sm);background:var(--surface-hi);min-width:20px;height:20px;color:var(--fg-secondary);font-family:var(--font-mono);vertical-align:middle;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.form-field{flex-direction:column;gap:6px;display:flex}.form-field>label,.form-field__label{font-family:var(--font-display);color:var(--fg-secondary);letter-spacing:.01em;font-size:13px;font-weight:600}.form-field input:not([type=checkbox]):not([type=radio]),.form-field textarea,.form-field select,.form-field__control{appearance:none;border:1px solid var(--stroke-subtle);background:var(--surface);color:var(--fg-primary);border-radius:var(--radius-md);width:100%;padding:12px 14px;font-family:inherit;font-size:15px;line-height:1.3;transition:border-color .12s,box-shadow .12s,background .12s}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--fg-tertiary)}.form-field input:focus-visible,.form-field textarea:focus-visible,.form-field select:focus-visible,.form-field__control:focus-visible{border-color:var(--accent);box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--accent);outline:none}.form-field--error input,.form-field--error textarea,.form-field--error select,.form-field--error .form-field__control{border-color:var(--danger);box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--danger-soft)}.form-field--success input,.form-field--success textarea,.form-field--success select,.form-field--success .form-field__control{border-color:var(--success);box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--success-soft)}.form-field--disabled,.form-field[aria-disabled=true]{opacity:.5;cursor:not-allowed}.form-field--disabled input,.form-field--disabled textarea,.form-field--disabled select{cursor:not-allowed}.form-help{color:var(--fg-tertiary);align-items:center;gap:6px;margin-top:4px;font-size:13px;font-style:italic;display:inline-flex}.form-error{color:var(--danger);align-items:center;gap:6px;margin-top:4px;font-size:13px;display:inline-flex}.form-error__icon{background:var(--danger-soft);width:16px;height:16px;color:var(--danger);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.form-field__affix{position:relative}.form-field__affix .form-field__control{padding-left:40px;padding-right:40px}.form-field__affix.is-suffix .form-field__control{padding-left:14px;padding-right:40px}.form-field__affix.is-prefix .form-field__control{padding-left:40px;padding-right:14px}.input-prefix,.input-suffix{width:32px;height:32px;color:var(--fg-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;justify-content:center;align-items:center;transition:background .12s,color .12s;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.input-prefix{left:4px}.input-suffix{right:4px}.input-prefix:hover,.input-suffix:hover{background:var(--surface);color:var(--fg-primary)}.form-fieldset label>input:focus-visible,.form-fieldset label>textarea:focus-visible,.form-fieldset label>select:focus-visible{border-color:var(--stroke-accent);box-shadow:0 0 0 2px var(--accent-soft);outline:none}.section-header{border-bottom:1px solid var(--stroke-subtle);justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;padding-bottom:12px;display:flex}.section-header__title-group{flex-direction:column;gap:4px;min-width:0;display:flex}.section-header__eyebrow{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-tertiary);font-size:12px;font-weight:600}.section-header__title{font-family:var(--font-display);color:var(--fg-primary);letter-spacing:-.01em;align-items:center;gap:8px;margin:0;font-size:22px;font-weight:700;display:flex}.section-header__count{font-family:var(--font-display);color:var(--fg-tertiary);letter-spacing:.04em;font-size:12px;font-weight:600}.section-header__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.section-card{background:var(--surface);border:1px solid var(--stroke-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px}.section-card>.section-header{margin-top:-4px}.divider{background:var(--stroke-subtle);border:0;height:1px;margin:16px 0}.divider--thick{height:2px}.divider--accent{background:linear-gradient(90deg, transparent 0%, var(--accent) 50%, transparent 100%);border:0;height:1px;margin:24px 0}:where(.btn-primary,.btn-secondary,.btn-tertiary,.btn-danger,.btn-ghost,.btn-icon,.chip,.card-interactive,.card,.snap-button):focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus:not(:focus-visible){outline:none}.snap-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.paywall-screen{padding-bottom:96px}.paywall-hero{background:radial-gradient(circle at 0% 0%, var(--accent-soft) 0%, transparent 60%), linear-gradient(135deg, #4caf501f 0%, #0b1f2a00 70%), var(--surface);border:1px solid var(--stroke-subtle);border-radius:22px;flex-direction:column;align-items:flex-start;gap:18px;padding:32px 24px;display:flex}.paywall-hero-headline{font-family:var(--font-display);letter-spacing:-.02em;color:var(--fg-primary);margin:0;font-size:34px;font-weight:800;line-height:1.15}.paywall-hero-subhead{color:var(--fg-secondary);margin:0;font-size:17px;line-height:1.5}.paywall-hero-social-proof{color:var(--fg-tertiary);letter-spacing:.02em;margin:0;font-size:13px;font-weight:500}.paywall-plans{flex-direction:column;gap:14px;display:flex}.paywall-plans-grid{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:720px){.paywall-plans-grid{grid-template-columns:1fr 1fr;align-items:stretch}}@media (min-width:1024px){.paywall-plans-grid{grid-template-columns:1fr 1fr;gap:20px}}.plan-card{border:1px solid var(--stroke-subtle);background:var(--surface);cursor:pointer;border-radius:18px;flex-direction:column;gap:12px;padding:24px 22px;transition:transform .16s,box-shadow .16s,border-color .16s,background .16s;display:flex;position:relative}.plan-card:hover{background:var(--surface-hi);border-color:var(--stroke-accent)}.plan-card--annual{border-width:2px;border-color:var(--stroke-accent);transform:translateY(-2px)scale(1.02);box-shadow:0 12px 32px #4caf502e,inset 0 0 0 1px #4caf501f}.plan-card--selected{background:var(--surface-hi);box-shadow:0 0 0 2px var(--stroke-accent) inset, 0 12px 28px #4caf5038}.plan-card-eyebrow{background:var(--accent);color:var(--fg-on-accent);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:800;position:absolute;top:-12px;left:20px;box-shadow:0 4px 14px #4caf5066}.plan-card-name{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg-primary);font-size:20px;font-weight:700}.plan-card-price{color:var(--fg-primary);align-items:baseline;gap:6px;display:flex}.plan-card-price-numeric{font-family:var(--font-display);letter-spacing:-.02em;font-size:32px;font-weight:800}.plan-card--annual .plan-card-price-numeric{font-size:38px}.plan-card-price-cadence{color:var(--fg-secondary);font-size:14px;font-weight:500}.plan-card-pitch{color:var(--fg-secondary);font-size:14px;line-height:1.5}.plan-card-assurance{color:var(--fg-tertiary);letter-spacing:.02em;font-size:12px;font-weight:500}.plan-card-radio{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.paywall-restore{color:var(--fg-secondary);align-self:center;font-size:14px}.paywall-savings{color:var(--fg-tertiary);text-align:center;margin:0;font-size:13px}.feature-table{flex-direction:column;gap:14px;display:flex}.feature-table-grid{border-collapse:separate;border-spacing:0;border:1px solid var(--stroke-subtle);background:var(--surface);border-radius:16px;width:100%;overflow:hidden}.feature-table-grid th,.feature-table-grid td{text-align:left;font-family:var(--font-display);border-bottom:1px solid var(--divider);padding:12px 14px;font-size:14px;font-weight:500}.feature-table-grid thead th{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-tertiary);background:var(--surface-hi);font-size:12px;font-weight:700}.feature-table-pro-header{color:var(--accent)!important}.feature-table-group th{letter-spacing:.1em;text-transform:uppercase;color:var(--fg-tertiary);background:#ffffff05;font-size:11px;font-weight:800}.feature-table-pro-cell{background:var(--accent-soft)}.feature-cell{width:24px;height:24px;font-family:var(--font-display);border-radius:999px;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:inline-flex}.feature-cell--check,.feature-cell--check.feature-cell--pro{background:var(--accent);color:var(--fg-on-accent)}.feature-cell--x{color:var(--fg-tertiary);background:#ffffff14}.feature-cell-feature{font-family:var(--font-display);color:var(--fg-primary);font-size:14px;font-weight:500}.faq{flex-direction:column;gap:14px;display:flex}.faq-list{flex-direction:column;gap:10px;display:flex}.faq-row{border:1px solid var(--stroke-subtle);background:var(--surface);border-radius:14px;transition:border-color .16s,background .16s;overflow:hidden}.faq-row--open{background:var(--surface-hi);border-color:var(--stroke-accent)}.faq-question-heading{font-family:inherit;font-size:inherit;font-weight:inherit;margin:0}.faq-question-button{appearance:none;width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.faq-question-button:focus-visible{box-shadow:0 0 0 2px var(--accent-soft) inset;outline:none}.faq-question-text{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg-primary);font-size:16px;font-weight:600}.faq-chevron{color:var(--accent);flex-shrink:0;font-size:20px;font-weight:700}.faq-answer{border-top:1px solid var(--divider);flex-direction:column;gap:12px;padding:0 18px 18px;display:flex}.faq-answer[hidden]{display:none}.faq-answer p{color:var(--fg-secondary);margin:0;padding-top:14px;font-size:15px;line-height:1.55}.faq-answer .link-button{align-self:flex-start}.paywall-testimonials{flex-direction:column;gap:14px;display:flex}.paywall-testimonials-grid{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:1024px){.paywall-testimonials-grid{grid-template-columns:repeat(3,1fr)}}.paywall-testimonial-card{border:1px solid var(--stroke-subtle);background:var(--surface);border-radius:16px;flex-direction:column;gap:12px;margin:0;padding:20px 22px;display:flex}.paywall-testimonial-stars{color:var(--accent);letter-spacing:.08em;font-size:16px}.paywall-testimonial-quote{font-family:var(--font-display);color:var(--fg-primary);margin:0;font-size:15px;font-weight:500;line-height:1.5}.paywall-testimonial-cite{color:var(--fg-secondary);flex-direction:column;gap:2px;font-size:13px;display:flex}.paywall-testimonial-name{color:var(--fg-primary);font-weight:600}.paywall-testimonial-district{color:var(--fg-tertiary)}.paywall-disclosures{flex-direction:column;gap:12px;display:flex}.paywall-disclosure-links{flex-wrap:wrap;gap:12px;display:flex}.paywall-sticky-sentinel{width:100%;height:1px}.sticky-purchase-bar{z-index:30;-webkit-backdrop-filter:blur(12px)saturate(140%);backdrop-filter:blur(12px)saturate(140%);border-top:1px solid var(--stroke-subtle);background:#0b1f2ac7;transition:transform .22s;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -8px 24px #00000059}.sticky-purchase-bar[data-visible=true]{transform:translateY(0)}.sticky-purchase-bar-inner{align-items:center;gap:14px;max-width:920px;margin:0 auto;padding:14px 20px;display:flex}.sticky-purchase-bar-price{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sticky-purchase-bar-amount{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg-primary);font-size:22px;font-weight:800}.sticky-purchase-bar-cadence{color:var(--fg-secondary);font-size:13px}.sticky-purchase-bar-assurance{letter-spacing:.04em;color:var(--fg-tertiary);text-transform:uppercase;font-size:11px}.sticky-purchase-bar-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.sticky-purchase-bar-select{appearance:none;border:1px solid var(--stroke-subtle);background:var(--surface);color:var(--fg-primary);font-family:var(--font-display);background-image:linear-gradient(45deg, transparent 50%, var(--fg-secondary) 50%), linear-gradient(135deg, var(--fg-secondary) 50%, transparent 50%);background-position:calc(100% - 16px),calc(100% - 10px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;border-radius:10px;padding:8px 30px 8px 12px;font-size:13px;font-weight:600}.sticky-purchase-bar-dismiss{appearance:none;border:1px solid var(--stroke-subtle);background:var(--surface);width:32px;height:32px;color:var(--fg-secondary);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;font-size:18px;font-weight:700;line-height:1;transition:background .16s,color .16s;display:inline-flex}.sticky-purchase-bar-dismiss:hover{background:var(--surface-hi);color:var(--fg-primary)}@media (min-width:1024px){.paywall-screen{padding-bottom:104px}.paywall-hero{padding:44px 36px}.paywall-hero-headline{font-size:44px}.paywall-hero-subhead{max-width:640px;font-size:18px}}.caseload-toolbar{background:var(--surface-sunken);border:1px solid var(--divider);border-radius:14px;grid-template-columns:minmax(240px,1fr) auto;align-items:start;gap:12px 16px;padding:14px 16px;display:grid;position:relative}.caseload-toolbar-search{flex-direction:column;gap:4px;width:100%;display:flex}.caseload-toolbar-count{color:var(--fg-tertiary);padding-left:4px;font-size:12px}.caseload-toolbar-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.caseload-toolbar-secondary{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;display:flex}.caseload-toolbar-sort select{appearance:none;background:var(--surface);color:var(--fg-primary);border:1px solid var(--stroke-subtle);font:inherit;cursor:pointer;border-radius:10px;padding:8px 14px;font-size:14px}.caseload-toolbar-needs{font-size:14px}.caseload-toolbar-select{appearance:none;border:1px solid var(--stroke-subtle);color:inherit;font:inherit;cursor:pointer;background:0 0;border-radius:10px;padding:8px 14px;font-size:14px}.caseload-toolbar-select-active,.caseload-toolbar-select:hover{background:var(--surface-hi);border-color:var(--stroke-accent)}.caseload-toolbar-clear{color:var(--stroke-accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 6px;font-size:14px}.caseload-toolbar-bulk-slot{border-top:1px solid var(--divider);grid-column:1/-1;margin-top:4px;padding-top:12px}.chip-clear{background:var(--surface-hi);width:16px;height:16px;color:var(--fg-secondary);border-radius:999px;justify-content:center;align-items:center;margin-left:6px;font-size:12px;line-height:1;display:inline-flex}.caseload-toolbar-mobile{grid-template-columns:1fr auto}.caseload-toolbar-mobile-actions{align-items:center;gap:8px;display:flex}.caseload-toolbar-filter-toggle{appearance:none;background:var(--surface);border:1px solid var(--stroke-subtle);color:inherit;font:inherit;cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;display:inline-flex}.caseload-toolbar-filter-toggle:hover,.caseload-toolbar-filter-toggle[aria-expanded=true]{background:var(--surface-hi);border-color:var(--stroke-accent)}.caseload-toolbar-filter-badge{background:var(--stroke-accent);min-width:18px;height:18px;color:var(--surface);border-radius:999px;justify-content:center;align-items:center;padding:0 4px;font-size:11px;font-weight:600;display:inline-flex}.caseload-toolbar-sheet-scrim{z-index:30;background:#00000073;position:fixed;inset:0}.caseload-toolbar-sheet{z-index:31;background:var(--surface);border:1px solid var(--divider);border-top-left-radius:20px;border-top-right-radius:20px;flex-direction:column;gap:16px;max-height:80vh;padding:16px 20px 24px;animation:.2s ease-out caseload-toolbar-sheet-up;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}@keyframes caseload-toolbar-sheet-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.caseload-toolbar-sheet-handle{background:var(--fg-tertiary);border-radius:999px;width:40px;height:4px;margin:0 auto 4px}.caseload-toolbar-sheet-heading{margin:0;font-size:18px}.caseload-toolbar-sheet-section{flex-direction:column;gap:8px;display:flex}.caseload-toolbar-sheet-label{text-transform:uppercase;letter-spacing:.06em;color:var(--fg-tertiary);font-size:12px}.caseload-toolbar-sheet-actions{border-top:1px solid var(--divider);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:8px;display:flex}.caseload-section{flex-direction:column;grid-column:1/-1;gap:16px;display:flex}.caseload-section+.caseload-section{border-top:1px solid var(--divider);padding-top:16px}.caseload-section-header{text-transform:uppercase;letter-spacing:.08em;color:var(--fg-tertiary);justify-content:space-between;align-items:baseline;margin:0;font-size:11px;font-weight:600;display:flex}.caseload-section-count{font-size:11px;font-weight:400}.caseload-section-rows{flex-direction:column;gap:10px;display:flex}@media (min-width:1024px){.caseload-section{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.caseload-section-header{grid-column:1/-1}}.caseload-card-wrapper{position:relative}.caseload-card-wrapper .caseload-card{width:100%}.caseload-card-wrapper .caseload-card-selected{border-color:var(--stroke-accent);background:var(--accent-soft)}.caseload-card-checkbox{background:var(--surface);border:1px solid var(--stroke-subtle);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex;position:absolute;top:10px;right:10px}.caseload-card-checkbox input{cursor:pointer;width:14px;height:14px;accent-color:var(--stroke-accent);margin:0}.caseload-row-wrapper{align-items:stretch;gap:12px;display:flex;position:relative}.caseload-row-wrapper .caseload-row{flex:auto;align-items:center;gap:12px;min-width:0;display:flex}.caseload-row-selected{background:var(--accent-soft);border-color:var(--stroke-accent)}.caseload-row-checkbox{flex:none;justify-content:center;align-self:center;align-items:center;width:22px;height:22px;display:inline-flex}.caseload-row-checkbox input{cursor:pointer;width:18px;height:18px;accent-color:var(--stroke-accent)}.caseload-bulk{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.caseload-bulk-count{font-size:14px;font-weight:600}.caseload-bulk-archive{appearance:none;background:var(--danger);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:10px;padding:10px 16px;font-size:14px;font-weight:600}.caseload-bulk-archive:disabled{opacity:.7;cursor:progress}.caseload-bulk-cancel{color:var(--stroke-accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 6px;font-size:14px}.caseload-confirm-scrim{z-index:50;background:#0000008c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.caseload-confirm{background:var(--surface);border:1px solid var(--divider);border-radius:16px;flex-direction:column;gap:12px;width:100%;max-width:420px;padding:20px;display:flex;box-shadow:0 12px 40px #0006}.caseload-confirm-title{margin:0;font-size:20px}.caseload-confirm-body{color:var(--fg-secondary);margin:0;font-size:14px}.caseload-confirm-actions{justify-content:flex-end;align-items:center;gap:12px;margin-top:8px;display:flex}@media (min-width:1024px){.caseload-toolbar{grid-template-columns:minmax(240px,1fr) auto}.caseload-toolbar-secondary{grid-column:1/-1}}@media (max-width:1023.98px){.caseload-toolbar{grid-template-columns:1fr auto}.caseload-toolbar-secondary .caseload-toolbar-chips,.caseload-toolbar-secondary .caseload-toolbar-sort,.caseload-toolbar-secondary .caseload-toolbar-needs,.caseload-toolbar-secondary .caseload-toolbar-clear{display:none}}.planner-grid-sticky{z-index:2;-webkit-backdrop-filter:blur(12px)saturate(140%);backdrop-filter:blur(12px)saturate(140%);border-bottom:1px solid var(--stroke-subtle);background:#0b1f2ac7;margin:-12px 0 12px;padding:12px 0;position:sticky;top:0}.planner-grid-sticky .form-actions{margin-top:0}.planner-grid-sticky .generate-counter{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.planner-grid-sticky .generate-counter .tagline{flex:1;min-width:0}.plan-section-header{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.plan-section-header h2{margin:0}.plan-section-header-meta{align-items:center;gap:8px;margin-left:auto;display:flex}.snap-button[data-state=locked]{align-items:center;gap:8px;display:inline-flex}.plan-editor{flex-direction:column;gap:16px;display:flex}.plan-editor-meta{color:var(--fg-tertiary);justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.plan-editor-charcount{font-family:var(--font-display);font-variant-numeric:tabular-nums}.plan-editor-charcount--over{color:#f87171}.plan-editor-savedstatus{font-style:italic}.plan-editor-savedstatus--saved{color:var(--fg-secondary)}.plan-editor-savedstatus--pending,.plan-editor-savedstatus--saving{color:var(--accent,#4caf50)}.plan-editor-savedstatus--error{color:#f87171}.plan-editor-fieldset{border:1px solid var(--stroke-subtle);background:var(--surface);border-radius:12px;flex-direction:column;gap:12px;margin:0;padding:14px 16px;display:flex}.plan-editor-fieldset legend{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--fg-tertiary);padding:0 4px;font-size:13px;font-weight:700}.plan-editor-fieldset[disabled]{opacity:1}.plan-editor-fieldset[disabled] .plan-form-textarea,.plan-editor-fieldset[disabled] .plan-form-input{background:0 0;border-color:#0000;padding-left:0}.plan-preview{border:1px solid var(--stroke-subtle);background:var(--surface);color:var(--fg-primary);border-radius:14px;padding:24px;font-size:15px;line-height:1.65}.plan-preview-title{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 4px;font-size:22px;font-weight:700}.plan-preview-meta{color:var(--fg-tertiary);margin:0 0 16px;font-size:13px}.plan-preview-section{margin-top:20px}.plan-preview-section h2{font-family:var(--font-display);border-bottom:1px solid var(--stroke-subtle);margin:0 0 8px;padding-bottom:4px;font-size:16px;font-weight:700}.plan-preview-section h3{font-family:var(--font-display);margin:12px 0 6px;font-size:14px;font-weight:700}.plan-preview-section p{margin:6px 0}.plan-preview-detail strong{color:var(--fg-secondary)}.plan-preview-activity{margin:8px 0}.plan-preview-prompts{margin:8px 0;padding-left:24px}.plan-preview-toggle{border:1px solid var(--stroke-subtle);font:inherit;color:var(--fg-secondary);cursor:pointer;background:0 0;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600;transition:background .12s,border-color .12s}.plan-preview-toggle:hover{background:var(--surface-hi);border-color:var(--stroke-accent)}.plan-preview-toggle[data-active=true]{background:var(--accent-soft,#4caf082e);border-color:var(--accent,#4caf50);color:var(--fg-primary)}.plan-empty{text-align:center;border:1px dashed var(--stroke-subtle);background:var(--surface);border-radius:14px;flex-direction:column;align-items:center;gap:16px;padding:48px 24px;display:flex}.plan-empty-title{font-family:var(--font-display);margin:0;font-size:18px;font-weight:600}.plan-empty-body{color:var(--fg-tertiary);max-width:36ch;margin:0;font-size:14px}.generation-progress{background:var(--surface);border:1px solid var(--stroke-subtle);border-radius:14px;flex-direction:column;gap:12px;padding:24px;display:flex}.generation-progress-hint{color:var(--fg-secondary);margin:0;font-size:14px;font-style:italic}.generation-progress-skeleton{flex-direction:column;gap:10px;display:flex}.generation-progress-line{background:linear-gradient(90deg, var(--surface-hi,#ffffff0f) 0%, var(--stroke-subtle,#ffffff1f) 50%, var(--surface-hi,#ffffff0f) 100%);background-size:200% 100%;border-radius:4px;height:12px;animation:1.5s infinite generation-progress-shimmer}.generation-progress-line--h2{width:30%;height:16px}.generation-progress-line--h3{width:50%}.generation-progress-block{background:var(--surface-hi,#ffffff08);border:1px solid var(--stroke-subtle);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}@keyframes generation-progress-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}
