@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dmsans-rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dmsans-rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/dmsans-rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/dmsans-rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/dmsans-rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/dmsans-rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/dmsans-rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/dmsans-rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggqxSuXd.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggOxSuXd.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggSxSuXd.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggixSuXd.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggmxSuXd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggexSg.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggqxSuXd.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggOxSuXd.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggSxSuXd.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggixSuXd.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggmxSuXd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggexSg.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggqxSuXd.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggOxSuXd.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggSxSuXd.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggixSuXd.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggmxSuXd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/manrope-xn7gYHE41ni1AdIRggexSg.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand-50:#ecfdf5;--brand-100:#d1fae5;--brand-200:#a7f3d0;--brand-300:#6ee7b7;--brand-400:#34d399;--brand-500:#10b981;--brand-600:#059669;--brand-700:#047857;--brand-800:#064e3b;--brand-900:#022c22;--dark-green-950:#021812;--dark-green-900:#03231a;--dark-green-800:#063c2e;--dark-green-700:#0a4f3d;--dark-green-600:#116751;--dark-green-500:#198166;--light-green-500:#10b981;--light-green-400:#34d399;--light-green-300:#6ee7b7;--light-green-200:#a7f3d0;--light-green-100:#d1fae5;--light-green-50:#f0fdf4;--moss-50:#f0fdf4;--moss-100:#dcfce7;--moss-300:#86efac;--moss-500:#22c55e;--moss-600:#16a34a;--moss-700:#15803d;--accent-50:#fffbeb;--accent-100:#fef3c7;--accent-300:#fcd34d;--accent-500:#f59e0b;--accent-600:#d97706;--ink-950:#021812;--ink-900:#03231a;--ink-800:#083226;--ink-700:#124738;--ink-600:#215a4c;--ink-500:#3a7363;--ink-400:#669686;--ink-300:#9ec3b4;--ink-200:#c7e3d7;--ink-100:#e2f2ea;--ink-50:#f0f8f4;--white:#fff;--true-white:#fff;--success-50:#dcfce7;--success-500:#15803d;--warning-50:#fef3c7;--warning-500:#b45309;--danger-50:#fee2e2;--danger-500:#dc2626;--info-50:#e0f2fe;--info-500:#0284c7;--bg:#0e1816;--surface:#182622;--surface-sunk:#111c19;--border:#ffffff1c;--border-strong:#fff3;--text:#f4eee3;--text-muted:#aebbb1;--text-subtle:#7d8f82;--primary:#10b981;--primary-hover:#059669;--primary-soft:#10b98124;--focus-ring:0 0 0 3px #10b98159;--font-display:"Manrope", "Segoe UI", system-ui, sans-serif;--font-body:"DM Sans", "Segoe UI", system-ui, -apple-system, sans-serif;--text-display:clamp(2.25rem, 1.3rem + 4.2vw, 3.5rem);--text-h1:clamp(1.75rem, 1.2rem + 2.4vw, 2.5rem);--text-h2:clamp(1.4375rem, 1.13rem + 1.4vw, 1.875rem);--text-h3:clamp(1.1875rem, 1.06rem + .5vw, 1.375rem);--text-h4:1.0625rem;--text-body:.9375rem;--text-sm:.875rem;--text-caption:.8125rem;--text-label:.75rem;--tracking-display:-.035em;--tracking-tight:-.025em;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--s10:40px;--s12:48px;--s16:64px;--s20:80px;--gutter:clamp(20px, 4vw, 48px);--r-sm:10px;--r-md:14px;--r-lg:18px;--r-card:22px;--r-pill:999px;--shadow-xs:0 1px 2px #03231a0d;--shadow-sm:0 2px 6px #03231a12, 0 1px 2px #03231a0a;--shadow-md:0 8px 20px #03231a17, 0 2px 5px #03231a0a;--shadow-lg:0 16px 35px #03231a1f, 0 4px 10px #03231a0f;--shadow-xl:0 26px 60px #03231a2e;--shadow-primary:0 8px 18px #05966947;--scrim:#021812a6;--surface-veil:#fffffff0;--glow-primary:#10b98138;--glow-moss:#22c55e38;--glow-light-green:#34d39959;--shadow-primary-hover:0 12px 24px #05966966;--ease:cubic-bezier(.23, 1, .32, 1);--fast:.12s;--base:.2s;--slow:.32s;--lift:translateY(-2px);--container:1400px;--container-wide:1440px;--measure:68ch;--navbar-h:68px;--sidebar-w:244px;--z-sticky:100;--z-drawer:200;--z-modal:300;--z-toast:400}@media (prefers-reduced-motion:reduce){:root{--lift:none;--fast:0s;--base:0s;--slow:0s}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{min-width:320px;font-family:var(--font-body);font-size:var(--text-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.6}img,svg,video{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}ul,ol{padding:0;list-style:none}h1,h2,h3,h4,h5{font-family:var(--font-display);letter-spacing:var(--tracking-tight);font-weight:700;line-height:1.18}h1{font-size:var(--text-h1)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}h4{font-size:var(--text-h4);letter-spacing:-.01em}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}::selection{background:var(--brand-200);color:var(--brand-800)}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.container-narrow{max-width:780px}.container-wide{max-width:var(--container-wide)}.measure{max-width:var(--measure)}.stack>*+*{margin-top:var(--stack-gap,var(--s4))}.row{align-items:center;gap:var(--s3);display:flex}.row-between{justify-content:space-between;align-items:center;gap:var(--s3);display:flex}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.grid{gap:var(--s5);grid-template-columns:minmax(0,1fr);display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr))}.section{padding-block:var(--s20)}.section-sm{padding-block:var(--s12)}.display{font-family:var(--font-display);font-size:var(--text-display);letter-spacing:var(--tracking-display);font-weight:800;line-height:1.06}.eyebrow{font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;color:var(--primary);font-weight:600}.lead{color:var(--text-muted);font-size:1.0625rem;line-height:1.65}.muted{color:var(--text-muted)}.subtle{color:var(--text-subtle)}.small{font-size:var(--text-sm)}.caption{font-size:var(--text-caption);color:var(--text-muted)}.strong{font-weight:600}.center{text-align:center}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.section-head{max-width:640px;margin-bottom:var(--s10)}.section-head.center{text-align:center;flex-direction:column;align-items:center;margin-inline:auto;display:flex}.section-head h2{margin-bottom:var(--s3)}.sr-only{clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.divider{background:var(--border);border:0;height:1px}.skip-link{top:var(--s3);left:var(--s3);z-index:calc(var(--z-toast) + 1);padding:var(--s2) var(--s4);background:var(--ink-900);color:var(--white);border-radius:var(--r-pill);transition:transform var(--fast);font-weight:600;text-decoration:none;position:absolute;transform:translateY(-200%)}.skip-link:focus-visible{transform:translateY(0)}@media (width<=960px){.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.section{padding-block:var(--s16)}}@media (width<=640px){.grid-2,.grid-3,.grid-4,.grid-auto{grid-template-columns:minmax(0,1fr)}.section{padding-block:var(--s12)}.hide-mobile{display:none!important}}@media (width>=641px){.only-mobile{display:none!important}}.btn{--btn-bg:transparent;--btn-fg:var(--text);--btn-border:transparent;justify-content:center;align-items:center;gap:var(--s2);font-family:var(--font-display);font-weight:700;font-size:var(--text-sm);letter-spacing:var(--tracking-tight);white-space:nowrap;text-align:center;padding:0 var(--s5);border-radius:var(--r-pill);background:var(--btn-bg);height:42px;color:var(--btn-fg);border:1px solid var(--btn-border);transition:background var(--fast) var(--ease), border-color var(--fast) var(--ease), transform var(--fast) var(--ease), box-shadow var(--fast) var(--ease);line-height:1;display:inline-flex}.btn:hover:not(:disabled){transform:var(--lift)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn svg{flex-shrink:0;width:17px;height:17px}.btn-primary{--btn-bg:linear-gradient(135deg, #10b981 0%, #059669 100%);--btn-fg:var(--white);--btn-border:#6ee7b766;box-shadow:0 4px 14px #10b98159}.btn-primary:hover:not(:disabled){--btn-bg:linear-gradient(135deg, #059669 0%, #047857 100%);box-shadow:0 6px 18px #10b98173}.btn-secondary{--btn-bg:var(--surface);--btn-fg:var(--ink-800);--btn-border:#a2cebc}.btn-secondary:hover:not(:disabled){--btn-bg:var(--brand-50);--btn-border:var(--light-green-500);--btn-fg:var(--dark-green-800)}.btn-soft{--btn-bg:var(--primary-soft);--btn-fg:var(--primary);font-weight:700}.btn-soft:hover:not(:disabled){--btn-bg:var(--brand-200);--btn-fg:var(--dark-green-800)}.btn-ghost{--btn-fg:var(--text-muted)}.btn-ghost:hover:not(:disabled){--btn-bg:var(--ink-100);--btn-fg:var(--text)}.btn-danger{--btn-bg:var(--danger-500);--btn-fg:var(--white)}.btn-danger:hover:not(:disabled){filter:brightness(.93)}.btn-dark{--btn-bg:#03231a;--btn-fg:var(--white);--btn-border:#34d39940}.btn-dark:hover:not(:disabled){--btn-bg:#063c2e}.btn-google{--btn-bg:var(--white);--btn-fg:var(--ink-800);--btn-border:var(--border-strong)}.btn-google:hover:not(:disabled){--btn-bg:var(--ink-50);--btn-border:var(--ink-400)}.btn-google svg{width:18px;height:18px}.btn-sm{height:34px;padding:0 var(--s4);font-size:var(--text-caption);border-radius:var(--r-pill)}.btn-sm svg{width:15px;height:15px}.btn-lg{height:52px;padding:0 var(--s8);font-size:1rem}.btn-block{width:100%}.btn-icon{width:42px;padding:0}.btn-icon.btn-sm{width:34px}.field{flex-direction:column;gap:6px;display:flex}.field-label{font-size:var(--text-caption);color:var(--text);font-weight:600}.field-label .req{color:var(--danger-500);margin-left:2px}.field-hint{font-size:var(--text-caption);color:var(--text-muted)}.field-error{font-size:var(--text-caption);color:var(--danger-500);align-items:center;gap:6px;font-weight:500;display:flex}.field-error svg{flex-shrink:0;width:14px;height:14px}.input,.textarea,.select{background:var(--surface);width:100%;color:var(--text);border:1px solid var(--border-strong);border-radius:var(--r-md);padding:0 var(--s3);height:44px;font-size:var(--text-body);transition:border-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease)}.textarea{height:auto;padding:var(--s3);resize:vertical;min-height:110px;line-height:1.6}.input:hover,.textarea:hover,.select:hover{border-color:var(--ink-400)}.input:focus,.textarea:focus,.select:focus{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.input:disabled,.textarea:disabled,.select:disabled{background:var(--ink-100);color:var(--text-muted);cursor:not-allowed}.input.is-invalid,.textarea.is-invalid,.select.is-invalid{border-color:var(--danger-500)}.select{appearance:none;padding-right:var(--s10);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23657068' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--s3) center}.input-group{align-items:center;display:flex;position:relative}.input-group .input{padding-left:42px}.input-group>svg:first-child{left:var(--s3);width:18px;height:18px;color:var(--text-subtle);pointer-events:none;position:absolute}.input-affix{right:var(--s3);align-items:center;gap:var(--s1);display:flex;position:absolute}.phone-field{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);width:100%;height:44px;transition:border-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);align-items:stretch;display:flex;overflow:hidden}.phone-field:hover{border-color:var(--ink-400)}.phone-field:focus-within{border-color:var(--primary);box-shadow:var(--focus-ring)}.phone-field.is-invalid{border-color:var(--danger-500)}.phone-field.is-disabled{background:var(--ink-100)}.phone-field .phone-code,.phone-field .phone-number{height:100%;box-shadow:none;background-color:#0000;border:0;border-radius:0}.phone-field .phone-code:focus,.phone-field .phone-number:focus{box-shadow:none;outline:none}.phone-field .phone-code:focus-visible,.phone-field .phone-number:focus-visible{background:var(--ink-50)}.phone-field .phone-code{width:auto;min-width:92px;padding-left:var(--s3);padding-right:var(--s7);font-size:var(--text-sm);color:var(--text);cursor:pointer;background-position:right var(--s2) center;flex:none}.phone-field .phone-number{min-width:0;padding:0 var(--s3);font-size:var(--text-body);flex:auto}.phone-field .phone-number::placeholder{color:var(--text-subtle)}.phone-field .phone-number:disabled,.phone-field .phone-code:disabled{color:var(--text-muted);cursor:not-allowed}.phone-sep{background:var(--border);flex:0 0 1px;align-self:stretch}@media (width<=380px){.phone-field .phone-code{min-width:78px;padding-right:var(--s6);font-size:var(--text-caption)}}.search-input{position:relative}.search-input .input{border-radius:var(--r-pill);height:48px;padding-left:46px}.search-clear{width:26px;height:26px;color:var(--text-muted);background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.search-clear:hover{background:var(--ink-200);color:var(--text)}.search-clear svg{width:14px;height:14px}.suggest{z-index:var(--z-sticky);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:var(--s2);text-align:left;max-height:340px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto}.suggest-group{padding:var(--s2) var(--s3) var(--s1);font-size:var(--text-label);letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle);font-weight:600}.suggest-item{align-items:center;gap:var(--s3);text-align:left;width:100%;padding:var(--s2) var(--s3);border-radius:var(--r-sm);font-size:var(--text-sm);color:var(--text);background:0 0;border:0;display:flex}.suggest-item:hover,.suggest-item.active{background:var(--ink-100)}.suggest-item svg{width:16px;height:16px;color:var(--text-subtle);flex-shrink:0}.suggest-item .sub{font-size:var(--text-caption);color:var(--text-subtle);margin-left:auto}.check{align-items:flex-start;gap:var(--s3);cursor:pointer;font-size:var(--text-sm);display:flex}.check input{width:18px;height:18px;accent-color:var(--primary);cursor:pointer;flex-shrink:0;margin-top:2px}.check-label{line-height:1.45}.check-desc{font-size:var(--text-caption);color:var(--text-muted);display:block}.toggle{align-items:center;gap:var(--s3);cursor:pointer;font-size:var(--text-sm);display:inline-flex}.toggle input{opacity:0;width:0;height:0;position:absolute}.toggle-track{border-radius:var(--r-pill);background:var(--ink-300);width:40px;height:23px;transition:background var(--base) var(--ease);flex-shrink:0;position:relative}.toggle-track:after{content:"";background:var(--white);width:17px;height:17px;box-shadow:var(--shadow-sm);transition:transform var(--base) var(--ease);border-radius:50%;position:absolute;top:3px;left:3px}.toggle input:checked+.toggle-track{background:var(--primary)}.toggle input:checked+.toggle-track:after{transform:translate(17px)}.toggle input:focus-visible+.toggle-track{box-shadow:var(--focus-ring)}.option-card{align-items:flex-start;gap:var(--s3);padding:var(--s4);border:1.5px solid var(--border);border-radius:var(--r-lg);background:var(--surface);cursor:pointer;text-align:left;width:100%;transition:border-color var(--fast) var(--ease), background var(--fast) var(--ease), box-shadow var(--fast) var(--ease);display:flex}.option-card:hover{border-color:var(--brand-300);box-shadow:var(--shadow-sm)}.option-card.selected{border-color:var(--primary);background:var(--primary-soft)}.oc-icon{border-radius:var(--r-md);background:var(--primary-soft);width:40px;height:40px;color:var(--primary);flex-shrink:0;place-items:center;display:grid}.option-card.selected .oc-icon{background:var(--white)}.oc-icon svg{width:20px;height:20px}.option-card h4{font-size:var(--text-h4);margin-bottom:2px}.option-card p{font-size:var(--text-caption);color:var(--text-muted);line-height:1.5}.option-check{color:var(--primary);flex-shrink:0;margin-left:auto}.option-check svg{width:20px;height:20px}.chip{padding:7px var(--s3);border-radius:var(--r-pill);border:1px solid var(--border-strong);background:var(--surface);font-size:var(--text-caption);color:var(--text-muted);transition:all var(--fast) var(--ease);align-items:center;gap:6px;font-weight:500;display:inline-flex}.chip:hover{border-color:var(--brand-300);background:var(--brand-50);color:var(--brand-600)}.chip.active{background:var(--primary);border-color:var(--primary);color:var(--white)}.chip svg{width:14px;height:14px}.chip-remove svg:last-child{opacity:.7}.chip-remove:hover svg:last-child{opacity:1}.fake-check{border:1.5px solid var(--border-strong);background:var(--surface);border-radius:5px;flex-shrink:0;place-items:center;width:17px;height:17px;display:grid}.fake-check.on{background:var(--primary);border-color:var(--primary);color:var(--white)}.fake-check svg{width:12px;height:12px}.badge{padding:4px var(--s2);border-radius:var(--r-sm);font-size:var(--text-label);white-space:nowrap;align-items:center;gap:5px;font-weight:600;line-height:1.5;display:inline-flex}.badge svg{width:13px;height:13px}.badge-neutral{background:var(--ink-100);color:var(--text-muted)}.badge-brand{background:var(--primary-soft);color:var(--primary)}.badge-success{background:var(--success-50);color:var(--success-500)}.badge-warning{background:var(--warning-50);color:var(--warning-500)}.badge-danger{background:var(--danger-50);color:var(--danger-500)}.badge-info{background:var(--info-50);color:var(--info-500)}.badge-accent{background:var(--accent-50);color:var(--accent-600)}.badge-outline{border:1px solid var(--border-strong);color:var(--text-muted);background:0 0}.badge-pill{border-radius:var(--r-pill);padding-inline:10px}.verified{color:var(--info-500);align-items:center;display:inline-flex}.verified svg{width:16px;height:16px}.avatar{background:var(--brand-100);color:var(--brand-700);font-family:var(--font-display);-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar-xs{width:28px;height:28px;font-size:15px}.avatar-sm{width:36px;height:36px;font-size:20px}.avatar-md{width:52px;height:52px;font-size:28px}.avatar-lg{width:72px;height:72px;font-size:40px}.avatar-xl{width:112px;height:112px;font-size:60px}.avatar-emoji{justify-content:center;align-items:center;line-height:1;display:inline-flex}.avatar-ring{box-shadow:0 0 0 3px var(--surface), 0 0 0 4px var(--border)}.avatar-wrap{flex-shrink:0;line-height:0;display:inline-block;position:relative}.avatar-status{border:2px solid var(--surface);background:var(--ink-300);border-radius:50%;width:12px;height:12px;position:absolute;bottom:0;right:0}.avatar-status.online{background:var(--success-500)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);transition:border-color var(--base) var(--ease), box-shadow var(--base) var(--ease), transform var(--base) var(--ease)}.card-pad{padding:var(--s5)}.card-hover:hover{border-color:var(--brand-300);box-shadow:var(--shadow-md);transform:var(--lift)}.card-flat{border-radius:var(--r-lg)}.card-head{justify-content:space-between;align-items:center;gap:var(--s3);padding:var(--s4) var(--s5);border-bottom:1px solid var(--border);display:flex}.card-head h3{font-size:var(--text-h4)}.card-body{padding:var(--s5)}.card-foot{padding:var(--s4) var(--s5);border-top:1px solid var(--border)}.stat{gap:var(--s2);flex-direction:column;display:flex}.stat-top{justify-content:space-between;align-items:center;display:flex}.stat-label{font-size:var(--text-caption);color:var(--text-muted);font-weight:500}.stat-value{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.75rem;font-weight:700;line-height:1.1}.stat-icon{border-radius:var(--r-md);background:var(--primary-soft);width:36px;height:36px;color:var(--primary);place-items:center;display:grid}.stat-icon svg{width:18px;height:18px}.stat-delta{font-size:var(--text-caption);align-items:center;gap:3px;font-weight:600;display:inline-flex}.stat-delta.up{color:var(--success-500)}.stat-delta.down{color:var(--danger-500)}.stat-delta svg{width:14px;height:14px}.rating{align-items:center;gap:5px;display:inline-flex}.rating-stars{color:var(--accent-500);gap:1px;display:inline-flex}.rating-stars svg{width:15px;height:15px}.rating-stars .empty{color:var(--ink-300)}.rating-value{font-weight:600;font-size:var(--text-sm)}.rating-count{font-size:var(--text-caption);color:var(--text-muted)}.rating-input{gap:var(--s1);display:inline-flex}.rating-input button{color:var(--ink-300);transition:transform var(--fast) var(--ease);background:0 0;border:0;border-radius:4px;padding:2px}.rating-input button svg{width:28px;height:28px}.rating-input button:hover{transform:scale(1.12)}.rating-input button.on{color:var(--accent-500)}.progress{border-radius:var(--r-pill);background:var(--ink-100);height:7px;overflow:hidden}.progress-bar{border-radius:var(--r-pill);background:var(--primary);height:100%;transition:width var(--slow) var(--ease)}.progress-bar.accent{background:var(--accent-500)}.tabs{gap:var(--s1);border-bottom:1px solid var(--border);scrollbar-width:none;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{padding:var(--s3) var(--s4);font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;transition:color var(--fast) var(--ease);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;font-weight:600}.tab:hover{color:var(--text)}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.tab-count{border-radius:var(--r-pill);background:var(--ink-100);font-size:var(--text-label);margin-left:6px;padding:1px 7px}.tab.active .tab-count{background:var(--primary-soft);color:var(--primary)}.segmented{background:var(--ink-100);border-radius:var(--r-md);gap:2px;padding:3px;display:inline-flex}.segmented button{padding:7px var(--s4);border-radius:var(--r-sm);font-size:var(--text-caption);color:var(--text-muted);background:0 0;border:0;font-weight:600}.segmented button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-xs)}.overlay{z-index:var(--z-modal);background:var(--scrim);padding:var(--s5);animation:fade var(--base) var(--ease);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--r-card);width:100%;max-width:520px;max-height:88vh;box-shadow:var(--shadow-xl);animation:pop var(--base) var(--ease);overflow-y:auto}.modal-sm{max-width:420px}.modal-lg{max-width:720px}.modal-head{justify-content:space-between;align-items:flex-start;gap:var(--s4);padding:var(--s5) var(--s5) var(--s3);display:flex}.modal-head h2{font-size:var(--text-h3)}.modal-head p{font-size:var(--text-sm);color:var(--text-muted);margin-top:4px}.modal-body{padding:var(--s3) var(--s5) var(--s5)}.modal-foot{gap:var(--s3);padding:var(--s4) var(--s5);border-top:1px solid var(--border);justify-content:flex-end;display:flex}.icon-btn{border-radius:var(--r-sm);width:32px;height:32px;color:var(--text-muted);transition:background var(--fast) var(--ease);background:0 0;border:0;flex-shrink:0;place-items:center;display:grid}.icon-btn:hover{background:var(--ink-100);color:var(--text)}.icon-btn svg{width:18px;height:18px}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(12px)scale(.985)}}@keyframes slide-left{0%{transform:translate(100%)}}@keyframes slide-right{0%{transform:translate(-100%)}}@keyframes slide-up{0%{transform:translateY(100%)}}.drawer-overlay{z-index:var(--z-drawer);background:var(--scrim);animation:fade var(--base) var(--ease);position:fixed;inset:0}.drawer{z-index:var(--z-drawer);background:var(--surface);width:min(400px,88vw);box-shadow:var(--shadow-xl);animation:slide-left var(--slow) var(--ease);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}.drawer-left{animation-name:slide-right;left:0;right:auto}.drawer-head{padding:var(--s4) var(--s5);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.drawer-head h2{font-size:var(--text-h4)}.drawer-body{padding:var(--s5);flex:1;overflow-y:auto}.drawer-foot{padding:var(--s4) var(--s5);border-top:1px solid var(--border);gap:var(--s3);display:flex}.dropdown{position:relative}.dropdown-menu{z-index:var(--z-sticky);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);min-width:200px;box-shadow:var(--shadow-lg);padding:var(--s2);animation:pop var(--fast) var(--ease);position:absolute;top:calc(100% + 6px);right:0}.dropdown-menu.left{left:0;right:auto}.dropdown-item{align-items:center;gap:var(--s3);text-align:left;width:100%;padding:var(--s2) var(--s3);border-radius:var(--r-sm);font-size:var(--text-sm);color:var(--text);background:0 0;border:0;font-weight:500;display:flex}.dropdown-item:hover,.dropdown-item.active{background:var(--ink-100)}.dropdown-item svg{width:16px;height:16px;color:var(--text-muted)}.dropdown-item.danger,.dropdown-item.danger svg{color:var(--danger-500)}.dropdown-sep{background:var(--border);height:1px;margin:var(--s2) 0}.dropdown-head{padding:var(--s2) var(--s3);font-size:var(--text-label);text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);font-weight:600}.toast-region{bottom:var(--s6);right:var(--s6);z-index:var(--z-toast);max-width:calc(100vw - var(--s8));gap:var(--s3);pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast{align-items:flex-start;gap:var(--s3);width:min(380px,100vw - 32px);padding:var(--s4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);pointer-events:auto;animation:pop var(--base) var(--ease);display:flex}.toast-icon{flex-shrink:0;width:20px;height:20px;margin-top:1px}.toast.success .toast-icon{color:var(--success-500)}.toast.error .toast-icon{color:var(--danger-500)}.toast.info .toast-icon{color:var(--info-500)}.toast-title{font-size:var(--text-sm);font-weight:600}.toast-msg{font-size:var(--text-caption);color:var(--text-muted);margin-top:2px}.alert{gap:var(--s3);padding:var(--s4);border-radius:var(--r-lg);font-size:var(--text-sm);line-height:1.55;display:flex}.alert svg{flex-shrink:0;width:18px;height:18px;margin-top:1px}.alert-title{margin-bottom:2px;font-weight:600}.alert-info{background:var(--info-50);color:var(--info-500)}.alert-success{background:var(--success-50);color:var(--success-500)}.alert-warning{background:var(--warning-50);color:var(--warning-500)}.alert-danger{background:var(--danger-50);color:var(--danger-500)}.alert-brand{background:var(--primary-soft);color:var(--brand-600)}.tip{display:inline-flex;position:relative}.tip-bubble{background:var(--ink-900);color:var(--white);font-size:var(--text-label);border-radius:var(--r-sm);white-space:nowrap;z-index:var(--z-sticky);pointer-events:none;animation:fade var(--fast) var(--ease);box-shadow:var(--shadow-md);padding:6px 10px;font-weight:500;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.empty{text-align:center;padding:var(--s16) var(--s5);flex-direction:column;align-items:center;display:flex}.empty-icon{border-radius:var(--r-lg);background:var(--primary-soft);width:60px;height:60px;color:var(--primary);margin-bottom:var(--s5);place-items:center;display:grid}.empty-icon svg{width:26px;height:26px}.empty h1,.empty h2,.empty h3{font-size:var(--text-h3);margin-bottom:var(--s2)}.empty p{color:var(--text-muted);max-width:420px;font-size:var(--text-sm)}.empty-actions{gap:var(--s3);margin-top:var(--s6);flex-wrap:wrap;justify-content:center;display:flex}.skel{background:linear-gradient(90deg, var(--ink-100) 25%, var(--ink-200) 50%, var(--ink-100) 75%);border-radius:var(--r-sm);background-size:200% 100%;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.skel-circle{border-radius:50%}.pagination{justify-content:center;align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.page-btn{min-width:38px;height:38px;padding:0 var(--s2);border:1px solid var(--border);background:var(--surface);border-radius:var(--r-sm);font-size:var(--text-sm);color:var(--text-muted);place-items:center;font-weight:600;display:grid}.page-btn:hover:not(:disabled){border-color:var(--brand-300);color:var(--primary)}.page-btn.active{background:var(--primary);border-color:var(--primary);color:var(--white)}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-btn svg{width:16px;height:16px}.page-dots{color:var(--text-subtle);padding-inline:4px}.breadcrumb{align-items:center;gap:var(--s2);font-size:var(--text-caption);color:var(--text-muted);flex-wrap:wrap;display:flex}.breadcrumb a:hover{color:var(--primary)}.breadcrumb svg{width:14px;height:14px;color:var(--ink-300)}.breadcrumb .current{color:var(--text);font-weight:500}.credit-badge{padding:6px var(--s3);border-radius:var(--r-pill);background:var(--accent-50);color:var(--accent-600);font-size:var(--text-caption);align-items:center;gap:6px;font-weight:700;display:inline-flex}.credit-badge svg{width:15px;height:15px}.credit-badge.lg{padding:var(--s2) var(--s4);font-size:var(--text-sm)}@media (pointer:coarse){.btn-sm{height:40px}.btn-icon.btn-sm{width:40px}.icon-btn{width:40px;height:40px}.page-btn{min-width:42px;height:42px}.search-clear{width:30px;height:30px}}@media (width<=640px){.toast-region{bottom:auto;top:var(--s4);right:var(--s4);left:var(--s4)}.drawer.drawer-sheet{border-radius:var(--r-card) var(--r-card) 0 0;width:100%;max-height:86vh;animation-name:slide-up;top:auto;left:0}.modal{max-height:92vh}.modal-foot{flex-direction:column-reverse}.modal-foot .btn{width:100%}}@keyframes spin{to{transform:rotate(360deg)}}.rating-input.sm button svg{width:20px;height:20px}.navbar{z-index:var(--z-sticky);height:var(--navbar-h);-webkit-backdrop-filter:saturate(180%)blur(16px);backdrop-filter:saturate(180%)blur(16px);background:#03231af5;border-bottom:1px solid #34d39938;position:sticky;top:0;box-shadow:0 4px 20px #02181259}.navbar-inner{align-items:center;gap:var(--s6);height:100%;display:flex}.brand{flex-shrink:0;align-items:center;gap:10px;display:inline-flex}.brand-mark{border-radius:9px;flex-shrink:0;width:32px;height:32px}.brand-name{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text);font-size:1.0625rem;font-weight:800}.brand-name span{color:var(--primary)}.navbar .brand-name{color:#fff}.navbar .brand-name span{color:var(--light-green-400)}.nav-links{align-items:center;gap:var(--s1);display:flex}.nav-link{padding:8px var(--s3);border-radius:var(--r-sm);font-size:var(--text-sm);color:var(--text-muted);transition:color var(--fast) var(--ease), background var(--fast) var(--ease);font-weight:500}.nav-link:hover{color:var(--text);background:var(--ink-100)}.nav-link.active{color:var(--primary);font-weight:600}.navbar .nav-link{color:#c4e5d8}.navbar .nav-link:hover{color:#fff;background:#34d39924}.navbar .nav-link.active{color:var(--light-green-400);background:#34d3992e;font-weight:600}.nav-actions{align-items:center;gap:var(--s3);margin-left:auto;display:flex}.navbar .btn-ghost{color:#c4e5d8}.navbar .btn-ghost:hover{color:#fff;background:#34d39924}.navbar .btn:not(.btn-ghost):not(.nav-credits-btn):not(.btn-secondary){color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:1px solid #6ee7b766;box-shadow:0 4px 14px #10b98159}.navbar .btn:not(.btn-ghost):not(.nav-credits-btn):not(.btn-secondary):hover{background:linear-gradient(135deg,#059669 0%,#047857 100%);box-shadow:0 6px 18px #10b98173}.nav-icon-btn{border-radius:var(--r-sm);width:38px;height:38px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:relative}.nav-icon-btn:hover{background:var(--ink-100);color:var(--text)}.nav-icon-btn svg{width:19px;height:19px}.navbar .nav-icon-btn{color:#c4e5d8}.navbar .nav-icon-btn:hover{color:#fff;background:#34d39924}.navbar .burger{color:#fff}.nav-dot{background:var(--danger-500);border:2px solid var(--surface);border-radius:50%;width:8px;height:8px;position:absolute;top:7px;right:8px}.nav-credits-btn{align-items:center;gap:var(--s2);padding:0 var(--s3);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);height:38px;font-size:var(--text-sm);color:var(--text);cursor:pointer;transition:all var(--fast) var(--ease);font-weight:600;text-decoration:none;display:inline-flex}.nav-credits-btn:hover{background:var(--ink-50);border-color:var(--ink-300);transform:translateY(-1px)}.nav-credits-btn svg{color:#f59e0b;flex-shrink:0;width:16px;height:16px}.nav-credits-btn .credit-count{font-variant-numeric:tabular-nums;color:var(--text);font-weight:700}.nav-credits-btn .credit-text{font-size:var(--text-xs);color:var(--text-muted);font-weight:500}.navbar .nav-credits-btn{color:#fff;background:#ffffff1a;border-color:#34d3994d}.navbar .nav-credits-btn:hover{border-color:var(--light-green-400);background:#ffffff2e}.navbar .nav-credits-btn .credit-count{color:#fff}.navbar .nav-credits-btn .credit-text{color:#a7f3d0}.navbar .nav-user{background:#ffffff1a;border-color:#34d3994d}.navbar .nav-user svg{color:#c4e5d8}.notif-dropdown-header{padding:var(--s3) var(--s4);border-bottom:1px solid var(--border)}.notif-dropdown-title{font-weight:700;font-size:var(--text-sm);color:var(--text)}.notif-badge{border-radius:var(--r-pill);background:var(--brand-100);color:var(--brand-700);padding:2px 7px;font-size:11px;font-weight:700}.notif-dropdown-list{max-height:320px;padding:var(--s1) 0;overflow-y:auto}.notif-item{align-items:flex-start;gap:var(--s3);padding:var(--s3) var(--s4);cursor:pointer;transition:background var(--fast) var(--ease);text-align:left;display:flex}.notif-item:hover{background:var(--ink-50)}.notif-item-icon{background:var(--brand-50);width:32px;height:32px;color:var(--brand-600);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.notif-item-icon svg{width:15px;height:15px}.notif-item-content{flex:1;min-width:0}.notif-item-title{font-size:var(--text-xs);color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;font-weight:600;overflow:hidden}.notif-item-desc{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}.notif-item-time{color:var(--text-subtle);margin-top:3px;font-size:11px}.notif-unread-dot{background:var(--brand-600);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:6px}.notif-empty{padding:var(--s6) var(--s4);text-align:center}.notif-empty-title{font-size:var(--text-sm);color:var(--text);margin-bottom:2px;font-weight:600}.nav-user{align-items:center;gap:var(--s2);border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);padding:4px 6px 4px 4px;display:flex}.nav-user:hover{border-color:var(--border-strong)}.nav-user svg{width:15px;height:15px;color:var(--text-muted)}.burger{display:none}.mobile-nav{gap:var(--s1);flex-direction:column;display:flex}.mobile-nav a{padding:var(--s3);border-radius:var(--r-md);font-size:1rem;font-weight:500}.mobile-nav a:hover,.mobile-nav a.active{background:var(--ink-100);color:var(--primary)}@media (width<=1000px){.nav-links{display:none}.burger{display:grid}}.footer{background:var(--ink-900);color:var(--ink-200);padding-block:var(--s16) var(--s8);margin-top:auto}.footer h4{color:var(--white);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--s4);font-family:var(--font-body);font-weight:600}.footer-grid{gap:var(--s10);grid-template-columns:1.6fr repeat(4,1fr);display:grid}.footer a{font-size:var(--text-sm);color:var(--ink-200);padding-block:5px;display:block}.footer a:hover,.footer .brand-name{color:var(--white)}.footer .brand-name span{color:var(--brand-300)}.footer-about{font-size:var(--text-sm);color:var(--ink-300);margin-top:var(--s4);max-width:320px;line-height:1.65}.footer-bottom{justify-content:space-between;gap:var(--s4);margin-top:var(--s12);padding-top:var(--s6);border-top:1px solid var(--ink-700);font-size:var(--text-caption);color:var(--ink-300);flex-wrap:wrap;display:flex}.footer-social{gap:var(--s2);display:flex}.footer-social a{border-radius:var(--r-sm);background:#f3efe50f;place-items:center;width:36px;height:36px;padding:0;display:grid}.footer-social svg{width:17px;height:17px}@media (width<=900px){.footer-grid{gap:var(--s8);grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.footer-grid{grid-template-columns:1fr}}.page{flex-direction:column;min-height:100vh;display:flex}.page>main{flex:1}.app-shell{background:var(--bg);min-height:100vh;display:flex}.sidebar{height:100vh;width:var(--sidebar-w);background:var(--surface);border-right:1px solid var(--border);padding:var(--s4) var(--s3);flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0}.sidebar-brand{padding:var(--s2) var(--s3) var(--s5)}.sidebar-group{margin-bottom:var(--s5)}.sidebar-group-label{padding:0 var(--s3) var(--s2);font-size:var(--text-label);letter-spacing:.07em;text-transform:uppercase;color:var(--text-subtle);font-weight:600}.side-link{align-items:center;gap:var(--s3);padding:9px var(--s3);border-radius:var(--r-sm);font-size:var(--text-sm);color:var(--text-muted);transition:background var(--fast) var(--ease), color var(--fast) var(--ease);margin-bottom:2px;font-weight:500;display:flex}.side-link svg{flex-shrink:0;width:18px;height:18px}.side-link:hover{background:var(--ink-100);color:var(--text)}.side-link.active{background:var(--primary-soft);color:var(--primary);border-left:3.5px solid var(--primary);font-weight:700}.side-link .count{font-size:var(--text-label);border-radius:var(--r-pill);background:var(--danger-500);color:var(--white);margin-left:auto;padding:1px 7px;font-weight:700}.sidebar-foot{padding-top:var(--s4);margin-top:auto}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}.app-header{z-index:calc(var(--z-sticky) - 1);background:var(--surface-veil);-webkit-backdrop-filter:saturate(180%)blur(12px);backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--border);padding:var(--s4) var(--s6);align-items:center;gap:var(--s4);display:flex;position:sticky;top:0}.app-header h1{font-size:var(--text-h3)}.app-header .sub{font-size:var(--text-caption);color:var(--text-muted);margin-top:2px}.app-content{padding:var(--s6)}.app-content-narrow{max-width:860px}.page-head{margin-bottom:var(--s6)}.page-head h1,.page-head h2{font-size:var(--text-h2);margin-bottom:var(--s1)}.tabbar{z-index:var(--z-sticky);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:#03231af5;border-top:1px solid #34d39938;display:none;position:fixed;bottom:0;left:0;right:0}.tabbar a{color:#a7f3d0}.tabbar a.active{color:var(--light-green-400);font-weight:700}.tabbar a{min-width:0;color:var(--text-subtle);border-radius:var(--r-sm);text-align:center;white-space:nowrap;text-overflow:ellipsis;flex-direction:column;flex:1 1 0;align-items:center;gap:3px;padding:6px 2px;font-size:10px;font-weight:600;display:flex;overflow:hidden}.tabbar a>:not(svg){text-overflow:ellipsis;max-width:100%;overflow:hidden}.tabbar a svg{width:21px;height:21px}.tabbar a.active{color:var(--primary)}@media (width<=1000px){.sidebar{display:none}.app-content{padding:var(--s5) var(--s4) calc(var(--s16) + var(--s6))}.app-header{padding:var(--s3) var(--s4)}.tabbar{display:flex}}.manus-hero-section{color:#f7f1e6;background:radial-gradient(circle at 18% 18%,#ef85501f,#0000 32%),radial-gradient(circle at 82% 80%,#34d39914,#0000 40%),linear-gradient(135deg,#0d1916 0%,#11231d 52%,#0c1614 100%);border-bottom:1px solid #ffffff14;position:relative;overflow:hidden}.manus-hero-inner{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(24px,4vw,56px);max-width:1400px;margin:0 auto;padding:clamp(48px,6vw,84px) clamp(20px,4vw,48px);display:grid}.manus-hero-copy{flex-direction:column;justify-content:center;display:flex}.manus-eyebrow{text-transform:uppercase;letter-spacing:.16em;color:#ef9a62;align-items:center;gap:8px;margin-bottom:20px;font-size:11px;font-weight:800;display:inline-flex}.manus-eyebrow-dot{background:#e78346;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #e7834633}.manus-hero-title{font-family:var(--font-display,"Manrope", "DM Sans", sans-serif);letter-spacing:-.055em;color:#fff;max-width:650px;margin:0 0 18px;font-size:clamp(2.6rem,4.6vw,4.4rem);font-weight:800;line-height:1.02}.manus-hero-lede{color:#aebbb1;max-width:520px;margin:0 0 28px;font-size:clamp(15px,1.1vw,17px);line-height:1.65}.manus-search-card{background:#f7f2e8;border:1.5px solid #ffffff38;border-radius:999px;align-items:center;gap:12px;max-width:620px;padding:8px 10px 8px 18px;transition:box-shadow .2s,border-color .2s;display:flex;box-shadow:0 20px 48px #00000059}.manus-search-card:focus-within{border-color:#ef8550;box-shadow:0 20px 50px #ef855038}.manus-search-field{color:#b84c3a;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.manus-search-ic{color:#b84c3a;flex-shrink:0}.manus-search-field input{color:#24302b;background:0 0;border:0;outline:0;width:100%;min-width:0;font-family:inherit;font-size:14px;font-weight:500}.manus-search-field input::placeholder{color:#7d8c83}.manus-search-divider{background:#d8cebf;flex-shrink:0;width:1px;height:28px}.manus-search-location{flex-shrink:0;align-items:center;gap:6px;display:flex;position:relative}.manus-pin-ic{color:#3b8266;flex-shrink:0}.manus-search-location select{appearance:none;color:#495a50;cursor:pointer;background:0 0;border:0;outline:none;padding-right:20px;font-family:inherit;font-size:13px;font-weight:600}.manus-select-arrow{pointer-events:none;color:#7d8c83;position:absolute;right:2px}.manus-search-btn{color:#fffaf3;white-space:nowrap;cursor:pointer;background:#b84c3a;border:0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;gap:7px;padding:13px 22px;font-family:inherit;font-size:13px;font-weight:700;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex;box-shadow:0 8px 20px #b84c3a4d}.manus-search-btn:hover{background:#cd5441;transform:translateY(-1px);box-shadow:0 12px 26px #b84c3a66}.manus-trust-line{color:#9db7a2;align-items:center;gap:8px;margin-top:18px;font-size:12px;display:flex}.manus-trust-line svg{color:#6ee7b7;flex-shrink:0}.manus-quick-links{flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;display:flex}.manus-quick-btn{color:#c9dbcc;background:#ffffff0d;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:7px;padding:8px 14px;font-size:12px;font-weight:600;text-decoration:none;transition:all .18s;display:inline-flex}.manus-quick-btn:hover{color:#fff;background:#ffffff1f;border-color:#ef855080;transform:translateY(-1px)}.manus-hero-chips{flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;display:flex}.manus-chips-label{text-transform:uppercase;letter-spacing:.1em;color:#7b9182;margin-right:2px;font-size:11px;font-weight:700}.manus-chip{color:#a9bea9;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:999px;padding:5px 11px;font-family:inherit;font-size:12px;transition:all .15s}.manus-chip:hover{color:#f7eee2;background:#ef855024;border-color:#ef855059}.manus-hero-visual{flex-direction:column;justify-content:center;min-height:520px;display:flex;position:relative}.manus-match-card{background:#12221e;border:1px solid #ffffff1f;border-radius:26px;flex-direction:column;gap:18px;padding:24px;display:flex;position:relative;box-shadow:0 30px 80px #00000080,0 0 50px #10b9811a}.mm-tutor-head{border-bottom:1px solid #ffffff14;align-items:center;gap:16px;padding-bottom:18px;display:flex}.mm-tutor-avatar-wrap{border-radius:50%;flex-shrink:0;width:60px;height:60px;position:relative}.mm-tutor-avatar{object-fit:cover;border:2px solid #10b981;border-radius:50%;width:100%;height:100%}.mm-online-indicator{background:#10b981;border:2px solid #12221e;border-radius:50%;width:12px;height:12px;position:absolute;bottom:2px;right:2px;box-shadow:0 0 8px #10b981}.mm-tutor-info{flex:1;min-width:0}.mm-tutor-name-row{align-items:center;gap:8px;display:flex}.mm-tutor-name-row h4{font-family:var(--font-display,"Manrope", sans-serif);color:#fff;margin:0;font-size:17px;font-weight:800}.mm-verified-badge{color:#34d399;background:#10b98126;border:1px solid #34d39959;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.mm-tutor-sub{color:#9eb5a5;margin:2px 0 6px;font-size:12.5px}.mm-tutor-meta{align-items:center;gap:12px;font-size:12px;display:flex}.mm-rating{color:#fbbf24;align-items:center;gap:4px;font-weight:700;display:inline-flex}.mm-rate{color:#fff;background:#ffffff0f;border-radius:6px;padding:2px 8px;font-weight:700}.mm-chat-box{background:#0d1916;border:1px solid #ffffff14;border-radius:18px;flex-direction:column;gap:12px;padding:16px;display:flex}.mm-chat-header{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.mm-chat-label{color:#9eb5a5;align-items:center;gap:6px;font-size:11.5px;font-weight:700;display:inline-flex}.mm-chat-free-pill{color:#10b981;background:#10b98124;border:1px solid #34d3994d;border-radius:999px;padding:3px 9px;font-size:10.5px;font-weight:800}.mm-chat-messages{flex-direction:column;gap:10px;display:flex}.mm-bubble{border-radius:14px;max-width:90%;padding:10px 14px;font-size:12.5px;line-height:1.45}.mm-bubble p{margin:0}.mm-bubble.student{color:#f7ecdf;background:#182b26;border:1px solid #34d3994d;border-bottom-right-radius:4px;align-self:flex-end}.mm-bubble.teacher{color:#d1ded1;background:#ffffff0f;border:1px solid #ffffff14;border-bottom-left-radius:4px;align-self:flex-start}.mm-time{color:#7d9685;text-align:right;margin-top:4px;font-size:10px;display:block}.mm-chat-form{gap:8px;margin-top:4px;display:flex}.mm-chat-form input{color:#fff;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;outline:none;flex:1;padding:9px 12px;font-family:inherit;font-size:12px}.mm-chat-form input:focus{border-color:#10b981;box-shadow:0 0 0 2px #10b98133}.mm-chat-form button{color:#0c1815;cursor:pointer;background:#10b981;border:none;border-radius:10px;place-items:center;width:36px;height:36px;transition:all .2s;display:grid}.mm-chat-form button:hover{background:#34d399;transform:scale(1.05)}.mm-pillars-grid{grid-template-columns:repeat(2,1fr);gap:8px 12px;display:grid}.mm-pillar-item{color:#9eb5a5;align-items:center;gap:6px;font-size:11.5px;display:flex}.mm-chk{color:#10b981;flex-shrink:0}.mm-card-cta{border-top:1px solid #ffffff0f;padding-top:8px}.mm-cta-link{color:#34d399;align-items:center;gap:6px;font-size:12.5px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.mm-cta-link:hover{color:#6ee7b7;transform:translate(3px)}@media (width<=1024px){.manus-hero-inner{grid-template-columns:1fr;gap:40px}.manus-hero-visual{min-height:440px}}@media (width<=640px){.manus-search-card{border-radius:20px;flex-direction:column;align-items:stretch;gap:12px;padding:14px}.manus-search-divider{display:none}.manus-search-location{border-bottom:1px solid #e0d4c5;padding-bottom:8px}.manus-search-btn{width:100%}.manus-hero-title{font-size:2.3rem}.manus-lesson-frame{min-height:380px}.manus-lesson-panel{width:calc(100% - 28px);bottom:14px;left:14px}}.hero{color:#fff;padding-block:var(--s16) var(--s16);background:radial-gradient(65% 55% at 75% 25%,#10b98133 0%,#0000 65%),radial-gradient(50% 45% at 20% 75%,#05966924 0%,#0000 55%),linear-gradient(135deg,#021a14 0%,#03271d 50%,#021a14 100%);min-height:600px;position:relative;overflow:hidden}.hero-grid{gap:var(--s12);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;display:grid}.hero h1{color:#fff;background:linear-gradient(135deg,#fff 40%,#6ee7b7 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;max-width:15ch}.hero .lead{max-width:50ch;margin-top:var(--s5);color:#c7ebdc}.hero-facts{gap:var(--s2) var(--s6);margin-top:var(--s8);padding-top:var(--s5);border-top:1px solid #6ee7b740;flex-wrap:wrap;display:flex}.hero-facts dd{font-size:var(--text-sm);color:#a7f3d0}.hero-facts strong{font-family:var(--font-display);font-weight:800;font-size:var(--text-h3);color:#34d399;margin-right:4px}.hero-visual{min-height:460px;position:relative}.hero-laptop-wrap{background:#021a13;border:1px solid #34d39947;border-radius:20px;width:100%;max-width:520px;margin:0 auto;position:relative;overflow:hidden;transform:translateY(10px);box-shadow:0 25px 60px -15px #000000b3,0 0 40px #10b98140}.hero-laptop-img{object-fit:cover;border-radius:19px;width:100%;height:auto;display:block}.hero-laptop-glow{pointer-events:none;background:radial-gradient(circle at 50% 100%,#10b98126,#0000 70%);position:absolute;inset:0}.hero-card{align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-radius:var(--r-lg);color:#083226;transition:transform var(--base) var(--ease), box-shadow var(--base) var(--ease);background:#fff;border:1.5px solid #a7f3d0;text-decoration:none;animation:7s ease-in-out infinite hero-float;display:flex;position:absolute;box-shadow:0 16px 35px #021c1559}.hero-card:hover{transform:translateY(-4px)scale(1.02);box-shadow:0 20px 45px #021c1573}.hero-card .hc-body{flex-direction:column;gap:1px;min-width:0;display:flex}.hero-card .hc-name{font-weight:700;font-size:var(--text-sm);white-space:nowrap;color:#063c2e;align-items:center;gap:5px;display:inline-flex}.hero-card .hc-name svg{color:#059669;flex-shrink:0;width:15px;height:15px}.hero-card .hc-sub{font-size:var(--text-caption);color:#215a4c;white-space:nowrap}.hero-card .hc-meta{font-size:var(--text-caption);color:#3b7363;white-space:nowrap;align-items:center;gap:4px;margin-top:2px;display:inline-flex}.hero-card .hc-meta svg{width:13px;height:13px;color:var(--accent-500);fill:currentColor}.hero-card-lead{z-index:3;animation-delay:0s;top:12%;left:-4%}.hero-card-2{z-index:3;animation-delay:1.6s;top:-2%;right:-3%}.hero-card-3{z-index:3;animation-delay:3.1s;bottom:6%;right:-2%}.hero-chip-float{z-index:4;padding:7px var(--s3);color:#fff;border-radius:var(--r-pill);font-size:var(--text-caption);background:#021812;border:1px solid #34d399;align-items:center;gap:6px;font-weight:600;animation:7s ease-in-out 2.2s infinite hero-float;display:inline-flex;position:absolute;bottom:-4%;left:6%;box-shadow:0 8px 24px #03231a66}.hero-chip-float svg{color:#34d399;width:13px;height:13px}@keyframes hero-float{0%,to{translate:0}50%{translate:0 -10px}}@media (width<=1000px){.hero-grid{gap:var(--s8);grid-template-columns:minmax(0,1fr)}.hero-visual{gap:var(--s4);flex-direction:column;align-items:center;min-height:0;display:flex}.hero-laptop-wrap{max-width:100%;transform:none}.hero-chip-float{display:none}.hero-card,.hero-card-lead,.hero-card-2,.hero-card-3{box-shadow:var(--shadow-sm);width:100%;max-width:380px;animation:none;position:static}}.hero-pill{align-items:center;gap:var(--s2);padding:6px var(--s3) 6px var(--s2);border-radius:var(--r-pill);font-size:var(--text-caption);color:#6ee7b7;margin-bottom:var(--s5);background:#10b98129;border:1px solid #34d39966;font-weight:600;display:inline-flex;box-shadow:0 4px 12px #0218124d}.hero-pill svg{color:#34d399;width:15px;height:15px}.hero-search{max-width:820px;margin:var(--s8) auto 0}.searchbar{align-items:center;gap:var(--s2);padding:var(--s2);border-radius:var(--r-pill);background:#fff;border:1.5px solid #a7f3d0;display:flex;box-shadow:0 16px 40px #021c154d}.searchbar .search-input{flex:1;min-width:0}.searchbar .search-input .input{color:#083226;background:0 0;border:0;font-weight:500;box-shadow:none!important}.searchbar .search-input .input::placeholder{color:#477669}.searchbar-divider{background:#cce5d8;flex-shrink:0;width:1px;height:26px}.searchbar .place{flex-shrink:0;align-items:center;width:190px;display:flex;position:relative}.searchbar .place select{height:44px;font-size:var(--text-sm);color:#083226;background:0 0;border:0;padding-left:38px;font-weight:500}.searchbar .place>svg{left:var(--s3);color:#3b7363;pointer-events:none;z-index:1;width:17px;height:17px;position:absolute}.searchbar .btn{border-radius:var(--r-pill);flex-shrink:0}.hero-chips{gap:var(--s2);margin-top:var(--s5);flex-wrap:wrap;display:flex}.hero-chips .label{font-size:var(--text-caption);color:#a7f3d0;margin-right:var(--s1);align-self:center;font-weight:600}.hero-chips .chip{color:#ecfdf5;background:#ffffff1a;border:1px solid #6ee7b759}.hero-chips .chip:hover{color:#fff;background:#10b981;border-color:#10b981;box-shadow:0 4px 12px #10b98166}@media (width<=760px){.hero{padding-block:var(--s12) var(--s10)}.hero h1,.hero .lead{max-width:none}.searchbar{border-radius:var(--r-lg);padding:var(--s3);align-items:stretch;gap:var(--s3);flex-direction:column}.searchbar-divider{display:none}.searchbar .place{border:1px solid var(--border);border-radius:var(--r-md);width:100%}.searchbar .search-input .input{border:1px solid var(--border);border-radius:var(--r-md)}.searchbar .btn{border-radius:var(--r-md);height:46px}}.subject-tile{align-items:center;gap:var(--s3);padding:var(--s4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);transition:all var(--base) var(--ease);display:flex}.subject-tile:hover{border-color:var(--light-green-400);transform:translateY(-2px);box-shadow:0 8px 24px #05966929}.subject-tile .ic{border-radius:var(--r-md);background:var(--primary-soft);width:42px;height:42px;color:var(--primary);flex-shrink:0;place-items:center;display:grid}.subject-tile .ic svg{width:20px;height:20px}.subject-tile .n{font-weight:600;font-size:var(--text-sm)}.subject-tile .c{font-size:var(--text-caption);color:var(--text-muted)}.cat-card{height:100%;display:block}.cat-card .ic{border-radius:var(--r-md);background:var(--primary-soft);width:44px;height:44px;color:var(--primary);margin-bottom:var(--s4);place-items:center;display:grid}.cat-card .ic svg{width:21px;height:21px}.cat-card h3{font-size:var(--text-h4);margin-bottom:4px}.cat-card .list{margin-top:var(--s4);flex-wrap:wrap;gap:6px;display:flex}.cat-card .list span{font-size:var(--text-label);color:var(--text-muted);background:var(--ink-100);border-radius:var(--r-pill);padding:3px 9px;font-weight:500}.cat-expand-btn{padding:var(--s3) var(--s7);border:1.5px solid var(--brand-500);border-radius:var(--r-pill);color:var(--brand-600);font-size:var(--text-sm);cursor:pointer;background:0 0;align-items:center;gap:8px;font-weight:600;transition:all .2s;display:inline-flex}.cat-expand-btn:hover{background:var(--primary-soft);box-shadow:0 0 0 4px var(--glow-primary)}.cat-expand-btn svg{flex-shrink:0}.steps{gap:var(--s8);counter-reset:step;grid-template-columns:repeat(3,1fr);display:grid}.step{position:relative}.step:not(:last-child):after{content:"";top:24px;left:62px;right:calc(-1 * var(--s8) + 10px);border-top:2px dashed var(--light-green-300);position:absolute}@media (width<=760px){.step:not(:last-child):after{display:none}}.step .ic{border-radius:var(--r-md);background:var(--white);border:1.5px solid var(--border);width:48px;height:48px;color:var(--primary);box-shadow:var(--shadow-sm);margin-bottom:var(--s4);place-items:center;display:grid}.step .ic svg{width:22px;height:22px}.step .num{background:var(--primary);width:22px;height:22px;color:var(--white);font-size:11px;font-weight:800;font-family:var(--font-display);border-radius:50%;place-items:center;display:grid;position:absolute;top:-6px;left:34px}.step h3{font-size:var(--text-h4);margin-bottom:var(--s2)}.step p{font-size:var(--text-sm);color:var(--text-muted);line-height:1.6}@media (width<=760px){.steps{gap:var(--s6);grid-template-columns:1fr}}.benefit{gap:var(--s4);display:flex}.benefit .ic{border-radius:var(--r-md);background:var(--primary-soft);width:40px;height:40px;color:var(--primary);flex-shrink:0;place-items:center;display:grid}.benefit .ic svg{width:19px;height:19px}.benefit h4{margin-bottom:4px}.benefit p{font-size:var(--text-sm);color:var(--text-muted);line-height:1.6}.cta-band{color:var(--white);border-radius:var(--r-card);padding:var(--s16) var(--s12);gap:var(--s12);background:linear-gradient(135deg,#021f17 0%,#05372b 45%,#0a4f3e 100%);border:1px solid #34d39933;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 45px #021c1540}.cta-band:before{content:"";background:radial-gradient(circle,#10b98159,#0000 65%);border-radius:50%;width:340px;height:340px;position:absolute;top:-80px;right:-80px}.cta-band:after{content:"";pointer-events:none;opacity:.05;background-image:linear-gradient(#ffffffe6 1px,#0000 1px),linear-gradient(90deg,#ffffffe6 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0}.cta-band>*{position:relative}.cta-band h2{color:var(--white);max-width:18ch}.cta-band p{color:#c7ebdc;margin-top:var(--s4);max-width:46ch;font-size:1rem}.cta-points{gap:var(--s3);flex-direction:column;display:flex}.cta-point{align-items:center;gap:var(--s3);font-size:var(--text-sm);color:#d1fae5;display:flex}.cta-point svg{width:18px;height:18px;color:var(--light-green-400);flex-shrink:0}@media (width<=900px){.cta-band{padding:var(--s10) var(--s6);gap:var(--s8);grid-template-columns:minmax(0,1fr)}}.quote-card{flex-direction:column;height:100%;display:flex;position:relative}.quote-card:before{content:"“";top:var(--s2);right:var(--s5);font-family:var(--font-display);color:var(--primary-soft);pointer-events:none;font-size:84px;font-weight:800;line-height:1;position:absolute}.quote-card>*{position:relative}.quote-card .q{font-size:var(--text-sm);color:var(--text-muted);margin:var(--s4) 0 var(--s5);flex:1;line-height:1.7}.quote-card .who{align-items:center;gap:var(--s3);display:flex}.quote-card .who .n{font-weight:600;font-size:var(--text-sm)}.quote-card .who .r{font-size:var(--text-caption);color:var(--text-muted)}.faq{border-top:1px solid var(--border)}.faq-item{border-bottom:1px solid var(--border)}.faq-q{justify-content:space-between;align-items:center;gap:var(--s4);width:100%;padding:var(--s5) 0;text-align:left;font-family:var(--font-display);font-weight:700;font-size:var(--text-h4);color:var(--text);background:0 0;border:0;display:flex}.faq-q svg{width:20px;height:20px;color:var(--text-muted);transition:transform var(--base) var(--ease);flex-shrink:0}.faq-item.open .faq-q svg{transform:rotate(45deg)}.faq-a{padding-bottom:var(--s5);font-size:var(--text-sm);color:var(--text-muted);max-width:74ch;line-height:1.7}.faq-two-col{grid-template-columns:1fr 440px;align-items:start;gap:56px;display:grid}.faq-col-main{min-width:0}.faq-col-side{position:sticky;top:96px}.faq-image-card{background:#142420;border:1px solid #ffffff14;border-radius:24px;transition:transform .3s,border-color .3s,box-shadow .3s;overflow:hidden;box-shadow:0 16px 40px #00000059}.faq-image-card:hover{border-color:#34d39966;transform:translateY(-3px);box-shadow:0 20px 48px #00000073,0 0 24px #10b9811f}.faq-image-wrap{background:#0f1c18;width:100%;height:280px;position:relative;overflow:hidden}.faq-image{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.faq-image-card:hover .faq-image{transform:scale(1.05)}.faq-image-gradient{pointer-events:none;background:linear-gradient(#0f1c181a 0%,#14242080 65%,#142420fa 100%);position:absolute;inset:0}.faq-image-floating-badge{-webkit-backdrop-filter:blur(8px);color:#34d399;background:#0a1410cc;border:1px solid #34d39959;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:11.5px;font-weight:700;display:inline-flex;position:absolute;top:16px;right:16px;box-shadow:0 4px 12px #0000004d}.faq-badge-dot{background:#10b981;border-radius:50%;width:7px;height:7px;display:inline-block;box-shadow:0 0 8px #10b981}.faq-card-footer{padding:22px 26px 26px}.faq-card-footer h4{font-family:var(--font-display,"Manrope", sans-serif);color:#fff;letter-spacing:-.02em;margin:0 0 8px;font-size:19px;font-weight:800}.faq-card-footer p{color:#aebbb1;margin:0 0 18px;font-size:13.5px;line-height:1.55}.faq-contact-btn{color:#34d399;background:#182b26;border:1px solid #34d39959;border-radius:999px;align-items:center;gap:8px;padding:10px 20px;font-size:13px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.faq-contact-btn:hover{color:#0d1714;background:#10b981;border-color:#10b981;transform:translateY(-1px);box-shadow:0 4px 16px #10b9814d}@media (width<=1024px){.faq-two-col{grid-template-columns:1fr;gap:40px}.faq-col-side{max-width:480px;position:static}}.section-alt{background:var(--surface);border-block:1px solid var(--border)}.link-more{font-size:var(--text-sm);color:var(--primary);align-items:center;gap:5px;font-weight:600;display:inline-flex}.link-more svg{width:16px;height:16px;transition:transform var(--fast) var(--ease)}.link-more:hover svg{transform:translate(3px)}.how-hero{color:#fff;padding-block:var(--s16);background:linear-gradient(145deg,#021c15 0%,#053326 40%,#094736 100%);border-bottom:1px solid #34d39933;position:relative;overflow:hidden}.how-hero h1{color:#fff}.how-hero p{color:#c7ebdc}.how-hero:after{content:"";pointer-events:none;background:radial-gradient(50% 80% at 80% 0%, var(--glow-primary), transparent 70%);position:absolute;inset:0}.how-hero>*{z-index:1;position:relative}.how-flow{gap:var(--s6);flex-direction:column;display:flex}.how-row{gap:var(--s5);grid-template-columns:44px 1fr;align-items:start;display:grid}.how-row .dot{background:var(--primary-soft);width:44px;height:44px;color:var(--primary);font-family:var(--font-display);border-radius:50%;place-items:center;font-weight:700;display:grid}.how-row h3{font-size:var(--text-h4);margin-bottom:4px}.how-row p{font-size:var(--text-sm);color:var(--text-muted)}.split{gap:var(--s16);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;display:grid}@media (width<=900px){.split{gap:var(--s8);grid-template-columns:minmax(0,1fr)}}.split-reverse{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}@media (width<=900px){.split-reverse{grid-template-columns:minmax(0,1fr)}.split-reverse>.lesson-mock-wrap{order:2}}.lesson-mock-wrap{padding:var(--s6) var(--s6) var(--s8);position:relative}.lesson-mock-shadow{border-radius:var(--r-card);z-index:0;background:linear-gradient(150deg,#dcfce7,#86efac);position:absolute;inset:14% -2% 4% 8%}.lesson-mock{z-index:1;background:var(--ink-900);border-radius:var(--r-lg);box-shadow:var(--shadow-xl,var(--shadow-lg));position:relative;overflow:hidden}.lm-top{padding:var(--s3) var(--s4);background:#062f23;align-items:center;gap:6px;display:flex}.lm-dot{background:#3a7363;border-radius:50%;width:9px;height:9px}.lm-dot:first-child{background:#34d399}.lm-title{margin-left:var(--s3);color:#c7ebdc;font-size:var(--text-caption);align-items:center;gap:6px;font-weight:600;display:inline-flex}.lm-title svg{width:14px;height:14px}.lm-stage{padding:var(--s10) var(--s6) var(--s8);background:radial-gradient(60% 80% at 50% 20%,#10b98140,#0000 70%),#03231a;flex-direction:column;align-items:center;display:flex;position:relative}.lm-name{margin-top:var(--s3);color:var(--white);font-weight:700;font-family:var(--font-display)}.lm-sub{color:#a7f3d0;font-size:var(--text-caption);margin-top:2px}.lm-self{right:var(--s4);bottom:var(--s4);border-radius:var(--r-md);background:linear-gradient(150deg,#059669,#047857);border:2px solid #ffffff40;place-items:end start;width:84px;height:60px;padding:6px;display:grid;position:absolute}.lm-self-label{color:var(--white);opacity:.9;font-size:10px;font-weight:700}.lm-bar{justify-content:center;gap:var(--s3);padding:var(--s4);background:#062f23;display:flex}.lm-btn{width:38px;height:38px;color:var(--white);background:#ffffff1f;border-radius:50%;place-items:center;display:grid}.lm-btn svg{width:17px;height:17px}.lm-btn-end{background:var(--danger-500)}.mode-list{gap:var(--s5);margin-top:var(--s6);flex-direction:column;padding:0;list-style:none;display:flex}.mode-list li{gap:var(--s4);display:flex}.mode-list .ic{border-radius:var(--r-md);background:var(--moss-100);width:40px;height:40px;color:var(--moss-600);flex-shrink:0;place-items:center;display:grid}.mode-list .ic svg{width:19px;height:19px}.mode-list h4{margin-bottom:2px}.mode-list p{font-size:var(--text-sm);color:var(--text-muted)}.world-map-wrap{margin-top:var(--s10);border-radius:var(--r-card);background:#021c15;border:1px solid #0e6650;position:relative;overflow:hidden;box-shadow:0 8px 40px #03231a8c,inset 0 0 60px #020c0866}.world-map-svg{aspect-ratio:1000/500;width:100%;height:auto;display:block}.map-city-pin{transition:opacity .15s}.map-city-pin:hover{opacity:.82}.wm-online-btn{bottom:var(--s5);padding:var(--s2) var(--s5);border-radius:var(--r-pill);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#34d399;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;z-index:10;background:#03231ad9;border:1px solid #34d399;align-items:center;gap:7px;font-weight:600;transition:all .18s;display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.wm-online-btn svg{color:#6ee7b7;flex-shrink:0}.wm-online-btn:hover{background:#10b9812e;transform:translate(-50%)translateY(-2px);box-shadow:0 0 20px #34d39959}@media (width<=760px){.world-map-wrap{border-radius:var(--r-sm)}.wm-online-btn{bottom:var(--s3);font-size:var(--text-caption)}}.wm-tooltip{top:var(--s4);color:#a7f3d0;font-size:var(--text-caption);border-radius:var(--r-pill);pointer-events:none;z-index:20;white-space:nowrap;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#03231aeb;border:1px solid #34d399;padding:5px 14px;font-weight:600;position:absolute;left:50%;transform:translate(-50%)}.how-it-works-section{position:relative;overflow:hidden}.how-it-works-head{text-align:left;margin:0 0 var(--s10);flex-direction:column;align-items:flex-start;max-width:680px;display:flex}.how-it-works-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#10b981;margin-bottom:var(--s3);align-items:center;gap:8px;font-size:11px;font-weight:800;display:inline-flex}.how-it-works-dot{color:#10b981;font-size:14px}.how-it-works-title{font-family:var(--font-display,"Manrope", sans-serif);color:#fff;letter-spacing:-.04em;margin:0 0 var(--s3);text-align:left;font-size:clamp(2rem,3.8vw,2.75rem);font-weight:800}.how-it-works-subtitle{color:#9eb5a5;text-align:left;max-width:52ch;margin:0;font-size:15px;line-height:1.6}.how-it-works-toggle-wrap{justify-content:flex-start;margin-top:24px;display:flex}.how-it-works-toggle{background:#0f1c18;border:1px solid #ffffff1a;border-radius:999px;align-items:center;padding:4px;display:inline-flex;box-shadow:inset 0 2px 6px #0000004d}.how-it-works-btn{color:#9eb5a5;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:8px 22px;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1)}.how-it-works-btn.active{color:#fff;background:#182b26;border:1px solid #34d3994d;font-weight:700;box-shadow:0 4px 12px #0000004d,0 0 10px #10b98126}.how-it-works-btn:hover:not(.active){color:#fff}.how-it-works-cards-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.how-it-works-card{background:#142420;border:1px solid #ffffff14;border-radius:20px;flex-direction:column;transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1),border-color .28s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden;box-shadow:0 10px 30px #00000040}.how-it-works-card:hover{border-color:#34d39973;transform:translateY(-4px);box-shadow:0 18px 42px #0006,0 0 28px #10b98126}.how-it-works-card-media{background:#0f1c18;width:100%;height:180px;position:relative;overflow:hidden}.how-it-works-card-img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.16,1,.3,1);display:block}.how-it-works-card:hover .how-it-works-card-img{transform:scale(1.07)}.how-it-works-card-overlay{pointer-events:none;background:linear-gradient(#0f1c181a 0%,#14242080 60%,#142420fa 100%);position:absolute;inset:0}.how-it-works-step-badge{letter-spacing:.05em;text-transform:uppercase;color:#34d399;-webkit-backdrop-filter:blur(8px);z-index:2;background:#0a1410cc;border:1px solid #34d39959;border-radius:999px;align-items:center;padding:5px 12px;font-size:11.5px;font-weight:800;display:inline-flex;position:absolute;top:14px;left:14px;box-shadow:0 4px 12px #0000004d}.how-it-works-card-body{flex-direction:column;flex:1;padding:20px 24px 26px;display:flex}.how-it-works-card-tag{color:#10b981;text-transform:uppercase;letter-spacing:.06em;align-self:flex-start;margin-bottom:8px;font-size:11px;font-weight:700;display:inline-block}.how-it-works-card-title{font-family:var(--font-display,"Manrope", sans-serif);color:#fff;letter-spacing:-.025em;margin:0 0 10px;font-size:19px;font-weight:800;line-height:1.3}.how-it-works-card-desc{color:#9eb5a5;margin:0;font-size:14px;line-height:1.6}@media (width<=960px){.how-it-works-cards-grid{grid-template-columns:1fr;gap:20px}}.hero-quick-actions{margin-top:var(--s4);flex-wrap:wrap;align-items:center;gap:12px;display:flex}.hero-quick-btn{border-radius:var(--r-pill);font-size:var(--text-sm);align-items:center;gap:7px;padding:8px 16px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.hero-quick-btn.primary{color:#6ee7b7;background:#10b98133;border:1px solid #34d39973}.hero-quick-btn.primary:hover{color:#fff;background:#10b981;transform:translateY(-2px);box-shadow:0 6px 18px #10b98159}.hero-quick-btn.secondary{color:#a7f3d0;opacity:.9;font-size:13px}.hero-quick-btn.secondary:hover{color:#fff;opacity:1}.classroom-section{padding-block:var(--s16);color:#fff;background:linear-gradient(#021a14 0%,#03271d 50%,#021a14 100%);border-top:1px solid #34d39926;border-bottom:1px solid #34d39926;position:relative;overflow:hidden}.section-header-pill{border-radius:var(--r-pill);color:#6ee7b7;letter-spacing:.04em;text-transform:uppercase;margin-bottom:var(--s3);background:#10b98126;border:1px solid #34d39959;align-items:center;gap:8px;padding:6px 14px;font-size:12px;font-weight:700;display:inline-flex}.live-pulse{background:#10b981;border-radius:50%;width:8px;height:8px;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse-ring;box-shadow:0 0 #10b98199}@keyframes pulse-ring{0%{box-shadow:0 0 #10b981b3}70%{box-shadow:0 0 0 8px #10b98100}to{box-shadow:0 0 #10b98100}}.classroom-header-row{justify-content:space-between;align-items:flex-end;gap:var(--s6);margin-bottom:var(--s8);flex-wrap:wrap;display:flex}.classroom-title{color:#fff;letter-spacing:-.03em;margin:0 0 var(--s2);font-size:clamp(28px,3.5vw,42px);font-weight:800}.classroom-subtitle{color:#a7f3d0;font-size:var(--text-base);max-width:580px;margin:0;line-height:1.6}.classroom-stage{gap:var(--s6);padding:var(--s6);margin-bottom:var(--s12);background:#02140f;border:1px solid #34d39940;border-radius:24px;grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);display:grid;box-shadow:0 25px 60px -15px #0009,0 0 40px #10b9811a}.classroom-screen{padding:var(--s5);gap:var(--s5);background:#041f17;border:1px solid #34d39933;border-radius:18px;flex-direction:column;display:flex}.cs-topbar{padding-bottom:var(--s3);border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;font-size:13px;display:flex}.cs-room-info{align-items:center;gap:8px;display:flex}.live-dot{background:#ef4444;border-radius:50%;width:7px;height:7px;animation:1.8s infinite pulse-ring}.cs-badge{color:#f87171;text-transform:uppercase;font-size:11px;font-weight:700}.cs-divider{color:#fff3}.cs-subject{color:#e2e8f0;font-weight:600}.cs-timer{align-items:center;gap:10px;display:flex}.cs-timer-val{color:#34d399;background:#0006;border-radius:6px;padding:3px 8px;font-family:monospace;font-weight:700}.cs-quality{color:#6ee7b7;background:#10b98133;border-radius:4px;padding:2px 7px;font-size:10px;font-weight:800}.cs-videos-grid{gap:var(--s4);grid-template-columns:1fr 1fr;display:grid}.cs-video-card{aspect-ratio:4/3;background:#082d22;border:1px solid #34d39940;border-radius:14px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.cs-avatar-img{object-fit:cover;width:100%;height:100%}.cs-video-overlay{background:linear-gradient(#0000 0%,#021812e6 100%);justify-content:space-between;align-items:center;padding:10px 12px;display:flex;position:absolute;inset:auto 0 0}.cs-video-user{flex-direction:column;gap:2px;display:flex}.cs-user-name{color:#fff;font-size:13px;font-weight:700}.cs-badge-mini{color:#34d399;align-items:center;gap:4px;font-size:10px;font-weight:600;display:inline-flex}.cs-badge-mini.student{color:#93c5fd}.cs-speaking-indicator{align-items:flex-end;gap:2px;height:14px;display:flex}.cs-speaking-indicator span{background:#10b981;border-radius:2px;width:3px;animation:1s ease-in-out infinite speaking-bar}.cs-speaking-indicator span:first-child{height:6px;animation-delay:.1s}.cs-speaking-indicator span:nth-child(2){height:14px;animation-delay:.25s}.cs-speaking-indicator span:nth-child(3){height:8px;animation-delay:.4s}@keyframes speaking-bar{0%,to{height:4px}50%{height:14px}}.cs-tag-mic{color:#a7f3d0;background:#0006;border-radius:4px;padding:2px 6px;font-size:10px}.cs-bottom-bar{justify-content:space-between;align-items:center;gap:var(--s3);padding-top:var(--s2);border-top:1px solid #ffffff14;flex-wrap:wrap;display:flex}.cs-controls{gap:8px;display:flex}.cs-ctrl-btn{color:#d1fae5;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:10px;place-items:center;width:34px;height:34px;transition:all .2s;display:grid}.cs-ctrl-btn.active{color:#34d399;background:#10b98133;border-color:#10b981}.cs-ctrl-btn:hover{color:#fff;background:#10b981}.cs-tabs-pills{gap:6px;display:flex}.cs-tab-btn{border-radius:var(--r-pill);color:#94a3b8;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1f;align-items:center;gap:6px;padding:7px 12px;font-size:12px;font-weight:600;transition:all .2s;display:inline-flex}.cs-tab-btn.active{color:#fff;background:#10b981;border-color:#10b981;box-shadow:0 4px 12px #10b98159}.classroom-side-panel{padding:var(--s5);background:#041f17;border:1px solid #34d39933;border-radius:18px;flex-direction:column;display:flex}.cs-panel-content{flex-direction:column;height:100%;display:flex}.cs-panel-head{padding-bottom:var(--s3);margin-bottom:var(--s4);border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;display:flex}.cs-panel-head h4{color:#fff;font-size:var(--text-sm);margin:0;font-weight:700}.cs-note-chip{border-radius:var(--r-pill);color:#6ee7b7;background:#10b98126;border:1px solid #34d3994d;padding:3px 8px;font-size:11px;font-weight:600}.cs-note-chip.math{color:#93c5fd;background:#3b82f626;border-color:#60a5fa4d}.cs-note-chip.goal{color:#fcd34d;background:#f59e0b26;border-color:#fbbf244d}.cs-chat-stream{max-height:280px;margin-bottom:var(--s4);flex-direction:column;flex:1;gap:10px;padding-right:4px;display:flex;overflow-y:auto}.cs-chat-bubble{border-radius:12px;max-width:90%;padding:8px 12px;font-size:13px;line-height:1.45}.cs-chat-bubble.teacher{color:#ecfdf5;background:#10b9811f;border:1px solid #34d39940;align-self:flex-start}.cs-chat-bubble.student{color:#eff6ff;background:#3b82f626;border:1px solid #60a5fa40;align-self:flex-end}.cs-chat-author{opacity:.75;margin-bottom:2px;font-size:10px;font-weight:700;display:block}.cs-chat-bubble p{margin:0}.cs-chat-form{gap:8px;margin-top:auto;display:flex}.cs-chat-input{color:#fff;background:#0000004d;border:1px solid #34d39940;border-radius:10px;outline:none;flex:1;padding:9px 12px;font-size:13px}.cs-chat-input:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b98133}.cs-chat-send{color:#fff;cursor:pointer;background:#10b981;border:none;border-radius:10px;place-items:center;width:38px;transition:all .2s;display:grid}.cs-chat-send:hover{background:#059669;transform:scale(1.05)}.cs-board-card{padding:var(--s4);background:#021a14;border:1px solid #34d39933;border-radius:14px}.cs-board-step{text-transform:uppercase;color:#34d399;letter-spacing:.05em;font-size:11px;font-weight:800}.cs-board-card h5{color:#fff;margin:4px 0 14px;font-size:16px}.cs-formula-box{text-align:center;color:#6ee7b7;background:#10b98114;border:1px dashed #34d39966;border-radius:10px;justify-content:center;align-items:center;gap:6px;margin-bottom:16px;padding:14px;font-family:Georgia,serif;font-size:20px;display:flex}.fraction{vertical-align:middle;text-align:center;flex-direction:column;display:inline-flex}.fraction .num{border-bottom:1px solid #6ee7b7;padding-bottom:2px}.fraction .den{padding-top:2px;font-size:14px}.cs-board-notes{color:#d1fae5;flex-direction:column;gap:8px;font-size:12px;display:flex}.cs-board-check{align-items:center;gap:6px;display:flex}.cs-board-check.active{color:#fcd34d;font-weight:700}.dot-pulse{background:#f59e0b;border-radius:50%;width:7px;height:7px;animation:1.5s infinite pulse-ring;display:inline-block}.cs-progress-meter{margin-bottom:var(--s4)}.cs-progress-bar{background:#ffffff1a;border-radius:99px;height:8px;overflow:hidden}.cs-progress-fill{background:linear-gradient(90deg,#10b981,#34d399);border-radius:99px;height:100%;transition:width .5s}.cs-goal-list{flex-direction:column;gap:12px;display:flex}.cs-goal-item{align-items:flex-start;gap:10px;font-size:13px;display:flex}.cs-goal-item.done{color:#34d399}.cs-goal-item.current{color:#fcd34d;font-weight:600}.cs-goal-item.upcoming{color:#64748b}.dot-upcoming{background:#64748b;border-radius:50%;width:7px;height:7px;margin-top:6px}.cs-goal-item div{flex-direction:column;display:flex}.cs-goal-item strong{color:#fff;font-size:13px}.cs-goal-item small{color:#94a3b8;margin-top:2px;font-size:11px}.classroom-features-grid{gap:var(--s6);grid-template-columns:repeat(3,1fr);display:grid}.cf-card{padding:var(--s6);background:#041f17b3;border:1px solid #34d39933;border-radius:18px;transition:all .25s}.cf-card:hover{border-color:#10b981;transform:translateY(-4px);box-shadow:0 12px 30px #0006}.cf-card.highlight{background:linear-gradient(145deg,#10b98126 0%,#041f17e6 100%);border-color:#34d39966}.cf-icon{color:#34d399;width:44px;height:44px;margin-bottom:var(--s4);background:#10b98133;border-radius:12px;place-items:center;display:grid}.cf-card h3{color:#fff;margin:0 0 var(--s2);font-size:18px;font-weight:700}.cf-card p{color:#a7f3d0;font-size:var(--text-sm);margin:0 0 var(--s4);line-height:1.6}.cf-link{color:#34d399;font-size:13px;font-weight:700;text-decoration:none;transition:all .2s}.cf-link:hover{color:#6ee7b7;text-decoration:underline}@media (width<=960px){.classroom-stage,.classroom-features-grid,.cs-videos-grid{grid-template-columns:1fr}}.map-stats-strip{justify-content:center;align-items:center;gap:var(--s8);margin-top:var(--s6);padding:var(--s4) var(--s8);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);max-width:820px;margin-left:auto;margin-right:auto;display:flex;box-shadow:0 4px 20px #0000000a}.map-stat-box{flex-direction:column;align-items:center;gap:2px;display:flex}.map-stat-box strong{color:var(--primary);letter-spacing:-.03em;font-size:24px;font-weight:800}.map-stat-box span{font-size:var(--text-caption);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.map-stat-divider{background:var(--border);width:1px;height:36px}@media (width<=760px){.map-stats-strip{gap:var(--s4);padding:var(--s4);grid-template-columns:1fr 1fr;display:grid}.map-stat-divider{display:none}}.benefits-actions-row{align-items:center;gap:var(--s3);margin-top:var(--s6);flex-wrap:wrap;display:flex}.screening-showcase-card{padding:var(--s6);color:#fff;background:#021a14;border:1px solid #34d3994d;border-radius:24px;box-shadow:0 20px 50px #021c1573}.ssc-header{padding-bottom:var(--s4);margin-bottom:var(--s5);justify-content:space-between;align-items:center;gap:var(--s2);border-bottom:1px solid #ffffff1a;flex-wrap:wrap;display:flex}.ssc-status{color:#e2e8f0;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.ssc-pill{color:#6ee7b7;border-radius:var(--r-pill);text-transform:uppercase;background:#10b98133;border:1px solid #34d39966;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.ssc-body{gap:var(--s4);flex-direction:column;display:flex}.ssc-step{background:#ffffff08;border:1px solid #ffffff0f;border-radius:14px;align-items:flex-start;gap:14px;padding:12px 14px;transition:all .2s;display:flex}.ssc-step:hover{background:#ffffff0f;border-color:#34d3994d}.ssc-step.done .ssc-step-ic{color:#34d399;background:#10b98133}.ssc-step.active{background:#10b98114;border-color:#34d39966}.ssc-step.active .ssc-step-ic{color:#fbbf24;background:#f59e0b33}.ssc-step-ic{border-radius:10px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.ssc-step strong{color:#fff;margin-bottom:3px;font-size:14px;display:block}.ssc-step p{color:#a7f3d0;margin:0;font-size:12px;line-height:1.5}body,.page,#main{color:#f4eee3!important;background-color:#0e1816!important}h1,h2,h3,h4,h5,h6,.section-head h2,.section-head h3,.classroom-title,.discover-head h1{color:#f4eee3!important}.section-head p,.lead,.muted,.subtle,.caption,.classroom-subtitle{color:#aebbb1!important}.section,.section-sm,.section-alt{background-color:#0e1816!important;border-color:#ffffff14!important}.card,.subject-tile,.cat-card,.benefit,.quote-card,.teacher-card,.option-card,.step .ic{color:#f4eee3!important;background:#182622!important;border-color:#ffffff1c!important;box-shadow:0 12px 30px #00000040!important}.subject-tile:hover,.cat-card:hover,.quote-card:hover,.teacher-card:hover{transform:translateY(-2px);border-color:#10b98173!important;box-shadow:0 18px 40px #0006,0 0 25px #10b9811f!important}.subject-tile .n,.cat-card h3,.tc-name h3,.quote-card .who .n,.step h3,.benefit h4{color:#fff!important}.subject-tile .c,.quote-card .q,.quote-card .who .r,.tc-headline,.tc-meta,.tc-bio,.step p,.benefit p{color:#aebbb1!important}.subject-tile .ic,.cat-card .ic,.benefit .ic{color:#34d399!important;background:#10b98129!important;border:1px solid #34d39940!important}.cat-card .list span,.tc-tags .badge-neutral{color:#9eb5a5!important;background:#111c19!important;border:1px solid #ffffff14!important}.step .ic{color:#34d399!important;background:#182622!important;border-color:#34d3994d!important}.step:not(:last-child):after{border-top-color:#34d3994d!important}.faq{border-top-color:#ffffff1a!important}.faq-item{border-bottom-color:#ffffff1a!important}.faq-q{color:#f4eee3!important}.faq-q:hover{color:#34d399!important}.faq-q svg{color:#7d9685!important}.faq-a{color:#aebbb1!important}.cta-band{background:linear-gradient(135deg,#091a15 0%,#0d2820 45%,#081d16 100%)!important;border-color:#34d39940!important;box-shadow:0 24px 60px #00000080!important}.input,.select,.textarea,.phone-field{color:#f4eee3!important;background:#111c19!important;border-color:#ffffff24!important}.input:focus,.select:focus,.textarea:focus,.phone-field:focus-within{border-color:#10b981!important;box-shadow:0 0 0 3px #10b98140!important}.input::placeholder,.textarea::placeholder{color:#6a7f72!important}.badge-brand,.soft-tag{color:#6ee7b7!important;background:#10b98129!important;border:1px solid #34d3994d!important}.btn-secondary{color:#e2ede4!important;background:#182622!important;border-color:#ffffff2e!important}.btn-secondary:hover:not(:disabled){color:#fff!important;background:#10b9812e!important;border-color:#34d399!important}.btn-ghost{color:#aebbb1!important}.btn-ghost:hover:not(:disabled){color:#fff!important;background:#ffffff14!important}.footer{color:#8c9e92!important;background:#08120f!important;border-top:1px solid #ffffff14!important}.footer a{color:#8c9e92!important}.footer a:hover{color:#34d399!important}.footer h4{color:#f4eee3!important}.suggest,.dropdown-menu,.dropdown-card{color:#f4eee3!important;background:#15221e!important;border-color:#ffffff26!important;box-shadow:0 16px 40px #00000073!important}.suggest-item:hover,.dropdown-item:hover{color:#fff!important;background:#10b98124!important}.manus-paths-section{background:#0e1816;border-bottom:1px solid #ffffff14;padding:clamp(60px,8vw,100px) 0}.manus-paths-header{justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:44px;display:flex}.manus-section-kicker{text-transform:uppercase;letter-spacing:.16em;color:#ef9a62;margin-bottom:10px;font-size:11px;font-weight:800;display:block}.manus-paths-title{font-family:var(--font-display,"Manrope", "DM Sans", sans-serif);letter-spacing:-.055em;color:#fff;margin:0;font-size:clamp(2.4rem,4vw,3.8rem);font-weight:800;line-height:1.02}.manus-paths-desc{color:#9eb5a5;max-width:380px;margin:0;font-size:14px;line-height:1.65}.manus-paths-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.manus-path-card{min-height:250px;color:inherit;background:#182622;border:1px solid #ffffff1a;border-radius:24px;flex-direction:column;justify-content:space-between;padding:30px;text-decoration:none;transition:all .25s cubic-bezier(.23,1,.32,1);display:flex}.manus-path-card:hover{border-color:#ef8550;transform:translateY(-4px);box-shadow:0 20px 40px #00000059,0 0 20px #ef855026}.manus-path-card.highlight{background:#1c3229;border-color:#34d39940}.manus-path-top{justify-content:space-between;align-items:center;display:flex}.manus-path-num{letter-spacing:.14em;color:#ef9a62;font-size:11px;font-weight:800}.manus-path-ic{color:#ef9a62}.manus-path-body{margin:36px 0 22px}.manus-path-body h3{font-family:var(--font-display,"Manrope", "DM Sans", sans-serif);color:#fff;letter-spacing:-.03em;margin:0 0 8px;font-size:24px;font-weight:700}.manus-path-body p{color:#aebbb1;margin:0;font-size:13px;line-height:1.5}.manus-path-cta{color:#ef9a62;align-items:center;gap:6px;font-size:12px;font-weight:800;transition:gap .2s;display:inline-flex}.manus-path-card:hover .manus-path-cta{gap:9px;text-decoration:underline}@media (width<=900px){.manus-paths-header{flex-direction:column;align-items:flex-start;gap:16px}.manus-paths-grid{grid-template-columns:1fr}}.manus-tutors-section{background:#0e1816;border-bottom:1px solid #ffffff14;padding:clamp(60px,8vw,100px) 0}.manus-tutors-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.manus-tutors-title{font-family:var(--font-display,"Manrope", "DM Sans", sans-serif);letter-spacing:-.055em;color:#fff;margin:0 0 6px;font-size:clamp(2.4rem,4vw,3.8rem);font-weight:800;line-height:1.02}.manus-tutors-sub{color:#7d9685;margin:0;font-size:12px}.manus-browse-all-btn{color:#d1ded1;background:#ffffff0a;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:7px;padding:10px 18px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.manus-browse-all-btn:hover{color:#fff;background:#ffffff1f;border-color:#ef8550}.manus-filter-row{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:14px;display:flex}.manus-filter-tabs{gap:22px;display:flex}.manus-filter-tab{color:#8c9e92;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:0 0 6px;font-family:inherit;font-size:13px;transition:all .18s}.manus-filter-tab:hover{color:#fff}.manus-filter-tab.active{color:#ef9a62;border-color:#ef8550;font-weight:700}.manus-more-filters-btn{color:#aebbb1;background:0 0;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:7px;padding:8px 14px;font-size:12px;text-decoration:none;transition:all .18s;display:inline-flex}.manus-more-filters-btn:hover{color:#fff;background:#ffffff14}.manus-result-count-row{color:#8c9e92;justify-content:space-between;align-items:center;margin-bottom:22px;font-size:12px;display:flex}.manus-sort-label{color:#aebbb1;align-items:center;gap:5px;display:inline-flex}.manus-tutor-carousel{grid-template-columns:repeat(4,1fr);gap:20px;padding:8px 0 28px;display:grid;overflow:visible}.manus-tutor-card{background:#182622;border:1px solid #ffffff1c;border-radius:22px;flex-direction:column;width:100%;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 16px 40px #0000004d}.manus-tutor-card:hover{border-color:#ef85508c;transform:translateY(-4px);box-shadow:0 22px 50px #00000073}@media (width<=1100px){.manus-tutor-carousel{grid-template-columns:repeat(2,1fr);gap:16px}}@media (width<=640px){.manus-tutor-carousel{grid-template-columns:1fr}}.manus-tutor-photo{background-position:50% 22%;background-size:cover;border-bottom:1px solid #ffffff1a;height:175px;min-height:175px;max-height:175px;position:relative;overflow:hidden}.manus-tutor-photo-shade{background:linear-gradient(#040c090d 15%,#040c09e0 100%);position:absolute;inset:0}.manus-tutor-photo-top{z-index:1;justify-content:space-between;align-items:center;display:flex;position:absolute;top:14px;left:14px;right:14px}.manus-verified-pill{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#eff5ec;background:#0c1713b8;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:5px;padding:6px 10px;font-size:11px;font-weight:700;display:inline-flex}.manus-save-heart-btn{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;background:#0c1713b8;border:1px solid #ffffff38;border-radius:50%;place-items:center;width:34px;height:34px;transition:color .15s;display:grid}.manus-save-heart-btn:hover,.manus-save-heart-btn.saved{color:#ef8550;border-color:#ef8550}.manus-tutor-photo-name{z-index:1;color:#fffaf0;gap:2px;display:grid;position:absolute;bottom:12px;left:16px;right:16px}.manus-tutor-photo-name strong{font-family:var(--font-display,"Manrope", sans-serif);letter-spacing:-.035em;font-size:18px;line-height:1.15}.manus-tutor-photo-name span{color:#d1ded1;font-size:11px}.manus-tutor-body{flex-direction:column;flex:1;padding:18px;display:flex}.manus-tutor-card-meta-top{justify-content:flex-end;margin-bottom:6px;display:flex}.manus-compare-btn{color:#8c9e92;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:2px 6px;font-size:11px;display:inline-flex}.manus-compare-btn:hover,.manus-compare-btn.selected{color:#ef8550}.manus-tutor-title-row{justify-content:space-between;align-items:flex-start;gap:12px;margin-top:4px;display:flex}.manus-tutor-title-row h3{font-family:var(--font-display,"Manrope", sans-serif);color:#f4eee3;letter-spacing:-.025em;margin:0;font-size:19px;font-weight:800}.manus-tutor-title-row p{color:#aebbb1;align-items:center;gap:4px;margin:3px 0 0;font-size:12px;display:flex}.manus-verified-check{color:#34d399}.manus-match-score{color:#8c9e92;white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:inline-flex}.manus-status-dot{border-radius:50%;width:7px;height:7px;display:inline-block}.manus-status-dot.online{background:#34d399;box-shadow:0 0 0 3px #34d39933}.manus-status-dot.away{background:#f59e0b}.manus-tutor-loc{color:#7d9685;margin:10px 0 14px;font-size:11px}.manus-tag-row{flex-wrap:wrap;gap:7px;margin-bottom:18px;display:flex}.manus-soft-tag{color:#f0a06d;background:#ef85501f;border:1px solid #ef855038;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:600}.manus-tutor-bottom{color:#8c9e92;border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;margin-top:auto;padding-top:14px;font-size:12px;display:flex}.manus-tutor-bottom span{color:#fbbf24;align-items:center;gap:5px;display:flex}.manus-tutor-bottom em{color:#8c9e92;font-style:normal}.manus-tutor-bottom strong{color:#f4eee3;font-size:13px}.manus-view-profile-btn{color:#efa06d;background:0 0;border:1px solid #ffffff29;border-radius:999px;justify-content:center;align-items:center;gap:7px;width:100%;margin-top:16px;padding:11px 14px;font-size:12px;font-weight:700;text-decoration:none;transition:all .18s;display:inline-flex}.manus-view-profile-btn:hover{color:#fff;background:#ef855024;border-color:#ef8550}.manus-global-network{background-position:50%;background-size:cover;border-top:1px solid #ffffff14;border-bottom:1px solid #ffffff14;align-items:center;min-height:640px;display:flex;position:relative;overflow:hidden}.manus-network-overlay{background:linear-gradient(90deg,#040a09f5 0%,#040a09c7 45%,#040a094d 100%);position:absolute;inset:0}.manus-network-container{z-index:1;position:relative}.manus-network-content{width:min(650px,100%);padding:clamp(60px,8vw,100px) 0}.manus-network-title{font-family:var(--font-display,"Manrope", "DM Sans", sans-serif);letter-spacing:-.075em;color:#fff;margin:14px 0 20px;font-size:clamp(2.8rem,5.5vw,5.4rem);font-weight:800;line-height:.94}.manus-network-title em{color:#ef8550;font-style:normal}.manus-network-desc{color:#d1ded1;max-width:440px;margin:0 0 34px;font-size:16px;line-height:1.65}.manus-network-stats{gap:36px;margin-bottom:34px;display:flex}.manus-network-stats div{gap:5px;display:grid}.manus-network-stats strong{color:#fff1de;letter-spacing:-.05em;font-size:2rem;font-family:var(--font-display,"Manrope", sans-serif)}.manus-network-stats span{text-transform:uppercase;letter-spacing:.12em;color:#8c9e92;font-size:11px;font-weight:700}.manus-network-btn{color:#fffaf3;background:#b84c3a;border-radius:999px;align-items:center;gap:8px;padding:14px 26px;font-size:14px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 10px 25px #b84c3a59}.manus-network-btn:hover{background:#cd5441;transform:translateY(-2px);box-shadow:0 14px 30px #b84c3a73}@media (width<=800px){.manus-global-network{min-height:580px}.manus-network-overlay{background:linear-gradient(#040a09d9 0%,#040a09fa 80%)}.manus-network-stats{flex-wrap:wrap;gap:20px}}.manus-categories-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.manus-cat-card{color:inherit;cursor:pointer;background:#142420;border:1px solid #ffffff14;border-radius:20px;flex-direction:column;text-decoration:none;transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1),border-color .28s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #00000040}.manus-cat-card:hover{border-color:#34d39973;transform:translateY(-4px);box-shadow:0 18px 42px #0006,0 0 28px #10b98126}.manus-cat-media{background:#0f1c18;width:100%;height:155px;position:relative;overflow:hidden}.manus-cat-img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.16,1,.3,1);display:block}.manus-cat-card:hover .manus-cat-img{transform:scale(1.08)}.manus-cat-media-overlay{pointer-events:none;background:linear-gradient(#0f1c1826 0%,#14242080 60%,#142420fa 100%);position:absolute;inset:0}.manus-cat-ic{-webkit-backdrop-filter:blur(8px);color:#34d399;z-index:2;background:#10b98140;border:1.5px solid #34d39973;border-radius:12px;place-items:center;width:44px;height:44px;display:grid;position:absolute;bottom:12px;left:18px;box-shadow:0 4px 14px #00000059}.manus-cat-count-badge{color:#34d399;-webkit-backdrop-filter:blur(8px);z-index:2;background:#0a1410c7;border:1px solid #34d3994d;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700;position:absolute;top:12px;right:14px}.manus-cat-body{flex-direction:column;flex:1;padding:18px 22px 20px;display:flex}.manus-cat-title{font-family:var(--font-display,"Manrope", sans-serif);color:#fff;letter-spacing:-.025em;margin:0 0 12px;font-size:18px;font-weight:800;line-height:1.25}.manus-cat-tags{flex-wrap:wrap;gap:7px;margin-bottom:16px;display:flex}.manus-cat-tag{color:#9eb5a5;cursor:pointer;background:#0f1c18;border:1px solid #ffffff17;border-radius:999px;padding:4px 11px;font-family:inherit;font-size:11px;font-weight:500;transition:all .18s;display:inline-block}.manus-cat-tag:hover{color:#0c1815;background:#10b981;border-color:#10b981;transform:translateY(-1px)}.manus-cat-tag.plus{color:#34d399;cursor:default;background:#10b9811f;border-color:#34d39947;font-weight:700}.manus-cat-action{color:#34d399;border-top:1px solid #ffffff0f;justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;font-size:12.5px;font-weight:700;display:flex}.manus-cat-arrow{transition:transform .25s}.manus-cat-card:hover .manus-cat-arrow{transform:translate(4px)}.manus-cat-expand-btn{color:#34d399;cursor:pointer;background:0 0;border:1.5px solid #10b981;border-radius:999px;align-items:center;gap:7px;padding:10px 24px;font-family:inherit;font-size:13px;font-weight:700;transition:all .2s;display:inline-flex}.manus-cat-expand-btn:hover{background:#10b98126;transform:translateY(-1px);box-shadow:0 0 20px #10b98140}@media (width<=960px){.manus-categories-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.manus-categories-grid{grid-template-columns:1fr}}.teacher-card{gap:var(--s4);flex-direction:column;height:100%;display:flex}.tc-top{gap:var(--s4);align-items:flex-start;min-width:0;display:flex}.tc-name{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tc-name h3{font-size:var(--text-h4)}.tc-headline{font-size:var(--text-caption);color:var(--text-muted);margin-top:2px;line-height:1.5}.tc-meta{gap:var(--s2) var(--s4);font-size:var(--text-caption);color:var(--text-muted);flex-wrap:wrap;display:flex}.tc-meta span{align-items:center;gap:5px;display:inline-flex}.tc-meta svg{width:14px;height:14px;color:var(--text-subtle)}.tc-tags{flex-wrap:wrap;gap:6px;display:flex}.tc-bio{font-size:var(--text-sm);color:var(--text-muted);line-height:1.6}.tc-foot{justify-content:space-between;align-items:center;gap:var(--s3);padding-top:var(--s4);border-top:1px solid var(--border);margin-top:auto;display:flex}.tc-price .amount{font-family:var(--font-display);font-size:1.0625rem;font-weight:700}.tc-price .per{font-size:var(--text-caption);color:var(--text-muted)}.tc-price .from{font-size:var(--text-label);color:var(--text-subtle);display:block}.tc-actions{gap:var(--s2);flex-wrap:wrap;display:flex}.tc-actions>*{flex:auto;min-width:0}.tc-actions .btn{text-overflow:ellipsis;overflow:hidden}.save-btn.saved{color:var(--primary);border-color:var(--brand-300);background:var(--primary-soft)}.teacher-row{align-items:center;gap:var(--s3);padding:var(--s3);border-radius:var(--r-md);transition:background var(--fast) var(--ease);display:flex}.teacher-row:hover{background:var(--ink-50)}.teacher-row .n{font-weight:600;font-size:var(--text-sm)}.teacher-row .s{font-size:var(--text-caption);color:var(--text-muted)}.discover-head{color:#fff;padding-block:var(--s8) var(--s6);background:linear-gradient(145deg,#021c15 0%,#053326 40%,#094736 100%);border-bottom:1px solid #34d39933;position:relative;overflow:hidden}.discover-head h1{color:#fff}.discover-head:after{content:"";pointer-events:none;background:radial-gradient(45% 90% at 85% 0%, var(--glow-primary), transparent 70%);position:absolute;inset:0}.discover-head>*{z-index:1;position:relative}.discover-layout{gap:var(--s8);grid-template-columns:264px minmax(0,1fr);align-items:start;display:grid}.filters-panel{top:calc(var(--navbar-h) + var(--s5));position:sticky}.results-head{justify-content:space-between;align-items:center;gap:var(--s4);margin-bottom:var(--s5);flex-wrap:wrap;display:flex}.results-count{font-size:var(--text-sm);color:var(--text-muted)}.results-count strong{color:var(--text);font-weight:700}.filter-group{padding:var(--s4) 0;border-bottom:1px solid var(--border)}.filter-group:last-child{border-bottom:0}.filter-group>h4{font-size:var(--text-caption);margin-bottom:var(--s3);color:var(--text);font-weight:600}.filter-list{gap:var(--s3);flex-direction:column;max-height:220px;display:flex;overflow-y:auto}.filter-actions{padding-bottom:var(--s3);justify-content:space-between;align-items:center;display:flex}.active-filters{gap:var(--s2);margin-bottom:var(--s4);flex-wrap:wrap;display:flex}.range-row{align-items:center;gap:var(--s2);display:flex}.range-row input[type=number]{height:38px}input[type=range]{width:100%;accent-color:var(--primary)}@media (width<=1000px){.discover-layout{grid-template-columns:minmax(0,1fr)}.filters-panel{display:none}}.profile-hero{background:var(--surface);border-bottom:1px solid var(--border);padding-block:var(--s8)}.profile-top{gap:var(--s6);align-items:flex-start;display:flex}.profile-top h1{font-size:var(--text-h2)}.profile-meta{gap:var(--s2) var(--s5);margin-top:var(--s3);font-size:var(--text-sm);color:var(--text-muted);flex-wrap:wrap;display:flex}.profile-meta span{align-items:center;gap:6px;display:inline-flex}.profile-meta svg{width:15px;height:15px;color:var(--text-subtle)}.profile-layout{gap:var(--s8);grid-template-columns:minmax(0,1fr) 340px;align-items:start;display:grid}.profile-aside{top:calc(var(--navbar-h) + var(--s5));gap:var(--s5);flex-direction:column;display:flex;position:sticky}.profile-section{padding-block:var(--s8);border-bottom:1px solid var(--border)}.profile-section:last-child{border-bottom:0}.profile-section>h2{font-size:var(--text-h3);margin-bottom:var(--s5)}.profile-body{font-size:var(--text-body);color:var(--text-muted);line-height:1.75}.profile-body p+p{margin-top:var(--s4)}.timeline{gap:var(--s5);flex-direction:column;display:flex}.timeline-item{gap:var(--s4);grid-template-columns:12px 1fr;display:grid;position:relative}.timeline-item:before{content:"";background:var(--border);width:2px;position:absolute;top:16px;bottom:-20px;left:5px}.timeline-item:last-child:before{display:none}.timeline-dot{background:var(--white);border:2.5px solid var(--primary);border-radius:50%;width:12px;height:12px;margin-top:5px}.timeline-item h4{font-size:var(--text-h4)}.timeline-item .org{font-size:var(--text-sm);color:var(--primary);font-weight:500}.timeline-item .when{font-size:var(--text-caption);color:var(--text-subtle)}.timeline-item p{font-size:var(--text-sm);color:var(--text-muted);margin-top:6px;line-height:1.6}.avail{font-size:var(--text-label);grid-template-columns:72px repeat(7,1fr);gap:6px;display:grid}.avail .head{color:var(--text-muted);text-align:center;padding-bottom:4px;font-weight:600}.avail .row-label{color:var(--text-muted);align-items:center;font-weight:500;display:flex}.avail .cell{background:var(--ink-100);border-radius:6px;height:30px}.avail .cell.on{background:var(--brand-200)}@media (width<=560px){.avail{grid-template-columns:60px repeat(7,1fr);gap:4px;font-size:10px}}.price-card{gap:var(--s2);padding:var(--s5);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);flex-direction:column;display:flex}.price-card.highlight{border-color:var(--primary);background:var(--primary-soft)}.price-card .amt{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.5rem;font-weight:700}.price-card .lbl{font-size:var(--text-caption);color:var(--text-muted);font-weight:600}.price-card ul{margin-top:var(--s2);flex-direction:column;gap:6px;display:flex}.price-card li{font-size:var(--text-caption);color:var(--text-muted);gap:8px;display:flex}.price-card li svg{width:14px;height:14px;color:var(--primary);flex-shrink:0;margin-top:3px}.review-summary{gap:var(--s8);grid-template-columns:200px minmax(0,1fr);align-items:center;display:grid}.review-score{text-align:center}.review-score .big{font-family:var(--font-display);letter-spacing:-.04em;font-size:3rem;font-weight:800;line-height:1}.rating-bars{flex-direction:column;gap:7px;display:flex}.rating-bar-row{gap:var(--s3);font-size:var(--text-caption);color:var(--text-muted);grid-template-columns:42px 1fr 34px;align-items:center;display:grid}.criteria-grid{gap:var(--s4);margin-top:var(--s6);grid-template-columns:repeat(3,1fr);display:grid}.criteria{padding:var(--s4);border:1px solid var(--border);border-radius:var(--r-md);text-align:center}.criteria .v{font-family:var(--font-display);font-size:1.25rem;font-weight:700}.criteria .l{font-size:var(--text-caption);color:var(--text-muted)}.review-item{padding-block:var(--s5);border-bottom:1px solid var(--border)}.review-item:last-child{border-bottom:0}.review-head{align-items:center;gap:var(--s3);margin-bottom:var(--s3);display:flex}.review-head .n{font-weight:600;font-size:var(--text-sm)}.review-head .d{font-size:var(--text-caption);color:var(--text-subtle)}.review-item p{font-size:var(--text-sm);color:var(--text-muted);line-height:1.7}.mobile-cta{z-index:var(--z-sticky);padding:var(--s3) var(--s4) calc(var(--s3) + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);gap:var(--s3);box-shadow:var(--shadow-lg);display:none;position:fixed;bottom:0;left:0;right:0}@media (width<=1000px){.profile-layout{grid-template-columns:minmax(0,1fr)}.profile-aside{position:static}.profile-aside .hide-tablet{display:none}.mobile-cta{display:flex}.profile-page{padding-bottom:var(--s16)}}@media (width<=640px){.profile-top{gap:var(--s4);flex-direction:column}.review-summary{gap:var(--s5);grid-template-columns:1fr}.criteria-grid{gap:var(--s3);grid-template-columns:1fr}}.results-grid{gap:var(--s4);grid-template-columns:repeat(auto-fill,minmax(min(330px,100%),1fr));display:grid}.filters-toggle{display:none}@media (width<=1000px){.filters-toggle{display:inline-flex}}@media (width<=420px){.results-grid{grid-template-columns:minmax(0,1fr)}}.auth{grid-template-columns:minmax(0,1fr) 480px;min-height:100vh;display:grid}.auth-main{padding:var(--s6) var(--s8);flex-direction:column;display:flex}.auth-body{width:100%;max-width:420px;padding-block:var(--s10);flex-direction:column;flex:1;justify-content:center;margin-inline:auto;display:flex}.auth-body h1{font-size:var(--text-h2);margin-bottom:var(--s2)}.auth-body>.lead{margin-bottom:var(--s8);font-size:var(--text-sm)}.auth-foot{text-align:center;font-size:var(--text-sm);color:var(--text-muted)}.auth-foot a{color:var(--primary);font-weight:600}.auth-aside{color:var(--white);padding:var(--s12);justify-content:center;gap:var(--s8);background:linear-gradient(145deg,#021c15 0%,#053326 40%,#094736 100%);flex-direction:column;display:flex;position:relative;overflow:hidden}.auth-aside:before{content:"";background:radial-gradient(circle,#10b98159,#0000 65%);border-radius:50%;width:380px;height:380px;position:absolute;bottom:-120px;left:-100px}.auth-aside>*{position:relative}.auth-aside h2{color:var(--white);font-size:var(--text-h2)}.auth-aside p{color:#c7ebdc;margin-top:var(--s4);line-height:1.7}.auth-quote{padding:var(--s5);border-radius:var(--r-lg);background:#ffffff14;border:1px solid #ffffff24}.auth-quote p{color:var(--white);font-size:var(--text-sm);margin:0 0 var(--s4)}.auth-quote .who{align-items:center;gap:var(--s3);display:flex}.auth-quote .who .n{font-weight:600;font-size:var(--text-sm)}.auth-quote .who .r{font-size:var(--text-caption);color:#a7f3d0}.auth-points{gap:var(--s3);flex-direction:column;display:flex}.auth-points div{align-items:center;gap:var(--s3);font-size:var(--text-sm);color:#d1fae5;display:flex}.auth-points svg{width:18px;height:18px;color:var(--light-green-400);flex-shrink:0}.demo-accounts{margin-top:var(--s6);padding:var(--s4);border:1px dashed var(--border-strong);border-radius:var(--r-md);background:var(--ink-50)}.demo-accounts h4{font-size:var(--text-caption);margin-bottom:var(--s1)}.demo-accounts p{font-size:var(--text-label);color:var(--text-muted);margin-bottom:var(--s3)}.demo-accounts .row{gap:var(--s2);flex-wrap:wrap}.role-toggle{margin-bottom:var(--s5)}.role-toggle .segmented{width:100%;display:flex}.role-toggle .segmented button{min-width:0;padding-block:var(--s3);font-size:var(--text-sm);white-space:nowrap;flex:1 1 0}.role-toggle .segmented button.active{background:var(--primary);color:var(--white);box-shadow:var(--shadow-xs)}.role-toggle .segmented button.active:hover{background:var(--primary)}@media (width<=360px){.role-toggle .segmented button{padding-inline:var(--s2);font-size:var(--text-caption)}}.divider-or{align-items:center;gap:var(--s3);color:var(--text-subtle);font-size:var(--text-caption);margin-block:var(--s5);display:flex}.divider-or:before,.divider-or:after{content:"";background:var(--border);flex:1;height:1px}@media (width<=900px){.auth{grid-template-columns:minmax(0,1fr)}.auth-aside{display:none}.auth-main{padding:var(--s5) var(--s4)}}.wizard{max-width:720px;margin-inline:auto}.wizard-head{margin-bottom:var(--s8)}.wizard-progress{align-items:center;gap:var(--s3);margin-bottom:var(--s5);display:flex}.wizard-progress .progress{flex:1}.wizard-progress .count{font-size:var(--text-caption);color:var(--text-muted);white-space:nowrap;font-weight:600}.wizard-step h2{font-size:var(--text-h2);margin-bottom:var(--s2)}.wizard-step>.lead{font-size:var(--text-sm);margin-bottom:var(--s6)}.wizard-foot{justify-content:space-between;align-items:center;gap:var(--s3);margin-top:var(--s8);padding-top:var(--s6);border-top:1px solid var(--border);display:flex}.wizard-foot .spacer{flex:1}.step-group-label{font-size:var(--text-caption);color:var(--text);text-transform:uppercase;letter-spacing:.06em;font-weight:600;font-family:var(--font-body);margin-bottom:var(--s3)}.option-grid{gap:var(--s3);display:grid}.option-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=640px){.option-grid-2{grid-template-columns:minmax(0,1fr)}.wizard-foot{flex-direction:column-reverse}.wizard-foot .btn{width:100%}.wizard-foot .spacer{display:none}}.summary-row{gap:var(--s4);padding:var(--s3) 0;border-bottom:1px solid var(--border);font-size:var(--text-sm);grid-template-columns:180px 1fr;display:grid}.summary-row:last-child{border-bottom:0}.summary-row dt{color:var(--text-muted)}.summary-row dd{font-weight:500}@media (width<=560px){.summary-row{grid-template-columns:1fr;gap:2px}}.dash-grid{gap:var(--s6);grid-template-columns:minmax(0,1fr) 340px;align-items:start;min-width:0;display:grid}.dash-col{gap:var(--s5);flex-direction:column;min-width:0;display:flex}@media (width<=1200px){.dash-grid{grid-template-columns:minmax(0,1fr)}}.stat-row{gap:var(--s4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (width<=900px){.stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.stat-row{grid-template-columns:1fr}}.welcome{justify-content:space-between;align-items:center;gap:var(--s6);padding:var(--s6);border-radius:var(--r-card);color:var(--white);background:linear-gradient(135deg,#02231a 0%,#064030 50%,#0a5240 100%);border:1px solid #34d39933;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 30px #021c1533}.welcome:after{content:"";background:radial-gradient(circle,#10b98133,#0000 70%);border-radius:50%;width:240px;height:240px;position:absolute;top:-60px;right:-60px}.welcome>*{position:relative}.welcome h1,.welcome h2{color:var(--white);font-size:var(--text-h3)}.welcome p{color:#c7ebdc;font-size:var(--text-sm);max-width:52ch;margin-top:4px}@media (width<=700px){.welcome{align-items:flex-start;gap:var(--s4);flex-direction:column}}.completion{gap:var(--s3);flex-direction:column;display:flex}.completion-top{justify-content:space-between;align-items:baseline;display:flex}.completion-pct{font-family:var(--font-display);font-size:1.5rem;font-weight:700}.completion-list{gap:var(--s2);margin-top:var(--s2);flex-direction:column;display:flex}.completion-item{align-items:center;gap:var(--s3);font-size:var(--text-caption);color:var(--text-muted);display:flex}.completion-item svg{flex-shrink:0;width:15px;height:15px}.completion-item.done{color:var(--success-500)}.completion-item.done span{opacity:.7;text-decoration:line-through}.list-row{align-items:center;gap:var(--s3);padding:var(--s3) 0;border-bottom:1px solid var(--border);display:flex}.list-row:last-child{border-bottom:0}.list-row .t{font-weight:600;font-size:var(--text-sm)}.list-row .s{font-size:var(--text-caption);color:var(--text-muted)}.list-link:hover .t{color:var(--primary)}.activity{gap:var(--s3);padding-block:var(--s3);display:flex}.activity .dot{background:var(--primary-soft);width:30px;height:30px;color:var(--primary);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.activity .dot svg{width:15px;height:15px}.activity .t{font-size:var(--text-sm)}.activity .d{font-size:var(--text-caption);color:var(--text-subtle)}.req-card{gap:var(--s3);flex-direction:column;display:flex}.req-head{justify-content:space-between;align-items:flex-start;gap:var(--s3);display:flex}.req-head h3{font-size:var(--text-h4)}.req-meta{gap:var(--s2) var(--s4);font-size:var(--text-caption);color:var(--text-muted);flex-wrap:wrap;display:flex}.req-meta span{align-items:center;gap:5px;display:inline-flex}.req-meta svg{width:14px;height:14px;color:var(--text-subtle)}.req-foot{justify-content:space-between;align-items:center;gap:var(--s3);padding-top:var(--s4);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.req-desc{font-size:var(--text-sm);color:var(--text-muted);line-height:1.6}.table-wrap{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);position:relative;overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:var(--text-sm);min-width:720px}table.data th,table.data td{text-align:left;padding:var(--s3) var(--s4);border-bottom:1px solid var(--border)}table.data th{font-size:var(--text-caption);color:var(--text-muted);background:var(--ink-50);white-space:nowrap;font-weight:600}table.data th .th-sort{font:inherit;color:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}table.data th .th-sort:hover{color:var(--text)}table.data th .th-sort svg{width:13px;height:13px}table.data th[aria-sort=ascending],table.data th[aria-sort=descending]{color:var(--primary)}table.data tbody tr:last-child td{border-bottom:0}table.data tbody tr:hover{background:var(--ink-50)}table.data td .cell-main{font-weight:600}table.data td .cell-sub{font-size:var(--text-caption);color:var(--text-muted)}.table-actions{gap:var(--s2);justify-content:flex-end;display:flex}.toolbar{align-items:center;gap:var(--s3);margin-bottom:var(--s5);flex-wrap:wrap;display:flex}.toolbar .grow{min-width:220px}.credit-hero{gap:var(--s6);padding:var(--s8);border-radius:var(--r-card);color:var(--white);background:linear-gradient(135deg,#021f17 0%,#05372b 50%,#0a4f3e 100%);border:1px solid #34d39940;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;display:grid;box-shadow:0 16px 36px #021c1540}.credit-hero .bal{font-family:var(--font-display);letter-spacing:-.04em;color:#34d399;font-size:3rem;font-weight:800;line-height:1}.credit-hero .lbl{color:#a7f3d0;font-size:var(--text-sm)}.credit-hero .note{color:#c7ebdc;font-size:var(--text-sm);margin-top:var(--s3)}@media (width<=760px){.credit-hero{padding:var(--s6);grid-template-columns:minmax(0,1fr)}}.pack-card{gap:var(--s3);flex-direction:column;height:100%;display:flex;position:relative}.pack-card.popular{border-color:var(--primary);box-shadow:var(--shadow-md)}.pack-badge{top:-11px;left:var(--s5);position:absolute}.pack-price{font-family:var(--font-display);letter-spacing:-.03em;font-size:2rem;font-weight:800;line-height:1}.pack-credits{align-items:baseline;gap:6px;display:flex}.pack-card ul{gap:var(--s2);margin-block:var(--s2) var(--s4);flex-direction:column;display:flex}.pack-card li{gap:var(--s2);font-size:var(--text-caption);color:var(--text-muted);display:flex}.pack-card li svg{width:14px;height:14px;color:var(--primary);flex-shrink:0;margin-top:3px}.tx-row{align-items:center;gap:var(--s3);padding:var(--s3) 0;border-bottom:1px solid var(--border);display:flex}.tx-row:last-child{border-bottom:0}.tx-icon{border-radius:var(--r-sm);flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.tx-icon svg{width:16px;height:16px}.tx-icon.spend{background:var(--danger-50);color:var(--danger-500)}.tx-icon.earn{background:var(--success-50);color:var(--success-500)}.tx-icon.purchase{background:var(--info-50);color:var(--info-500)}.tx-amount{font-weight:700;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.tx-amount.minus{color:var(--danger-500)}.tx-amount.plus{color:var(--success-500)}.editor-grid{gap:var(--s6);grid-template-columns:minmax(0,1fr) 320px;align-items:start;display:grid}@media (width<=1100px){.editor-grid{grid-template-columns:minmax(0,1fr)}}.field-row{gap:var(--s4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}@media (width<=640px){.field-row{grid-template-columns:minmax(0,1fr)}}.photo-upload{align-items:center;gap:var(--s4);display:flex}.photo-upload .hint{font-size:var(--text-caption);color:var(--text-muted)}.photo-drop{align-items:center;gap:var(--s5);padding:var(--s5);border:1px dashed var(--border-strong);border-radius:var(--r-lg);background:var(--surface-sunk);transition:border-color .15s,background .15s;display:flex}.photo-drop.is-dragging{border-color:var(--primary);background:var(--primary-soft)}.photo-drop.is-invalid{border-color:var(--danger-500)}.photo-drop-preview{flex-shrink:0;position:relative}.photo-drop-veil{color:var(--white);background:#00000073;border-radius:50%;place-items:center;display:grid;position:absolute;inset:0}.photo-drop-body{gap:var(--s2);flex-direction:column;min-width:0;display:flex}.photo-drop-actions{gap:var(--s2);flex-wrap:wrap;display:flex}.photo-drop .hint{font-size:var(--text-caption);color:var(--text-muted);margin:0}.photo-drop-status{font-size:var(--text-caption);color:var(--text-muted);align-items:center;gap:6px;min-height:1.2em;margin:0;display:flex}.photo-drop-status svg{width:14px;height:14px;color:var(--success-500);flex-shrink:0}@media (width<=560px){.photo-drop{text-align:center;align-items:stretch;gap:var(--s4);flex-direction:column}.photo-drop-preview{align-self:center}.photo-drop-actions{justify-content:center}.photo-drop-actions .btn{flex:auto;min-height:44px}.photo-drop-status,.photo-drop .field-error{justify-content:center}}.avail-picker{grid-template-columns:72px repeat(7,1fr);gap:6px;display:grid}.avail-picker .head{font-size:var(--text-label);color:var(--text-muted);text-align:center;font-weight:600}.avail-picker .row-label{font-size:var(--text-label);color:var(--text-muted);align-items:center;display:flex}.avail-picker button{border:1px solid var(--border);background:var(--surface);border-radius:6px;height:32px;padding:0}.avail-picker button.on{background:var(--brand-200);border-color:var(--brand-300)}@media (width<=560px){.avail-picker{grid-template-columns:56px repeat(7,1fr);gap:4px}}.chart{align-items:flex-end;gap:var(--s4);height:190px;display:flex}.chart-col{align-items:center;gap:var(--s2);flex-direction:column;flex:1;height:100%;display:flex}.chart-stack{flex-direction:column;flex:1;justify-content:flex-end;gap:3px;width:100%;max-width:54px;display:flex}.chart .bar{width:100%;transition:height var(--slow) var(--ease);border-radius:5px 5px 0 0;display:block}.chart .bar.students{background:var(--brand-500)}.chart .bar.teachers{background:var(--brand-200);border-radius:5px}.camera-backdrop{z-index:var(--z-modal);background:var(--scrim);padding:var(--s5);animation:fade var(--base) var(--ease);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.camera-dialog{background:var(--surface);border-radius:var(--r-card);width:100%;max-width:520px;max-height:92vh;box-shadow:var(--shadow-xl);animation:pop var(--base) var(--ease);overflow-y:auto}.camera-head{justify-content:space-between;align-items:center;gap:var(--s4);padding:var(--s5) var(--s5) var(--s3);display:flex}.camera-head h2{font-size:var(--text-h3)}.camera-stage{margin:0 var(--s5);border-radius:var(--r-lg);background:var(--ink-900);aspect-ratio:4/3;place-items:center;display:grid;position:relative;overflow:hidden}.camera-video{object-fit:cover;width:100%;height:100%;display:block}.camera-video.is-hidden{display:none}.camera-placeholder{color:var(--text-subtle);font-size:var(--text-sm);text-align:center;padding:var(--s5);margin:0}.camera-placeholder.is-error{color:var(--danger-50)}.camera-status{margin:var(--s3) var(--s5) 0;font-size:var(--text-caption);color:var(--text-muted);min-height:1.2em}.camera-dialog .field-error{margin:var(--s2) var(--s5) 0}.camera-actions{gap:var(--s3);padding:var(--s4) var(--s5) var(--s5);flex-wrap:wrap;justify-content:flex-end;display:flex}@media (width<=560px){.camera-backdrop{align-items:stretch;padding:0}.camera-dialog{border-radius:0;flex-direction:column;max-width:none;max-height:100vh;display:flex}.camera-stage{aspect-ratio:auto;flex:auto;min-height:0}.camera-actions{justify-content:stretch}.camera-actions .btn{flex:auto;min-height:44px}}.msg-layout{--msg-chrome:205px;height:calc(100vh - var(--msg-chrome));height:calc(100dvh - var(--msg-chrome));background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);grid-template-columns:320px minmax(0,1fr);min-height:420px;display:grid;overflow:hidden}.msg-list{border-right:1px solid var(--border);flex-direction:column;min-height:0;display:flex}.msg-list-head{padding:var(--s4);border-bottom:1px solid var(--border)}.msg-list-scroll{flex:1;overflow-y:auto}.msg-item{gap:var(--s3);text-align:left;width:100%;padding:var(--s3) var(--s4);border:0;border-bottom:1px solid var(--border);background:0 0;align-items:flex-start;display:flex}.msg-item:hover{background:var(--ink-50)}.msg-item.active{background:var(--primary-soft)}.msg-item .top{justify-content:space-between;align-items:baseline;gap:var(--s2);display:flex}.msg-item .n{font-weight:600;font-size:var(--text-sm)}.msg-item .t{color:var(--text-subtle);white-space:nowrap;font-size:11px}.msg-item .p{font-size:var(--text-caption);color:var(--text-muted);margin-top:2px}.msg-item .topic{color:var(--primary);margin-top:3px;font-size:11px;font-weight:600}.msg-unread{background:var(--primary);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}.msg-thread{flex-direction:column;min-width:0;min-height:0;display:flex}.msg-head{align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-bottom:1px solid var(--border);display:flex}.msg-head .n{font-weight:600;font-size:var(--text-sm)}.msg-head .s{font-size:var(--text-caption);color:var(--text-muted)}.msg-scroll{padding:var(--s5);gap:var(--s3);background:var(--ink-50);flex-direction:column;flex:1;display:flex;overflow-y:auto}.msg-day{color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);align-self:center;padding:3px 10px;font-size:11px;font-weight:600}.bubble{max-width:min(78%,520px);padding:var(--s3) var(--s4);border-radius:var(--r-lg);font-size:var(--text-sm);background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:6px;align-self:flex-start;line-height:1.6}.bubble.mine{background:var(--primary);color:var(--white);border-color:var(--primary);border-bottom-left-radius:var(--r-lg);border-bottom-right-radius:6px;align-self:flex-end}.bubble .meta{opacity:.72;align-items:center;gap:4px;margin-top:5px;font-size:11px;display:flex}.bubble.mine .meta{opacity:.9;justify-content:flex-end}.bubble .meta svg{width:13px;height:13px}.bubble-file{align-items:center;gap:var(--s3);padding:var(--s2);border-radius:var(--r-sm);margin-top:var(--s2);background:#0000000d;display:flex}.bubble.mine .bubble-file{background:#ffffff26}.bubble-file svg{flex-shrink:0;width:18px;height:18px}.composer{border-top:1px solid var(--border);padding:var(--s3) var(--s4);align-items:flex-end;gap:var(--s2);background:var(--surface);display:flex}.composer textarea{resize:none;min-height:44px;max-height:140px;padding:11px var(--s3);border-radius:var(--r-md);border:1px solid var(--border-strong);font-size:var(--text-sm);flex:1}.composer textarea:focus{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.msg-info{padding:var(--s5)}.msg-back{display:none}@media (width<=900px){.msg-layout{grid-template-columns:minmax(0,1fr)}.msg-layout.showing-thread .msg-list,.msg-layout:not(.showing-thread) .msg-thread{display:none}.msg-back{display:grid}}@media (width<=1000px){.msg-layout{--msg-chrome:235px}}
