@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b1f344208eb4edfe-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/48e2044251ef3125-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/bf24a9759715e608-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/1f173e5e25f3efee-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/904be59b21bd51cb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b1f344208eb4edfe-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/48e2044251ef3125-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/bf24a9759715e608-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/1f173e5e25f3efee-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/904be59b21bd51cb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/b1f344208eb4edfe-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/48e2044251ef3125-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/bf24a9759715e608-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/1f173e5e25f3efee-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/904be59b21bd51cb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b1f344208eb4edfe-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/48e2044251ef3125-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/bf24a9759715e608-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/1f173e5e25f3efee-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/904be59b21bd51cb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/b1f344208eb4edfe-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/48e2044251ef3125-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/bf24a9759715e608-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/1f173e5e25f3efee-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/904be59b21bd51cb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Montserrat Fallback;src:local("Arial");ascent-override:85.79%;descent-override:22.25%;line-gap-override:0.00%;size-adjust:112.83%}.__className_9f9347{font-family:Montserrat,Montserrat Fallback;font-style:normal}.__variable_9f9347{--font-montserrat:"Montserrat","Montserrat Fallback"}:root{--green-900:#063417;--green-700:#0e5c2c;--green-500:#1a7a44;--mint-400:#8adba6;--mint-300:#a8e2bb;--mint-200:#c8eed7;--mint-100:#e6f5e5;--amber-500:#db840c;--amber-300:#f7b95e;--amber-200:#fbcb86;--pink-500:#e58fa3;--pink-300:#f0b7c4;--pink-200:#f3c6ce;--teal-500:#69c3d4;--teal-300:#9dd7e1;--teal-200:#bfe3e9;--neutral-900:#3e3e3e;--neutral-700:#6b6b6b;--neutral-500:#9a9a9a;--neutral-300:#cfcfcf;--neutral-200:#e3e3e3;--neutral-100:#f6f6f6;--white:#ffffff;--bg-app:var(--white);--bg-surface:var(--neutral-100);--bg-surface-inverse:var(--green-900);--bg-hero:var(--mint-100);--text-primary:var(--green-900);--text-secondary:var(--neutral-700);--text-tertiary:var(--neutral-500);--text-inverse:var(--white);--text-disabled:var(--neutral-500);--border-default:var(--neutral-300);--border-strong:var(--green-900);--action-primary-bg:var(--green-900);--action-primary-bg-hover:#0a2a12;--action-primary-text:var(--white);--action-secondary-bg:var(--white);--action-secondary-border:var(--neutral-300);--action-secondary-text:var(--green-900);--action-disabled-bg:var(--neutral-300);--action-disabled-text:var(--white);--focus-ring:var(--green-900);--surface-card-clubs:var(--pink-500);--surface-card-clubs-tint:var(--pink-200);--surface-card-chats:var(--mint-400);--surface-card-chats-tint:var(--mint-200);--surface-card-calendar:var(--amber-500);--surface-card-calendar-tint:var(--amber-200);--surface-card-dictionary:var(--teal-500);--surface-card-dictionary-tint:var(--teal-200);--success:#1a7a44;--error:#c65b4e;--font-base:var(--font-montserrat),"Montserrat",-apple-system,"Segoe UI",sans-serif;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--fs-display:44px;--lh-display:1.15;--fs-h1:32px;--lh-h1:1.2;--fs-h2:24px;--lh-h2:1.3;--fs-h3:18px;--lh-h3:1.4;--fs-body:14px;--lh-body:1.5;--fs-body-lg:16px;--lh-body-lg:1.5;--fs-caption:12px;--lh-caption:1.4;--ls-tight:-0.01em;--ls-normal:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--radius-pill:999px;--shadow-sm:0 2px 8px rgba(6,52,23,0.08);--shadow-md:0 8px 24px rgba(6,52,23,0.12);--shadow-lg:0 16px 40px rgba(6,52,23,0.16);--duration-fast:150ms;--duration-base:250ms;--ease-standard:cubic-bezier(0.4,0,0.2,1)}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--neutral-100);color:var(--green-900);font-family:var(--font-base);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased}a{color:var(--green-700);text-decoration:none}a:hover{color:var(--green-900);text-decoration:underline}button,input,select,textarea{font-family:var(--font-base)}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--green-900);outline-offset:2px}::selection{background:var(--mint-300)}@keyframes popIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.auth{min-height:100vh;background:var(--green-900);display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));align-items:center;grid-gap:var(--space-10);gap:var(--space-10);padding:var(--space-12)}.auth-hero{display:flex;flex-direction:column;gap:22px;max-width:52ch;padding:0 var(--space-3)}.auth-eyebrow{font-size:11px;font-weight:var(--fw-bold);letter-spacing:.16em;text-transform:uppercase;color:var(--mint-300)}.auth-title{font-size:var(--fs-display);font-weight:var(--fw-bold);line-height:1.1;color:var(--white)}.auth-sub,.auth-title{text-wrap:pretty;margin:0}.auth-sub{font-size:var(--fs-body-lg);line-height:1.65;color:var(--mint-200)}.auth-points{flex-direction:column;margin:var(--space-2) 0 0;padding:0;list-style:none}.auth-point,.auth-points{display:flex;gap:var(--space-3)}.auth-point{align-items:center;font-size:15px;color:var(--white)}.auth-point-n{width:26px;height:26px;flex:0 0 auto;border-radius:var(--radius-pill);background:var(--mint-400);color:var(--green-900);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:var(--fw-extrabold)}.auth-card{background:var(--white);border-radius:var(--radius-xl);padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-5);max-width:460px;width:100%;justify-self:center}.auth-tabs{display:flex;gap:6px;padding:5px;border-radius:var(--radius-pill);background:var(--neutral-100)}.auth-tab{flex:1 1;border:none;cursor:pointer;padding:11px var(--space-4);border-radius:var(--radius-pill);font-size:var(--fs-body);font-weight:var(--fw-bold);background:transparent;color:var(--green-900);text-align:center;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.auth-tab:hover{text-decoration:none;color:var(--green-900)}.auth-tab[aria-current=page]{background:var(--green-900);color:var(--white)}.auth-card-title{font-size:var(--fs-h2);font-weight:var(--fw-bold);line-height:1.25;margin:0}.auth-form{gap:var(--space-5)}.auth-fields,.auth-form{display:flex;flex-direction:column}.auth-fields{gap:14px}.field{display:flex;flex-direction:column;gap:7px}.field-label{font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.field-input{padding:14px var(--space-4);font-size:var(--fs-body-lg);border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--neutral-100);color:var(--green-900);transition:border-color var(--duration-fast) var(--ease-standard)}.field-input:hover{border-color:var(--neutral-500)}.role-options{display:flex;gap:var(--space-2)}.role-option{flex:1 1;cursor:pointer;padding:13px var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-body);font-weight:var(--fw-semibold);color:var(--green-900);background:var(--neutral-100);border:2px solid var(--neutral-100);text-align:center;transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.role-option[aria-pressed=true]{background:var(--mint-200);border-color:var(--green-500)}.auth-message{padding:13px var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-body);font-weight:var(--fw-semibold);line-height:1.45}.auth-message.is-error{background:rgba(198,91,78,.1);color:var(--error)}.auth-message.is-notice{background:var(--mint-100);color:var(--green-700)}.auth-submit{border:none;cursor:pointer;width:100%;background:var(--green-900);color:var(--white);border-radius:var(--radius-md);padding:17px;font-size:15px;font-weight:var(--fw-bold);transition:background var(--duration-fast) var(--ease-standard)}.auth-submit:hover:not(:disabled){background:var(--action-primary-bg-hover)}.auth-submit:disabled{background:var(--action-disabled-bg);color:var(--action-disabled-text);cursor:default}.auth-foot{font-size:var(--fs-caption);line-height:1.5;color:var(--text-tertiary);padding-top:var(--space-3);border-top:1px solid var(--border-default);margin:0}.shell{min-height:100vh;display:flex;flex-direction:column;background:var(--neutral-100)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:18px var(--space-8);background:var(--white);border-bottom:1px solid var(--border-default);position:-webkit-sticky;position:sticky;top:0;z-index:20}.brand{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.brand-name{font-size:17px;font-weight:var(--fw-bold);line-height:1.15}.brand-sub{font-size:10px;font-weight:var(--fw-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary)}.user-menu{position:relative}.user-button{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4) var(--space-2) var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--border-default);background:var(--white);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-standard)}.user-button:hover{border-color:var(--neutral-500)}.avatar{width:36px;height:36px;flex:0 0 auto;border-radius:var(--radius-pill);display:flex;align-items:center;justify-content:center;font-size:var(--fs-body);font-weight:var(--fw-bold);color:var(--white)}.user-button-text{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.user-button-name{font-size:13px;font-weight:var(--fw-bold)}.user-button-role{font-size:11px;font-weight:var(--fw-semibold);color:var(--text-tertiary)}.user-dropdown{position:absolute;right:0;top:56px;width:264px;background:var(--white);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:10px;display:flex;flex-direction:column;gap:var(--space-1);box-shadow:0 12px 32px rgba(6,52,23,.12);animation:popIn .16s var(--ease-standard);z-index:30}.user-dropdown-head{display:flex;align-items:center;gap:10px;padding:var(--space-2) 10px var(--space-3);border-bottom:1px solid var(--border-default);margin-bottom:var(--space-1)}.avatar.is-small{width:34px;height:34px;font-size:13px}.user-dropdown-identity{display:flex;flex-direction:column;gap:2px;min-width:0}.user-dropdown-name{font-size:13px;font-weight:var(--fw-bold)}.user-dropdown-email{font-size:11px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis}.user-dropdown form{display:flex}.menu-action{width:100%;text-align:left;border:none;background:transparent;border-radius:var(--radius-md);padding:11px 10px;font-size:13px;font-weight:var(--fw-semibold);color:var(--error);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard)}.menu-action:hover{background:var(--neutral-100)}.menu-action:disabled{color:var(--text-disabled);cursor:default}.page{padding:22px var(--space-8) 56px;gap:var(--space-4);min-width:0}.page,.welcome{display:flex;flex-direction:column}.welcome{background:var(--green-900);color:var(--white);border-radius:var(--radius-xl);padding:var(--space-8) 36px;gap:14px}.welcome-eyebrow{font-size:11px;font-weight:var(--fw-bold);letter-spacing:.14em;text-transform:uppercase;color:var(--mint-300)}.welcome-title{font-size:34px;font-weight:var(--fw-bold);line-height:1.15;text-wrap:pretty;margin:0}.welcome-sub{font-size:15px;line-height:1.6;color:var(--mint-200);max-width:56ch;text-wrap:pretty;margin:0}.card{background:var(--white);border-radius:var(--radius-lg);padding:var(--space-6) 28px;display:flex;flex-direction:column;gap:var(--space-3)}.card-title{font-size:var(--fs-h3);font-weight:var(--fw-bold);margin:0}.card-text{font-size:15px;line-height:1.6;color:var(--text-secondary);max-width:62ch;margin:0}.detail-list{display:flex;flex-wrap:wrap;gap:var(--space-8);margin:var(--space-2) 0 0}.detail dt{font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);margin:0 0 6px}.detail dd{font-size:var(--fs-h3);font-weight:var(--fw-semibold);margin:0}@media (max-width:640px){.auth{grid-template-columns:1fr;padding:var(--space-6) var(--space-4);gap:var(--space-8)}.auth-card{order:-1}.auth-hero{padding:0}.auth-title{font-size:32px}.auth-card{padding:var(--space-6)}.page,.topbar{padding-left:var(--space-4);padding-right:var(--space-4)}.welcome{padding:var(--space-6)}.welcome-title{font-size:26px}}.topbar-left{display:flex;align-items:center;gap:var(--space-8);min-width:0}a.brand,a.brand:hover{text-decoration:none;color:var(--green-900)}.topnav{display:flex;gap:var(--space-2)}.topnav-link{padding:9px var(--space-4);border-radius:var(--radius-pill);font-size:13px;font-weight:var(--fw-semibold);color:var(--green-900);white-space:nowrap;transition:background var(--duration-fast) var(--ease-standard)}.topnav-link:hover{background:var(--neutral-100);text-decoration:none}.page-head{display:flex;flex-direction:column;gap:var(--space-2);max-width:82ch}.page-eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary)}.page-eyebrow,.page-title{font-weight:var(--fw-bold);margin:0}.page-title{font-size:var(--fs-h1);line-height:var(--lh-h1)}.page-lead{font-size:15px;line-height:1.6;color:var(--text-secondary);text-wrap:pretty;margin:0}.badge{font-size:10px;font-weight:var(--fw-bold);letter-spacing:.1em;text-transform:uppercase;padding:6px 10px;border-radius:var(--radius-pill);white-space:nowrap}.badge.is-live{background:var(--mint-400);color:var(--green-900)}.badge.is-planned{background:var(--neutral-200);color:var(--text-secondary)}.pill-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid var(--border-default);background:var(--white);color:var(--green-900);border-radius:var(--radius-pill);padding:12px 22px;font-size:13px;font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.pill-button:hover{border-color:var(--neutral-500);text-decoration:none;color:var(--green-900)}.pill-button.is-primary{background:var(--green-900);border-color:var(--green-900);color:var(--white);font-weight:var(--fw-bold);padding:14px 26px;font-size:14px}.pill-button.is-primary:hover{background:var(--action-primary-bg-hover);border-color:var(--action-primary-bg-hover);color:var(--white)}.pill-button.is-wide{align-self:flex-start}.pill-button.is-light{background:var(--mint-400);border-color:var(--mint-400);font-weight:var(--fw-bold);padding:14px 26px;font-size:14px}.pill-button.is-light:hover{background:var(--mint-300);border-color:var(--mint-300)}.pill-button.is-ghost{background:transparent;border-color:rgba(255,255,255,.35);color:var(--white);padding:14px 26px;font-size:14px}.pill-button.is-ghost:hover{border-color:var(--white);color:var(--white)}.welcome-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-2)}.audio-icon,.audio-pill{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:none;background:var(--mint-200);color:var(--green-900);cursor:pointer;font-weight:var(--fw-bold);transition:background var(--duration-fast) var(--ease-standard)}.audio-pill{padding:12px 20px;font-size:13px}.audio-icon,.audio-pill{border-radius:var(--radius-pill)}.audio-icon{width:36px;height:36px;flex:0 0 auto}.audio-icon:hover,.audio-pill:hover{background:var(--mint-300)}.level-grid,.unit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.level-card{background:var(--white);border:1px solid var(--neutral-200);border-radius:var(--radius-lg);padding:22px;display:flex;flex-direction:column;gap:var(--space-3);color:var(--green-900)}a.level-card:hover{border-color:var(--green-900);text-decoration:none;color:var(--green-900)}.level-card[aria-disabled=true]{color:var(--text-secondary)}.level-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.level-cefr{font-size:11px;letter-spacing:.1em;color:var(--text-tertiary)}.level-cefr,.level-name{font-weight:var(--fw-bold)}.level-name{font-size:21px;margin:0}.level-blurb{font-size:14px;line-height:1.55;color:var(--text-secondary);margin:0}.level-foot{font-size:12px;font-weight:var(--fw-semibold);color:var(--text-tertiary);margin-top:auto;padding-top:var(--space-2)}.unit-card{background:var(--white);border:1px solid var(--neutral-200);border-radius:var(--radius-lg);padding:22px;display:flex;flex-direction:column;gap:var(--space-4);color:var(--green-900);transition:border-color var(--duration-fast) var(--ease-standard)}.unit-card:hover{text-decoration:none;color:var(--green-900);border-color:var(--green-900)}.unit-card.is-live{border-color:var(--accent-tint)}.unit-top{justify-content:space-between;gap:var(--space-3)}.unit-number,.unit-top{display:flex;align-items:center}.unit-number{width:44px;height:44px;border-radius:var(--radius-md);justify-content:center;font-size:17px;font-weight:var(--fw-extrabold);background:var(--accent-tint);color:var(--green-900)}.unit-headings{display:flex;flex-direction:column;gap:6px}.unit-title{font-size:19px;font-weight:var(--fw-bold);line-height:1.25;margin:0}.unit-theme{font-size:13px;line-height:1.5;color:var(--text-secondary);margin:0}.unit-lessons{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.unit-lessons li{display:flex;gap:var(--space-2);font-size:12px;color:var(--text-secondary)}.unit-lesson-id{font-weight:var(--fw-extrabold);color:var(--green-700);min-width:28px}.unit-foot{display:flex;flex-direction:column;gap:var(--space-2);margin-top:auto}.progress-track{height:8px;background:var(--neutral-200);overflow:hidden}.progress-fill,.progress-track{display:block;border-radius:var(--radius-pill)}.progress-fill{height:100%;background:var(--green-500)}.unit-progress-label{font-size:11px;font-weight:var(--fw-semibold);color:var(--text-tertiary)}.accent-pink{--accent:var(--pink-500);--accent-tint:var(--pink-200)}.accent-mint{--accent:var(--mint-400);--accent-tint:var(--mint-200)}.accent-amber{--accent:var(--amber-500);--accent-tint:var(--amber-200)}.accent-teal{--accent:var(--teal-500);--accent-tint:var(--teal-200)}.lesson-head{background:var(--white);border-radius:var(--radius-lg);padding:16px 20px;display:flex;flex-direction:column;gap:var(--space-3)}.lesson-head-top{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.lesson-identity{gap:14px;min-width:0}.lesson-badge,.lesson-identity{display:flex;align-items:center}.lesson-badge{flex:0 0 auto;width:42px;height:42px;border-radius:var(--radius-md);justify-content:center;font-size:15px;font-weight:var(--fw-extrabold);background:var(--accent-tint);color:var(--green-900)}.lesson-title{font-size:19px;font-weight:var(--fw-bold);line-height:1.2;margin:0}.lesson-meta{font-size:12px;color:var(--text-secondary);margin:3px 0 0}.stage-tabs{display:flex;gap:var(--space-2);flex-wrap:wrap}.stage-tab{padding:9px 18px;border-radius:var(--radius-pill);font-size:13px;font-weight:var(--fw-bold);background:var(--neutral-100);color:var(--green-900);white-space:nowrap;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.stage-tab:hover{text-decoration:none;color:var(--green-900);background:var(--neutral-200)}.stage-tab[aria-current=page]{background:var(--green-900);color:var(--white)}.stage-card{background:var(--white);border-radius:var(--radius-lg);padding:28px;display:flex;flex-direction:column;gap:22px}.stage-card.is-grammar,.stage-card.is-locked{padding:34px}.stage-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.stage-position{font-size:13px;font-weight:var(--fw-bold);color:var(--text-tertiary);margin:0}.stage-bar-actions{display:flex;gap:var(--space-2)}.locked-title{font-size:22px;font-weight:var(--fw-bold);margin:0}.locked-text{font-size:15px;line-height:1.65;color:var(--text-secondary);text-wrap:pretty;max-width:80ch;margin:0}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.overview-card{background:var(--white);border:1px solid var(--neutral-200);border-radius:var(--radius-lg);padding:26px;display:flex;flex-direction:column;gap:var(--space-3);color:var(--green-900);transition:border-color var(--duration-fast) var(--ease-standard)}.overview-card:hover{border-color:var(--green-900);text-decoration:none;color:var(--green-900)}.overview-step{font-size:11px;font-weight:var(--fw-bold);letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary)}.overview-title{font-size:21px;font-weight:var(--fw-bold);margin:0}.overview-sub{font-size:14px;line-height:1.6;color:var(--text-secondary);text-wrap:pretty;margin:0}.overview-cta{font-size:12px;font-weight:var(--fw-bold);color:var(--green-700);margin-top:auto;padding-top:var(--space-1)}.flash-wrap{gap:18px}.flash-wrap,.flashcard{display:flex;flex-direction:column;align-items:center}.flashcard{width:100%;max-width:720px;min-height:290px;border:none;border-radius:var(--radius-xl);background:var(--accent-tint,var(--mint-200));color:var(--green-900);justify-content:center;gap:var(--space-4);padding:var(--space-10);cursor:pointer;text-align:center;transition:background var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.flashcard.is-back{background:var(--green-900);color:var(--white)}.flash-word{font-size:var(--fs-display);font-weight:var(--fw-bold);line-height:1.15;text-wrap:balance}.flash-ipa{font-size:18px;font-weight:var(--fw-medium);color:rgba(6,52,23,.6)}.flashcard.is-back .flash-ipa{color:var(--mint-300)}.flash-back{display:flex;flex-direction:column;gap:var(--space-3);max-width:52ch}.flash-def{font-size:20px;line-height:1.5}.flash-ex{font-size:17px;line-height:1.5;font-style:italic;color:var(--mint-300)}.flash-hint{font-size:13px;font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:rgba(6,52,23,.6)}.flash-controls{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:center}.word-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.word-row{display:grid;grid-template-columns:minmax(0,1.1fr) 130px minmax(0,1.6fr) auto;grid-gap:var(--space-4);gap:var(--space-4);align-items:center;padding:14px var(--space-4);border-radius:var(--radius-md);background:var(--neutral-100)}.word-row-w{font-size:var(--fs-body-lg);font-weight:var(--fw-bold)}.word-row-ipa{font-size:13px;color:var(--text-tertiary)}.word-row-def{font-size:var(--fs-body);color:var(--text-secondary);min-width:0}.grammar-head{font-size:30px;font-weight:var(--fw-bold);line-height:1.2;margin:0}.grammar-rows{display:flex;flex-direction:column;gap:var(--space-3)}.grammar-row{display:grid;grid-template-columns:150px minmax(0,1fr);grid-gap:var(--space-5);gap:var(--space-5);align-items:start;padding:18px var(--space-5);border-radius:var(--radius-md);background:var(--mint-100)}.grammar-row-label{font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--green-700);padding-top:5px}.grammar-row-items{display:flex;flex-wrap:wrap;gap:10px 18px}.grammar-item{font-size:21px;font-weight:var(--fw-semibold);line-height:1.4}.grammar-notes{display:flex;flex-direction:column;gap:var(--space-3)}.grammar-notes-head{font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary);margin:0}.grammar-note{display:flex;gap:var(--space-3);font-size:17px;line-height:1.6;color:var(--text-secondary);margin:0}.grammar-bullet{color:var(--green-500);font-weight:var(--fw-extrabold)}.speak-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.speak-card{background:var(--white);border-radius:var(--radius-lg);padding:26px;display:flex;flex-direction:column;gap:var(--space-4);min-height:250px}.speak-n{font-size:11px;font-weight:var(--fw-bold);letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary)}.speak-prompt{font-size:20px;font-weight:var(--fw-semibold);line-height:1.4;text-wrap:pretty;margin:0}.speak-foot{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-3)}.speak-model{font-size:15px;line-height:1.6;font-style:italic;color:var(--green-700);padding:14px var(--space-4);border-radius:var(--radius-md);background:var(--mint-100);margin:0}.speak-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}@media (max-width:760px){.topnav{display:none}.word-row{grid-template-columns:minmax(0,1fr) auto;row-gap:var(--space-2)}.word-row-def,.word-row-ipa{grid-column:1/-1}.grammar-row{grid-template-columns:1fr;gap:var(--space-2)}.flash-word{font-size:32px}.grammar-head{font-size:24px}.stage-card,.stage-card.is-grammar,.stage-card.is-locked{padding:var(--space-5)}}.run-bar{align-items:center;justify-content:space-between;gap:var(--space-4)}.run-bar,.run-dots{display:flex;flex-wrap:wrap}.run-dots{gap:5px}.run-dot{width:26px;height:6px;border-radius:var(--radius-pill);background:var(--neutral-200);transition:background var(--duration-fast) var(--ease-standard)}.run-dot.is-right{background:var(--green-500)}.run-dot.is-wrong{background:var(--error)}.run-dot.is-current{background:var(--green-900)}.run-counter{font-size:13px;font-weight:var(--fw-bold);color:var(--text-tertiary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.task{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-2) 0}.task-instr{font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin:0}.task-q{font-size:26px;font-weight:var(--fw-semibold);line-height:1.4;text-wrap:pretty;margin:0}.task-hint{font-size:15px;color:var(--green-700);margin:0}.task-clip{display:flex}.task-input{width:100%;max-width:620px;padding:16px var(--space-5);font-size:21px;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--neutral-100);color:var(--green-900)}.task-input:disabled{color:var(--text-secondary)}.option-list{display:flex;flex-direction:column;gap:var(--space-3);max-width:620px}.option{text-align:left;padding:16px var(--space-5);font-size:19px;font-weight:var(--fw-semibold);border-radius:var(--radius-md);border:2px solid var(--neutral-200);background:var(--white);color:var(--green-900);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-standard),background var(--duration-fast) var(--ease-standard)}.option:hover:not(:disabled){border-color:var(--neutral-500)}.option.is-chosen{background:var(--mint-200);border-color:var(--green-500)}.option:disabled{cursor:default}.strip{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;min-height:68px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--mint-100);border:1px dashed var(--mint-400)}.strip-empty{font-size:var(--fs-body);color:var(--text-tertiary)}.chip-tray{display:flex;flex-wrap:wrap;gap:var(--space-2)}.chip{padding:12px 18px;font-size:19px;font-weight:var(--fw-semibold);border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--white);color:var(--green-900);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-standard)}.chip.is-placed,.chip:hover:not(:disabled){border-color:var(--green-900)}.chip.is-placed{background:var(--green-900);color:var(--white)}.chip.is-used{visibility:hidden}.match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4);max-width:760px}.match-col{display:flex;flex-direction:column;gap:var(--space-2)}.match-item{text-align:left;padding:14px var(--space-4);font-size:var(--fs-body-lg);font-weight:var(--fw-semibold);border-radius:var(--radius-md);border:2px solid var(--neutral-200);background:var(--white);color:var(--green-900);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-standard),background var(--duration-fast) var(--ease-standard)}.match-item:hover:not(:disabled){border-color:var(--neutral-500)}.match-item.is-active{border-color:var(--green-900);background:var(--neutral-100)}.match-item.is-done{background:var(--mint-200);border-color:var(--mint-400)}.match-item:disabled{cursor:default}.verdict{padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:6px}.verdict.is-right{background:var(--mint-100)}.verdict.is-wrong{background:rgba(198,91,78,.1)}.verdict-head{font-size:var(--fs-h3);font-weight:var(--fw-bold);margin:0}.verdict.is-right .verdict-head{color:var(--green-700)}.verdict.is-wrong .verdict-head{color:var(--error)}.verdict-answer{font-size:19px;font-weight:var(--fw-semibold);color:var(--green-900);margin:0}.run-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.run-lesson{margin-left:auto;font-size:var(--fs-caption);font-weight:var(--fw-semibold);color:var(--text-tertiary)}.score-eyebrow{font-size:11px;font-weight:var(--fw-bold);letter-spacing:.14em;text-transform:uppercase;color:var(--text-tertiary)}.score-title{font-size:34px;font-weight:var(--fw-bold);line-height:1.15;margin:0}.score-xp{font-size:24px;font-weight:var(--fw-extrabold);color:var(--green-700);margin:0}.save-note{font-size:var(--fs-body);font-weight:var(--fw-semibold);color:var(--text-tertiary);margin:0}.save-note.is-ok{color:var(--green-700)}.save-note.is-bad{color:var(--error)}.score-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}@media (max-width:760px){.task-q{font-size:21px}.chip,.option,.task-input{font-size:var(--fs-body-lg)}.match-grid{gap:var(--space-3)}.match-item{font-size:15px;padding:12px}.score-title{font-size:26px}.run-lesson{display:none}}.verdict-label{font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin:0}.hw-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.hw-card{background:var(--white);border:1px solid var(--neutral-200);border-radius:var(--radius-lg);padding:26px;display:flex;flex-direction:column;gap:var(--space-3);min-height:230px}.hw-eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary)}.hw-eyebrow,.hw-title{font-weight:var(--fw-bold)}.hw-title{font-size:21px;line-height:1.3;margin:0}.hw-due{font-size:13px;font-weight:var(--fw-semibold);color:var(--amber-500);margin:0}.hw-foot{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-3);align-items:flex-start}.hw-state{font-size:var(--fs-body);font-weight:var(--fw-semibold);margin:0}.hw-state.is-done{color:var(--green-700)}.hw-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.hw-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:14px var(--space-4);border-radius:var(--radius-md);background:var(--neutral-100)}.hw-row-main{display:flex;flex-direction:column;gap:3px;min-width:0}.hw-row-title{font-size:var(--fs-body-lg);font-weight:var(--fw-semibold)}.hw-row-sub{font-size:13px;color:var(--text-secondary)}.assign-form,.inline-form{display:flex;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap}.assign-form .field,.inline-form .field{min-width:220px}.student-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.student-row{display:flex;align-items:center;gap:var(--space-3);padding:12px var(--space-4);border-radius:var(--radius-md);background:var(--neutral-100)}.student-name{font-size:var(--fs-body-lg);font-weight:var(--fw-semibold)}.invite-block{flex-direction:column;margin-top:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border-default);align-items:flex-start}.invite,.invite-block{display:flex;gap:var(--space-3)}.invite{width:100%;align-items:center;flex-wrap:wrap;padding:14px var(--space-4);border-radius:var(--radius-md);background:var(--mint-100)}.invite.is-spent{background:var(--neutral-100);color:var(--text-tertiary)}.invite-url{font-family:inherit;font-size:13px;font-weight:var(--fw-semibold);color:var(--green-900);overflow-wrap:anywhere;min-width:0;flex:1 1 260px}.invite.is-spent .invite-url{color:var(--text-tertiary);text-decoration:line-through}.invite-meta{font-size:var(--fs-caption);font-weight:var(--fw-semibold);color:var(--text-secondary);white-space:nowrap}.invite-actions{display:flex;align-items:center;gap:var(--space-2)}select.field-input{cursor:pointer}.stage-tab.is-sealed{cursor:default}.stage-tab.is-sealed,.unit-card.is-shut{background:var(--neutral-100);color:var(--text-tertiary)}.unit-card.is-shut{border-color:var(--neutral-200)}.unit-card.is-shut .unit-number{background:var(--neutral-200);color:var(--text-tertiary)}.unit-card.is-shut .unit-lesson-id,.unit-card.is-shut .unit-title{color:var(--text-secondary)}.notice-card{padding:14px var(--space-5);border-radius:var(--radius-md);background:var(--mint-100)}.notice-text{margin:0;font-size:var(--fs-body-lg);font-weight:var(--fw-semibold);color:var(--green-700)}.hw-row-actions{display:flex;align-items:center;gap:var(--space-2)}.student-row{flex-wrap:wrap}.student-row .student-name{flex:1 1 140px}.student-score{font-size:13px;font-weight:var(--fw-semibold);color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.answer-list,.task-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);counter-reset:item}.answer-row{display:flex;flex-direction:column;gap:4px;padding:14px var(--space-4);border-radius:var(--radius-md);background:var(--mint-100);border-left:4px solid var(--green-500)}.answer-row.is-wrong{background:rgba(198,91,78,.08);border-left-color:var(--error)}.answer-kind{font-size:10px;font-weight:var(--fw-bold);letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary)}.answer-prompt{font-weight:var(--fw-semibold)}.answer-expected,.answer-given,.answer-prompt{font-size:var(--fs-body-lg);margin:0}.answer-expected{color:var(--green-700);font-weight:var(--fw-semibold)}.answer-label{display:inline-block;min-width:62px;font-size:10px;font-weight:var(--fw-bold);letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary)}.answer-attempts{font-size:var(--fs-caption);color:var(--text-tertiary)}.task-row{display:flex;align-items:flex-start;gap:var(--space-4);padding:14px var(--space-4);border-radius:var(--radius-md);background:var(--neutral-100)}.task-miss{flex:0 0 auto;min-width:54px;font-size:var(--fs-h3);font-weight:var(--fw-extrabold);color:var(--error);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.task-miss.is-ok{color:var(--green-700)}.task-miss.is-mixed{color:var(--text-secondary)}.task-detail{display:flex;flex-direction:column;gap:3px;min-width:0}.task-kind{font-size:10px;font-weight:var(--fw-bold);letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary)}.task-prompt{font-size:var(--fs-body-lg);font-weight:var(--fw-semibold)}.task-answer{font-size:var(--fs-body);color:var(--green-700)}.menu-link{display:block;border-radius:var(--radius-md);padding:11px 10px;font-size:13px;font-weight:var(--fw-semibold);color:var(--green-900);transition:background var(--duration-fast) var(--ease-standard)}.menu-link:hover{background:var(--neutral-100);color:var(--green-900);text-decoration:none}.bank-controls{display:flex;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap}.bank-search{flex:1 1 260px}.bank-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.bank-row{background:var(--white);border:1px solid var(--neutral-200);border-left:4px solid var(--accent,var(--mint-400));border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:6px}.bank-main{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap}.bank-word{font-size:19px;font-weight:var(--fw-bold)}.bank-ipa{font-size:13px}.bank-ipa,.bank-unit{color:var(--text-tertiary)}.bank-unit{margin-left:auto;font-size:10px;font-weight:var(--fw-bold);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.bank-def{font-size:var(--fs-body-lg);color:var(--text-secondary);margin:0}.bank-ex{font-size:var(--fs-body);font-style:italic;color:var(--green-700);margin:0}.bank-actions{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.pill-button.is-known{background:var(--mint-200);border-color:var(--mint-400);font-weight:var(--fw-bold)}.progress-list,.result-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.progress-row{gap:var(--space-4)}.progress-n,.progress-row{display:flex;align-items:center}.progress-n{flex:0 0 auto;width:38px;height:38px;border-radius:var(--radius-md);justify-content:center;font-size:15px;font-weight:var(--fw-extrabold);background:var(--accent-tint,var(--neutral-200));color:var(--green-900)}.progress-body{display:flex;flex-direction:column;gap:5px;flex:1 1 auto;min-width:0}.progress-title{font-size:var(--fs-body-lg);font-weight:var(--fw-semibold)}.progress-note{font-size:var(--fs-caption);color:var(--text-tertiary)}.result-row{display:flex;align-items:center;gap:var(--space-4);padding:12px var(--space-4);border-radius:var(--radius-md);background:var(--neutral-100);flex-wrap:wrap}.result-lesson{font-size:var(--fs-body-lg);font-weight:var(--fw-bold);min-width:46px}.result-score{font-size:var(--fs-body-lg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.result-xp{font-size:var(--fs-body);font-weight:var(--fw-semibold);color:var(--green-700)}.result-when{margin-left:auto;font-size:var(--fs-caption);color:var(--text-tertiary);white-space:nowrap}.bin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.bin{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--mint-100);border:1px dashed var(--mint-400);min-height:130px}.bin-label{border:none;background:var(--mint-200);color:var(--green-900);border-radius:var(--radius-pill);padding:10px var(--space-4);font-size:19px;font-weight:var(--fw-bold);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard)}.bin-label:hover:not(:disabled){background:var(--mint-400)}.bin-label:disabled{cursor:default;opacity:.75}.bin-words{display:flex;flex-wrap:wrap;gap:var(--space-2)}@media (max-width:760px){.bin{min-height:92px}}.student-picker{flex-direction:column;border:none;padding:0;margin:0;min-width:220px}.student-check,.student-picker{display:flex;gap:var(--space-2)}.student-check{align-items:center;font-size:var(--fs-body-lg);font-weight:var(--fw-semibold);color:var(--green-900);cursor:pointer}.student-check input{width:20px;height:20px;accent-color:var(--green-900);cursor:pointer}.warmup-list{list-style:none;margin:0;padding:0;gap:var(--space-4)}.warmup-list,.warmup-row{display:flex;flex-direction:column}.warmup-row{background:var(--white);border-radius:var(--radius-lg);padding:var(--space-5);gap:var(--space-3)}.warmup-badge{align-self:flex-start;font-size:11px;font-weight:var(--fw-bold);letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);background:var(--neutral-100);border-radius:var(--radius-pill);padding:4px var(--space-3)}