:root{--brand:#5b45e0;--brand-600:#4d38cf;--brand-700:#4130ad;--brand-soft:#f1effd;--brand-tint:#e4e0fb;--on-brand:#fff;--bg:#f8f9fc;--surface:#fff;--surface-2:#f4f5f9;--surface-3:#edeff5;--sidebar:#fff;--border:#e7e9f0;--border-strong:#d6d9e4;--text:#15171f;--text-2:#4b5163;--muted:#868d9f;--green:#12805a;--green-soft:#e3f4ec;--orange:#b26a09;--orange-soft:#fdf1e0;--blue:#2f5bd8;--blue-soft:#e5ebfc;--danger:#cf3438;--danger-soft:#fceced;--danger-solid:#c92a2f;--grad-brand:linear-gradient(135deg, #6a52e8 0%, #8b74ff 100%);--r-sm:10px;--r:14px;--r-lg:20px;--r-xl:26px;--shadow-brand:0 6px 16px -8px #5b45e080;--shadow-xs:0 1px 2px #14161f0d;--shadow-sm:0 2px 8px -2px #14161f12, 0 1px 2px #14161f0a;--shadow-md:0 8px 24px -8px #14161f1f, 0 2px 6px #14161f0a;--shadow-lg:0 20px 44px -16px #23195a2e;--ring:0 0 0 3px #5b45e033;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);font-synthesis-weight:none;text-rendering:optimizelegibility;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif}:root[data-theme=dark],html[data-theme=dark]{--brand:#8b74ff;--brand-600:#9b88ff;--brand-700:#b3a4ff;--brand-soft:#201d3d;--brand-tint:#2a2550;--on-brand:#12131b;--bg:#0e1018;--surface:#161923;--surface-2:#1c202c;--surface-3:#232838;--sidebar:#11131c;--border:#262b39;--border-strong:#343a4b;--text:#e8eaf2;--text-2:#b3b9c9;--muted:#838aa0;--green:#4ac290;--green-soft:#14301f;--orange:#dfa04a;--orange-soft:#33250f;--blue:#7ea2ff;--blue-soft:#1a2246;--danger:#f0787c;--danger-soft:#3a1f21;--danger-solid:#b93438;--shadow-xs:0 1px 2px #0006;--shadow-sm:0 2px 8px -2px #00000080;--shadow-md:0 10px 26px -10px #0009;--shadow-lg:0 22px 48px -16px #000000b3;--shadow-brand:0 6px 16px -8px #0009;--ring:0 0 0 3px #8b74ff47;--grad-brand:linear-gradient(135deg, #6a52e8 0%, #8b74ff 100%);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}h1,h2,h3,h4{letter-spacing:-.025em;margin:0;font-weight:700;line-height:1.18}h1{font-size:1.75rem}h2{font-size:1.25rem}h3{font-size:1.02rem}h4{font-size:.92rem}p{margin:0}a{color:var(--brand);text-decoration:none}a:hover{text-underline-offset:2px;text-decoration:underline}.link-button{font:inherit;color:var(--brand);cursor:pointer;background:0 0;border:none;padding:0}.link-button:hover{text-underline-offset:2px;text-decoration:underline}input,textarea,select{border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);width:100%;color:inherit;font:inherit;padding:.62rem .8rem;transition:border-color .15s,box-shadow .15s}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--brand);padding:0}input::placeholder,textarea::placeholder{color:var(--muted)}input:focus,textarea:focus,select:focus{border-color:var(--brand);box-shadow:var(--ring);outline:none}textarea{resize:vertical}label{color:var(--text-2);margin-bottom:.75rem;font-size:.84rem;font-weight:600;display:block}label>input,label>textarea,label>select{color:var(--text);margin-top:.35rem;font-weight:400}::selection{background:var(--brand-tint)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-sm);padding:1.15rem}.muted{color:var(--muted)}.small{font-size:.82rem}.error{color:var(--danger);margin:.4rem 0;font-size:.86rem}.hint{background:var(--brand-soft);border-radius:var(--r-sm);color:var(--brand-700);padding:.65rem .85rem;font-size:.85rem}.icon{vertical-align:-.18em;flex-shrink:0;display:inline-block}.student-note{border-left:3px solid var(--border-strong);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--surface-2);color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:.55rem .8rem;font-size:.89rem;line-height:1.5}.student-note>.small{margin-bottom:.15rem;display:block}.btn{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:var(--r-sm);font:inherit;cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:.45rem;padding:.6rem 1.1rem;font-size:.9rem;font-weight:600;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .12s,opacity .15s;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.btn:focus-visible{box-shadow:var(--ring);outline:none}.btn:disabled{cursor:not-allowed;background:var(--surface-2);border-color:var(--border);color:var(--muted);box-shadow:none;transform:none}.btn--primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand);box-shadow:var(--shadow-brand)}.btn--primary:hover:not(:disabled){background:var(--brand-600);border-color:var(--brand-600);color:var(--on-brand)}.btn--ghost{background:0 0;border-color:#0000}.btn--ghost:hover:not(:disabled){background:var(--surface-2);border-color:#0000}.btn--danger{background:var(--danger-solid);border-color:var(--danger-solid);color:#fff}.btn--danger:hover:not(:disabled){background:color-mix(in srgb, var(--danger-solid) 85%, #000);border-color:color-mix(in srgb, var(--danger-solid) 85%, #000);color:#fff}.btn--quiet{background:var(--surface-2);color:var(--text-2);border-color:#0000}.btn--quiet:hover:not(:disabled){background:var(--surface-3);color:var(--text);border-color:#0000}.btn--small{padding:.4rem .75rem;font-size:.83rem}.btn--block{width:100%}.btn--icon{color:var(--muted);background:0 0;border:none;border-radius:8px;padding:.4rem;line-height:0}.btn--icon:hover:not(:disabled){color:var(--text);background:var(--surface-2)}.btn--icon.btn--danger,.btn--icon-danger{color:var(--muted);background:0 0}.btn--icon-danger:hover:not(:disabled){color:var(--danger);background:var(--danger-soft)}.btn--dashed{border-style:dashed;border-color:var(--border-strong);width:100%;color:var(--muted);background:0 0;font-weight:600}.btn--dashed:hover:not(:disabled){border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.select{cursor:pointer;width:auto;min-width:210px;font-weight:500}.pill{background:var(--surface-2);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.24rem .6rem;font-size:.74rem;font-weight:600;display:inline-flex}.pill--open,.pill--done{background:var(--green-soft);color:var(--green)}.pill--locked{background:var(--orange-soft);color:var(--orange)}.pill--brand{background:var(--brand-soft);color:var(--brand)}.chip{border:1px solid var(--border-strong);background:var(--surface);color:var(--text-2);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:.35rem;padding:.34rem .75rem;font-size:.82rem;font-weight:600;transition:border-color .14s,background .14s,color .14s;display:inline-flex}.chip:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.chip:focus-visible{box-shadow:var(--ring);outline:none}.chip:disabled{opacity:.55;cursor:not-allowed}.chip.is-active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-700)}.icon-tile{border-radius:11px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:1.05rem;display:grid}.icon-tile--violet{background:var(--brand-tint);color:var(--brand-700)}.icon-tile--orange{background:var(--orange-soft);color:var(--orange)}.icon-tile--green{background:var(--green-soft);color:var(--green)}.icon-tile--blue{background:var(--blue-soft);color:var(--blue)}.icon-tile--grey{background:var(--surface-2);color:var(--muted)}.row-actions{align-items:center;gap:.5rem;display:flex}.empty{text-align:center;flex-direction:column;align-items:center;gap:.6rem;padding:2.75rem 1.5rem;display:flex}.progress-bar{background:var(--surface-2);border-radius:999px;height:7px;overflow:hidden}.progress-bar__fill{background:var(--brand);border-radius:999px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.odo{display:inline-flex}.odo .odo__reel,.odo .odo__strip>span{font:inherit}.odo__reel{height:1.06em;display:inline-block;overflow:hidden}.odo__strip{transform:translateY(calc(var(--d,0) * -1.06em));transition:transform 1s var(--spring-heavy);transition-delay:calc(var(--i) * 95ms);flex-direction:column;display:flex}.odo__strip>span{height:1.06em;line-height:1.06em}.shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--sidebar);border-right:1px solid var(--border);flex-direction:column;gap:1.1rem;height:100vh;padding:1.4rem 1rem 1.1rem;display:flex;position:sticky;top:0}.sidebar__logo{letter-spacing:-.03em;color:var(--text);align-items:center;gap:.55rem;padding:0 .55rem;font-size:1.15rem;font-weight:750;text-decoration:none;display:inline-flex}.sidebar__logo:hover{text-decoration:none}.sidebar__nav{flex-direction:column;gap:.25rem;display:flex}.sidebar__link{color:var(--text-2);border-radius:11px;align-items:center;gap:.7rem;padding:.68rem .75rem;font-size:.92rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:flex}.sidebar__link:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.sidebar__link.is-active{background:var(--brand);color:var(--on-brand);box-shadow:var(--shadow-brand)}.sidebar__icon{text-align:center;width:1.2rem;font-size:1rem}.sidebar__user{border-top:1px solid var(--border);align-items:center;gap:.65rem;margin-top:auto;padding-top:.9rem;display:flex}.sidebar__avatar{background:var(--brand);width:38px;height:38px;color:var(--on-brand);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:grid}.sidebar__user-meta{flex-direction:column;min-width:0;display:flex}.sidebar__user-meta strong{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.sidebar__tools{align-items:center;gap:.4rem;display:flex}.shell__main{flex-direction:column;gap:1.25rem;min-width:0;padding:1.75rem 2rem 3rem;display:flex}.app-loading{min-height:100vh;color:var(--muted);place-items:center;display:grid}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.page-head__eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.25rem;font-size:.7rem;font-weight:700}.page-head h1{font-size:1.7rem}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.student-tabs{flex-wrap:wrap;gap:.5rem;display:flex}.student-tab{border:1px solid var(--border);background:var(--surface);font:inherit;color:var(--text-2);cursor:pointer;box-shadow:var(--shadow-xs);border-radius:999px;padding:.45rem 1rem;font-size:.88rem;font-weight:600;transition:background .15s,color .15s,border-color .15s,transform .12s}.student-tab:hover{border-color:var(--brand);color:var(--brand)}.student-tab.is-active{background:var(--brand);border-color:var(--brand);color:var(--on-brand);box-shadow:var(--shadow-brand)}.auth-shell{background:radial-gradient(760px 380px at 12% -10%, var(--brand-soft), transparent 62%), radial-gradient(680px 360px at 100% 0%, var(--orange-soft), transparent 58%), var(--bg);place-items:center;min-height:100vh;padding:1.5rem;display:grid}.auth-card{border-radius:var(--r-lg);width:min(430px,100%);box-shadow:var(--shadow-lg);flex-direction:column;gap:.25rem;padding:2rem;display:flex}.auth-card__brand{letter-spacing:-.03em;color:var(--text);align-items:center;gap:.5rem;margin-bottom:1rem;font-size:1.1rem;font-weight:750;text-decoration:none;display:inline-flex}.auth-card__brand:hover{text-decoration:none}.auth-card h1{margin-bottom:1rem;font-size:1.45rem}.auth-card .btn{margin-top:.5rem}@media (width<=720px){.page-head,.page-head .row-actions{flex-direction:column;align-items:stretch}.page-head .select,.page-head .streak{width:100%;min-width:0}}@media (width<=960px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{border-right:none;border-bottom:1px solid var(--border);flex-flow:wrap;align-items:center;gap:.75rem;height:auto;padding:.85rem 1rem;position:static}.sidebar__nav{flex-direction:row;margin-right:auto}.sidebar__user{border-top:none;margin-top:0;padding-top:0}.shell__main{padding:1.15rem 1rem 2.5rem}}.dash-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:1.25rem;display:grid}.day-strip{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);box-shadow:var(--shadow-xs);grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;padding:.4rem;display:grid}.day-chip{text-align:center;border-radius:var(--r-sm);cursor:pointer;min-width:0;font:inherit;color:var(--text);background:0 0;border:1px solid #0000;flex-direction:column;align-items:center;gap:.3rem;padding:.55rem .35rem .5rem;transition:background .14s,border-color .14s,color .14s;display:flex;position:relative}.day-chip:hover{background:var(--surface-2)}.day-chip:focus-visible{box-shadow:var(--ring);outline:none}.day-chip.is-selected{border-color:var(--brand);background:var(--brand-soft)}.day-chip.is-today{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.day-chip.is-today:hover{background:var(--brand-600)}.day-chip__top{align-items:baseline;gap:.3rem;min-width:0;display:flex}.day-chip__name{color:var(--muted);text-transform:lowercase;font-size:.78rem;font-weight:600}.day-chip__num{font-variant-numeric:tabular-nums;font-size:1.02rem;font-weight:700}.day-chip.is-selected .day-chip__name{color:var(--brand-700)}.day-chip.is-today .day-chip__name,.day-chip.is-today .day-chip__today{color:color-mix(in srgb, var(--on-brand) 78%, transparent)}.day-chip__count{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.7rem;font-weight:600;overflow:hidden}.day-chip__count--done{color:var(--green)}.day-chip__count--partial{color:var(--orange)}.day-chip__count--todo{color:var(--brand)}.day-chip.is-today .day-chip__count{color:var(--on-brand)}.day-chip.is-selected .day-chip__count--todo{color:var(--brand-700)}.day-chip__today{letter-spacing:.06em;text-transform:uppercase;font-size:.6rem;font-weight:700}.task-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-sm);flex-direction:column;gap:.85rem;padding:1.15rem;display:flex}.task-panel__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.task-panel__title-group{flex-wrap:wrap;align-items:baseline;gap:.6rem;min-width:0;display:flex}.task-panel__title{font-size:1.05rem;font-weight:700}.task-panel__count{color:var(--muted);font-size:.82rem;font-weight:600}.task-panel__count.is-done{color:var(--green)}.task-panel__progress{flex:0 190px;min-width:120px}.task-list{flex-direction:column;gap:.7rem;margin:0;padding:0;list-style:none;display:flex}.task{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);flex-direction:column;gap:.75rem;padding:1rem 1.1rem 1.1rem;transition:border-color .15s,box-shadow .15s;display:flex}.task:hover{border-color:var(--border-strong)}.task.is-done{background:var(--surface-2);border-color:var(--border)}.task--locked{color:var(--muted);background:0 0;border-style:dashed;flex-direction:row;align-items:center;gap:.85rem}.task--locked:hover{border-color:var(--border)}.task__lock{background:var(--surface-2);width:34px;height:34px;color:var(--muted);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.task__title--locked{color:var(--text-2);font-size:.95rem}.task__head{align-items:flex-start;gap:.75rem;display:flex}.task__heading{flex-direction:column;flex:1;gap:.28rem;min-width:0;display:flex}.task__check{border:2px solid var(--border-strong);cursor:pointer;color:#0000;background:0 0;border-radius:50%;flex-shrink:0;place-items:center;width:26px;height:26px;margin-top:.1rem;padding:0;transition:background .16s,border-color .16s,color .16s;display:grid}.task__check:hover:not(:disabled){border-color:var(--green);color:var(--border-strong)}.task__check:focus-visible{box-shadow:var(--ring);outline:none}.task__check.is-checked{background:var(--green);border-color:var(--green);color:#fff}.task__check:disabled{cursor:not-allowed;opacity:.6}.task__note-toggle{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;flex-shrink:0;place-items:center;padding:0;transition:background .15s,color .15s,border-color .15s;display:grid}.task__note-toggle:hover{background:var(--surface-2);color:var(--text)}.task__note-toggle.has-note{border-color:var(--border-strong);background:var(--surface-2);color:var(--brand)}.task__note-toggle:focus-visible{box-shadow:var(--ring);outline:none}.task__body{flex-direction:column;gap:.6rem;min-width:0;padding-left:2.35rem;display:flex}.task__meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.2rem .85rem;font-size:.78rem;font-weight:550;display:flex}.task__meta-item{align-items:center;gap:.28rem;display:inline-flex}.task__meta-item--done{color:var(--green)}.task__title{letter-spacing:-.015em;overflow-wrap:anywhere;font-size:1rem;font-weight:700;line-height:1.3}.task.is-done .task__title{color:var(--text-2)}.task__desc{color:var(--text-2);white-space:pre-wrap;font-size:.88rem;line-height:1.55}.task__notes-label{color:var(--muted);margin-bottom:0;font-size:.78rem;font-weight:600}.file-row{flex-wrap:wrap;gap:.5rem;display:flex}.file-chip{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);color:inherit;align-items:center;gap:.6rem;max-width:100%;padding:.5rem .7rem;text-decoration:none;transition:border-color .15s,background .15s;display:inline-flex}.file-chip:hover{border-color:var(--brand);background:var(--brand-soft);text-decoration:none}.file-chip__tile{border-radius:8px;width:30px;height:30px}.file-chip__meta{flex-direction:column;min-width:0;line-height:1.35;display:flex}.file-chip__meta strong{text-overflow:ellipsis;white-space:nowrap;max-width:22rem;font-size:.82rem;font-weight:650;overflow:hidden}.file-chip__meta span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.file-chip__go{color:var(--muted);flex-shrink:0;transition:color .15s,transform .15s}.file-chip:hover .file-chip__go{color:var(--brand);transform:translate(2px)}.side-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-sm);position:sticky;top:1.5rem;overflow:hidden}.side-panel__section{border-bottom:1px solid var(--border);flex-direction:column;gap:.6rem;padding:1rem 1.1rem;display:flex}.side-panel__section:last-child{border-bottom:none}.side-panel__section h3{font-size:.92rem}.side-panel__head{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.side-panel__value{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:1.15rem;font-weight:750}.side-panel__value--sm{color:var(--text-2);font-size:.95rem}.side-panel__section--tutor{background:var(--surface-2);flex-direction:row;align-items:center;gap:.7rem}.side-panel__avatar{background:var(--brand-tint);width:34px;height:34px;color:var(--brand-700);border-radius:50%;flex-shrink:0;place-items:center;font-size:.9rem;font-weight:700;display:grid}.side-panel__tutor-meta{flex-direction:column;min-width:0;line-height:1.3;display:flex}.side-panel__tutor-meta strong{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.side-panel__tutor-meta .small{align-items:center;gap:.28rem;display:inline-flex}.notes-column{flex-direction:column;gap:1rem;min-width:0;display:flex}.notes-column .card{flex-direction:column;align-items:start;gap:.7rem;display:flex}.notes-column textarea{width:100%}.task__notes{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex}.task__notes textarea{width:100%}.question-list{flex-direction:column;gap:.35rem;width:100%;margin:0;padding:0;list-style:none;display:flex}.question-list li{border-radius:var(--r-sm);justify-content:space-between;align-items:start;gap:.5rem;padding:.45rem .5rem;transition:background .15s;display:flex}.question-list li:hover{background:var(--surface-2)}.question-list label{color:var(--text);cursor:pointer;align-items:start;gap:.55rem;margin:0;font-size:.89rem;font-weight:400;display:flex}.question-list input[type=checkbox]{width:auto;accent-color:var(--brand);flex-shrink:0;margin-top:.2rem}.question-list li.is-asked span{color:var(--muted);text-decoration:line-through}@media (width<=1180px){.dash-grid{grid-template-columns:minmax(0,1fr)}.side-panel{position:static}}@media (width<=720px){.day-strip{gap:.15rem;padding:.3rem}.day-chip{padding:.5rem .15rem}.day-chip__top{flex-direction:column;align-items:center;gap:0}.day-chip__count{text-indent:-999em;background:currentColor;border-radius:50%;width:6px;height:6px;overflow:hidden}.day-chip__count--empty{background:var(--border-strong)}.day-chip__today{display:none}}@media (width<=560px){.task{padding:.9rem}.task__body{padding-left:0}}:root{--spring:linear(0, .0236, .0853, .173, .2764, .3868, .4978, .604, .7019, .7891, .8644, .9272, .9779, 1.0171, 1.0458, 1.0655, 1.0773, 1.0828, 1.0832, 1.0797, 1.0735, 1.0655, 1.0566, 1.0473, 1.0381, 1.0295, 1.0217, 1.0148, 1.009, 1.0042, 1.0003, .9975, .9954, .994, .9933, .993, .9931, .9935, .9941, .9948, .9956, .9964, .9971, .9978, 1);--spring-soft:linear(0, .0123, .0447, .0915, .1481, .2108, .2765, .343, .4086, .4719, .532, .5882, .6403, .688, .7313, .7702, .805, .8357, .8628, .8864, .9068, .9244, .9395, .9522, .963, .972, .9794, .9854, .9904, .9943, .9974, .9998, 1.0016, 1.0029, 1.0039, 1.0045, 1.0048, 1.005, 1.005, 1.0049, 1.0047, 1.0044, 1.0041, 1.0038, 1);--spring-snap:linear(0, .0299, .1079, .2177, .3451, .4786, .6091, .7297, .8362, .9257, .9975, 1.0518, 1.0898, 1.1132, 1.1245, 1.1258, 1.1197, 1.1082, 1.0933, 1.0768, 1.06, 1.0438, 1.0292, 1.0165, 1.0059, .9977, .9915, .9874, .985, .9841, .9843, .9853, .987, .9889, .991, .9932, .9951, .9969, .9984, .9997, 1.0006, 1.0013, 1.0017, 1.002, 1);--spring-heavy:linear(0, .0196, .0711, .1447, .2322, .327, .4236, .518, .6073, .6893, .7627, .827, .8819, .9277, .965, .9944, 1.0168, 1.033, 1.044, 1.0507, 1.0538, 1.0541, 1.0523, 1.0491, 1.0447, 1.0398, 1.0346, 1.0294, 1.0243, 1.0196, 1.0153, 1.0115, 1.0082, 1.0054, 1.0031, 1.0013, .9998, .9987, .998, .9975, .9972, .9971, .9971, .9972, 1);--ease-draw:cubic-bezier(.16, .84, .24, 1);--ease-breathe:cubic-bezier(.45, 0, .55, 1)}.lp{--lp-bg:#f6f4f0;--lp-surface:#fff;--lp-ink:#14161c;--lp-ink-2:#565b67;--lp-muted:#9095a1;--lp-line:#e7e3db;--lp-line-2:#f0ece5;--lp-dark:#101423;--lp-dark-2:#171d30;--lp-dark-ink:#f2f3f7;--lp-dark-ink-2:#a3a9bd;--lp-dark-line:#ffffff1c;--lp-lime:#cdf257;--lp-lime-deep:#a9d02c;--lp-violet:#6c5ce7;--lp-violet-soft:#efecff;--lp-green:#3fbf7f;--lp-red:#f06060;--lp-rose:#f6dde3;--lp-shadow-sm:0 1px 2px #14161c0d, 0 4px 10px -8px #14161c33;--lp-shadow:0 2px 4px #14161c0a, 0 10px 22px -16px #14161c42;--lp-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lp-serif:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;background:var(--lp-bg);min-height:100vh;color:var(--lp-ink);font-family:var(--lp-sans);position:relative;overflow-x:clip}:root[data-theme=dark] .lp{--lp-bg:#0b0d14;--lp-surface:#141825;--lp-ink:#eef0f6;--lp-ink-2:#aab0c1;--lp-muted:#7c8298;--lp-line:#242a3a;--lp-line-2:#1c2130;--lp-dark:#080a11;--lp-dark-2:#10141f;--lp-violet-soft:#201d3d;--lp-rose:#2a1c26;--lp-shadow-sm:0 1px 2px #00000080;--lp-shadow:0 20px 44px -28px #000c}.lp a:hover{text-decoration:none}.lp-main{z-index:1;position:relative}.lp{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.12 0.12 0.12 0 -0.12'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}:root[data-theme=dark] .lp{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0.1 0.1 0.1 0 -0.1'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}.lp-layer{--depth:0px}.lp-layer--light{--depth:3px}.lp-layer--card,.lp-layer--type{--depth:5px}.lp-layer--arrow{--depth:7px}.lp-layer--button{--depth:8px}.lp-layer--detail{--depth:11px}.lp-mag{transition:translate .26s var(--spring-soft)}.lp-light{z-index:0;pointer-events:none;position:absolute;inset:-10% -6%;overflow:hidden}.lp-light__blob{background-image:radial-gradient(closest-side in oklab, var(--tint) 0%, color-mix(in srgb, var(--tint) 62%, transparent) 42%, color-mix(in srgb, var(--tint) 22%, transparent) 70%, transparent 100%);animation:lp-drift-light var(--dur,96s) var(--ease-breathe) infinite alternate;border-radius:50%;position:absolute}.is-onscreen .lp-light__blob{will-change:transform}.lp-light__blob--b{will-change:auto}.lp-light--warm .lp-light__blob--a{--dur:104s;--tint:var(--lp-rose);opacity:.72;width:50vw;height:44vw;top:-16%;right:0}.lp-light--warm .lp-light__blob--b{--tint:color-mix(in srgb, var(--lp-lime) 45%, transparent);opacity:.3;width:34vw;height:30vw;animation:none;top:20%;right:22%}.lp-light--cool .lp-light__blob--a{--dur:121s;--tint:color-mix(in srgb, var(--lp-violet) 22%, transparent);opacity:.3;width:34vw;height:30vw;top:-4%;left:-2%}.lp-light--cool .lp-light__blob--b{--tint:color-mix(in srgb, var(--lp-lime) 34%, transparent);opacity:.24;width:36vw;height:30vw;animation:none;bottom:-6%;right:-4%}@keyframes lp-drift-light{0%{transform:translate(0,0)scale(1)}50%{transform:translate(3.5vw,-2vw)scale(1.08)}to{transform:translate(-2.5vw,2.5vw)scale(.96)}}.lp-orbits{z-index:0;pointer-events:none;opacity:.55;width:100%;height:100%;position:absolute;inset:0}.lp-orbits__ring{transform-box:view-box;transform-origin:600px 260px;rotate:var(--tilt);animation:lp-orbit var(--dur) linear infinite}.is-onscreen .lp-orbits__ring{will-change:transform}.lp-orbits__ring:nth-child(2n){animation-name:lp-orbit-back}.lp-orbits{transition:translate 1.2s var(--spring-soft), opacity .9s ease}.lp-vocab.is-focused .lp-orbits{opacity:.72;translate:-9px 4px}.lp-auto[data-step="3"] .lp-orbits,.lp-auto[data-step="4"] .lp-orbits{opacity:.72;translate:7px -4px}.lp-orbits__ring ellipse{fill:none;stroke:var(--lp-lime);stroke-width:.6px;opacity:.15}.lp-orbits__mote{fill:var(--lp-lime);opacity:.45}@keyframes lp-orbit{to{transform:rotate(360deg)}}@keyframes lp-orbit-back{to{transform:rotate(-360deg)}}.lp-kicker{letter-spacing:.13em;text-transform:uppercase;color:var(--lp-muted);margin:0;font-size:.72rem;font-weight:600}.lp-kicker--onDark{color:#ffffff6b}.lp-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--lp-ink-2);opacity:0;margin:0;font-size:.73rem;font-weight:600;transition:opacity .9s .12s}.lp-hero.is-entered .lp-eyebrow{opacity:.7}.lp-h2{letter-spacing:-.032em;margin:0;font-size:clamp(1.9rem,3.1vw,2.7rem);font-weight:700;line-height:1.08}.lp-copy{max-width:36ch;color:var(--lp-ink-2);margin:0;font-size:.93rem;line-height:1.62}.lp-dark .lp-copy{color:var(--lp-dark-ink-2)}.lp-textlink{color:var(--lp-dark-ink);border-bottom:1px solid var(--lp-dark-line);align-items:center;gap:.55rem;padding-bottom:.3rem;font-size:.88rem;font-weight:600;display:inline-flex}.lp-textlink--ink{color:var(--lp-ink);border-bottom-color:var(--lp-line)}.lp-textlink .icon{transition:transform .48s var(--spring)}.lp-textlink:hover .icon{transform:translate(5px)}.lp-nav{z-index:50;transition:background .4s,box-shadow .4s;position:sticky;top:0}.lp-nav.is-condensed{background:color-mix(in srgb, var(--lp-bg) 95%, transparent);box-shadow:0 1px 0 color-mix(in srgb, var(--lp-line) 70%, transparent)}.lp-nav__inner{max-width:1220px;transition:padding .42s var(--spring-soft);align-items:center;gap:2rem;margin:0 auto;padding:1.35rem 2rem;display:flex}.lp-nav.is-condensed .lp-nav__inner{padding-block:.85rem}.lp-nav__logo{letter-spacing:-.03em;color:var(--lp-ink);align-items:center;gap:.5rem;margin-right:auto;font-size:1.08rem;font-weight:700;display:inline-flex}.lp-nav__links{gap:1.9rem;display:flex}.lp-nav__links a{color:var(--lp-ink-2);font-size:.86rem;font-weight:500;display:inline-block;overflow:hidden}.lp-nav__links a span{transition:transform .52s var(--spring);display:inline-block}.lp-nav__links a:hover span{transform:translateY(-2px)}.lp-nav__actions{align-items:center;gap:1.1rem;display:flex}.lp-nav__login{color:var(--lp-ink-2);font-size:.86rem;font-weight:500}.lp-nav__cta{background:var(--lp-ink);color:var(--lp-bg);transition:translate .26s var(--spring-soft), scale .22s var(--spring-soft);border-radius:999px;padding:.6rem 1.15rem;font-size:.84rem;font-weight:600}.lp-nav__cta:active{scale:.97}.lp-hero{padding:clamp(2rem,5vw,4rem) 2rem clamp(3rem,6vw,5rem);position:relative;overflow:clip}.lp-hero__inner{z-index:1;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);align-items:start;gap:clamp(1.75rem,3.5vw,3.25rem);max-width:1220px;margin:0 auto;display:grid;position:relative}.lp-hero__copy{padding-top:clamp(.5rem,3vw,2.2rem)}.lp-display{letter-spacing:-.042em;margin:1.6rem 0 0;font-size:clamp(2.3rem,4.4vw,3.9rem);font-weight:720;line-height:1.06}.lp-display__line{white-space:nowrap;display:block}.lp-display__line--serif{font-family:var(--lp-serif);letter-spacing:-.02em;clip-path:inset(0 100% 0 0);transition:clip-path 1s var(--ease-draw) .12s;margin-left:-.02em;padding:.04em .14em .08em 0;font-style:italic;font-weight:400}.lp-hero.is-entered .lp-display__line--serif{clip-path:inset(0 -6% 0 0)}.lp-kin__glyph{transform-origin:0 92%;opacity:0;transition:transform .7s var(--spring), opacity .34s ease-out;transition-delay:calc(.18s + var(--i) * 26ms);display:inline-block;transform:translateY(.34em)rotate(5deg)}.lp-hero.is-entered .lp-kin__glyph{opacity:1;transform:none}.lp-kin__space{width:.26em;display:inline-block}.lp-display__line--slide{clip-path:inset(-.12em -20% 0 -.06em);margin-bottom:-.14em;padding-bottom:.14em}.lp-display__line--slide>span{opacity:0;transition:transform .95s var(--spring-heavy) .62s, opacity .46s ease .64s;display:inline-block;transform:translate(-46%)}.lp-hero.is-entered .lp-display__line--slide>span{opacity:1;transform:none}.lp-lead{color:var(--lp-ink-2);opacity:0;filter:blur(7px);margin:1.5rem 0 0;font-size:.97rem;line-height:1.62;transition:opacity 1.2s 1.15s,filter 1.2s 1.15s}.lp-hero.is-entered .lp-lead{opacity:1;filter:blur()}.lp-hero__act{opacity:0;align-items:center;gap:1.4rem;margin-top:2.6rem;transition:opacity .8s 1.35s;display:flex}.lp-hero.is-entered .lp-hero__act{opacity:1}.lp-cta{border:1px solid var(--lp-ink);color:var(--lp-ink);transition:translate .26s var(--spring-soft), scale .22s var(--spring-soft), box-shadow .26s ease;background:0 0;border-radius:999px;align-items:center;gap:.9rem;padding:.5rem .5rem .5rem 1.35rem;font-size:.92rem;font-weight:600;display:inline-flex}.lp-cta__disc{background:var(--lp-ink);width:34px;height:34px;color:var(--lp-bg);border-radius:50%;place-items:center;display:grid;overflow:hidden}.lp-cta:hover .lp-cta__disc .icon{animation:lp-walk 1.3s var(--spring-soft) infinite}@keyframes lp-walk{0%{opacity:.2;transform:translate(-3px)}35%{opacity:1;transform:translate(0)}70%{opacity:1;transform:translate(5px)}to{opacity:0;transform:translate(10px)}}.lp-cta:active{scale:.985;box-shadow:inset 0 3px 8px #14161c29}.lp-scribble{flex-shrink:0;width:clamp(150px,17vw,230px);height:auto}.lp-scribble path{fill:none;stroke:var(--lp-ink);stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;opacity:.5;stroke-dasharray:400;stroke-dashoffset:400px;transition:stroke-dashoffset 1.1s var(--ease-draw) 1.5s}.lp-hero.is-entered .lp-scribble path{stroke-dashoffset:0}.lp-scribble__head{transition-delay:2.25s}.lp-hero__stack{gap:.85rem;display:grid}.lp-streakcard,.lp-todaycard{background:var(--lp-surface);border:1px solid var(--lp-line);box-shadow:var(--lp-shadow);opacity:0;transition:opacity .7s ease, translate .9s var(--spring-heavy);border-radius:18px;position:relative;translate:0 22px}.lp-streakcard{padding:1.1rem 1.25rem;transition-delay:.62s}.lp-todaycard{padding:1.1rem 1.25rem 1rem;transition-delay:.76s}.lp-hero.is-entered .lp-streakcard,.lp-hero.is-entered .lp-todaycard{opacity:1;translate:0}.lp-streakcard__label{color:var(--lp-muted);margin:0;font-size:.78rem}.lp-streakcard__row{justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-top:.5rem;display:flex}.lp-streakcard__value{flex-direction:column;margin:0;line-height:1;display:flex}.lp-streakcard__value strong{letter-spacing:-.04em;font-size:2.35rem;font-weight:700}.lp-streakcard__value>span{color:var(--lp-muted);margin-top:.4rem;font-size:.76rem}.lp-streakcard__chart{flex:1;align-items:flex-end;gap:3px;max-width:200px;height:46px;display:flex}.lp-streakcard__chart i{height:calc(var(--h) * 100%);background:color-mix(in srgb, var(--lp-violet) calc(var(--i) * 6%), var(--lp-lime));transform-origin:50% 100%;transition:transform .62s var(--spring-snap);transition-delay:calc(.9s + var(--i) * 34ms);border-radius:3px;flex:1;transform:scaleY(0)}.lp-hero.is-entered .lp-streakcard__chart i{transform:scaleY(1)}.lp-todaycard__head{color:var(--lp-muted);justify-content:space-between;align-items:center;font-size:.78rem;display:flex}.lp-todaycard__task{border-bottom:1px solid var(--lp-line-2);align-items:center;gap:.8rem;margin-top:.35rem;padding:.85rem 0;display:flex}.lp-todaycard__task strong{letter-spacing:-.01em;font-size:.9rem;font-weight:600;display:block}.lp-todaycard__task span{color:var(--lp-muted);font-size:.78rem}.lp-todaycard__mission{justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 0;display:flex}.lp-todaycard__ask{margin:.4rem 0 0;font-size:.88rem;font-weight:500;line-height:1.45}.lp-mic{background:linear-gradient(150deg, #8875ff, var(--lp-violet));color:#fff;width:46px;height:46px;box-shadow:0 10px 22px -12px var(--lp-violet);border-radius:50%;flex-shrink:0;place-items:center;display:grid;position:relative}.lp-mic__pulse{border:2px solid var(--lp-violet);opacity:0;border-radius:50%;position:absolute;inset:0}.lp-todaycard__foot{border-top:1px solid var(--lp-line-2);color:var(--lp-muted);align-items:center;gap:.7rem;padding-top:.85rem;font-size:.78rem;display:flex}.lp-todaycard__foot strong{color:var(--lp-ink);margin-left:auto;font-weight:600}.lp-segments{flex:1;gap:3px;max-width:130px;display:flex}.lp-segments i{background:var(--lp-line);border-radius:999px;flex:1;height:5px}.lp-segments i.is-done{background:color-mix(in srgb, var(--lp-lime) calc(var(--i) * 26%), var(--lp-violet))}.lp-hero__stack[data-beat="0"] .lp-segments i:nth-child(4){animation:lp-segment-hint 1.9s var(--spring-soft)}.lp-hero__stack[data-beat="1"] .lp-streakcard__chart i{animation:lp-bar-breathe 1.9s var(--ease-breathe);animation-delay:calc(var(--i) * 42ms)}.lp-hero__stack[data-beat="2"] .lp-mic{animation:lp-mic-swell 2.1s var(--ease-breathe)}.lp-hero__stack[data-beat="2"] .lp-mic__pulse{animation:lp-mic-ring 2.1s var(--ease-draw)}.lp-hero__stack[data-beat="3"] .lp-streakcard__value strong{background:linear-gradient(100deg, var(--lp-ink) 34%, var(--lp-violet) 50%, var(--lp-ink) 66%);-webkit-text-fill-color:transparent;background-size:280% 100%;-webkit-background-clip:text;background-clip:text;animation:2s lp-sheen}@keyframes lp-segment-hint{0%,to{background:var(--lp-line)}45%{background:color-mix(in srgb, var(--lp-violet) 45%, var(--lp-line))}}@keyframes lp-bar-breathe{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.14)}}@keyframes lp-mic-swell{0%,to{transform:scale(1)}45%{transform:scale(1.06)}}@keyframes lp-mic-ring{0%{opacity:.65;transform:scale(1)}to{opacity:0;transform:scale(1.65)}}@keyframes lp-sheen{0%{background-position:-140% 0}to{background-position:240% 0}}.lp-thumb{background:linear-gradient(140deg, hsl(calc(232 + var(--tone,0) * 26) 32% 26%), hsl(calc(248 + var(--tone,0) * 22) 28% 14%));color:#fff;border-radius:9px;flex-shrink:0;place-items:center;width:62px;height:44px;display:grid;position:relative;overflow:hidden}.lp-thumb__play{background:var(--lp-lime);color:#14161c;border-radius:50%;place-items:center;width:22px;height:22px;padding-left:2px;display:grid}.lp-thumb__yt{color:#fff;background:#e03434;border-radius:6px;place-items:center;width:28px;height:20px;padding-left:2px;display:grid}.lp-thumb--video{background:linear-gradient(140deg,#1b1b1f,#0b0b0d)}.lp-thumb__mark{color:#e0332e;letter-spacing:-.04em;font-size:1.2rem;font-weight:800}.lp-thumb--article{background:linear-gradient(140deg,#22252e,#14161c)}.lp-thumb__lines{gap:3px;width:60%;display:grid}.lp-thumb__lines i{background:#ffffff59;border-radius:2px;height:2px}.lp-thumb__lines i:nth-child(2){width:78%}.lp-thumb__lines i:nth-child(4){width:54%}.lp-thumb--audio{background:linear-gradient(140deg,#221c3e,#12101f)}.lp-thumb__wave{--wave-color:#a68cff;width:78%;height:58%}.lp-wave{transform-origin:50%;height:22px;animation:lp-wave-idle 3.8s var(--ease-breathe) infinite alternate;align-items:center;gap:2px;display:flex}.lp-wave i{min-width:1.5px;height:calc(var(--h) * 100%);background:var(--wave-color,currentColor);opacity:.75;border-radius:999px;flex:1}@keyframes lp-wave-idle{0%{transform:scaleY(.9)}to{transform:scaleY(1.08)}}.lp-lock__body{width:22px;height:22px;color:var(--lp-muted);transform-origin:50% 15%;border-radius:7px;place-items:center;display:grid}.lp-daycard:hover .lp-lock__body{animation:lp-lock-wobble .9s var(--spring-soft)}@keyframes lp-lock-wobble{0%{transform:rotate(0)}22%{transform:rotate(-7deg)}48%{transform:rotate(5deg)}74%{transform:rotate(-2.5deg)}to{transform:rotate(0)}}.lp-week.is-promised .lp-lock__body{animation:lp-lock-promise 5s var(--ease-breathe) infinite}.lp-week.is-promised .lp-lock.is-promised .lp-lock__body{color:var(--lp-violet)}@keyframes lp-lock-promise{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 14px 2px color-mix(in srgb, var(--lp-violet) 30%, transparent)}}.lp-week{padding:clamp(1rem,3vw,2rem) 2rem clamp(3rem,6vw,4.5rem);position:relative}.lp-week__inner{z-index:1;grid-template-columns:210px minmax(0,1fr);align-items:start;gap:1.4rem;max-width:1220px;margin:0 auto;display:grid;position:relative}.lp-today{border:1px solid var(--lp-line);background:var(--lp-surface);box-shadow:var(--lp-shadow);text-align:center;transition:opacity .62s var(--spring-soft), scale .7s var(--spring-soft);border-radius:16px;padding:.9rem .95rem 1rem;position:relative}.lp-today.is-receded{opacity:.78;scale:.988}.lp-today__badge{background:var(--lp-lime);color:#22300a;letter-spacing:.04em;border-radius:999px;margin:0;padding:.18rem .6rem;font-size:.66rem;font-weight:700;display:inline-block}.lp-today__day{letter-spacing:-.03em;margin:.5rem 0 0;font-size:1.7rem;font-weight:700;line-height:1}.lp-today__full{color:var(--lp-muted);margin:.2rem 0 0;font-size:.74rem}.lp-today__media{margin:.85rem 0 0;display:block}.lp-today__media .lp-thumb{border-radius:10px;width:100%;height:96px}.lp-today__kind{color:var(--lp-muted);text-align:left;margin:.75rem 0 0;font-size:.72rem}.lp-today__title{letter-spacing:-.01em;text-align:left;margin:.15rem 0 0;font-size:.86rem;font-weight:600}.lp-today hr{border:none;border-top:1px solid var(--lp-line-2);margin:.85rem 0}.lp-today .lp-kicker{text-align:left;font-size:.62rem}.lp-today__mission{text-align:left;margin:.3rem 0 0;font-size:.8rem;font-weight:500;line-height:1.35}.lp-today__minutes{color:var(--lp-muted);text-align:left;margin:.35rem 0 0;font-size:.74rem}.lp-checks{border-top:1px solid var(--lp-line-2);gap:.5rem;margin:.9rem 0 0;padding:.75rem 0 0;list-style:none;display:grid}.lp-checks li{color:var(--lp-ink-2);opacity:0;transition:opacity .52s ease, translate .62s var(--spring);transition-delay:calc(.4s + var(--i) * 90ms);align-items:center;gap:.45rem;font-size:.75rem;display:flex;translate:0 6px}.lp-week.is-live .lp-checks li{opacity:1;translate:0}.lp-checks__dot{border:1.5px solid var(--lp-line);color:#0000;border-radius:50%;place-items:center;width:15px;height:15px;margin-left:auto;display:grid}.lp-checks li.is-done .lp-checks__dot{border-color:var(--lp-green);background:var(--lp-green);color:#fff}.lp-rail{border:1px solid var(--lp-line);background:color-mix(in srgb, var(--lp-surface) 55%, transparent);border-radius:16px;min-width:0;padding:.9rem 1.1rem 1.2rem}.lp-rail__labels,.lp-rail__cards{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));gap:.7rem;display:grid}.lp-rail__cards{position:relative}.lp-rail__label{text-align:center;opacity:0;transition:opacity .42s ease, translate .52s var(--spring);transition-delay:calc(var(--i) * 90ms);translate:0 -8px}.lp-week.is-live .lp-rail__label{opacity:1;translate:0}.lp-rail__label strong{letter-spacing:-.01em;font-size:.95rem;font-weight:700;transition:color .3s;display:block}.lp-rail__label span{color:var(--lp-muted);font-size:.68rem}.lp-rail__label.is-hot strong{color:var(--lp-violet)}.lp-rail__track{height:26px;margin:.7rem 0 .9rem;position:relative}.lp-rail__line{width:100%;height:100%;position:absolute;inset:0}.lp-rail__line path{fill:none;stroke:color-mix(in srgb, var(--lp-ink) 16%, var(--lp-line));stroke-width:1.4px;vector-effect:non-scaling-stroke;stroke-dasharray:100;stroke-dashoffset:100px;transition:stroke-dashoffset 1.25s var(--ease-draw) .1s, stroke .4s ease}.lp-week.is-live .lp-rail__line path{stroke-dashoffset:0}.lp-week.is-focused .lp-rail__line path{stroke:color-mix(in srgb, var(--lp-violet) 34%, var(--lp-line))}.lp-rail__anchor{background:var(--lp-lime);width:9px;height:9px;box-shadow:0 0 0 4px color-mix(in srgb, var(--lp-lime) 28%, transparent);transition:transform .62s var(--spring-snap) .24s;border-radius:50%;margin-top:-4.5px;position:absolute;top:50%;left:-1.1rem;transform:scale(0)}.lp-week.is-live .lp-rail__anchor{transform:scale(1)}.lp-rail__dots{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));align-items:center;gap:.7rem;display:grid;position:absolute;inset:0}.lp-rail__dot{background:var(--lp-surface);border:1.5px solid color-mix(in srgb, var(--lp-ink) 22%, var(--lp-line));width:9px;height:9px;transition:transform .64s var(--spring-snap), box-shadow .46s var(--spring-soft), border-color .32s ease, background .32s ease;transition-delay:calc(1.05s + var(--i) * .11s), 0s, 0s, 0s;border-radius:50%;justify-self:center;transform:scale(0)}.lp-week.is-live .lp-rail__dot{transform:scale(1)}.lp-week.is-live .lp-rail__dot.is-hot{background:var(--lp-violet);border-color:var(--lp-violet);box-shadow:0 0 0 5px color-mix(in srgb, var(--lp-violet) 18%, transparent), 0 0 20px 4px color-mix(in srgb, var(--lp-violet) 40%, transparent)}.lp-rail__focusglow{top:50%;left:calc((var(--focus) + .5) / var(--cols) * 100%);pointer-events:none;opacity:0;background:radial-gradient(circle, color-mix(in srgb, var(--lp-violet) 22%, transparent), transparent 68%);width:120px;height:120px;transition:left .7s var(--spring), opacity .42s ease;border-radius:50%;margin:-60px 0 0 -60px;position:absolute}.lp-week.is-focused .lp-rail__focusglow{opacity:1}.lp-rail__end{width:1px;height:1px;position:absolute;bottom:0;right:0}.lp-daycard{border:1px solid var(--lp-line);background:var(--lp-surface);box-shadow:var(--lp-shadow-sm);transform-origin:50% -22px;opacity:0;transition:transform .82s var(--spring), opacity .42s ease, translate .62s var(--spring), box-shadow .52s ease, border-color .4s ease;transition-delay:calc(1.2s + var(--i) * .115s), calc(1.2s + var(--i) * .115s), 0s, 0s, 0s;border-radius:13px;flex-direction:column;padding:.7rem;display:flex;position:relative;transform:translateY(-12px)scaleY(.34)scaleX(.92)}.lp-week.is-live .lp-daycard{opacity:calc(1 - var(--far) * .34);transform:none}.lp-daycard.is-hot{opacity:1;border-color:color-mix(in srgb, var(--lp-violet) 30%, var(--lp-line));box-shadow:var(--lp-shadow);translate:0 -7px}.lp-daycard .lp-thumb{border-radius:9px;width:100%;height:66px}.lp-daycard__day{display:none}.lp-daycard__kind{color:var(--lp-muted);margin:.6rem 0 0;font-size:.7rem}.lp-daycard__title{letter-spacing:-.01em;margin:.1rem 0 0;font-size:.79rem;font-weight:600}.lp-daycard footer{color:var(--lp-muted);justify-content:space-between;align-items:center;margin-top:auto;padding-top:.85rem;font-size:.7rem;display:flex}.lp-daycard--soon{background:color-mix(in srgb, var(--lp-line-2) 70%, transparent);min-height:152px;box-shadow:none;border-style:dashed;flex-direction:column;justify-content:center;align-items:center;gap:.9rem;display:flex}.lp-daycard__soon{text-align:center;color:var(--lp-ink-2);margin:0;font-size:.78rem;font-weight:600}.lp-daycard__soon span{color:var(--lp-muted);font-weight:400;display:block}.lp-streakbar{z-index:1;border:1px solid var(--lp-line);background:var(--lp-surface);max-width:1220px;box-shadow:var(--lp-shadow-sm);opacity:0;transition:opacity .7s ease .4s, translate .9s var(--spring-heavy) .4s;border-radius:16px;align-items:center;gap:2.2rem;margin:1.4rem auto 0;padding:.9rem 1.2rem;display:flex;position:relative;translate:0 16px}.lp-week.is-live .lp-streakbar{opacity:1;translate:0}.lp-streakbar__stat{color:var(--lp-muted);align-items:center;gap:.55rem;font-size:.78rem;display:flex}.lp-streakbar__stat strong{color:var(--lp-ink);letter-spacing:-.02em;font-size:1.15rem;font-weight:700}.lp-streakbar__stat div{flex-direction:column;line-height:1.25;display:flex}.lp-streakbar__stat div strong{font-size:.9rem}.lp-flame{color:#f0803c;animation:lp-breathe 5.5s var(--ease-breathe) infinite;place-items:center;display:inline-grid}@keyframes lp-breathe{0%,to{opacity:.82;transform:scale(1)}50%{opacity:1;transform:scale(1.09)}}.lp-streakbar__hint{background:color-mix(in srgb, var(--lp-lime) 16%, transparent);color:var(--lp-ink-2);border-radius:11px;align-items:center;gap:.6rem;max-width:330px;margin:0 0 0 auto;padding:.6rem .9rem;font-size:.76rem;line-height:1.4;display:flex}.lp-dark{background:var(--lp-dark);color:var(--lp-dark-ink);border-radius:26px;margin:clamp(1.5rem,3vw,2.5rem) clamp(.75rem,2vw,1.75rem) 0;position:relative;overflow:hidden}.lp-dark .lp-h2{color:var(--lp-dark-ink)}.lp-vocab__inner{z-index:1;grid-template-columns:minmax(0,.64fr) minmax(0,1.36fr);align-items:center;gap:2rem;max-width:1260px;min-height:400px;margin:0 auto;padding:clamp(2.2rem,4vw,3.4rem) clamp(1.5rem,3vw,3rem);display:grid;position:relative}.lp-vocab__copy{justify-items:start;gap:1.1rem;display:grid}.lp-deck{perspective:1400px;height:330px;position:relative}.lp-vcard{width:250px;height:300px;z-index:calc(10 - var(--slot));position:absolute;top:0;left:0}.lp-vcard.is-lifted{z-index:20}.lp-vcard__slot{--fan:232px;height:100%;transform:translate3d(calc(var(--slot) * var(--fan)), calc(var(--slot) * -16px), 0) scale(calc(1 - var(--slot) * .045)) rotate(calc(-2deg + var(--slot) * 3.2deg));transition:transform .9s var(--spring-heavy), opacity .52s ease}.lp-vcard.is-lifted .lp-vcard__slot{transform:translate3d(calc(var(--slot) * var(--fan) - 8px), calc(var(--slot) * -16px - 18px), 0) scale(calc(1.05 - var(--slot) * .045)) rotate(calc(-1deg + var(--slot) * 2deg))}.lp-vcard.is-pushed .lp-vcard__slot{transform:translate3d(calc(var(--slot) * var(--fan) + 14px), calc(var(--slot) * -16px + 12px), 0) scale(calc(.95 - var(--slot) * .045)) rotate(calc(-2deg + var(--slot) * 3.9deg));opacity:.72}.lp-vcard__drift{height:100%;animation:lp-vcard-drift calc(11s + var(--i) * 2.7s) var(--ease-breathe) infinite alternate;animation-delay:calc(var(--i) * -3.7s)}@keyframes lp-vcard-drift{0%{transform:rotate(-.9deg)translateY(-3px)}to{transform:rotate(1.1deg)translateY(3px)}}@property --turn{syntax:"<angle>";inherits:false;initial-value:0deg}.lp-vcard__flip{--turn:0deg;height:100%;transform-style:preserve-3d;transform:rotateY(var(--turn)) rotateX(calc(var(--turn) / -30)) translateZ(calc(sin(var(--turn)) * 30px));transition:--turn .88s var(--spring-soft);cursor:pointer;position:relative}.lp-vcard__flip.is-turned{--turn:180deg}.lp-vcard__face{color:#14161c;backface-visibility:hidden;background:#fbfaf8;border-radius:16px;flex-direction:column;padding:1.15rem 1.25rem;display:flex;position:absolute;inset:0;box-shadow:0 16px 30px -18px #000000b3,0 2px 4px #0003}.lp-vcard__face--back{transform:rotateY(180deg)}.lp-vcard__face header{color:#9095a1;justify-content:space-between;align-items:center;display:flex}.lp-vcard__kicker{letter-spacing:.13em;text-transform:uppercase;font-size:.62rem;font-weight:600}.lp-vcard__word{letter-spacing:-.035em;margin:1.1rem 0 0;font-size:1.85rem;font-weight:700}.lp-vcard__phon{color:#9095a1;margin:.25rem 0 0;font-size:.82rem}.lp-vcard__nudge{color:#b3b7c0;margin:auto 0 0;font-size:.72rem}.lp-vcard__translation{color:#3c414d;margin:.9rem 0 0;font-size:.92rem;line-height:1.45}.lp-vcard__grade{margin-top:auto}.lp-vcard__grade>span{color:#9095a1;font-size:.74rem}.lp-vcard__grades{gap:.3rem;margin-top:.5rem;display:flex}.lp-grade{color:#3c414d;min-width:0;font:inherit;text-align:center;cursor:pointer;transition:scale .3s var(--spring-snap), background .24s ease;background:#eeecea;border:none;border-radius:999px;flex:1;padding:.34rem .3rem;font-size:.66rem;font-weight:600}.lp-grade:hover{scale:1.06}.lp-grade.is-suggested{background:var(--lp-lime);color:#22300a}.lp-grade.is-chosen{background:var(--lp-green);color:#fff}.lp-vcard__ring{border:2px solid var(--lp-green);opacity:0;pointer-events:none;transition:opacity .32s ease, scale .62s var(--spring-snap);border-radius:22px;position:absolute;inset:-9px;scale:.94}.lp-deck.is-hop .lp-vcard.is-front .lp-vcard__drift{transition:transform .32s var(--spring-snap);animation:none;transform:translateY(-18px)}.lp-deck.is-ring .lp-vcard.is-front .lp-vcard__ring,.lp-deck.is-return .lp-vcard.is-front .lp-vcard__ring{opacity:1;scale:1}.lp-deck.is-return .lp-vcard.is-front .lp-vcard__slot{opacity:.15;transform:translate(340px,-46px)scale(.84)rotate(9deg)}.lp-teacher{padding:clamp(2.5rem,5vw,4.5rem) 2rem clamp(2rem,4vw,3rem);position:relative;overflow-x:clip}.lp-teacher__inner{z-index:1;grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr);align-items:start;gap:2.2rem;max-width:1220px;margin:0 auto;display:grid;position:relative}.lp-teacher__copy{justify-items:start;gap:1.1rem;padding-top:1rem;display:grid}.lp-panel{border:1px solid var(--lp-line);background:color-mix(in srgb, var(--lp-surface) 70%, transparent);box-shadow:var(--lp-shadow);opacity:0;transition:opacity .8s ease, translate 1s var(--spring-heavy);border-radius:18px;grid-template-columns:190px minmax(0,1fr);gap:.85rem;padding:.85rem;display:grid;translate:0 26px}.lp-teacher.is-live .lp-panel{opacity:1;translate:0}.lp-panel__side{border:1px solid var(--lp-line);background:var(--lp-surface);border-radius:14px;padding:.9rem .75rem}.lp-panel__student{border-bottom:1px solid var(--lp-line-2);align-items:center;gap:.55rem;padding-bottom:.85rem;display:flex}.lp-panel__student strong{font-size:.8rem;font-weight:600;display:block}.lp-panel__student span{color:var(--lp-muted);font-size:.68rem}.lp-avatar{background:linear-gradient(150deg, #8875ff, var(--lp-violet));color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;font-size:.66rem;font-weight:700;display:grid}.lp-panel__nav{gap:.1rem;margin-top:.6rem;display:grid}.lp-panel__navitem{color:var(--lp-ink-2);opacity:0;transition:opacity .46s ease, translate .56s var(--spring);transition-delay:calc(.26s + var(--i) * 55ms);border-radius:8px;align-items:center;gap:.5rem;padding:.4rem .55rem;font-size:.76rem;display:flex;translate:-8px}.lp-teacher.is-live .lp-panel__navitem{opacity:1;translate:0}.lp-panel__navitem.is-active{background:var(--lp-violet-soft);color:var(--lp-violet);font-weight:600}.lp-panel__body{gap:.85rem;min-width:0;display:grid}.lp-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;display:grid}.lp-panel__cols{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(0,.75fr);gap:.85rem;display:grid}.lp-tile{border:1px solid var(--lp-line);background:var(--lp-surface);border-radius:13px;min-width:0;padding:.8rem .9rem}.lp-tile__label{color:var(--lp-muted);margin:0;font-size:.7rem}.lp-tile__value{letter-spacing:-.03em;align-items:baseline;gap:.3rem;margin:.35rem 0 0;font-size:1.3rem;font-weight:700;display:flex}.lp-tile__value>span{color:var(--lp-muted);font-size:.72rem;font-weight:400}.lp-tile__sub{margin:.3rem 0 0;font-size:.78rem;font-weight:500}.lp-tile__foot{color:var(--lp-muted);justify-content:space-between;margin:.55rem 0 0;font-size:.7rem;display:flex}.lp-tile__foot strong{color:var(--lp-ink)}.lp-bars{align-items:flex-end;gap:2px;height:34px;margin-top:.55rem;display:flex}.lp-bars i{height:calc(var(--h) * 100%);background:color-mix(in srgb, var(--lp-ink) 72%, transparent);transform-origin:50% 100%;transition:transform .7s var(--spring-snap);transition-delay:calc(.52s + var(--i) * 32ms);border-radius:2px;flex:1;transform:scaleY(0)}.lp-teacher.is-live .lp-bars i{transform:scaleY(1)}.lp-line{width:100%;height:42px;margin-top:.4rem}.lp-line path{fill:none;stroke:var(--lp-ink);stroke-width:1.6px;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100px;transition:stroke-dashoffset 1.4s var(--ease-draw) .62s}.lp-teacher.is-live .lp-line path{stroke-dashoffset:0}.lp-marks{gap:.9rem;margin-top:.7rem;font-size:1.05rem;font-weight:700;display:flex}.lp-marks span{align-items:center;gap:.15rem;display:inline-flex}.lp-marks .is-up{color:var(--lp-green)}.lp-marks .is-up .icon{transform:rotate(-45deg)}.lp-marks .is-down{color:var(--lp-red)}.lp-marks .is-down .icon{transform:rotate(45deg)}.lp-meter{background:var(--lp-line-2);border-radius:999px;height:7px;margin-top:.6rem;display:block;overflow:hidden}.lp-meter i{background:linear-gradient(90deg, var(--lp-lime), var(--lp-violet));width:0;height:100%;transition:width 1.1s var(--spring-soft) .7s;border-radius:999px;display:block}.lp-teacher.is-live .lp-meter i{width:var(--fill)}.lp-tile--list ul{gap:.55rem;margin:.6rem 0 0;padding:0;list-style:none;display:grid}.lp-tile--list li{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.lp-tile--list strong{letter-spacing:-.01em;font-size:.75rem;font-weight:600;display:block}.lp-tile--list em{color:var(--lp-muted);font-size:.66rem;font-style:normal}.lp-status{color:#fff;opacity:0;width:17px;height:17px;transition:scale .62s var(--spring-snap), opacity .3s ease;border-radius:50%;flex-shrink:0;place-items:center;display:grid;scale:.4}.lp-status.is-done{background:var(--lp-green)}.lp-status.is-waiting{background:#e8a33c}.lp-tile--list li.is-settled .lp-status{opacity:1;scale:1}.lp-player{align-items:center;gap:.55rem;margin-top:.7rem;display:flex}.lp-player__play{background:var(--lp-violet);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;padding-left:2px;display:grid}.lp-player__time{color:var(--lp-muted);flex-shrink:0;font-size:.68rem}.lp-player__wave{--wave-color:var(--lp-violet);flex:1;height:18px}.lp-comment{background:var(--lp-line-2);color:var(--lp-ink-2);opacity:0;transition:opacity .7s ease 1.5s, translate .9s var(--spring) 1.5s;border-radius:10px;margin:.75rem 0 0;padding:.6rem .75rem;font-size:.74rem;line-height:1.45;translate:0 10px}.lp-teacher.is-live .lp-comment{opacity:1;translate:0}.lp-comment em{color:var(--lp-muted);margin-top:.35rem;font-style:normal;display:block}.lp-tile--ring{text-align:center;flex-direction:column;align-items:center;display:flex}.lp-tile--ring .lp-tile__label{align-self:flex-start}.lp-ring{width:84px;height:84px;margin-top:.35rem;transform:rotate(-90deg)}.lp-ring__track,.lp-ring__fill{fill:none;stroke-width:7px;stroke-linecap:round}.lp-ring__track{stroke:var(--lp-line-2)}.lp-ring__fill{stroke:var(--lp-lime-deep);stroke-dasharray:100;stroke-dashoffset:100px;transition:stroke-dashoffset 1.5s var(--ease-draw) .7s}.lp-teacher.is-live .lp-ring__fill{stroke-dashoffset:28px}.lp-ring__value{flex-direction:column;margin:-58px 0 0;line-height:1.1;display:flex}.lp-ring__value strong{letter-spacing:-.03em;font-size:1.15rem;font-weight:700}.lp-ring__value>span{color:var(--lp-muted);font-size:.64rem}.lp-tile--ring .lp-tile__foot{width:100%;margin-top:2rem}.lp-auto__inner{z-index:1;grid-template-columns:minmax(0,360px) minmax(0,1fr);align-items:center;gap:2.5rem;max-width:1320px;margin:0 auto;padding:clamp(2.2rem,4vw,3.4rem) clamp(1.5rem,3vw,3rem) clamp(1.5rem,3vw,2.5rem);display:grid;position:relative}.lp-auto__copy{justify-items:start;gap:1.1rem;display:grid}.lp-flow{grid-template-columns:minmax(0,330px) minmax(0,1fr);align-items:center;gap:1.5rem;font-size:.76rem;display:grid}.lp-flow__rule{grid-template-columns:1fr 44px 1fr;grid-template-areas:"if brace then""and brace then";align-items:center;gap:.7rem .4rem;display:grid}.lp-flow__box{border:1px solid var(--lp-dark-line);background:var(--lp-dark-2);transition:border-color .52s var(--spring-soft), box-shadow .52s ease, translate .62s var(--spring);border-radius:11px;padding:.65rem .8rem}.lp-flow__box--if{grid-area:if}.lp-flow__box--and{grid-area:and}.lp-flow__box--then{grid-area:then}.lp-flow__box p{color:var(--lp-dark-ink);margin:.3rem 0 0;line-height:1.4}.lp-flow__tag{letter-spacing:.12em;text-transform:uppercase;color:var(--lp-dark-ink-2);font-size:.6rem;font-weight:700}.lp-flow__brace{grid-area:brace;align-self:center;width:44px;height:96px}.lp-flow__brace path{fill:none;stroke:var(--lp-dark-line);stroke-width:1.2px;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100px;transition:stroke-dashoffset .9s var(--ease-draw) .3s}.lp-auto.is-live .lp-flow__brace path{stroke-dashoffset:0}.lp-flow__brace-head{stroke-dasharray:none;stroke-dashoffset:0;opacity:0;transition:opacity .4s 1.2s}.lp-auto.is-live .lp-flow__brace-head{opacity:1}.lp-flow__track{padding-left:1.1rem;position:relative}.lp-flow__wire{background:repeating-linear-gradient(90deg, var(--lp-dark-line) 0 5px, transparent 5px 11px);transform-origin:0;height:1px;transition:transform 1.1s var(--ease-draw) .5s;position:absolute;top:2.45rem;left:0;right:0;transform:scaleX(0)}.lp-auto.is-live .lp-flow__wire{transform:scaleX(1)}.lp-flow__mote{background:var(--lp-red);width:9px;height:9px;box-shadow:0 0 16px 3px color-mix(in srgb, var(--lp-red) 55%, transparent);opacity:0;transition:left 1.6s var(--spring-heavy), opacity .5s ease;border-radius:50%;margin:-4.5px 0 0 -4.5px;position:absolute;top:2.45rem;left:8%}.lp-flow[data-step="2"] .lp-flow__mote{opacity:1;left:8%}.lp-flow[data-step="3"] .lp-flow__mote{opacity:1;left:50%}.lp-flow[data-step="4"] .lp-flow__mote{opacity:0;left:50%}.lp-flow__nodes{text-align:center;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid;position:relative}.lp-flow__node{justify-items:center;gap:.4rem;display:grid}.lp-flow__when{color:var(--lp-dark-ink);font-size:.7rem}.lp-flow__what{color:var(--lp-dark-ink-2);font-size:.7rem;line-height:1.35}.lp-flow__disc{border:1.5px solid var(--lp-dark-line);background:var(--lp-dark-2);width:36px;height:36px;color:var(--lp-dark-ink-2);transition:color .42s ease, border-color .42s ease, box-shadow .62s var(--spring-soft), scale .62s var(--spring-snap);border-radius:50%;place-items:center;display:grid}.lp-flow__copy{background:color-mix(in srgb, var(--lp-violet) 26%, transparent);color:#d8d2ff;opacity:0;transform-origin:50% 0;transition:opacity .4s ease, scale .64s var(--spring-snap);border-radius:7px;align-items:center;gap:.3rem;padding:.25rem .5rem;font-size:.62rem;display:inline-flex;scale:.7}.lp-flow[data-step="0"] .lp-flow__box--if,.lp-flow[data-step="0"] .lp-flow__box--and{border-color:color-mix(in srgb, var(--lp-lime) 42%, transparent);translate:0 -2px}.lp-flow[data-step="1"] .lp-flow__box--then{border-color:color-mix(in srgb, var(--lp-violet) 55%, transparent);box-shadow:0 0 22px -6px var(--lp-violet);translate:0 -2px}.lp-flow[data-step="2"] .lp-flow__node--error .lp-flow__disc,.lp-flow[data-step="3"] .lp-flow__node--error .lp-flow__disc{color:var(--lp-red);border-color:var(--lp-red);scale:1.12}.lp-flow[data-step="4"] .lp-flow__node--repeat .lp-flow__disc,.lp-flow[data-step="5"] .lp-flow__node--repeat .lp-flow__disc{color:var(--lp-violet);border-color:var(--lp-violet);box-shadow:0 0 24px -6px var(--lp-violet)}.lp-flow[data-step="4"] .lp-flow__copy,.lp-flow[data-step="5"] .lp-flow__copy{opacity:1;scale:1}.lp-flow[data-step="5"] .lp-flow__node--notify .lp-flow__disc{color:var(--lp-green);border-color:var(--lp-green);box-shadow:0 0 24px -6px var(--lp-green);scale:1.12}.lp-final{z-index:1;border-top:1px solid var(--lp-dark-line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem;max-width:1180px;margin:0 auto;padding:clamp(1.5rem,3vw,2.5rem) clamp(1.5rem,3vw,3rem) clamp(2rem,4vw,3rem);display:grid;position:relative}.lp-final__title{letter-spacing:-.032em;margin:0;font-size:clamp(1.5rem,2.4vw,2rem);font-weight:700}.lp-final__sub{font-family:var(--lp-serif);letter-spacing:-.02em;color:var(--lp-dark-ink-2);margin:.35rem 0 0;font-size:clamp(1.4rem,2.3vw,1.95rem);font-style:italic}.lp-final__actions{grid-template-columns:auto auto;justify-content:end;gap:.7rem;display:grid}.lp-final__cta,.lp-final__ghost{text-align:center;transition:translate .26s var(--spring-soft), scale .22s var(--spring-soft), box-shadow .26s ease;border-radius:11px;padding:.8rem 1.5rem;font-size:.88rem;font-weight:600}.lp-final__cta{background:var(--lp-lime);color:#22300a}.lp-final__ghost{border:1px solid var(--lp-dark-line);color:var(--lp-dark-ink)}.lp-final__cta:active,.lp-final__ghost:active{scale:.985;box-shadow:inset 0 3px 8px #0003}.lp-final__note{color:var(--lp-dark-ink-2);text-align:center;grid-column:1/-1;margin:.2rem 0 0;font-size:.72rem}.lp-connector{z-index:0;pointer-events:none;position:absolute}.lp-connector svg{width:100%;height:100%}.lp-connector path{fill:none;stroke:var(--lp-line);stroke-width:1.2px;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:100;stroke-dashoffset:clamp(0, calc(100 - var(--sp,0) * 230), 100)}.lp-connector--week{width:200px;height:120px;top:-70px;right:max(2rem,50% - 610px)}.lp-connector--vocab{width:190px;height:120px;top:0;left:8%}.lp-connector--vocab path{stroke:var(--lp-dark-line)}.lp-connector--teacher{width:160px;height:130px;top:-60px;left:max(2rem,50% - 610px)}.lp-connector--auto{width:180px;height:130px;top:0;right:10%}.lp-connector--auto path{stroke:var(--lp-dark-line)}.lp-light__blob,.lp-orbits__ring,.lp-wave,.lp-vcard__drift,.lp-flame,.lp-week.is-promised .lp-lock__body{animation-play-state:paused}.is-onscreen .lp-light__blob,.is-onscreen .lp-orbits__ring,.is-onscreen .lp-wave,.is-onscreen .lp-vcard__drift,.is-onscreen .lp-flame,.lp-week.is-promised.is-onscreen .lp-lock__body{animation-play-state:running}@media (width<=1080px){.lp-hero__inner,.lp-week__inner,.lp-vocab__inner,.lp-teacher__inner,.lp-auto__inner{grid-template-columns:minmax(0,1fr)}.lp-today{max-width:260px}.lp-panel{grid-template-columns:minmax(0,1fr)}.lp-panel__nav{grid-template-columns:repeat(4,minmax(0,1fr))}.lp-panel__cols{grid-template-columns:minmax(0,1fr)}.lp-deck{height:300px}.lp-connector{display:none}}@media (width<=860px){.lp-nav__links{display:none}.lp-hero,.lp-week,.lp-teacher{padding-inline:1.25rem}.lp-scribble{display:none}.lp-rail__cards{grid-template-columns:repeat(3,minmax(0,1fr))}.lp-rail__track,.lp-rail__labels{display:none}.lp-daycard__day{margin:0 0 .35rem;font-size:.72rem;font-weight:700;display:block}.lp-daycard__day span{color:var(--lp-muted);margin-left:.35rem;font-weight:400}.lp-tiles,.lp-panel__nav{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-panel__navitem{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lp-streakbar{flex-wrap:wrap;gap:1.2rem}.lp-streakbar__hint{max-width:none;margin-left:0}.lp-flow,.lp-final{grid-template-columns:minmax(0,1fr)}.lp-final__actions{justify-content:start}.lp-vcard{width:min(280px,88%)}.lp-vcard__slot{transform:translate3d(calc(var(--slot) * 22px), calc(var(--slot) * -12px), 0) scale(calc(1 - var(--slot) * .05)) rotate(calc(-2deg + var(--slot) * 3deg))}}@media (prefers-reduced-motion:reduce){.lp-kin__glyph,.lp-display__line--slide>span,.lp-lead,.lp-eyebrow,.lp-hero__act,.lp-streakcard,.lp-todaycard,.lp-checks li,.lp-rail__label,.lp-streakbar,.lp-panel,.lp-panel__navitem,.lp-comment,.lp-status,.lp-flow__copy{opacity:1!important;filter:none!important;transform:translate(0,0)scale(1)!important}.lp-display__line--serif,.lp-display__line--slide{clip-path:none!important}.lp-daycard{opacity:1!important;filter:none!important;transform:none!important}.lp-rail__dot,.lp-rail__anchor,.lp-bars i,.lp-streakcard__chart i{transform:none!important}.lp-rail__line path,.lp-line path,.lp-scribble path,.lp-flow__brace path,.lp-connector path{stroke-dashoffset:0!important}.lp-ring__fill{stroke-dashoffset:28px!important}.lp-meter i{width:var(--fill)!important}.lp-flow__wire{transform:scaleX(1)!important}}.assignment-form{border:1px dashed var(--border-strong);border-radius:var(--r-sm);background:var(--surface-2);flex-direction:column;gap:.55rem;padding:.8rem;display:flex}.preview-chip{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);box-shadow:var(--shadow-xs);align-items:center;gap:.6rem;padding:.45rem;display:flex}.preview-chip img{object-fit:cover;border-radius:6px;flex-shrink:0;width:80px;height:45px}.preview-chip div{flex-direction:column;min-width:0;display:flex}.preview-chip strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.role-picker{grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1rem;display:grid}.role-option{border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;box-shadow:var(--shadow-xs);padding:.85rem;font-weight:550;transition:transform .14s,border-color .14s,background .14s,box-shadow .16s}.role-option:hover{border-color:var(--brand);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.role-option.is-active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-700);box-shadow:var(--ring)}.invite-form{grid-template-columns:1fr 1fr 140px auto;align-items:end;gap:.75rem;margin:1rem 0;display:grid}.invite-form label{margin-bottom:0}.invite-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.invite-list li{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .85rem;display:flex}.invite-list li.is-spent{opacity:.55}.invite-list code{color:var(--brand-700);font-size:.95rem;font-weight:650}@media (width<=720px){.invite-form{grid-template-columns:minmax(0,1fr)}}.onboarding-card{border-radius:var(--r-lg);width:min(640px,100%);box-shadow:var(--shadow-lg);flex-direction:column;gap:1.15rem;padding:2rem;display:flex}.onboarding-group{border:none;margin:0;padding:0}.onboarding-group legend{margin-bottom:.25rem;padding:0;font-weight:650}.choice-grid{grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:.55rem;margin-top:.6rem;display:grid}.choice-grid--levels{grid-template-columns:repeat(auto-fit,minmax(125px,1fr))}.choice{border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer;box-shadow:var(--shadow-xs);flex-direction:column;align-items:flex-start;gap:.15rem;padding:.85rem .9rem;transition:transform .14s,box-shadow .16s,border-color .14s,background .14s;display:flex}.choice:hover{border-color:var(--brand);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.choice.is-active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-700);box-shadow:var(--ring)}.choice__label{font-weight:600}.choice__note{color:var(--orange);font-size:.75rem;line-height:1.25}.streak{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);box-shadow:var(--shadow-xs);align-items:center;gap:.7rem;padding:.6rem .9rem;display:flex}.streak>div{flex-direction:column;gap:.05rem;line-height:1.3;display:flex}.streak>div strong{font-size:.88rem}.streak__icon{background:var(--surface-2);width:30px;height:30px;color:var(--muted);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.streak--hot .streak__icon{background:var(--orange-soft);color:var(--orange)}.streak--warm .streak__icon{background:var(--surface-2);color:var(--orange)}.mission{border:1px solid color-mix(in srgb, var(--brand) 22%, transparent);background:var(--brand-soft);border-radius:var(--r-sm);flex-direction:column;gap:.5rem;padding:.75rem .85rem;display:flex}.mission--answered{border-color:color-mix(in srgb, var(--green) 35%, transparent);background:var(--green-soft)}.mission__task{color:var(--text);align-items:flex-start;gap:.45rem;margin:0;font-size:.88rem;font-weight:650;line-height:1.45;display:flex}.mission__icon{color:var(--brand-700);margin-top:.12rem}.mission--answered .mission__icon{color:var(--green)}.mission textarea{background:var(--surface)}.mission__task--compact{color:var(--muted);font-size:.83rem;font-weight:500}.mission button{align-self:flex-start}.mission-picker{flex-direction:column;gap:.4rem;display:flex}.mission-presets{flex-wrap:wrap;gap:.35rem;display:flex}.student-note--mission{border-left-color:var(--green);background:var(--green-soft);flex-direction:column;gap:.15rem;display:flex}.vocab-form{flex-direction:column;gap:.6rem;display:flex}.vocab-form__row{grid-template-columns:1fr 1fr auto;align-items:end;gap:.75rem;display:grid}.vocab-form label{margin-bottom:0}.vocab-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.filter-tabs{gap:.4rem;display:flex}.vocab-search{max-width:260px}.vocab-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.vocab-row{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow-xs);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem .95rem;transition:box-shadow .15s,transform .12s;display:flex}.vocab-row:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.vocab-row.is-learned{opacity:.62}.vocab-row--editing{grid-template-columns:1fr 1fr 1fr auto;align-items:center;display:grid}.vocab-row__main{cursor:pointer;align-items:start;gap:.65rem;min-width:0;margin:0;font-size:.95rem;font-weight:400;display:flex}.vocab-row__main input[type=checkbox]{width:18px;height:18px;accent-color:var(--green);flex-shrink:0;margin-top:.2rem}.vocab-row__example{color:var(--muted);margin-top:.1rem;font-size:.82rem;display:block}.vocab-row__meta{align-items:center;gap:.5rem;display:flex}.review-card{text-align:center;border-radius:var(--r-lg);width:100%;max-width:520px;box-shadow:var(--shadow-lg);background:radial-gradient(600px 200px at 50% -20%, var(--brand-soft), transparent 70%), var(--surface);flex-direction:column;align-items:center;gap:1rem;margin:1.5rem auto 0;padding:3rem 1.75rem;display:flex}.review-card__word{letter-spacing:-.03em;margin:.4rem 0;font-size:2.2rem;font-weight:750}.review-card__translation{color:var(--brand-700);margin:0;font-size:1.25rem;font-weight:600}.review-card--done{gap:1.2rem}.telegram-panel{flex-direction:column;align-items:flex-start;gap:.6rem;padding:.85rem 1.1rem;display:flex}.telegram-panel[open]{padding-bottom:1.1rem}.telegram-panel__summary{cursor:pointer;align-items:center;gap:.6rem;width:100%;list-style:none;display:flex}.telegram-panel__summary::-webkit-details-marker{display:none}.telegram-panel__title{align-items:center;gap:.45rem;margin-right:auto;font-size:.95rem;font-weight:700;display:inline-flex}.telegram-panel__summary:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:8px;height:8px;margin-bottom:3px;transition:transform .15s;transform:rotate(45deg)}.telegram-panel[open] .telegram-panel__summary:after{margin-bottom:-3px;transform:rotate(-135deg)}.telegram-panel code,.telegram-code>code{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:.12rem .4rem;font-size:.9em}.telegram-code{border:1px dashed var(--border-strong);border-radius:var(--r-sm);background:var(--surface-2);flex-direction:column;gap:.55rem;width:100%;padding:.85rem;display:flex}.telegram-code>code{color:var(--brand-700);align-self:flex-start;font-size:1.05rem;font-weight:650}@media (width<=720px){.vocab-form__row,.vocab-row--editing{grid-template-columns:minmax(0,1fr)}.vocab-search{max-width:none}}.review-call{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);box-shadow:var(--shadow-xs);align-items:center;gap:.85rem;padding:.8rem 1.05rem;display:flex}.review-call.is-soon{border-color:color-mix(in srgb, var(--brand) 45%, transparent);background:var(--brand-soft)}.review-call__icon{background:var(--brand-tint);width:34px;height:34px;color:var(--brand-700);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.review-call__body{flex-direction:column;gap:.1rem;min-width:0;margin-right:auto;display:flex}.review-call__meter{flex-direction:column;align-items:flex-end;line-height:1.15;display:flex}.review-call__count{color:var(--brand-700);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:750}.empty-day{text-align:center;border:1px dashed var(--border-strong);border-radius:var(--r);background:var(--surface-2);flex-direction:column;align-items:center;gap:.4rem;padding:2rem 1.25rem;display:flex}.empty-day__icon{background:var(--surface-3);width:44px;height:44px;color:var(--muted);border-radius:50%;place-items:center;margin-bottom:.3rem;display:grid}.empty-day__cta{border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:.6rem;width:100%;max-width:26rem;margin-top:.9rem;padding-top:.9rem;display:flex}.empty-day__hook{color:var(--text-2);font-size:.9rem}.mission__foot{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.call-prep{flex-direction:column;gap:.6rem;display:flex;align-items:stretch!important}.call-prep__date{justify-items:start;gap:.3rem;margin-bottom:0;display:grid}.call-prep__date input{width:auto;min-width:11rem;margin-top:0}.call-prep__mood{gap:.15rem;display:grid}.call-prep__list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.call-prep__item summary{border-radius:var(--r-sm);cursor:pointer;align-items:center;gap:.45rem;padding:.45rem .5rem;font-size:.88rem;list-style:none;display:flex}.call-prep__item summary::-webkit-details-marker{display:none}.call-prep__item summary:hover{background:var(--surface-2)}.call-prep__item-title{overflow-wrap:anywhere;min-width:0;margin-right:auto;font-weight:650}.call-prep__item-body{gap:.4rem;padding:.35rem .5rem .7rem;display:grid}.call-prep__mission{color:var(--muted);align-items:center;gap:.35rem;margin:0;font-size:.82rem;display:flex}.attempts-summary{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.attempts-summary__item{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);justify-content:space-between;align-items:center;gap:.5rem;padding:.35rem .55rem;font-size:.82rem;display:flex}.form-row{grid-template-columns:1fr 7rem;align-items:end;gap:.5rem;display:grid}.minutes-field{margin-bottom:0}.exercise-list{border-top:1px solid var(--border);gap:0;margin:.25rem 0 0;display:grid}.exercise{border-bottom:1px solid var(--border);gap:.65rem;padding:.95rem 0 1rem;display:grid}.exercise:last-child{border-bottom:none;padding-bottom:.25rem}.exercise.is-spent{opacity:.7}.exercise__head{justify-content:space-between;align-items:baseline;gap:.6rem;display:flex}.exercise__kind{letter-spacing:.04em;color:var(--muted);text-transform:uppercase;align-items:center;gap:.4rem;font-size:.75rem;font-weight:700;display:inline-flex}.exercise__hint{color:var(--muted);margin:0;font-size:.85rem}.exercise__prompt{margin:0;font-size:.98rem;line-height:1.55}.exercise__actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.exercise__result{border-left:3px solid var(--brand);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--brand-soft);gap:.25rem;padding:.55rem .8rem;font-size:.9rem;display:grid}.exercise__result p{margin:0}.gap-fill{justify-items:start;gap:.75rem;display:grid}.gap-fill__sentence{margin:0;font-size:1rem;line-height:2.4}.gap-fill__input{border:none;border-bottom:2px solid var(--border-strong);width:auto;min-width:5.5ch;color:var(--brand-700);font:inherit;text-align:center;background:0 0;border-radius:0;margin:0 .2rem;padding:0 .35rem .1rem;font-weight:600;transition:border-color .15s,background .15s;display:inline-block}.gap-fill__input::placeholder{color:var(--muted);font-weight:400}.gap-fill__input:focus{box-shadow:none;border-bottom-color:var(--brand);background:var(--brand-soft);outline:none}.gap-fill__input:disabled{opacity:1;cursor:default}.gap-fill__key{gap:.2rem;margin:.3rem 0 0;padding:0;font-size:.85rem;list-style:none;display:grid}.gap-fill__score{align-items:baseline;gap:.3rem;font-weight:700;display:inline-flex}.is-right{color:var(--green);border-bottom-color:var(--green)}.is-wrong{color:var(--danger);border-bottom-color:var(--danger)}.open-answer{justify-items:start;gap:.6rem;display:grid}.open-answer textarea{width:100%}.theses{justify-items:start;gap:.6rem;display:grid}.theses__segment{color:var(--text-2);align-items:center;gap:.35rem;margin:0;font-size:.85rem;font-weight:600;display:inline-flex}.theses__list,.theses__mine{gap:.4rem;width:100%;margin:0;padding-left:1.2rem;display:grid}.theses__list input{width:100%}.theses__mine{padding:0;list-style:none}.theses__mine li{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);justify-content:space-between;align-items:center;gap:.6rem;padding:.45rem .6rem;font-size:.9rem;display:flex}.theses__mine li.is-hit{border-color:color-mix(in srgb, var(--green) 40%, transparent);background:var(--green-soft)}.theses__marks{flex-shrink:0;gap:.3rem;display:flex}.theses__mark{border:1px solid var(--border-strong);background:var(--surface);width:28px;height:28px;color:var(--muted);cursor:pointer;border-radius:8px;place-items:center;padding:0;transition:background .14s,border-color .14s,color .14s;display:grid}.theses__mark:hover:not(:disabled){border-color:var(--green);color:var(--green)}.theses__mark.is-active{border-color:var(--green);background:var(--green-soft);color:var(--green)}.theses__mark--miss:hover:not(:disabled){border-color:var(--danger);color:var(--danger)}.theses__mark--miss.is-active{border-color:var(--border-strong);background:var(--surface-2);color:var(--muted)}.theses__mark:disabled{cursor:default}.theses__key{border-left:3px solid var(--brand);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--brand-soft);width:100%;padding:.6rem .8rem}.theses__key ul{gap:.15rem;margin:.25rem 0 0;padding-left:1.1rem;font-size:.9rem;display:grid}.theses__check{justify-items:start;gap:.6rem;width:100%;display:grid}.voice-block{gap:.7rem;display:grid}.voice-block__questions{color:var(--text-2);gap:.2rem;margin:0;padding-left:1.2rem;font-size:.92rem;display:grid}.voice-block__takes{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.voice-block__take{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);gap:.4rem;padding:.6rem .7rem;display:grid}.voice-block__take-head{color:var(--muted);justify-content:space-between;align-items:center;gap:.5rem;font-size:.78rem;font-weight:600;display:flex}.voice-block__spent{color:var(--muted);align-items:center;gap:.4rem;font-size:.85rem;display:flex}.audio-clip{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.audio-clip audio,.recorder audio{flex:14rem;max-width:100%;height:36px}.recorder{justify-items:start;gap:.5rem;width:100%;display:grid}.recorder__row{flex-wrap:wrap;align-items:center;gap:.6rem;width:100%;display:flex}.recorder__hint{color:var(--muted);font-size:.8rem}.recorder__live{border:1px solid color-mix(in srgb, var(--danger) 35%, var(--border));background:var(--danger-soft);color:var(--danger);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:.5rem;padding:.45rem .8rem .45rem .7rem;font-size:.86rem;font-weight:650;display:inline-flex}.recorder__pulse{background:var(--danger);border-radius:50%;width:9px;height:9px;animation:1.4s ease-in-out infinite recorder-pulse}@keyframes recorder-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.8)}}.recorder__meter{background:var(--surface-3);border-radius:999px;flex:8rem;min-width:6rem;height:5px;overflow:hidden}.recorder__meter-fill{background:var(--danger);border-radius:999px;height:100%;transition:width .25s linear}.recorder__meter-fill.is-short{background:var(--orange)}.recorder__sent{color:var(--green);align-items:center;gap:.4rem;font-size:.86rem;font-weight:650;display:inline-flex}.intro-card{gap:.6rem;margin-bottom:1rem;display:grid}.intro-card h3{margin:0}.intro-card__questions{margin:0;padding-left:1.2rem;font-size:.92rem}.intro-card__takes{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.lesson-review{border:1px dashed var(--border-strong);border-radius:var(--r-sm);gap:.6rem;margin-top:1rem;padding:.9rem 1rem;display:grid}.lesson-review.is-answered{border-style:solid;border-color:var(--border)}.lesson-review__question{margin:0;font-weight:600}.lesson-review__options{flex-wrap:wrap;gap:.45rem;display:flex}.lesson-review__reason{gap:.45rem;display:grid}.review-card__grades{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;width:100%;max-width:26rem;display:grid}.grade{border-radius:var(--r-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;gap:.15rem;padding:.6rem .5rem;display:grid}.grade:hover:not(:disabled){border-color:var(--brand)}.grade:disabled{opacity:.5;cursor:not-allowed}.grade--again{border-color:#d9534f}.grade--hard{border-color:#e0913a}.grade--good{border-color:#3f9d6d}.grade--easy{border-color:#4a8fd0}.overview{gap:1rem;display:grid}.overview__stats{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.7rem;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);align-content:start;gap:.2rem;padding:.8rem .9rem;display:grid}.stat--warn{border-color:color-mix(in srgb, var(--orange) 55%, transparent);background:var(--orange-soft)}.stat__title{letter-spacing:.01em;font-weight:600}.stat__value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.45rem;font-weight:750;line-height:1.15}.stat__note{line-height:1.35}.stat--warn .stat__note{color:var(--orange);font-weight:600}.overview__last{gap:.4rem;display:grid}.overview__last h3,.overview__last p{margin:0}.visit-chart{gap:.35rem;display:grid}.visit-chart__bars{align-items:flex-end;gap:3px;height:90px;margin:0;padding:0;list-style:none;display:flex}.visit-chart__bars li{border-bottom:2px solid var(--border-strong);border-radius:3px 3px 0 0;flex:1;align-items:flex-end;height:100%;display:flex;overflow:hidden}.visit-chart__bars li.is-active{background:var(--brand-soft)}.visit-chart__bar{background:var(--brand);border-radius:3px 3px 0 0;width:100%;min-height:2px}.visit-chart__bars li:not(.is-active) .visit-chart__bar{background:0 0;min-height:0}.visit-chart__axis{justify-content:space-between;display:flex}.student-tab__badge{background:var(--brand);color:var(--on-brand);border-radius:999px;margin-left:.4rem;padding:.05rem .4rem;font-size:.72rem}.student-tab__dot{background:var(--border-strong);border-radius:50%;width:7px;height:7px;margin-left:.45rem;display:inline-block}.student-tab__dot.is-today{background:var(--green)}.answers__list,.reviews__list,.flags__list{gap:.7rem;margin:.8rem 0 0;padding:0;list-style:none;display:grid}.answer,.review-row,.flag{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);gap:.5rem;padding:.85rem;display:grid}.answer.is-waiting{border-left:3px solid var(--brand)}.answer__head,.review-row__head,.flag__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.6rem;display:flex}.answer__prompt{margin:0;font-weight:600}.answer__reply{gap:.45rem;display:grid}.answer__theses{margin:0;padding-left:1.2rem}.answer__blanks{flex-wrap:wrap;gap:.5rem;margin:0;display:flex}.answer__blanks span{border-bottom:2px solid var(--border-strong);padding:0 .35rem}.review-row.is-bad,.flag.is-unseen{border-color:var(--danger)}.flag__note{margin:0;font-weight:600}.student-note--tutor{border-left-color:var(--brand)}.mood-strip{flex-wrap:wrap;gap:.4rem;margin:.3rem 0 0;padding:0;list-style:none;display:flex}.mood-strip li{border:1px solid var(--border);border-radius:var(--r-sm);text-align:center;gap:.1rem;padding:.3rem .5rem;font-size:.78rem;display:grid}.mood-strip li.is-bad{border-color:var(--danger)}.call-prep__reasons{gap:.5rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.task__head-actions{flex-shrink:0;align-items:center;gap:.35rem;display:flex}.task__blocks{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.task__blocks li{border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);border-radius:999px;align-items:center;gap:.3rem;padding:.22rem .55rem;font-size:.76rem;font-weight:600;display:inline-flex}.task__tools{margin-top:.3rem}.task__tools .btn.is-open{background:var(--brand-soft);color:var(--brand-700)}.student-attempts{gap:.3rem;display:grid}.exercise-editor,.rule-editor{border-top:1px dashed var(--border);gap:.7rem;margin-top:.7rem;padding-top:.7rem;display:grid}.exercise-editor__list,.rule-editor__list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.exercise-editor__list li,.rule-editor__list li{border:1px solid var(--border);border-radius:var(--r-sm);justify-content:space-between;align-items:flex-start;gap:.6rem;padding:.5rem .6rem;display:flex}.exercise-editor__list p{margin:.1rem 0 0;font-size:.9rem}.rule-editor__list li.is-off{opacity:.55}.exercise-editor__form,.rule-editor__form,.media-picker{gap:.55rem;display:grid}.exercise-editor__form label,.rule-editor__form label,.media-picker label{gap:.25rem;font-size:.85rem;font-weight:600;display:grid}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.media-picker__upload summary{cursor:pointer;font-size:.85rem;font-weight:600}.media-picker__upload{gap:.5rem;display:grid}.sandbox-grid{gap:1rem;display:grid}.sandbox-panel{gap:.7rem;display:grid}.sandbox-panel h3{margin:0}.sandbox-panel__row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.sandbox-panel__row input[type=text],.sandbox-panel__row input:not([type]){flex:12rem}.checkbox{align-items:center;gap:.4rem;font-size:.85rem;display:inline-flex}.import-panel__text{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.import-preview{border-top:1px dashed var(--border);gap:.6rem;padding-top:.6rem;display:grid}.import-preview__warnings{color:var(--danger);margin:0;padding-left:1.1rem;font-size:.85rem}.import-preview__list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.import-preview__list li{align-items:flex-start;gap:.6rem;display:flex}.import-preview__list p{margin:.1rem 0 0}.template-list,.bulk-list{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.template-row{border:1px solid var(--border);border-radius:var(--r-sm);gap:.5rem;padding:.6rem .7rem;display:grid}.template-row__head{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.template-row__head strong{flex:auto}.st{--s-bg:#f7f6fb;--s-panel:#fff;--s-side:#f4f2f8;--s-ink:#16161d;--s-ink-2:#565a68;--s-muted:#9296a3;--s-line:#e9e7f0;--s-line-2:#f1eff6;--s-violet:#6a4df5;--s-violet-2:#8b74ff;--s-violet-soft:#efecff;--s-dark:#14131c;--s-green:#34b87d;--s-amber:#e0a13c;--s-r:16px;--s-r-lg:22px;--s-shadow-sm:0 1px 2px #14161c0a, 0 4px 10px -8px #14161c2e;--s-shadow:0 2px 4px #14161c0a, 0 12px 24px -18px #14161c4d;--s-shadow-lg:0 4px 8px #14161c0d, 0 26px 48px -28px #14161c66;background:var(--s-bg);min-height:100vh;color:var(--s-ink);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0.1 0.1 0 -0.1'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");grid-template-columns:232px minmax(0,1fr);display:grid}:root[data-theme=dark] .st{--s-bg:#0c0d14;--s-panel:#14151f;--s-side:#101119;--s-ink:#edeef5;--s-ink-2:#a9adbd;--s-muted:#767c90;--s-line:#232634;--s-line-2:#1b1e2a;--s-violet-soft:#201d3d;--s-dark:#0a0a11;--s-shadow-sm:0 1px 2px #00000080;--s-shadow:0 14px 28px -20px #000c;--s-shadow-lg:0 30px 54px -30px #000000e6;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0.08 0.08 0.08 0 -0.08'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}.st--bare{background:var(--s-bg);display:block}.st--bare .st-side,.st--bare .st-top{display:none}.st--bare .st-main{padding:0}.st a:hover{text-decoration:none}.st-side{background:var(--s-side);border-right:1px solid var(--s-line);opacity:0;transition:opacity .52s ease, translate .7s var(--spring-soft);flex-direction:column;gap:1.4rem;padding:1.4rem 1rem;display:flex;translate:-6px}.st.is-assembled .st-side{opacity:1;translate:0}.st-side__logo{letter-spacing:-.03em;color:var(--s-ink);align-items:center;gap:.5rem;padding:.2rem .4rem;font-size:1.05rem;font-weight:700;display:inline-flex}.st-side__nav{gap:.15rem;display:grid}.st-nav{color:var(--s-ink-2);opacity:0;transition:color .24s,opacity .42s;transition-delay:calc(.12s + var(--i) * 45ms);border-radius:11px;align-items:center;gap:.65rem;padding:.6rem .7rem;font-size:.88rem;font-weight:500;display:flex;position:relative}.st.is-assembled .st-nav{opacity:1}.st-nav__glow{background:var(--s-panel);opacity:0;border-radius:11px;transition:opacity .26s;position:absolute;inset:0}.st-nav:hover .st-nav__glow{opacity:.7}.st-nav__icon{transition:transform .42s var(--spring);position:relative}.st-nav:hover .st-nav__icon{transform:translate(2px)}.st-nav__label{opacity:.86;transition:opacity .24s;position:relative}.st-nav:hover .st-nav__label{opacity:1}.st-nav__badge{background:var(--s-line);color:var(--s-muted);border-radius:999px;margin-left:auto;padding:.1rem .45rem;font-size:.7rem;font-weight:600;position:relative}.st-nav.is-active{color:var(--s-violet);font-weight:600}.st-nav.is-active .st-nav__glow{opacity:1;background:var(--s-violet-soft)}.st-nav.is-active .st-nav__badge{background:color-mix(in srgb, var(--s-violet) 16%, transparent);color:var(--s-violet)}.st-side__rail{gap:.75rem;margin-top:auto;display:grid}.st-streak,.st-sync{border:1px solid var(--s-line);border-radius:var(--s-r);background:var(--s-panel);opacity:0;transition:opacity .6s ease .32s, translate .8s var(--spring-heavy) .32s;padding:.85rem .9rem;translate:0 8px}.st-sync{transition-delay:.42s}.st.is-assembled .st-streak,.st.is-assembled .st-sync{opacity:1;translate:0}.st-streak__label,.st-sync__label{color:var(--s-ink-2);margin:0 0 .5rem;font-size:.74rem;font-weight:600}.st-streak__value{color:var(--s-muted);align-items:center;gap:.4rem;margin:0;font-size:.74rem;display:flex}.st-streak__value strong{letter-spacing:-.03em;color:var(--s-ink);font-size:1.3rem;font-weight:700}.st-flame{color:#f0803c;animation:st-breathe 5.5s var(--ease-breathe) infinite;place-items:center;display:inline-grid}@keyframes st-breathe{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.st-streak__chart{align-items:flex-end;gap:1px;height:42px;margin:.7rem 0 .4rem;display:flex}.st-streak__chart i{min-width:2px;height:calc(var(--h) * 100%);background:color-mix(in srgb, var(--s-violet) calc(var(--i) * 7%), #cfe86a);transform-origin:50% 100%;transition:transform .62s var(--spring-snap);transition-delay:calc(.56s + var(--i) * 30ms);border-radius:1.5px;flex:1;transform:scaleY(0)}.st.is-assembled .st-streak__chart i{transform:scaleY(1)}.st-streak__best{color:var(--s-muted);margin:0;font-size:.7rem}.st-sync__row{color:var(--s-ink);align-items:center;gap:.55rem;display:flex}.st-sync__mark{color:#fff;background:#2aa3e0;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.st-sync__row strong{font-size:.8rem;font-weight:600;display:block}.st-sync__row em{color:var(--s-muted);font-size:.7rem;font-style:normal}.st-side__foot{border-top:1px solid var(--s-line);align-items:center;gap:.5rem;padding-top:.75rem;display:flex}.st-side__quiet{font:inherit;color:var(--s-muted);cursor:pointer;background:0 0;border:none;font-size:.8rem}.st-side__quiet:hover{color:var(--s-ink)}.st-body{flex-direction:column;min-width:0;display:flex}.st-top{opacity:0;align-items:center;gap:.9rem;padding:1.1rem 2rem 0;transition:opacity .52s .18s;display:flex}.st.is-assembled .st-top{opacity:1}.st-top__spacer{flex:1}.st-bell{width:36px;height:36px;color:var(--s-ink-2);cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;transition:background .22s;display:grid;position:relative}.st-bell:hover{background:var(--s-panel)}.st-bell__dot{background:var(--s-violet);border-radius:50%;width:6px;height:6px;position:absolute;top:7px;right:8px}.st-who{color:var(--s-ink);border-radius:999px;align-items:center;gap:.6rem;padding:.3rem .5rem .3rem .3rem;transition:background .22s;display:flex}.st-who:hover{background:var(--s-panel)}.st-who__avatar{background:linear-gradient(150deg, var(--s-violet-2), var(--s-violet));color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:.8rem;font-weight:700;display:grid}.st-who__meta strong{font-size:.84rem;font-weight:600;line-height:1.2;display:block}.st-who__meta em{color:var(--s-muted);font-size:.7rem;font-style:normal}.st-who__caret{color:var(--s-muted);rotate:90deg}.st-main{flex:1;min-width:0;padding:1.4rem 2rem 3rem}.today__head{justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:1.6rem;display:flex}.today__greet{letter-spacing:-.035em;margin:0;font-size:clamp(1.7rem,2.6vw,2.15rem);font-weight:700;line-height:1.14}.today__greet>span,.today__greet>strong{white-space:nowrap;opacity:0;transition:opacity .6s ease, translate .76s var(--spring);display:block;translate:0 8px}.today__greet>span{color:var(--s-violet);transition-delay:.24s}.today__greet>strong{font-weight:700;transition-delay:.34s}.today.is-assembled .today__greet>span,.today.is-assembled .today__greet>strong{opacity:1;translate:0}.today__sub{color:var(--s-muted);opacity:0;margin:.5rem 0 0;font-size:.86rem;transition:opacity .7s .52s}.today.is-assembled .today__sub{opacity:1}.today__streak{border:1px solid var(--s-line);background:var(--s-panel);box-shadow:var(--s-shadow-sm);color:var(--s-muted);opacity:0;transition:opacity .6s ease .42s, translate .7s var(--spring) .42s, box-shadow .26s ease;border-radius:999px;align-items:center;gap:.45rem;padding:.65rem .9rem;font-size:.78rem;display:inline-flex;translate:0 -6px}.today.is-assembled .today__streak{opacity:1;translate:0}.today__streak:hover{box-shadow:var(--s-shadow)}.today__streak strong{color:var(--s-ink);font-size:1rem;font-weight:700}.today__flame{color:#f0803c;place-items:center;display:inline-grid}.wt{margin-bottom:1.5rem}.wt__labels,.wt__days{grid-template-columns:repeat(var(--count), minmax(0, 1fr));display:grid}.wt__labels{color:var(--s-muted);margin-bottom:.6rem;font-size:.72rem;font-weight:600}.wt__labels span{text-align:center}.wt__labels .is-today{color:var(--s-ink)}.wt__track{position:relative}.wt__line{top:50%;left:calc(50% / var(--count));right:calc(50% / var(--count));background:color-mix(in srgb, var(--s-ink) 12%, var(--s-line));transform-origin:0;height:2px;transition:transform .9s var(--ease-draw) .22s;border-radius:999px;margin-top:-1px;position:absolute;transform:scaleX(0)}.wt.is-ready .wt__line{transform:scaleX(1)}.wt__line--fill{background:var(--s-violet);transform:scaleX(calc(var(--fill) / (var(--count) - 1)));transition:transform .9s var(--spring-soft)}.wt.is-ready .wt__line--fill{transform:scaleX(calc(var(--fill) / (var(--count) - 1)))}.wt__days{margin:0;padding:0;list-style:none;position:relative}.wt__days li{justify-items:center;display:grid;position:relative}.wt__day{border:1.5px solid var(--s-line);background:var(--s-bg);width:30px;height:30px;color:var(--s-muted);font:inherit;cursor:default;transition:transform .62s var(--spring-snap), background .32s ease, color .32s ease, border-color .32s ease, box-shadow .42s var(--spring-soft);transition-delay:calc(.76s + var(--i) * 90ms), 0s, 0s, 0s, 0s;border-radius:50%;place-items:center;font-size:.78rem;font-weight:600;display:grid;transform:scale(0)}.wt.is-ready .wt__day{transform:scale(1)}.wt__day.is-active{background:var(--s-violet);border-color:var(--s-violet);color:#fff;box-shadow:0 0 0 5px color-mix(in srgb, var(--s-violet) 14%, transparent)}.wt__day.is-done{background:var(--s-violet);border-color:var(--s-violet);color:#fff}.wt__day.is-past{background:var(--s-panel);color:var(--s-muted)}.wt.is-reaching .wt__day.is-locked:first-of-type{border-color:color-mix(in srgb, var(--s-violet) 40%, var(--s-line));color:var(--s-violet)}.wt__lock{color:var(--s-muted);opacity:0;transition:opacity .4s;transition-delay:calc(.9s + var(--i) * 90ms);position:absolute;bottom:-12px}.wt.is-ready .wt__lock{opacity:.65}.wt__tip{z-index:3;background:var(--s-dark);color:#fff;white-space:nowrap;animation:st-tip .26s var(--spring-soft);border-radius:8px;padding:.3rem .6rem;font-size:.7rem;position:absolute;top:-34px}@keyframes st-tip{0%{opacity:0;transform:translateY(4px)}}.today__grid{grid-template-columns:minmax(0,1fr) 292px;align-items:start;gap:1.2rem;display:grid}.today__stage{gap:1rem;min-width:0;display:grid}.today__rail{gap:.9rem;display:grid}.lesson{border-radius:var(--s-r-lg);background:var(--s-dark);min-height:360px;box-shadow:var(--s-shadow-lg);opacity:0;transition:opacity .7s ease .64s, translate .9s var(--spring-heavy) .64s, scale .9s var(--spring-heavy) .64s, box-shadow .42s ease;align-items:flex-end;display:flex;position:relative;overflow:hidden;translate:0 14px;scale:.985}.lesson.is-ready{opacity:1;translate:0;scale:1}.lesson:hover{box-shadow:var(--s-shadow-lg), 0 0 0 1px color-mix(in srgb, var(--s-violet) 20%, transparent)}.lesson:hover .lesson__body{translate:0 -5px}.lesson__still{background-image:var(--shot,linear-gradient(140deg, #2a2450, #14131c));animation:st-cinema 42s var(--ease-breathe) infinite alternate;background-position:50%;background-size:cover;position:absolute;inset:-4%}@keyframes st-cinema{0%{transform:scale(1)translate(0,0)}to{transform:scale(1.07)translate(-1.2%,-.8%)}}.lesson__veil{background:linear-gradient(100deg,#0a0910f0 0%,#0a0910d1 38%,#0a091038 78%);position:absolute;inset:0}.lesson__body{color:#fff;max-width:55%;transition:translate .52s var(--spring);padding:1.8rem;position:relative}.lesson__kind{letter-spacing:.14em;color:var(--s-violet-2);margin:0 0 .7rem;font-size:.68rem;font-weight:700}.lesson__title{letter-spacing:-.035em;margin:0;font-size:clamp(1.7rem,3vw,2.4rem);font-weight:700;line-height:1.08;transition:color .26s}.lesson:hover .lesson__title{color:#fff}.lesson__meta{color:#ffffffa8;gap:1.2rem;margin:.9rem 0 0;font-size:.76rem;display:flex}.lesson__meta span{align-items:center;gap:.35rem;display:inline-flex}.lesson__lead{color:#ffffffc7;max-width:38ch;margin:.9rem 0 0;font-size:.86rem;line-height:1.55}.lesson__act{align-items:center;gap:.7rem;margin-top:1.5rem;display:flex}.lesson__start{background:var(--s-violet);color:#fff;font:inherit;cursor:pointer;transition:translate .26s var(--spring-soft), box-shadow .32s ease, scale .2s var(--spring-soft);border:none;border-radius:12px;align-items:center;gap:.6rem;padding:.8rem 1.4rem;font-size:.9rem;font-weight:600;display:inline-flex}.lesson:hover .lesson__start{box-shadow:0 8px 26px -10px var(--s-violet)}.lesson__start:active{scale:.98}.lesson__start-icon{background:#ffffff2e;border-radius:50%;place-items:center;width:22px;height:22px;padding-left:2px;display:grid}.lesson__save{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff40;border-radius:50%;place-items:center;width:42px;height:42px;transition:background .24s;display:grid}.lesson__save:hover{background:#ffffff1f}.lesson.is-done{min-height:260px;box-shadow:var(--s-shadow);transition:min-height .76s var(--spring-soft), box-shadow .62s ease}.lesson.is-done .lesson__start{background:#ffffff24}.lesson.is-done .lesson__lead{opacity:.6}.today__skeleton{border-radius:var(--s-r-lg);background:var(--s-panel);border:1px solid var(--s-line);min-height:360px}.today__also{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.today__also li{border:1px solid var(--s-line);background:var(--s-panel);border-radius:12px;align-items:center;gap:.7rem;padding:.7rem .95rem;font-size:.84rem;display:flex}.today__also strong{font-weight:600}.today__also span{color:var(--s-muted);font-size:.76rem}.today__also i{background:var(--s-green);color:#fff;border-radius:50%;place-items:center;width:17px;height:17px;margin-left:auto;display:grid}.st-streak__chart i:not(.is-active){opacity:.4}.st-streak__chart i.is-active{opacity:1}.st-streak__note{color:var(--s-muted);margin:0 0 .35rem;font-size:.68rem}.st-sync__row em.is-linked{color:var(--s-green);align-items:center;gap:.3rem;display:inline-flex}.st-sync__dot{background:var(--s-green);border-radius:50%;width:6px;height:6px}.today__praise{color:var(--s-ink-2);text-align:center;animation:st-praise .9s var(--spring-soft) .4s both;margin:0;font-size:.92rem}@keyframes st-praise{0%{opacity:0;transform:translateY(6px)}}.today__rest{border:1px solid var(--s-line);border-radius:var(--s-r-lg);background:var(--s-panel);justify-items:start;gap:.6rem;padding:2.4rem 1.8rem;display:grid}.today__rest h2{margin:0;font-size:1.2rem}.today__rest p{color:var(--s-muted);margin:0;font-size:.88rem}.today__rest-go{background:var(--s-violet);color:#fff;border-radius:10px;margin-top:.5rem;padding:.6rem 1.1rem;font-size:.86rem;font-weight:600}.today__tip{border-radius:var(--s-r);background:var(--s-violet-soft);opacity:0;align-items:flex-start;gap:.8rem;padding:.9rem 1rem;transition:opacity .7s 1.1s;display:flex}.today.is-assembled .today__tip{opacity:1}.today__tip-mark{color:var(--s-violet);place-items:center;display:grid}.today__tip strong{color:var(--s-violet);font-size:.78rem;display:block}.today__tip p{color:var(--s-ink-2);margin:.2rem 0 0;font-size:.82rem}.today__tip button{color:var(--s-muted);cursor:pointer;background:0 0;border:none;margin-left:auto}.tcl,.peek{border:1px solid var(--s-line);border-radius:var(--s-r);background:var(--s-panel);opacity:0;transition:opacity .6s ease .82s, translate .8s var(--spring-heavy) .82s;padding:1rem 1.1rem;translate:0 10px}.peek{transition-delay:.94s}.tcl.is-ready,.peek.is-ready{opacity:1;translate:0}.tcl__title{margin:0 0 .9rem;font-size:.86rem;font-weight:600}.tcl__list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid;position:relative}.tcl__rail{background:var(--s-line);border-radius:999px;width:2px;position:absolute;top:8px;bottom:8px;left:7px}.tcl__rail--fill{background:var(--s-violet);transform:scaleY(calc(var(--done) / var(--total)));transform-origin:50% 0;transition:transform .9s var(--spring-soft)}.tcl__step{color:var(--s-muted);opacity:0;transition:opacity .46s ease, translate .56s var(--spring), color .3s ease;transition-delay:calc(.9s + var(--i) * 80ms);align-items:center;gap:.6rem;font-size:.8rem;display:flex;position:relative;translate:0 4px}.tcl.is-ready .tcl__step{opacity:1;translate:0}.tcl__mark{border:1.5px solid var(--s-line);background:var(--s-panel);color:#0000;width:16px;height:16px;transition:background .32s ease, border-color .32s ease, color .32s ease, scale .52s var(--spring-snap);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.tcl__step.is-current .tcl__mark{border-color:var(--s-violet);box-shadow:inset 0 0 0 3px var(--s-violet)}.tcl__step.is-done{color:var(--s-ink)}.tcl__step.is-done .tcl__mark{background:var(--s-violet);border-color:var(--s-violet);color:#fff;scale:1.06}.tcl__label{flex:1}.tcl__note{color:var(--s-muted);font-size:.72rem}.peek__head{justify-content:space-between;align-items:center;display:flex}.peek__head h3{margin:0;font-size:.86rem;font-weight:600}.peek__count{background:var(--s-line);color:var(--s-ink-2);border-radius:999px;padding:.1rem .5rem;font-size:.72rem;font-weight:600}.peek__lead{color:var(--s-muted);margin:.5rem 0 .9rem;font-size:.78rem;line-height:1.45}.peek__deck{height:152px;margin-bottom:.9rem;position:relative}.peek__card{width:72%;height:100%;z-index:calc(3 - var(--slot));transform-origin:100%;transform:translate3d(calc(var(--slot) * 54px), calc(var(--slot) * -4px), 0) rotate(calc(-3deg + var(--slot) * 8deg)) scale(calc(1 - var(--slot) * .06));transition:transform .7s var(--spring-heavy);position:absolute;inset:0 auto auto 0}.peek__card-inner{border:1px solid var(--s-line);background:var(--s-panel);height:100%;box-shadow:var(--s-shadow-sm);border-radius:12px;padding:.85rem .9rem}.peek:hover .peek__card{transform:translate3d(calc(var(--slot) * 68px), calc(var(--slot) * -9px), 0) rotate(calc(-4deg + var(--slot) * 11deg)) scale(calc(1 - var(--slot) * .06))}.peek__word{letter-spacing:-.01em;justify-content:space-between;align-items:center;margin:0;font-size:.94rem;font-weight:600;display:flex}.peek__word .icon{color:var(--s-muted)}.peek__translation{color:var(--s-ink-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:.4rem 0 0;font-size:.74rem;line-height:1.4;display:-webkit-box;overflow:hidden}.peek__empty{color:var(--s-muted);margin:0 0 .9rem;font-size:.78rem}.peek__go{background:var(--s-dark);color:#fff;text-align:center;transition:translate .24s var(--spring-soft);border-radius:11px;padding:.7rem;font-size:.84rem;font-weight:600;display:block}.peek__go:hover{translate:0 -1px}.tip-banner{border-radius:var(--s-r);background:var(--s-violet-soft);align-items:flex-start;gap:.6rem;margin-top:1rem;padding:.85rem 1rem;display:flex}.tip-banner__icon{width:22px;height:22px;color:var(--s-violet);flex-shrink:0;place-items:center;margin-top:.05rem;display:grid}.tip-banner p{color:var(--s-ink-2);flex:1;margin:0;font-size:.83rem;line-height:1.5}.tip-banner__close{width:22px;height:22px;color:var(--s-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;place-items:center;transition:background .16s,color .16s;display:grid}.tip-banner__close:hover{color:var(--s-ink-2);background:#0000000f}html.is-staged,body.is-staged{overflow:hidden}.stage{z-index:80;transform-origin:0 0;transform:translate3d(var(--fx), var(--fy), 0) scale(var(--fw), var(--fh));transition:transform .72s var(--spring-soft);position:fixed;inset:0}.stage.is-open{transform:translate(0,0)scale(1)}.stage__frame{border-radius:var(--s-r-lg);background:var(--s-dark);transition:border-radius .72s var(--spring-soft);position:absolute;inset:0;overflow:hidden}.stage.is-open .stage__frame{border-radius:0}.stage__still{background-image:var(--shot,linear-gradient(140deg, #2a2450, #14131c));background-position:50%;background-size:cover;position:absolute;inset:-2%}.stage__veil{background:linear-gradient(#0a0910cc,#0a0910f7);position:absolute;inset:0}.stage__content{color:#fff;opacity:0;flex-direction:column;height:100%;padding:1.6rem clamp(1.5rem,6vw,5rem) 2rem;transition:opacity .34s;display:flex;position:relative}.stage.is-open .stage__content{opacity:1;transition-delay:.38s}.stage__top{justify-content:space-between;align-items:center;display:flex}.stage__back{color:#fff;font:inherit;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:999px;align-items:center;gap:.5rem;padding:.5rem .9rem;font-size:.82rem;transition:background .22s;display:inline-flex}.stage__back:hover{background:#ffffff1f}.stage__crumb{letter-spacing:.14em;color:#ffffff80;margin:0;font-size:.68rem}.stage__middle{flex-direction:column;flex:1;justify-content:center;gap:1rem;width:100%;max-width:860px;margin:0 auto;padding:2rem 0;display:flex}.stage__title{letter-spacing:-.035em;margin:0;font-size:clamp(1.8rem,3.4vw,2.8rem);font-weight:700}.stage__lead{color:#ffffffb8;max-width:60ch;margin:0;line-height:1.6}.stage__player{aspect-ratio:16/9;background:#000;border-radius:14px;position:relative;overflow:hidden}.stage__player iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.stage__link{color:#fff;border:1px solid #ffffff3d;border-radius:10px;align-self:flex-start;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.85rem;display:inline-flex}.stage__mission{background:#ffffff12;border-radius:14px;padding:1rem 1.1rem}.stage__mission-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--s-violet-2);margin:0;font-size:.66rem}.stage__mission-text{margin:.4rem 0 0;font-size:.95rem}.stage__foot{flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.stage__done{background:var(--s-violet);color:#fff;font:inherit;cursor:pointer;transition:scale .2s var(--spring-soft), opacity .22s ease;border:none;border-radius:12px;padding:.85rem 2rem;font-size:.92rem;font-weight:600}.stage__done:active{scale:.98}.stage__done:disabled{opacity:.5;cursor:default}.stage__hint{color:#ffffff73;margin:0;font-size:.74rem}body.is-reviewing{overflow:hidden}.rv{background:var(--s-bg);opacity:0;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem;transition:opacity .7s;display:flex;position:relative}.rv.is-entered{opacity:1}.rv__close{border:1px solid var(--s-line);background:var(--s-panel);width:38px;height:38px;color:var(--s-muted);cursor:pointer;transition:color .22s ease, translate .24s var(--spring-soft);border-radius:50%;place-items:center;display:grid;position:absolute;top:1.5rem;right:1.5rem}.rv__close:hover{color:var(--s-ink);translate:0 -1px}.rv__stage{perspective:1600px}.rv__deck{width:min(380px,84vw);height:440px;transform-style:preserve-3d;animation:rv-breathe 9s var(--ease-breathe) infinite alternate;position:relative}@keyframes rv-breathe{0%{transform:translateY(-.5px)rotateX(.35deg)}to{transform:translateY(.5px)rotateX(-.35deg)}}.rv__card{z-index:calc(10 - var(--slot));transform:translate3d(0, calc(var(--slot) * 15px), calc(var(--slot) * -26px)) rotate(calc(var(--slot) * 1.1deg)) scale(calc(1 - var(--slot) * .022));transition:transform .46s var(--spring-heavy), opacity .42s ease;position:absolute;inset:0}.rv__card.is-front{cursor:pointer}.rv__deck:hover .rv__card.is-front{transform:translate3d(0,-8px,26px)rotate(0)scale(1.012)}.rv__deck:hover .rv__card:not(.is-front){transform:translate3d(0, calc(var(--slot) * 19px), calc(var(--slot) * -30px)) rotate(calc(var(--slot) * 1.5deg)) scale(calc(1 - var(--slot) * .024))}@property --rvturn{syntax:"<angle>";inherits:false;initial-value:0deg}.rv__paper{--rvturn:0deg;height:100%;transform-style:preserve-3d;transform:rotateY(var(--rvturn)) rotateX(calc(var(--rvturn) / -34)) translateZ(calc(sin(var(--rvturn)) * 34px));transition:--rvturn .56s var(--spring-soft), transform .2s var(--spring-soft);position:relative}.rv__deck.is-tilting .rv__card.is-front .rv__paper{transform:rotateX(-9deg)translateZ(10px)}.rv__deck.is-open .rv__card.is-front .rv__paper{--rvturn:180deg}.rv__edge{background:linear-gradient(100deg,#d8d5e4,#f2f0f7 40%,#cfcbdd);border-radius:18px;position:absolute;inset:0;transform:translateZ(0)}.rv__face{color:#16161d;backface-visibility:hidden;background:#fcfbfe;border-radius:18px;flex-direction:column;justify-content:center;padding:2rem;transition:box-shadow .42s;display:flex;position:absolute;inset:0;transform:translateZ(2px);box-shadow:0 18px 34px -22px #14122880,0 2px 4px #14122814}.rv__deck:hover .rv__card.is-front .rv__face{box-shadow:0 30px 50px -26px #1412288c,0 2px 4px #1412281a}.rv__face--back{transform:rotateY(180deg)translateZ(2px)}.rv__word{letter-spacing:-.035em;text-align:center;margin:0;font-size:2.1rem;font-weight:700}.rv__word--small{color:var(--s-muted);font-size:1.2rem;font-weight:600}.rv__hint{color:#b6b3c4;text-align:center;margin:0;font-size:.74rem;position:absolute;bottom:1.6rem;left:0;right:0}.rv__translation{text-align:center;margin:1rem 0 0;font-size:1.3rem;font-weight:600;line-height:1.35}.rv__example{color:#6d6a7d;text-align:center;margin:1rem 0 0;font-size:.86rem;line-height:1.5}.rv__deck.is-out .rv__card.is-front{transition:transform .45s var(--spring-soft), opacity .45s ease}.rv__deck.is-out--again .rv__card.is-front{opacity:.5;transform:translate3d(0,24px,-150px)scale(.9)}.rv__deck.is-out--hard .rv__card.is-front{opacity:.6;transform:translate3d(0,44px,-70px)scale(.95)}.rv__deck.is-out--good .rv__card.is-front{opacity:0;transform:translate3d(0,12px,-260px)scale(.86)}.rv__deck.is-out--easy .rv__card.is-front{opacity:0;transform:translate3d(0,-90px,60px)scale(1.04)}.rv__deck.is-out--easy .rv__card.is-front .rv__face{box-shadow:none}.rv__deck.is-out .rv__card:not(.is-front){transform:translate3d(0, calc((var(--slot) - 1) * 15px), calc((var(--slot) - 1) * -26px)) rotate(calc((var(--slot) - 1) * 1.1deg)) scale(calc(1 - (var(--slot) - 1) * .022))}.rv__verdict{text-align:center;animation:rv-verdict .45s var(--spring-soft);gap:.1rem;margin:0;display:grid;position:absolute;bottom:-58px;left:0;right:0}.rv__verdict span{color:var(--s-muted);font-size:.7rem}.rv__verdict strong{font-size:.9rem;font-weight:600}@keyframes rv-verdict{0%{opacity:0;transform:translateY(-6px)}}.rv__choices{opacity:0;pointer-events:none;transition:opacity .42s ease, translate .56s var(--spring);gap:.6rem;margin-top:4.5rem;display:flex;translate:0 8px}.rv__choices.is-live{opacity:1;pointer-events:auto;translate:0}.rv__choice{border:1px solid var(--s-line);background:var(--s-panel);min-width:108px;color:var(--s-ink);font:inherit;cursor:pointer;box-shadow:var(--s-shadow-sm);transition:translate .26s var(--spring-soft), box-shadow .26s ease;border-radius:999px;padding:.85rem 1.3rem;font-size:.92rem;font-weight:500}.rv__choice:hover{box-shadow:var(--s-shadow);translate:0 -2px}.rv__choice:active{translate:0}.rv__progress{background:var(--s-line);border-radius:999px;width:min(320px,60vw);height:2px;margin-left:calc(min(320px,60vw)/-2);position:absolute;bottom:2.2rem;left:50%;overflow:hidden}.rv__progress span{background:var(--s-violet);transform-origin:0;height:100%;transform:scaleX(var(--p));transition:transform .62s var(--spring-soft);border-radius:999px;display:block}.rv--done .rv__closing{text-align:center;animation:rv-closing .9s var(--spring-soft) .2s both;justify-items:center;gap:.5rem;display:grid}@keyframes rv-closing{0%{opacity:0;transform:translateY(10px)}}.rv__closing h1{letter-spacing:-.03em;margin:0;font-size:1.6rem;font-weight:600}.rv__closing p{color:var(--s-ink-2);margin:0}.rv__next{font-size:.86rem;color:var(--s-muted)!important}.rv__leave{border:1px solid var(--s-line);background:var(--s-panel);font:inherit;color:var(--s-ink);cursor:pointer;border-radius:999px;margin-top:1.4rem;padding:.7rem 1.6rem;font-size:.86rem}.vocab__head h1,.words__head h1,.stpage__head h1{letter-spacing:-.035em;margin:0;font-size:1.9rem;font-weight:700}.vocab__head p,.words__head p,.stpage__head p{color:var(--s-muted);margin:.35rem 0 0;font-size:.84rem}.vocab__head,.words__head,.stpage__head{opacity:0;transition:opacity .56s ease .16s, translate .7s var(--spring) .16s;translate:0 6px}.vocab.is-assembled .vocab__head,.words.is-assembled .words__head,.stpage .stpage__head{opacity:1;translate:0}.words__head,.stpage__head{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.4rem;display:flex}.vocab__start{grid-template-columns:minmax(0,1fr) 340px;align-items:center;gap:2rem;margin:2rem 0 1.6rem;display:grid}.vocab__start-label{letter-spacing:-.03em;margin:0;font-size:1.35rem;font-weight:600}.vocab__start-count{letter-spacing:-.04em;color:var(--s-violet);align-items:baseline;gap:.4rem;margin:.3rem 0 1.3rem;font-size:2.6rem;font-weight:700;display:flex}.vocab__start-act{gap:.6rem;display:flex}.vocab__go{background:var(--s-violet);color:#fff;font:inherit;cursor:pointer;transition:translate .26s var(--spring-soft), box-shadow .3s ease, opacity .22s ease;border:none;border-radius:12px;align-items:center;gap:.7rem;padding:.95rem 1.6rem;font-size:.94rem;font-weight:600;display:inline-flex}.vocab__go:hover:not(:disabled){box-shadow:0 12px 28px -12px var(--s-violet);translate:0 -2px}.vocab__go:disabled{opacity:.45;cursor:default}.vocab__go span{background:#fff3;border-radius:50%;place-items:center;width:22px;height:22px;padding-left:2px;display:grid}.vocab__manage{border:1px solid var(--s-line);background:var(--s-panel);width:50px;color:var(--s-ink-2);border-radius:12px;place-items:center;display:grid}.vocab__deck{perspective:900px;height:200px;position:relative}.vocab__sheet{top:calc(var(--slot) * 9px);left:calc(var(--slot) * -5px);color:#16161d;width:230px;height:150px;transform:rotate(calc(-8deg + var(--slot) * .6deg));z-index:calc(10 - var(--slot));transition:transform .62s var(--spring-heavy), top .62s var(--spring-heavy);background:#fdfcff;border:1px solid #14122814;border-radius:14px;position:absolute;box-shadow:0 12px 22px -18px #14122899}.vocab__deck:hover .vocab__sheet{top:calc(var(--slot) * 13px);transform:rotate(calc(-9deg + var(--slot) * .9deg))}.vocab__sheet em{letter-spacing:-.02em;font-size:1.25rem;font-style:normal;font-weight:600;position:absolute;top:42%;left:22%;transform:rotate(-3deg)}.vocab__deck-tag{z-index:20;color:var(--s-muted);font-size:.7rem;position:absolute;top:-8px;right:6px;transform:rotate(-8deg)}.vocab__grid,.words__grid{grid-template-columns:minmax(0,1fr) 268px;align-items:start;gap:1.1rem;display:grid}.vocab__collection,.words__main{border:1px solid var(--s-line);border-radius:var(--s-r-lg);background:color-mix(in srgb, var(--s-panel) 60%, transparent);min-width:0;padding:1.2rem}.vocab__collection-head h2{margin:0 0 1rem;font-size:1.05rem;font-weight:600}.vocab__tools,.words__tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.vocab__filters,.words__filters{flex-wrap:wrap;gap:.35rem;display:flex}.vocab__filter,.words__filter{color:var(--s-ink-2);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .8rem;font-size:.8rem;transition:background .22s,color .22s;display:inline-flex}.vocab__filter span,.words__filter span{color:var(--s-muted);font-size:.72rem}.vocab__filter:hover,.words__filter:hover{background:var(--s-line-2)}.vocab__filter.is-active,.words__filter.is-active{background:var(--s-violet-soft);color:var(--s-violet);font-weight:600}.vocab__filter.is-active span,.words__filter.is-active span{color:var(--s-violet)}.vocab__search,.words__search{border:1px solid var(--s-line);background:var(--s-panel);color:var(--s-muted);border-radius:999px;align-items:center;gap:.5rem;min-width:200px;padding:.45rem .85rem;display:inline-flex}.vocab__search input,.words__search input{font:inherit;color:var(--s-ink);background:0 0;border:none;width:100%;padding:0;font-size:.82rem}.vocab__search input:focus,.words__search input:focus{box-shadow:none;outline:none}.vocab__cards{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.8rem;display:grid}.wcard{border:1px solid var(--s-line);background:var(--s-panel);animation:st-rise .52s var(--spring) both;animation-delay:calc(var(--i) * 35ms);transition:translate .3s var(--spring-soft), box-shadow .3s ease, opacity .26s ease, scale .26s ease;border-radius:14px;padding:.9rem 1rem;position:relative}@keyframes st-rise{0%{opacity:0;transform:translateY(8px)}}.wcard:hover{box-shadow:var(--s-shadow);translate:0 -2px}.wcard.is-leaving{opacity:0;scale:.95}.wcard__head{justify-content:space-between;align-items:flex-start;display:flex}.wcard__head h4{letter-spacing:-.015em;margin:0;font-size:1rem;font-weight:600}.wcard__more{color:var(--s-muted);cursor:pointer;background:0 0;border:none;padding:0}.wcard__menu{z-index:5;border:1px solid var(--s-line);background:var(--s-panel);min-width:170px;box-shadow:var(--s-shadow);animation:st-rise .24s var(--spring-soft) both;border-radius:10px;padding:.3rem;display:grid;position:absolute;top:2.2rem;right:.8rem}.wcard__menu button{font:inherit;color:var(--s-ink);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:7px;padding:.45rem .6rem;font-size:.8rem}.wcard__menu button:hover{background:var(--s-line-2)}.wcard__menu .is-danger{color:#cf3438}.wcard__translation{color:var(--s-ink-2);margin:.6rem 0 0;font-size:.82rem;line-height:1.45}.wcard__example{color:var(--s-muted);margin:.4rem 0 0;font-size:.76rem;line-height:1.4}.wcard__foot{margin-top:.9rem}.wcard__due{background:var(--s-violet-soft);color:var(--s-violet);border-radius:7px;padding:.22rem .55rem;font-size:.7rem;display:inline-block}.wcard__due.is-mastered{background:color-mix(in srgb, var(--s-green) 14%, transparent);color:var(--s-green)}.vocab__none,.words__none{color:var(--s-muted);text-align:center;margin:1.5rem 0;font-size:.86rem;list-style:none}.vocab__more{border:1px solid var(--s-line);background:var(--s-panel);font:inherit;color:var(--s-ink-2);cursor:pointer;border-radius:999px;align-items:center;gap:.4rem;margin:1.2rem auto 0;padding:.55rem 1.1rem;font-size:.82rem;display:flex}.vocab__more .icon{rotate:90deg}.vocab__rail,.words__rail{gap:.85rem;display:grid}.vpanel{border:1px solid var(--s-line);border-radius:var(--s-r);background:var(--s-panel);padding:1rem 1.1rem}.vpanel h3{margin:0 0 .8rem;font-size:.86rem;font-weight:600}.vpanel__bar{background:var(--s-line);border-radius:999px;height:5px;display:block;overflow:hidden}.vpanel__bar i{background:var(--s-violet);transform-origin:0;height:100%;transform:scaleX(var(--p));transition:transform .9s var(--spring-soft);border-radius:999px;display:block}.vpanel__note{color:var(--s-muted);margin:.5rem 0 0;font-size:.76rem}.vpanel__stats{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.vpanel__stats div{background:var(--s-line-2);border-radius:11px;padding:.7rem .75rem}.vpanel__stats strong{letter-spacing:-.03em;color:var(--s-violet);font-size:1.3rem;font-weight:700;display:block}.vpanel__stats span{color:var(--s-muted);font-size:.68rem}.vpanel__soon,.vpanel__buckets{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.vpanel__soon li,.vpanel__buckets li{justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.vpanel__soon em,.vpanel__buckets em{color:var(--s-muted);font-size:.74rem;font-style:normal}.vpanel__buckets button{font:inherit;color:var(--s-ink);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem}.vpanel__buckets button:hover{color:var(--s-violet)}.vpanel__soon .is-empty{color:var(--s-muted)}.qadd{position:relative}.qadd__field{border:1px solid var(--s-line);background:var(--s-bg);border-radius:9px;margin-bottom:.45rem;padding:.55rem .7rem;font-size:.8rem}.qadd__save{background:var(--s-line-2);width:100%;color:var(--s-ink-2);font:inherit;cursor:pointer;border:none;border-radius:9px;justify-content:center;align-items:center;gap:.4rem;padding:.6rem;font-size:.82rem;font-weight:600;transition:background .22s,color .22s;display:flex}.qadd__save:not(:disabled):hover{background:var(--s-violet);color:#fff}.qadd__save:disabled{opacity:.55;cursor:default}.qadd__falling{background:var(--s-panel);border:1px solid var(--s-line);opacity:0;pointer-events:none;border-radius:6px;width:46px;height:30px;margin-left:-23px;position:absolute;bottom:3rem;left:50%}.qadd.is-dropping .qadd__falling{animation:qadd-drop .62s var(--spring-soft)}@keyframes qadd-drop{0%{opacity:1;transform:translateY(-70px)rotate(-8deg)scale(1.05)}70%{opacity:1;transform:translateY(4px)rotate(2deg)scale(1)}to{opacity:0;transform:translateY(0)rotate(0)scale(.96)}}.words__head-act{align-items:center;gap:.6rem;display:flex}.words__add{background:var(--s-violet);color:#fff;font:inherit;cursor:pointer;transition:translate .24s var(--spring-soft);border:none;border-radius:10px;align-items:center;gap:.4rem;padding:.6rem 1.1rem;font-size:.84rem;font-weight:600;display:inline-flex}.words__add:hover{translate:0 -1px}.words__sort select{border-color:var(--s-line);background:var(--s-panel);border-radius:999px;width:auto;padding:.45rem .8rem;font-size:.8rem}.words__list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.wrow{border:1px solid var(--s-line);background:var(--s-panel);animation:st-rise .42s var(--spring-soft) both;animation-delay:calc(var(--i) * 28ms);transition:translate .26s var(--spring-soft), box-shadow .26s ease;border-radius:12px;grid-template-columns:190px minmax(0,1fr) 190px;align-items:center;gap:1rem;padding:.9rem 1.1rem;display:grid}.wrow:hover{box-shadow:var(--s-shadow-sm);translate:0 -1px}.wrow__word strong{letter-spacing:-.015em;font-size:.98rem;font-weight:600}.wrow__mean p{color:var(--s-ink-2);margin:0;font-size:.84rem}.wrow__example{color:var(--s-muted)!important;margin-top:.2rem!important;font-size:.76rem!important}.wrow__state{grid-template-columns:auto 1fr;align-items:center;gap:.1rem .45rem;font-size:.76rem;display:grid}.wrow__dot{background:var(--s-muted);border-radius:50%;width:7px;height:7px}.wrow__dot.is-learning{background:var(--s-violet)}.wrow__dot.is-mastered{background:var(--s-green)}.wrow__status{color:var(--s-ink-2)}.wrow__due{color:var(--s-muted);grid-column:2;font-size:.72rem}.words__foot{color:var(--s-muted);justify-content:space-between;align-items:center;margin-top:1.2rem;font-size:.76rem;display:flex}.words__pages{align-items:center;gap:.25rem;display:flex}.words__pages button{min-width:30px;height:30px;font:inherit;color:var(--s-ink-2);cursor:pointer;background:0 0;border:none;border-radius:8px;font-size:.8rem;transition:background .2s}.words__pages button:hover{background:var(--s-line-2)}.words__pages button.is-active{background:var(--s-violet-soft);color:var(--s-violet);font-weight:600}.words__ring{place-items:center;margin-top:1rem;display:grid;position:relative}.words__ring svg{width:104px;height:104px;transform:rotate(-90deg)}.words__ring-track,.words__ring-fill{fill:none;stroke-width:8px;stroke-linecap:round}.words__ring-track{stroke:var(--s-line-2)}.words__ring-fill{stroke:var(--s-violet);stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--p));transition:stroke-dashoffset 1.2s var(--ease-draw) .3s}.words__ring p{justify-items:center;margin:0;line-height:1.15;display:grid;position:absolute}.words__ring strong{font-size:1.15rem;font-weight:700}.words__ring span{color:var(--s-muted);font-size:.66rem}.sheet{z-index:90;place-items:center;display:grid;position:fixed;inset:0}.sheet__scrim{opacity:0;cursor:default;background:#0e0c186b;border:none;transition:opacity .32s;position:absolute;inset:0}.sheet.is-shown .sheet__scrim{opacity:1}.sheet__panel{border-radius:var(--s-r-lg);background:var(--s-panel);width:min(420px,92vw);box-shadow:var(--s-shadow-lg);opacity:0;transition:opacity .32s ease, translate .52s var(--spring), scale .52s var(--spring);padding:1.4rem;position:relative;translate:0 16px;scale:.98}.sheet.is-shown .sheet__panel{opacity:1;translate:0;scale:1}.sheet__head{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.sheet__head h2{margin:0;font-size:1.05rem}.sheet__head button{color:var(--s-muted);cursor:pointer;background:0 0;border:none}.sheet__field{color:var(--s-muted);margin-bottom:.7rem;font-size:.76rem;display:block}.sheet__field input{border-radius:9px;margin-top:.3rem;font-size:.86rem}.sheet__save{background:var(--s-violet);color:#fff;width:100%;font:inherit;cursor:pointer;border:none;border-radius:10px;margin-top:.5rem;padding:.7rem;font-size:.88rem;font-weight:600}.sheet__save:disabled{opacity:.5;cursor:default}.stpage__streak{color:var(--s-muted);align-items:center;gap:.45rem;font-size:.78rem;display:inline-flex}.stpage__streak strong{color:var(--s-ink);font-size:1.05rem}.hist{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.hist__row{border:1px solid var(--s-line);background:var(--s-panel);border-radius:12px;grid-template-columns:minmax(0,1fr) 160px auto auto;align-items:center;gap:1rem;padding:.9rem 1.1rem;display:grid}.hist__row strong{font-size:.9rem;display:block}.hist__row span{color:var(--s-muted);font-size:.74rem}.hist__bar{background:var(--s-line);border-radius:999px;height:5px;display:block;overflow:hidden}.hist__bar i{background:var(--s-violet);height:100%;transition:width .7s var(--spring-soft);border-radius:999px;display:block}.hist__count{color:var(--s-ink-2);font-size:.78rem}.hist__go{color:var(--s-muted)}.prof{gap:.8rem;max-width:560px;display:grid}.prof__card{border:1px solid var(--s-line);border-radius:var(--s-r);background:var(--s-panel);align-items:center;gap:.9rem;padding:1.1rem;display:flex}.prof__card h3{margin:0 0 .6rem;font-size:.86rem}.prof__card--stats{grid-template-columns:1fr 1fr;display:grid}.prof__card--stats strong{color:var(--s-violet);font-size:1.5rem;font-weight:700;display:block}.prof__card--stats span{color:var(--s-muted);font-size:.74rem}.prof__avatar{background:linear-gradient(150deg, var(--s-violet-2), var(--s-violet));color:#fff;border-radius:50%;place-items:center;width:46px;height:46px;font-weight:700;display:grid}.prof__card>div strong{font-size:1rem;display:block}.prof__card>div span{color:var(--s-muted);font-size:.78rem}.prof__tags{flex-wrap:wrap;gap:.35rem;display:flex}.prof__tags span{background:var(--s-line-2);border-radius:999px;padding:.25rem .65rem;font-size:.76rem}.prof__logout{border:1px solid var(--s-line);background:var(--s-panel);font:inherit;color:var(--s-ink-2);cursor:pointer;border-radius:10px;justify-self:start;align-items:center;gap:.45rem;padding:.6rem 1.1rem;font-size:.84rem;display:inline-flex}@media (width<=1180px){.today__grid,.vocab__grid,.words__grid,.vocab__start{grid-template-columns:minmax(0,1fr)}.vocab__deck{display:none}}@media (width<=900px){.st{grid-template-columns:minmax(0,1fr)}.st-side{display:none}.st-main,.st-top{padding-inline:1.1rem}.lesson__body{max-width:100%}.wrow{grid-template-columns:minmax(0,1fr);gap:.4rem}.today__head{flex-wrap:wrap;gap:.75rem}.words__head{flex-wrap:wrap}.words__head-act{width:100%}.words__search{flex:1;min-width:0}.hist__row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title go""bar count";row-gap:.5rem}.hist__row>div{grid-area:title;min-width:0}.hist__bar{grid-area:bar;align-self:center;width:100%}.hist__count{text-align:right;white-space:nowrap;grid-area:count}.hist__go{grid-area:go}}@media (prefers-reduced-motion:reduce){.st-side,.st-top,.st-nav,.st-streak,.st-sync,.today__greet>span,.today__greet>strong,.today__sub,.today__streak,.lesson,.tcl,.peek,.tcl__step,.today__tip,.vocab__head,.words__head,.stage__content,.rv{opacity:1!important;transform:none!important}.wt__line,.wt__day,.st-streak__chart i,.tcl__rail--fill,.vpanel__bar i{transform:none!important}.wt__lock{opacity:.65!important}.stage{transform:none!important}}
