@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--bg:#e7e0d2;--bg-2:#dfd7c7;--bg-3:#dcd2c0;--stone:#e7e0d2;--face:#f3efe6;--polish:#fcfaf5;--surface:#f3efe6;--surface-2:#2e241a0e;--border:#2e241a29;--border-strong:#2e241a57;--incise:#2e241a29;--incise-deep:#2e241a57;--text:#2e241a;--text-dim:#5a4c3c;--text-mute:#877866;--oxide:#a6331b;--oxide-l:#c1502f;--indigo:#a6331b;--indigo-l:#a6331b;--lapis:#3a5a78;--leaf:#4a6b3a;--aubergine:#71548a;--ochre:#b07a16;--verdigris:#2e6b6b;--madder:#96455f;--olive:#6b7a2e;--cyan:#2e6b6b;--violet:#71548a;--gold:#b07a16;--emerald:#4a6b3a;--grad:#a6331b;--grad-text:none;--radius:4px;--font-display:"Trebuchet MS", Georgia, serif;--font-body:Arial, "Noto Sans", system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,.display{font-family:var(--font-display);letter-spacing:.01em;text-transform:uppercase;color:var(--text);text-shadow:0 1px 0 var(--polish);line-height:1.14}h1{letter-spacing:.005em}::selection{background:var(--oxide);color:var(--polish)}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-3)}::-webkit-scrollbar-thumb{border:2px solid var(--bg-3);background:#2e241a47;border-radius:0}::-webkit-scrollbar-thumb:hover{background:#2e241a70}table,.tt-grid,.adm-table,.p-table,.cls-table,.roster,.dash-stats,.fee-list{font-variant-numeric:tabular-nums}.incised{box-shadow:inset 0 1px 0 var(--incise-deep), inset 0 2px 0 var(--polish)}@keyframes chakra{to{transform:rotate(360deg)}}.chakra{border:2px solid var(--incise);border-top-color:var(--oxide);border-radius:50%;width:1em;height:1em;animation:1.1s linear infinite chakra;display:inline-block}.wrap{max-width:1200px;margin:0 auto;padding:0 24px}.section{padding:96px 0;position:relative}@media (max-width:640px){.section{padding:64px 0}}.btn{font-family:var(--font-body);white-space:nowrap;border:none;border-radius:3px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:14px 26px;font-size:15px;font-weight:600;transition:all .18s cubic-bezier(.2,.8,.2,1);display:inline-flex}.btn-primary{background:var(--oxide);color:var(--polish);box-shadow:inset 0 1px #ffffff38,0 2px 4px -1px #2e241a66}.btn-primary:hover{background:var(--oxide-l);box-shadow:inset 0 1px #ffffff3d,0 4px 10px -2px #2e241a70}.btn-primary:active{transform:translateY(1px);box-shadow:inset 0 1px 2px #2e241a66}.btn-ghost{background:var(--face);color:var(--text);border:1px solid var(--border-strong)}.btn-ghost:hover{background:var(--polish);border-color:var(--oxide);color:var(--oxide)}.btn-ghost:active{transform:translateY(1px)}.btn-sm{min-height:38px;padding:9px 16px;font-size:14px}.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--oxide);outline-offset:2px}.glass{background:var(--face);border:1px solid var(--incise);border-radius:var(--radius);box-shadow:inset 0 1px 0 var(--polish), 0 1px 2px #2e241a1a, 0 6px 16px -8px #2e241a2e;position:relative}.glass-hover{transition:all .2s cubic-bezier(.2,.8,.2,1)}.glass-hover:hover{border-color:var(--border-strong);box-shadow:inset 0 1px 0 var(--polish), 0 2px 4px #2e241a1f, 0 14px 30px -12px #2e241a47}.site-header{z-index:100;transition:all .3s;position:fixed;top:0;left:0;right:0}.site-header.scrolled{background:var(--stone);box-shadow:inset 0 -1px 0 var(--incise-deep), 0 1px 0 var(--polish), 0 6px 14px -10px #2e241a4d}.nav{justify-content:space-between;align-items:center;max-width:1200px;height:70px;margin:0 auto;padding:0 24px;display:flex}.brand{font-family:var(--font-display);font-size:19px;font-weight:700;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.11em;align-items:center;gap:11px;font-size:17px;display:flex}.brand .logo{background:var(--oxide);width:34px;height:34px;color:var(--polish);border-radius:2px;flex-shrink:0;place-items:center;font-size:16px;display:grid;box-shadow:inset 0 1px #ffffff38,0 1px 2px #2e241a59}.brand .hl{color:var(--oxide)}.nav-links{align-items:center;gap:6px;display:flex}.nav-links a{color:var(--text-dim);border-radius:2px;padding:8px 14px;font-size:14.5px;font-weight:500;transition:all .2s;position:relative}.nav-links a:hover,.nav-links a.active{color:var(--text);background:var(--surface-2)}.nav-cta{align-items:center;gap:10px;display:flex}.menu-btn{background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:3px;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;display:none}@media (max-width:940px){.nav-links{display:none}.menu-btn{place-items:center;display:grid}.nav-cta .btn.hide-mobile{display:none}}.mobile-nav{z-index:200;background:var(--stone);flex-direction:column;padding:24px;display:flex;position:fixed;inset:0}.mobile-nav a{color:var(--text);font-size:19px;font-weight:600;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;box-shadow:inset 0 -1px 0 var(--incise), inset 0 -2px 0 var(--polish);align-items:center;min-height:56px;padding:16px 4px;display:flex}.mobile-nav .top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.hero{padding:150px 0 90px;position:relative}.badge{box-shadow:inset 0 -1px 0 var(--incise-deep), inset 0 -2px 0 var(--polish);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.2em;color:var(--oxide);background:0 0;border:none;border-radius:0;align-items:center;gap:10px;padding:7px 0 9px;font-size:12px;font-weight:600;display:inline-flex}.pulse{background:var(--oxide);border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2.4s infinite pulse}@keyframes pulse{50%{opacity:.5}}.hero h1{text-wrap:balance;margin:26px 0 0;font-size:clamp(34px,5.6vw,68px);font-weight:600}.g{color:var(--oxide);text-shadow:0 1px 0 var(--polish)}.hero .sub{color:var(--text-dim);max-width:620px;margin:24px 0 0;font-size:clamp(17px,2vw,21px)}.hero-cta{flex-wrap:wrap;gap:14px;margin-top:36px;display:flex}.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:56px;display:grid}@media (max-width:920px){.hero-grid{grid-template-columns:1fr;gap:40px}.hero{padding:120px 0 60px}}.trust{box-shadow:inset 0 1px 0 var(--incise-deep), inset 0 2px 0 var(--polish);flex-wrap:wrap;gap:30px;margin-top:44px;padding-top:26px;display:flex}.trust .t{flex-direction:column;display:flex}.trust .n{font-family:var(--font-display);color:var(--ink);letter-spacing:.01em;font-size:27px;font-weight:600}.trust .l{color:var(--text-mute);font-size:12.5px;font-weight:500}.trust-note{width:100%;color:var(--text-mute);margin-top:4px;font-size:12px;font-style:italic}.eyebrow{font-family:var(--font-display);letter-spacing:.2em;text-transform:uppercase;color:var(--oxide);align-items:center;gap:8px;font-size:12px;font-weight:600;display:inline-flex}.h-title{text-wrap:balance;margin:14px 0 0;font-size:clamp(26px,3.4vw,42px);font-weight:600}.h-sub{color:var(--text-dim);max-width:640px;margin:16px auto 0;font-size:18px}.center{text-align:center}.tutor-card{border:1px solid var(--incise);background:var(--face);box-shadow:inset 0 1px 0 var(--polish), 0 2px 4px #2e241a1f, 0 18px 40px -18px #2e241a57;border-radius:5px;overflow:hidden}.tutor-head{background:var(--bg-2);box-shadow:inset 0 -1px 0 var(--incise-deep), inset 0 -2px 0 var(--polish);align-items:center;gap:10px;padding:14px 18px;display:flex}.tutor-head .av{background:var(--oxide);width:34px;height:34px;color:var(--polish);border-radius:2px;place-items:center;display:grid}.tutor-body{flex-direction:column;gap:12px;min-height:230px;max-height:300px;padding:18px;display:flex;overflow-y:auto}.bubble{border-radius:4px;max-width:88%;padding:11px 14px;font-size:14.5px;line-height:1.55;animation:.3s rise}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.bubble.ai{background:var(--bg-3);border:1px solid var(--incise);color:var(--text);align-self:flex-start;box-shadow:inset 0 1px 2px #2e241a1a}.bubble.me{background:var(--oxide);color:var(--polish);align-self:flex-end;font-weight:500;box-shadow:inset 0 1px #fff3}.tutor-input{box-shadow:inset 0 1px 0 var(--incise), inset 0 2px 0 var(--polish);gap:8px;padding:14px 16px;display:flex}.tutor-input input{background:var(--bg-3);border:1px solid var(--incise);color:var(--text);border-radius:3px;outline:none;flex:1;padding:11px 14px;font-size:14.5px;box-shadow:inset 0 1px 2px #2e241a1f}.tutor-input input:focus{border-color:var(--indigo)}.tutor-input button{background:var(--oxide);color:var(--polish);border:none;border-radius:3px;width:44px;min-height:44px;font-size:15px}.chip{background:var(--stone);border:1px solid var(--incise);color:var(--text-dim);border-radius:3px;padding:5px 11px;font-size:12px;transition:all .2s}.chip:hover{border-color:var(--indigo-l);color:var(--text)}.typing span{background:var(--oxide);border-radius:50%;width:6px;height:6px;margin:0 1px;animation:1.2s infinite blink;display:inline-block}.typing span:nth-child(2){animation-delay:.2s}.typing span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,60%,to{opacity:.25}30%{opacity:1}}.pillars{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}@media (max-width:900px){.pillars{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.pillars{grid-template-columns:1fr}}.pillar{padding:26px}.pillar .ic{background:var(--surface-2);border:1px solid var(--border);border-radius:3px;place-items:center;width:52px;height:52px;margin-bottom:16px;font-size:24px;display:grid}.pillar h3{margin:0 0 8px;font-size:20px}.pillar p{color:var(--text-dim);margin:0;font-size:14.5px}.modules{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (max-width:900px){.modules{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.modules{grid-template-columns:1fr}}.module{padding:26px;overflow:hidden}.module .ic{width:50px;height:50px;color:var(--polish);border-radius:3px;place-items:center;margin-bottom:16px;font-size:21px;display:grid}.module h3{margin:0 0 7px;font-size:18.5px}.module p{color:var(--text-dim);margin:0 0 14px;font-size:14px}.module .feats{flex-direction:column;gap:7px;display:flex}.module .feats span{color:var(--text-dim);align-items:flex-start;gap:8px;font-size:13px;display:flex}.module .feats svg{color:var(--emerald);flex-shrink:0;width:13px;height:13px;margin-top:4px}.g-indigo{background:var(--lapis)}.g-cyan{background:var(--verdigris)}.g-violet{background:var(--aubergine)}.g-emerald{background:var(--leaf)}.g-amber{background:var(--ochre)}.g-rose{background:var(--madder)}.deep{grid-template-columns:1fr 1fr;align-items:center;gap:56px;margin-bottom:44px;display:grid}.deep.flip .deep-media{order:2}@media (max-width:860px){.deep{grid-template-columns:1fr;gap:28px}.deep.flip .deep-media{order:0}}.deep-media{border:1px solid var(--incise);aspect-ratio:16/11;border-radius:5px;position:relative;overflow:hidden;box-shadow:0 2px 4px #2e241a24,0 14px 30px -16px #2e241a4d}.deep-media img{object-fit:cover;width:100%;height:100%}.deep-media:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px #2e241a2e}.deep h3{margin:14px 0 12px;font-size:clamp(24px,3vw,34px)}.deep .k{flex-direction:column;gap:11px;margin-top:18px;display:flex}.deep .k .row{align-items:flex-start;gap:12px;display:flex}.deep .k .row .d{background:var(--surface-2);border:1px solid var(--border);width:28px;height:28px;color:var(--indigo-l);border-radius:2px;flex-shrink:0;place-items:center;margin-top:2px;font-size:12px;display:grid}.deep .k .row b{color:var(--text);font-weight:600}.deep .k .row p{color:var(--text-dim);margin:0;font-size:14px}.tag{background:var(--surface-2);border:1px solid var(--border);color:var(--indigo-l);border-radius:999px;align-items:center;gap:7px;padding:5px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.tabs{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:28px;display:flex}.tab{background:var(--surface);border:1px solid var(--border);color:var(--text-dim);border-radius:3px;align-items:center;gap:8px;padding:11px 20px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.tab.active{background:var(--grad);color:var(--polish);border-color:#0000}.field{background:var(--bg-3);border:1px solid var(--incise);width:100%;color:var(--text);border-radius:3px;outline:none;padding:13px 15px;font-family:inherit;font-size:15px;box-shadow:inset 0 1px 2px #2e241a1f}.field:focus{border-color:var(--indigo)}.field::placeholder{color:var(--text-mute)}.out{background:var(--bg-3);border:1px solid var(--incise);white-space:pre-wrap;color:var(--text-dim);border-radius:3px;margin-top:18px;padding:20px;font-size:14.5px;line-height:1.7;box-shadow:inset 0 1px 2px #2e241a1f}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (max-width:560px){.form-grid{grid-template-columns:1fr}}.flash{perspective:1000px;cursor:pointer;height:150px}.flash-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s;position:relative}.flash.flipped .flash-inner{transform:rotateY(180deg)}.flash-face{backface-visibility:hidden;text-align:center;border:1px solid var(--border);border-radius:3px;place-items:center;padding:16px;font-size:14.5px;display:grid;position:absolute;inset:0}.flash-front{background:var(--surface-2);color:var(--text);font-weight:600}.flash-back{background:var(--grad);color:var(--polish);font-weight:500;transform:rotateY(180deg)}.steps{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}@media (max-width:900px){.steps{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.steps{grid-template-columns:1fr}}.step{padding:26px}.step .num{font-family:var(--font-display);font-size:44px;font-weight:700;line-height:1}.step h4{margin:12px 0 8px;font-size:18px}.step p{color:var(--text-dim);margin:0;font-size:14px}.impact{text-align:center;background:var(--bg-2);border:1px solid var(--incise);box-shadow:inset 0 1px 0 var(--polish), inset 0 0 0 1px #2e241a0a;border-radius:5px;grid-template-columns:repeat(4,1fr);gap:24px;padding:40px;display:grid}@media (max-width:640px){.impact{grid-template-columns:repeat(2,1fr);padding:32px 20px}}.impact .n{font-family:var(--font-display);font-size:clamp(34px,5vw,52px);font-weight:700}.impact .l{color:var(--text-dim);margin-top:4px;font-size:14px;font-weight:500}.quotes{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (max-width:900px){.quotes{grid-template-columns:1fr}}.quote{padding:28px}.quote .stars{color:var(--gold);letter-spacing:2px;margin-bottom:14px;font-size:14px}.quote p{color:var(--text);margin:0;font-size:15.5px;line-height:1.7}.quote .who{border-top:1px solid var(--border);align-items:center;gap:12px;margin-top:20px;padding-top:18px;display:flex}.quote .who .a{background:var(--surface-2);border:1px solid var(--border);border-radius:3px;place-items:center;width:44px;height:44px;font-size:20px;display:grid}.quote .who b{font-size:14.5px;display:block}.quote .who span{color:var(--text-mute);font-size:12.5px}.plans{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:22px;display:grid}@media (max-width:860px){.plans{grid-template-columns:1fr;max-width:440px;margin:0 auto}}.plan{flex-direction:column;padding:32px;display:flex;position:relative}.plan.pop{border-color:var(--oxide);box-shadow:inset 0 1px 0 var(--polish), 0 0 0 1px var(--oxide), 0 16px 36px -18px #2e241a57}.plan .pop-tag{background:var(--grad);color:var(--polish);border-radius:999px;padding:5px 14px;font-size:12px;font-weight:700;position:absolute;top:-13px;left:50%;transform:translate(-50%)}.plan h3{margin:0;font-size:21px}.plan .price{font-family:var(--font-display);margin:14px 0 4px;font-size:42px;font-weight:700}.plan .price span{color:var(--text-mute);font-size:16px;font-weight:500}.plan ul{flex-direction:column;flex:1;gap:12px;margin:22px 0;padding:0;list-style:none;display:flex}.plan ul li{color:var(--text-dim);gap:10px;font-size:14.5px;display:flex}.plan ul li svg{color:var(--emerald);flex-shrink:0;width:15px;height:15px;margin-top:3px}.pb-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}@media (max-width:900px){.pb-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.pb-grid{grid-template-columns:1fr}}.pb{text-align:center;padding:20px}.pb .e{margin-bottom:10px;font-size:28px}.pb b{margin-bottom:4px;font-size:14.5px;display:block}.pb span{color:var(--text-mute);font-size:12.5px}.shop{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (max-width:900px){.shop{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.shop{grid-template-columns:1fr}}.prod{flex-direction:column;display:flex;overflow:hidden}.prod img{object-fit:cover;width:100%;height:170px}.prod .pi{flex-direction:column;flex:1;gap:6px;padding:18px;display:flex}.prod .pt{font-size:16px;font-weight:600}.prod .pp{font-family:var(--font-display);color:var(--cyan);font-size:22px;font-weight:700}.prod .pd{color:var(--text-dim);flex:1;font-size:13px}.live{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}@media (max-width:700px){.live{grid-template-columns:1fr}}.lc{flex-direction:column;gap:12px;padding:20px;display:flex}.lc-top{align-items:center;gap:12px;display:flex}.lc-top .emoji{font-size:26px}.badge-live{color:var(--emerald);background:#4a6b3a26;border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.badge-soon{color:var(--gold);background:#b07a1626;border-radius:999px;margin-left:auto;padding:4px 10px;font-size:11px;font-weight:600}.lc-meta{flex-wrap:wrap;gap:8px;display:flex}.lc-meta span{background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim);border-radius:999px;padding:4px 10px;font-size:12px}.cta-final{text-align:center;background:var(--bg-2);border:1px solid var(--incise-deep);box-shadow:inset 0 1px 0 var(--polish), inset 0 0 0 6px var(--stone), inset 0 0 0 7px var(--incise);border-radius:5px;padding:54px 40px;position:relative;overflow:hidden}.cta-final:before{content:none}.site-footer{background:var(--bg-2);box-shadow:inset 0 1px 0 var(--incise-deep), inset 0 2px 0 var(--polish);margin-top:40px;padding:64px 0 32px}.foot-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;display:grid}@media (max-width:760px){.foot-grid{grid-template-columns:1fr 1fr}}@media (max-width:460px){.foot-grid{grid-template-columns:1fr}}.foot-grid h4{color:var(--text);margin-bottom:16px;font-size:14px}.foot-grid a{color:var(--text-dim);padding:5px 0;font-size:14px;transition:all .2s;display:block}.foot-grid a:hover{color:var(--indigo-l)}.socials{gap:10px;margin-top:16px;display:flex}.socials a{background:var(--surface-2);border:1px solid var(--border);width:38px;height:38px;color:var(--text-dim);border-radius:3px;place-items:center;transition:all .25s;display:grid}.socials a:hover{color:var(--text);border-color:var(--indigo-l);transform:translateY(-3px)}.foot-bottom{border-top:1px solid var(--border);text-align:center;color:var(--text-mute);margin-top:44px;padding-top:24px;font-size:13px}.cb-widget{z-index:150;position:fixed;bottom:24px;right:24px}.cb-toggle{background:var(--oxide);width:56px;height:56px;color:var(--polish);border:none;border-radius:3px;place-items:center;font-size:22px;transition:all .18s;display:grid;box-shadow:inset 0 1px #fff3,0 4px 12px -3px #2e241a66}.cb-toggle:hover{transform:scale(1.06)}.cb-window{background:var(--face);border:1px solid var(--incise);width:360px;max-width:calc(100vw - 48px);height:460px;box-shadow:inset 0 1px 0 var(--polish), 0 20px 50px -18px #2e241a6b;border-radius:5px;flex-direction:column;display:flex;position:absolute;bottom:70px;right:0;overflow:hidden}.cb-window .h{background:var(--bg-2);box-shadow:inset 0 -1px 0 var(--incise-deep), inset 0 -2px 0 var(--polish);align-items:center;gap:10px;padding:14px 16px;display:flex}.cb-window .h .av{background:var(--oxide);width:32px;height:32px;color:var(--polish);border-radius:2px;place-items:center;display:grid}.cb-window .msgs{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex;overflow-y:auto}.cb-window .in{box-shadow:inset 0 1px 0 var(--incise), inset 0 2px 0 var(--polish);gap:8px;padding:12px;display:flex}.cb-window .in input{background:var(--bg-3);border:1px solid var(--incise);color:var(--text);border-radius:3px;outline:none;flex:1;padding:10px 13px;font-size:14px;box-shadow:inset 0 1px 2px #2e241a1f}.cb-window .in input:focus{border-color:var(--indigo)}.cb-window .in button{background:var(--grad);color:var(--polish);border:none;border-radius:3px;width:42px}.toast{border:1px solid var(--border-strong);color:var(--text);z-index:300;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#101426f7;border-radius:3px;padding:13px 22px;font-size:14px;font-weight:500;transition:all .3s;position:fixed;bottom:28px;left:50%;transform:translate(-50%)translateY(20px);box-shadow:0 20px 50px -15px #2e241ab3}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.divider{background:linear-gradient(90deg, transparent, var(--border-strong), transparent);max-width:1200px;height:1px;margin:0 auto}.page-head{text-align:center;padding:140px 0 40px}.home-redesign{--home-ink:#2e241a;--home-muted:#655746;--home-soft:#f3efe6;--home-ground:#e7e0d2;--home-deep:#26352f;--home-rule:#2e241a38}.home-redesign h1,.home-redesign h2,.home-redesign h3{text-transform:none}.record-hero{background:var(--home-deep);color:#f4f0e8;min-height:720px;padding:82px 0 94px;position:relative;overflow:hidden}.record-hero .wrap{z-index:1;position:relative}.hero-utility{color:#f4f0e8a1;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid #f4f0e833;justify-content:space-between;gap:20px;padding-bottom:19px;font-size:11px;display:flex}.hero-utility>span{align-items:center;gap:8px;display:inline-flex}.live-dot{background:#d8a044;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #d8a04426}.record-hero-grid{grid-template-columns:minmax(0,.85fr) minmax(520px,1.15fr);align-items:center;gap:clamp(46px,8vw,120px);padding-top:72px;display:grid}.hero-copy-new{max-width:570px}.chapter-mark,.section-index{font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;font-size:11px}.chapter-mark{color:#d8a044;margin-bottom:29px}.chapter-mark span{color:#f4f0e859;padding:0 7px}.hero-copy-new h1{letter-spacing:-.045em;color:#f4f0e8;text-shadow:none;margin:0;font-size:clamp(50px,6vw,88px);font-weight:600;line-height:.98}.hero-copy-new h1 em{color:#d8a044;font-style:normal}.hero-deck{color:#f4f0e8b8;max-width:510px;margin:29px 0 0;font-size:18px;line-height:1.58}.hero-actions-new{flex-wrap:wrap;align-items:center;gap:25px;margin-top:36px;display:flex}.record-hero .btn-primary{color:#26352f;box-shadow:none;background:#d8a044}.record-hero .btn-primary:hover{box-shadow:none;background:#e7ba65}.text-action{color:inherit;border-bottom:1px solid;align-items:center;gap:8px;padding-bottom:5px;font-size:14px;font-weight:600;transition:gap .2s,opacity .2s;display:inline-flex}.text-action:hover{opacity:.78;gap:13px}.hero-proof{color:#f4f0e88f;border-top:1px solid #f4f0e833;align-items:flex-start;gap:9px;max-width:430px;margin-top:52px;padding-top:18px;font-size:12px;line-height:1.5;display:flex}.hero-proof svg{color:#d8a044;flex:none}.evidence-stage{min-height:520px;padding:46px 0 36px;position:relative}.stage-note{z-index:3;color:#f4f0e894;font-family:var(--font-display);letter-spacing:.13em;align-items:center;gap:9px;font-size:10px;display:flex;position:absolute}.stage-note-top{top:0;left:12px}.stage-note-bottom{bottom:0;right:10px}.stage-dot{background:#d8a044;border-radius:50%;width:6px;height:6px}.stage-line{background:#d8a044;width:28px;height:1px}.book-shadow{filter:blur(25px);background:#00000059;height:390px;position:absolute;top:94px;left:7%;right:2%;transform:rotate(-3deg)}.book-page{z-index:1;min-height:420px;color:var(--home-ink);background:#f4f0e8;padding:34px 37px;position:relative;box-shadow:inset 0 0 0 1px #2e241a26,0 20px 40px #0003}.book-page-left{transform-origin:100% 100%;width:49%;margin-left:1%;transform:rotate(-3deg)}.book-page-right{transform-origin:0 100%;background:#eae4d8;width:51%;margin-top:-408px;margin-left:47%;transform:rotate(3deg)}.page-running{color:#907e68;font-family:var(--font-display);letter-spacing:.13em;font-size:9px}.page-rule{background:#2e241a33;height:1px;margin:15px 0 27px}.page-kicker{color:#a6331b;font-family:var(--font-display);letter-spacing:.11em;text-transform:uppercase;font-size:13px}.book-page h3{font-family:var(--font-display);margin:9px 0 22px;font-size:clamp(24px,3vw,40px);font-weight:500;line-height:1.03}.page-lead{max-width:260px;font-size:15px;font-weight:600;line-height:1.4}.page-copy{color:#655746;max-width:210px;font-size:12px;line-height:1.55}.page-number{color:#907e68;font-family:var(--font-display);letter-spacing:.12em;font-size:10px;position:absolute;bottom:21px;right:27px}.leaf-diagram{background:#e3e8d8;border:1px solid #2e241a2e;height:120px;margin:24px 0 22px;position:relative;overflow:hidden}.leaf-diagram:before{content:"";background:#4a6b3a;width:2px;height:100px;position:absolute;top:11px;left:50%;transform:rotate(32deg)}.leaf-diagram span{background:#6b7a2e;border-radius:100% 0;width:50px;height:24px;position:absolute}.leaf-diagram span:first-child{top:34px;left:32%;transform:rotate(20deg)}.leaf-diagram span:nth-child(2){top:48px;left:49%;transform:rotate(194deg)}.leaf-diagram span:nth-child(3){top:70px;left:23%;transform:rotate(12deg)}.leaf-diagram i{border:2px solid #b07a16;border-radius:50%;width:23px;height:23px;position:absolute;top:13px;left:58%}.question-line{align-items:flex-start;gap:12px;margin-bottom:31px;font-size:16px;font-weight:600;line-height:1.35;display:flex}.student-mark,.tutor-mark{width:25px;height:25px;font-family:var(--font-display);flex:none;place-items:center;font-size:11px;display:grid}.student-mark{color:#a6331b;border:1px solid #a6331b}.tutor-mark{color:#d8a044;background:#26352f}.answer-line{border-top:1px solid #2e241a2e;border-bottom:1px solid #2e241a2e;align-items:flex-start;gap:12px;padding:18px 0;display:flex}.answer-line strong{font-size:13px}.answer-line p{color:#655746;margin:5px 0 0;font-size:12px;line-height:1.55}.citation{color:#a6331b;font-family:var(--font-display);letter-spacing:.04em;align-items:center;gap:7px;margin-top:16px;font-size:10px;display:inline-flex}.citation svg:last-child{margin-left:3px}.next-question{background:#d8a0442b;margin-top:31px;padding:13px 14px;font-size:12px;line-height:1.45}.mechanism-section,.school-section{background:var(--home-ground);padding:130px 0}.section-intro{position:relative}.split-intro{grid-template-columns:1.1fr .9fr;align-items:end;gap:80px;margin-bottom:71px;display:grid}.section-index{color:#a6331b}.section-intro h2,.tutor-pitch h2,.start-plate h2{color:var(--home-ink);letter-spacing:-.04em;text-shadow:none;margin:21px 0 0;font-size:clamp(39px,5vw,70px);font-weight:600;line-height:.98}.section-intro h2 span,.tutor-pitch h2 span,.start-plate h2 span{color:#a6331b}.split-intro>p{color:var(--home-muted);max-width:430px;margin:0 0 4px;font-size:17px;line-height:1.65}.workflow-list{border-top:1px solid var(--home-rule)}.workflow-row{border-bottom:1px solid var(--home-rule);grid-template-columns:54px 44px 1.05fr 1.65fr 28px;align-items:center;gap:20px;min-height:142px;transition:background .2s;display:grid}.workflow-row:hover{background:#ffffff38}.workflow-arrow{transition:transform .2s}.workflow-row:hover .workflow-arrow{transform:translate(3px,3px)}.workflow-id{color:#a6331b;font-family:var(--font-display);font-size:13px}.workflow-icon{color:#a6331b}.workflow-row h3{color:var(--home-ink);letter-spacing:-.02em;text-shadow:none;margin:0;font-size:22px;font-weight:600}.workflow-row p{color:var(--home-muted);max-width:510px;margin:0;font-size:14px;line-height:1.6}.workflow-arrow{color:#a6331b;justify-self:end}.tutor-section{background:#dcd2c0;padding:130px 0}.tutor-section-grid{grid-template-columns:.72fr 1.28fr;align-items:center;gap:clamp(50px,8vw,120px);display:grid}.tutor-pitch>p{color:var(--home-muted);max-width:400px;margin:30px 0 24px;font-size:17px;line-height:1.65}.check-list{color:var(--home-ink);gap:13px;margin:26px 0 34px;font-size:14px;display:grid}.check-list span{align-items:center;gap:10px;display:flex}.check-list svg,.tutor-pitch .text-action{color:#a6331b}.tutor-demo-wrap{min-width:0}.tutor-section .tutor-card{background:#f3efe6;border:1px solid #2e241a38;border-radius:0;max-width:680px;margin-left:auto;box-shadow:15px 15px #2e241a14}.tutor-section .tutor-head{color:#f4f0e8;background:#26352f;border-bottom:0;padding:18px 20px}.tutor-section .tutor-head .av{color:#26352f;background:#d8a044;border-radius:0}.tutor-section .tutor-head div div:last-child{color:#d8a044!important}.tutor-section .tutor-body{background:#f3efe6;min-height:245px;padding:22px 20px}.tutor-section .bubble{box-shadow:none;border-radius:0}.tutor-section .bubble.ai{background:#e4ddcf;box-shadow:inset 1px 0 #2e241a4d}.tutor-section .bubble.me{color:#f4f0e8;background:#26352f}.tutor-section .chip{background:0 0;border-color:#2e241a3d;border-radius:0}.tutor-section .tutor-input{border-top:1px solid #2e241a33;padding:14px 16px}.tutor-section .tutor-input input{background:#e4ddcf;border-radius:0}.tutor-section .tutor-input button{background:#a6331b;border-radius:0}.school-section{background:#f3efe6}.school-intro{margin-bottom:53px}.role-table{border-top:1px solid var(--home-rule)}.role-row{border-bottom:1px solid var(--home-rule);min-height:86px;color:var(--home-ink);grid-template-columns:31px 1fr 1.3fr 1.6fr 20px;align-items:center;gap:20px;transition:background .2s;display:grid}.role-row:hover{background:#e7e0d2}.role-row>svg:last-child{transition:transform .2s}.role-row:hover>svg:last-child{transform:translate(4px)}.role-row>svg:first-child{color:#a6331b}.role-row strong{font-size:18px}.role-action{font-size:14px;font-weight:600}.role-detail{color:var(--home-muted);font-size:14px}.role-row>svg:last-child{color:#a6331b;justify-self:end}.school-note{color:#655746;align-items:center;gap:10px;margin-top:35px;font-size:13px;display:flex}.school-note svg{color:#a6331b;flex:none}.start-section{background:#26352f;padding:130px 0}.start-plate{color:#26352f;background:#d8a044;grid-template-columns:1.05fr .95fr;align-items:end;gap:70px;padding:57px 62px;display:grid}.start-plate .section-index,.start-plate h2{color:#26352f}.start-plate h2 span{color:#a6331b}.start-copy p{color:#26352fc7;max-width:410px;margin:0 0 28px;font-size:17px;line-height:1.6}.start-copy .btn-primary{color:#f4f0e8;box-shadow:none;background:#26352f}.start-copy .btn-primary:hover{background:#354c43}.honesty-strip{color:#f4f0e8a6;background:#1f2b27;padding:19px 0}.honesty-strip .wrap{align-items:center;gap:12px;font-size:12px;display:flex}.honesty-strip svg{color:#d8a044;flex:none}.honesty-strip p{flex:1;margin:0}.honesty-strip a{color:#d8a044;white-space:nowrap;align-items:center;gap:7px;display:inline-flex}body:has(.home-redesign) .site-header{color:#f4f0e8}body:has(.home-redesign) .site-header.scrolled{color:var(--text)}body:has(.home-redesign) .site-header.scrolled .brand{color:var(--text)}body:has(.home-redesign) .site-header.scrolled .nav-links a{color:var(--text)}body:has(.home-redesign) .site-header.scrolled .brand .hl{color:var(--oxide)}body:has(.home-redesign) .site-header.scrolled .menu-btn{color:var(--text)}body:has(.home-redesign) .site-header:not(.scrolled) .brand{color:#f4f0e8c2}body:has(.home-redesign) .site-header:not(.scrolled) .nav-links a{color:#f4f0e8c2}body:has(.home-redesign) .site-header:not(.scrolled) .nav-links a:hover{color:#f4f0e8;background:#f4f0e81a}body:has(.home-redesign) .site-header:not(.scrolled) .menu-btn{color:#f4f0e8;background:#f4f0e81a;border-color:#f4f0e840}body:has(.home-redesign) .site-header:not(.scrolled) .nav-cta .btn-ghost{color:#f4f0e8;background:0 0;border-color:#f4f0e859}body:has(.home-redesign) .site-header:not(.scrolled) .nav-cta .btn-ghost:hover{color:#26352f;background:#f4f0e8}body:has(.home-redesign) .site-header:not(.scrolled) .brand .logo{color:#26352f;background:#d8a044}body:has(.home-redesign) .site-header:not(.scrolled) .brand .hl{color:#d8a044}@media (max-width:920px){.record-hero-grid,.tutor-section-grid{grid-template-columns:1fr}.hero-evidence-wrap{width:100%;max-width:720px;margin:0 auto}.tutor-pitch{max-width:590px}.tutor-section .tutor-card{margin-left:0}.split-intro,.start-plate{grid-template-columns:1fr;gap:25px}.start-plate{padding:45px 40px}}@media (max-width:680px){.record-hero{min-height:0;padding-top:77px}.hero-utility{flex-direction:column;align-items:flex-start;gap:8px}.record-hero-grid{gap:36px;padding-top:53px}.hero-copy-new h1{font-size:clamp(45px,14vw,72px)}.hero-deck,.split-intro>p,.tutor-pitch>p,.start-copy p{font-size:16px}.evidence-stage{transform-origin:top;width:116%;min-height:390px;margin-bottom:-50px;margin-left:-8%;transform:scale(.86)}.book-page{min-height:325px;padding:22px 23px}.book-page-right{margin-top:-313px}.book-page-left{transform:rotate(-3deg)scale(.98)}.book-page-right{transform:rotate(3deg)scale(.98)}.page-lead{font-size:12px}.leaf-diagram{height:84px;margin:14px 0}.leaf-diagram:before{height:70px;top:7px}.leaf-diagram span{width:33px;height:15px}.page-copy{font-size:10px}.question-line{margin-bottom:20px;font-size:12px}.answer-line p,.next-question{font-size:10px}.citation{font-size:8px}.workflow-row{grid-template-columns:34px 30px 1fr 20px;gap:10px;min-height:0;padding:18px 0}.workflow-row h3{font-size:18px}.workflow-row p{grid-column:3/5;font-size:13px}.workflow-arrow{grid-area:1/4}.role-row{grid-template-columns:25px 1fr 20px;gap:12px;min-height:0;padding:17px 0}.role-action,.role-detail{grid-column:2}.role-row>svg:last-child{grid-area:1/3}.school-note{align-items:flex-start}.start-plate{padding:36px 25px}.honesty-strip .wrap{flex-wrap:wrap;align-items:flex-start}.honesty-strip p{flex:0 0 calc(100% - 30px)}.honesty-strip a{margin-left:28px}}:is(body:has(.dash-root) .site-header,body:has(.dash-root) .site-footer,body:has(.dash-root) .cb-widget){display:none}.dash-root{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.dash-side{background:#26352f;flex-direction:column;height:100vh;padding:22px 16px;display:flex;position:sticky;top:0;box-shadow:inset -1px 0 #d8a04424}.dash-brand{margin-bottom:6px;padding:0 8px}.brand.dash-brand{color:#f4f0e8}.brand.dash-brand .hl{color:#d8a044}.brand.dash-brand .logo{color:#26352f;background:#d8a044;box-shadow:inset 0 1px #ffffff4d}.dash-role{letter-spacing:.14em;text-transform:uppercase;color:#f4f0e880;padding:14px 8px 10px;font-size:11px;font-weight:600}.dash-nav{flex-direction:column;flex:1;gap:2px;display:flex;overflow-y:auto}.dash-link{color:#f4f0e8cc;border-radius:2px;align-items:center;gap:11px;padding:10px 12px;font-size:14px;font-weight:500;transition:all .15s;display:flex}.dash-link:hover{color:#f4f0e8;background:#f4f0e814}.dash-link.active{color:#d8a044;background:#d8a04421;border:none;font-weight:600;box-shadow:inset 3px 0 #d8a044}.dash-link.soon{cursor:default;color:#f4f0e873;opacity:1}.dash-link.soon em{letter-spacing:.08em;text-transform:uppercase;color:#f4f0e88c;border:1px solid #f4f0e838;border-radius:999px;margin-left:auto;padding:2px 8px;font-size:10px;font-style:normal;font-weight:600}.dash-user{border-top:1px solid #f4f0e826;align-items:center;gap:10px;margin-top:10px;padding:12px 10px 4px;display:flex}.dash-user .av{color:#26352f;background:#d8a044;border-radius:2px;flex-shrink:0;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.dash-user b{color:#f4f0e8;font-size:13.5px;display:block}.dash-user p{color:#f4f0e894;margin:1px 0 0;font-size:11.5px}.dash-user .out{box-shadow:none;color:#f4f0e89e;background:0 0;border:none;border-radius:2px;place-items:center;margin:0 0 0 auto;padding:6px;line-height:0;display:grid}.dash-user .out:hover{color:#f4f0e8;background:#f4f0e81a}.dash-main{width:100%;max-width:1160px;padding:30px 34px 60px}.dash-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;min-width:0;margin-bottom:24px;display:flex}.dash-head>div{min-width:0}.dash-head p{overflow-wrap:break-word}.dash-head h1{margin:0;font-size:clamp(26px,3vw,36px);font-weight:700}.dash-head p{color:var(--text-dim);margin:6px 0 0;font-size:14px}.dash-stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.dash-stats .stat{padding:18px}.dash-stats .ic{width:34px;height:34px;color:var(--polish);border-radius:2px;place-items:center;margin-bottom:12px;display:grid}.dash-stats .n{font-family:var(--font-display);font-size:28px;font-weight:700;line-height:1}.dash-stats .l{margin-top:6px;font-size:13.5px;font-weight:600}.dash-stats .s{color:var(--text-mute);margin-top:2px;font-size:12px}.dash-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;gap:14px;margin-bottom:18px;display:grid}.dash-col{flex-direction:column;gap:14px;display:flex}.dash-card{padding:20px}.dash-card-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.dash-card-head h2{align-items:center;gap:8px;margin:0;font-size:16.5px;font-weight:700;display:flex}.chip{color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:600}.chip.gold{color:var(--gold);background:#b07a1614;border-color:#b07a1659}.chip.new{color:var(--emerald);background:#4a6b3a14;border-color:#4a6b3a59}.periods{flex-direction:column;display:flex}.period{border-radius:3px;align-items:center;gap:14px;padding:11px 10px;display:flex}.period+.period{border-top:1px solid var(--border);border-top-left-radius:0;border-top-right-radius:0}.period .t{font-family:var(--font-display);color:var(--text-dim);flex-shrink:0;width:44px;font-size:13px;font-weight:600}.period .mid{flex:1;min-width:0}.period .mid b{font-size:14px;display:block}.period .mid p{color:var(--text-mute);margin:1px 0 0;font-size:12.5px}.period .room{color:var(--text-mute);font-size:12px}.period.now{background:#a6331b1a;border:1px solid #a6331b4d}.period.now .room{color:var(--indigo-l);font-weight:700}.challenge .q{color:var(--text-dim);margin:0 0 16px;font-size:14.5px;line-height:1.55}.notes{flex-direction:column;gap:14px;display:flex}.note .row1{align-items:center;gap:8px;display:flex}.note b{font-size:14px}.note p{color:var(--text-dim);margin:4px 0 3px;font-size:13px}.note .when{color:var(--text-mute);font-size:11.5px}.note+.note{border-top:1px solid var(--border);padding-top:14px}.subjects{grid-template-columns:repeat(5,1fr);gap:18px;display:grid}.subject .row1{justify-content:space-between;align-items:baseline;display:flex}.subject b{font-size:13.5px}.subject .row1 span{font-family:var(--font-display);color:var(--indigo-l);font-size:13px;font-weight:700}.subject .bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;height:7px;margin:8px 0 7px;overflow:hidden}.subject .bar span{background:var(--grad);border-radius:999px;height:100%;display:block}.subject p{color:var(--text-mute);margin:0;font-size:11.5px}.mode-hint{color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);border-radius:999px;align-items:center;gap:7px;padding:7px 14px;font-size:12.5px;font-weight:600;display:inline-flex}.tutor-layout{grid-template-columns:260px minmax(0,1fr);align-items:stretch;gap:14px;height:calc(100vh - 150px);min-height:460px;display:grid}.kb{flex-direction:column;padding:16px;display:flex;overflow:hidden}.kb-head{align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.kb-note{color:var(--text-mute);margin:7px 0 14px;font-size:12px;line-height:1.5}.kb-books{flex-direction:column;gap:5px;margin-bottom:16px;display:flex}.kb-book{color:var(--text-dim);text-align:left;background:0 0;border:1px solid #0000;border-radius:2px;align-items:center;gap:9px;padding:9px 11px;font-size:13.5px;font-weight:500;transition:all .15s;display:flex}.kb-book:hover{background:var(--surface-2);color:var(--text)}.kb-book.on{color:var(--text);background:#a6331b1f;border-color:#a6331b4d}.kb-book .dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.kb-title{letter-spacing:.04em;text-transform:uppercase;color:var(--text-mute);border-top:1px solid var(--border);align-items:center;gap:7px;margin-bottom:9px;padding-top:14px;font-size:11px;font-weight:700;display:flex}.kb-chapters{flex-direction:column;gap:4px;display:flex;overflow-y:auto}.kb-ch{color:var(--text-dim);text-align:left;background:0 0;border:1px solid #0000;border-radius:2px;align-items:baseline;gap:8px;padding:8px 10px;font-size:12.5px;transition:all .15s;display:flex}.kb-ch:hover{background:var(--surface-2);color:var(--text)}.kb-ch.on{background:var(--surface-2);border-color:var(--border-strong);color:var(--text)}.kb-ch .n{font-family:var(--font-display);color:var(--indigo-l);flex-shrink:0;font-size:11px;font-weight:700}.chat{flex-direction:column;display:flex;overflow:hidden}.chat-head{border-bottom:1px solid var(--border);background:#a6331b0d;align-items:center;gap:11px;padding:13px 16px;display:flex}.chat-head .av{background:var(--grad);width:34px;height:34px;color:var(--polish);border-radius:2px;flex-shrink:0;place-items:center;display:grid}.chat-head .who{flex:1;min-width:0}.chat-head .who b{font-size:14.5px;display:block}.chat-head .who span{color:var(--emerald);align-items:center;gap:5px;font-size:11.5px;display:inline-flex}.chat-head .mode{background:var(--bg-3);border:1px solid var(--incise);border-radius:3px;flex-shrink:0;gap:4px;padding:3px;display:flex;box-shadow:inset 0 1px 2px #2e241a1f}.chat-head .mode button{color:var(--text-dim);background:0 0;border:none;border-radius:2px;align-items:center;gap:5px;padding:6px 11px;font-size:12.5px;font-weight:600;transition:all .15s;display:inline-flex}.chat-head .mode button.on{background:var(--grad);color:var(--polish)}.chat-body{flex-direction:column;flex:1;gap:12px;padding:18px;display:flex;overflow-y:auto}.row-me,.row-ai{flex-direction:column;display:flex}.row-me{align-items:flex-end}.row-ai{align-items:flex-start}.cite{color:var(--text-mute);align-items:center;gap:5px;margin-top:4px;padding-left:2px;font-size:10.5px;display:inline-flex}.chat-starters{flex-wrap:wrap;gap:7px;padding:0 16px 12px;display:flex}.chat-input{border-top:1px solid var(--border);gap:8px;padding:12px 16px;display:flex}.chat-input input{background:var(--bg-3);border:1px solid var(--incise);color:var(--text);border-radius:3px;outline:none;flex:1;padding:11px 14px;font-size:14px;box-shadow:inset 0 1px 2px #2e241a1f}.chat-input input:focus{border-color:var(--indigo)}.chat-input button{background:var(--grad);color:var(--polish);border:none;border-radius:3px;place-items:center;width:44px;display:grid}.snap-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:14px;display:grid}.snap-capture{padding:16px}.snap-drop{border:1.5px dashed var(--border-strong);text-align:center;cursor:pointer;background:#a6331b08;border-radius:4px;padding:40px 24px;transition:all .2s}.snap-drop:hover{border-color:var(--indigo);background:#a6331b12}.snap-drop .ic{background:var(--grad);width:62px;height:62px;color:var(--polish);border-radius:4px;place-items:center;margin:0 auto 16px;display:grid}.snap-drop h3{margin-bottom:8px;font-size:19px;font-weight:700}.snap-drop p{color:var(--text-dim);max-width:300px;margin:0 auto 18px;font-size:14px}.snap-samples{padding:16px}.ss-head{color:var(--text-dim);margin-bottom:12px;font-size:13px;font-weight:700}.ss-item{text-align:left;background:var(--surface-2);border:1px solid var(--border);border-radius:3px;align-items:flex-start;gap:11px;width:100%;margin-bottom:8px;padding:12px;transition:all .15s;display:flex}.ss-item:hover{border-color:var(--indigo-l);transform:translate(2px)}.ss-item .dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:4px}.ss-item b{font-size:13.5px;display:block}.ss-item p{color:var(--text-mute);margin:2px 0 0;font-size:12.5px}.snap-result{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:14px;display:grid}.snap-shot{padding:16px}.shot-head{color:var(--text-dim);align-items:center;gap:8px;margin-bottom:12px;font-size:13px;font-weight:700;display:flex}.shot-img{border:1px solid var(--border);object-fit:contain;background:var(--bg-3);border-radius:3px;width:100%;max-height:260px}.shot-mock{border:1px solid var(--border);color:#1a2040;font-family:var(--font-display);background:#fdfdf7;border-radius:3px;align-items:center;min-height:130px;padding:26px 20px;font-size:16px;line-height:1.5;display:flex;box-shadow:inset 0 0 0 6px #fff,0 6px 20px -10px #2e241a80}.shot-q{background:var(--surface-2);border:1px solid var(--border);border-radius:3px;margin:14px 0;padding:12px 14px}.shot-q .lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--indigo-l);font-size:10.5px;font-weight:700}.shot-q p{color:var(--text);margin:5px 0 0;font-size:14px}.shot-q p.reading{color:var(--text-mute);font-style:italic}.asg-summary{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px;display:grid}.asg-summary .sm{align-items:center;gap:12px;padding:16px 18px;display:flex}.asg-summary .ic{width:34px;height:34px;color:var(--polish);border-radius:2px;flex-shrink:0;place-items:center;display:grid}.asg-summary b{font-family:var(--font-display);font-size:24px;font-weight:700;line-height:1}.asg-summary p{color:var(--text-mute);margin:3px 0 0;font-size:12.5px}.asg-tabs{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.asg-tab{color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);border-radius:3px;align-items:center;gap:8px;padding:9px 14px;font-size:13.5px;font-weight:600;transition:all .15s;display:inline-flex}.asg-tab:hover{color:var(--text);border-color:var(--border-strong)}.asg-tab.on{color:var(--text);background:#a6331b24;border-color:#a6331b52}.asg-tab .ct{background:var(--bg-3);border:1px solid var(--incise);color:var(--text-dim);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700;box-shadow:inset 0 1px 2px #2e241a1f}.asg-tab.on .ct{color:var(--indigo-l)}.asg-list{flex-direction:column;gap:12px;display:flex}.asg{align-items:stretch;gap:0;padding:0;display:flex;overflow:hidden}.asg .bar{flex-shrink:0;width:4px}.asg-main{flex:1;min-width:0;padding:15px 18px}.asg-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.asg-top .subj{letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:700}.asg-main h3{margin:0;font-size:15.5px;font-weight:600}.asg .due{color:var(--text-dim);align-items:center;gap:5px;font-size:12px;font-weight:600;display:inline-flex}.asg .due.urgent{color:#f59e9e}.asg .due.muted{color:var(--text-mute);font-weight:500}.asg .score{font-family:var(--font-display);color:var(--emerald);font-size:15px;font-weight:700}.asg .feedback{background:#4a6b3a0f;border:1px solid #4a6b3a2e;border-radius:2px;margin-top:11px;padding:11px 13px}.asg .feedback b{letter-spacing:.06em;text-transform:uppercase;color:var(--emerald);font-size:11px;font-weight:700}.asg .feedback p{color:var(--text-dim);margin:4px 0 0;font-size:13px;line-height:1.5}.asg-action{flex-shrink:0;align-items:center;padding:15px 18px 15px 0;display:flex}.asg .tag{border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.asg .tag.sub{color:var(--indigo-l);background:#a6331b1a;border:1px solid #a6331b40}.asg .tag.done{color:var(--emerald);background:#4a6b3a1a;border:1px solid #4a6b3a40}.asg.graded{opacity:.96}.asg-empty{color:var(--text-mute);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:40px;display:flex}.asg-empty p{margin:0;font-size:14px}.tt-card{padding:16px}.tt-scroll{overflow-x:auto}.tt-grid{grid-template-columns:64px repeat(6,minmax(84px,1fr));gap:6px;min-width:640px;display:grid}.tt-cell{justify-content:center;align-items:center;display:flex}.tt-corner{color:var(--text-mute);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.tt-day{font-family:var(--font-display);color:var(--text-dim);border-radius:2px;flex-direction:column;gap:2px;padding:8px 0;font-size:14px;font-weight:700}.tt-day.today{color:var(--text);background:#a6331b24;border:1px solid #a6331b52}.tt-now{letter-spacing:.06em;text-transform:uppercase;color:var(--indigo-l);font-size:9px;font-weight:700}.tt-time{font-family:var(--font-display);color:var(--text-mute);justify-content:flex-end;padding-right:6px;font-size:12px;font-weight:600}.tt-slot{border-radius:2px;min-height:46px;padding:5px}.tt-slot.today{background:#a6331b0f}.chip-subj{white-space:nowrap;background:#ffffff05;border:1px solid;border-radius:2px;align-items:center;gap:6px;padding:6px 8px;font-size:12px;font-weight:600;display:inline-flex}.chip-subj .dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.tt-note{color:var(--text-mute);margin:14px 0 0;font-size:12px}.att-summary{grid-template-columns:200px minmax(0,1fr);align-items:stretch;gap:14px;margin-bottom:16px;display:grid}.att-ring{justify-content:center;align-items:center;padding:18px;display:flex;position:relative}.att-ring .ring{width:150px;height:150px;transform:rotate(-90deg)}.att-ring .ring-bg{fill:none;stroke:var(--surface-2);stroke-width:9px}.att-ring .ring-fg{fill:none;stroke-width:9px;stroke-linecap:round;stroke:var(--leaf);transition:all .6s}.att-ring .ring-mid{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.att-ring .ring-mid b{font-family:var(--font-display);font-size:34px;font-weight:700;line-height:1}.att-ring .ring-mid span{color:var(--text-mute);margin-top:4px;font-size:12px}.att-stats{grid-template-rows:repeat(3,1fr);gap:14px;display:grid}.att-stats .sm{align-items:center;gap:12px;padding:0 18px;display:flex}.att-stats .ic{width:34px;height:34px;color:var(--polish);border-radius:2px;flex-shrink:0;place-items:center;display:grid}.att-stats b{font-family:var(--font-display);font-size:22px;font-weight:700}.att-stats p{color:var(--text-mute);margin:2px 0 0;font-size:12.5px}.att-cal{padding:18px 20px 22px}.att-cal-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.att-cal-head h2{margin:0;font-size:18px;font-weight:700}.att-legend{flex-wrap:wrap;gap:14px;display:flex}.att-legend span{color:var(--text-dim);align-items:center;gap:6px;font-size:12px;display:inline-flex}.att-legend .lg{border-radius:4px;width:11px;height:11px;display:inline-block}.lg.present{background:var(--leaf)}.lg.absent{background:var(--oxide)}.lg.holiday{background:var(--ochre)}.lg.weekend{background:var(--surface-2);border:1px solid var(--border)}.att-grid{grid-template-columns:repeat(7,1fr);gap:7px;display:grid}.att-wd{text-align:center;color:var(--text-mute);padding-bottom:4px;font-size:11px;font-weight:700}.att-blank{aspect-ratio:1}.att-day{aspect-ratio:1;border:1px solid #0000;border-radius:2px;justify-content:center;align-items:center;font-size:13.5px;font-weight:600;display:flex}.att-day.present{color:var(--leaf);background:#4a6b3a24;border-color:#4a6b3a40}.att-day.absent{color:var(--oxide);background:#a6331b29;border-color:#a6331b4d}.att-day.holiday{color:var(--ochre);background:#b07a1624;border-color:#b07a1647}.att-day.weekend{background:var(--surface);color:var(--text-mute)}.ach-head{margin-bottom:16px}.ach-count{padding:16px 20px}.ach-count b{font-family:var(--font-display);font-size:22px;font-weight:700}.ach-count span{color:var(--text-dim);font-size:14px}.ach-track{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;height:7px;margin-top:10px;overflow:hidden}.ach-track span{background:var(--grad);border-radius:999px;height:100%;display:block}.ach-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.ach-badge{text-align:center;flex-direction:column;align-items:center;padding:22px 20px;display:flex}.ach-ic{border-radius:4px;place-items:center;width:54px;height:54px;margin-bottom:13px;display:grid}.ach-badge h3{margin:0 0 5px;font-size:15px;font-weight:700}.ach-badge p{color:var(--text-dim);margin:0 0 14px;font-size:12.5px;line-height:1.45}.ach-tag{border-radius:999px;align-items:center;gap:5px;margin-top:auto;padding:4px 11px;font-size:11.5px;font-weight:600;display:inline-flex}.ach-tag.done{color:var(--emerald);background:#4a6b3a1a;border:1px solid #4a6b3a40}.ach-tag.prog{color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border)}.ach-badge.locked{opacity:.62}.ach-badge.locked .ach-ic{background:var(--surface-2);border:1px solid var(--border);color:var(--text-mute)}.lb-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.lb-toggle{background:var(--bg-3);border:1px solid var(--incise);border-radius:3px;gap:4px;padding:4px;display:flex;box-shadow:inset 0 1px 2px #2e241a1f}.lb-toggle button{color:var(--text-dim);background:0 0;border:none;border-radius:2px;align-items:center;gap:7px;padding:8px 15px;font-size:13.5px;font-weight:600;transition:all .15s;display:inline-flex}.lb-toggle button.on{background:var(--grad);color:var(--polish)}.lb-you{color:var(--text-dim);padding:9px 15px;font-size:13px}.lb-you b{color:var(--indigo-l)}.lb-card{padding:8px}.lb-row{border-radius:3px;align-items:center;gap:13px;padding:12px 14px;display:flex}.lb-row+.lb-row{border-top:1px solid var(--border);border-radius:0}.lb-row.me{background:#a6331b1f;border:1px solid #a6331b4d;border-radius:3px}.lb-rank{font-family:var(--font-display);color:var(--text-dim);flex-shrink:0;align-items:center;gap:5px;width:46px;font-size:15px;font-weight:700;display:inline-flex}.lb-av{background:var(--surface-2);border:1px solid var(--border);border-radius:2px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:14px;font-weight:700;display:grid}.lb-row.me .lb-av{background:var(--grad);color:var(--polish);border:none}.lb-name{flex:1;min-width:0}.lb-name b{font-size:14.5px}.lb-name b em{color:var(--indigo-l);font-style:normal;font-weight:600}.lb-name p{color:var(--text-mute);margin:1px 0 0;font-size:12px}.lb-pts{font-family:var(--font-display);font-size:15px;font-weight:700}.lb-pts i{color:var(--text-mute);font-size:11px;font-style:normal;font-weight:500}.lb-note{color:var(--text-mute);margin:14px 2px 0;font-size:12px;line-height:1.5}.cs-layout{grid-template-columns:290px minmax(0,1fr);align-items:stretch;gap:14px;height:calc(100vh - 150px);min-height:480px;display:grid}.cs-controls{flex-direction:column;padding:16px;display:flex;overflow-y:auto}.cs-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute);margin:4px 0 9px;font-size:11px;font-weight:700}.cs-types{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.cs-type{text-align:left;color:var(--text-dim);background:0 0;border:1px solid #0000;border-radius:3px;align-items:center;gap:11px;padding:10px 12px;transition:all .15s;display:flex}.cs-type:hover{background:var(--surface-2);color:var(--text)}.cs-type.on{color:var(--text);background:#a6331b1f;border-color:#a6331b4d}.cs-type b{font-size:14px;display:block}.cs-type span{color:var(--text-mute);font-size:11.5px}.cs-books{flex-wrap:wrap;gap:5px;margin-bottom:12px;display:flex}.cs-book{color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);border-radius:2px;align-items:center;gap:7px;padding:7px 11px;font-size:12.5px;font-weight:500;display:inline-flex}.cs-book.on{color:var(--text);border-color:var(--border-strong)}.cs-book .dot{border-radius:50%;width:8px;height:8px}.cs-chapters{flex-direction:column;gap:4px;margin-bottom:16px;display:flex}.cs-ch{color:var(--text-dim);text-align:left;background:0 0;border:1px solid #0000;border-radius:2px;align-items:baseline;gap:8px;padding:8px 10px;font-size:12.5px;display:flex}.cs-ch:hover{background:var(--surface-2);color:var(--text)}.cs-ch.on{background:var(--surface-2);border-color:var(--border-strong);color:var(--text)}.cs-ch .n{font-family:var(--font-display);color:var(--indigo-l);flex-shrink:0;font-size:11px;font-weight:700}.cs-go{justify-content:center;margin-top:auto}.cs-go:disabled{opacity:.6}.cs-output{flex-direction:column;display:flex;overflow:hidden}.cs-out-head{border-bottom:1px solid var(--border);background:#a6331b0d;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.cs-out-head b{font-size:15px;display:block}.cs-out-head span{color:var(--emerald);font-size:12px}.cs-out-body{flex:1;padding:18px 20px;overflow-y:auto}.cs-out-body pre{color:var(--text);white-space:pre-wrap;word-break:break-word;margin:0;font-family:SF Mono,Menlo,monospace;font-size:13px;line-height:1.6}.cs-empty,.cs-loading{height:100%;color:var(--text-mute);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.cs-empty p{max-width:320px;margin:0;font-size:14px}.cs-loading{flex-direction:row}.cs-loading span{background:var(--indigo-l);border-radius:50%;width:9px;height:9px;animation:1.2s infinite blink}.cs-loading span:nth-child(2){animation-delay:.2s}.cs-loading span:nth-child(3){animation-delay:.4s}.ai-usage{margin-bottom:16px;padding:20px}.usage-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.usage{background:var(--surface-2);border:1px solid var(--border);border-radius:3px;padding:14px 16px}.usage b{font-family:var(--font-display);font-size:26px;font-weight:700;line-height:1;display:block}.usage p{color:var(--text-dim);margin:7px 0 5px;font-size:12.5px}.usage .up{color:var(--emerald);font-size:11.5px;font-weight:600}.cls-table{flex-direction:column;display:flex}.cls-row{grid-template-columns:90px 1.5fr 80px 100px 1.3fr;align-items:center;gap:14px;padding:12px 6px;display:grid}.cls-row+.cls-row{border-top:1px solid var(--border)}.cls-head{letter-spacing:.05em;text-transform:uppercase;color:var(--text-mute);font-size:11px;font-weight:700}.cls-row .c1 b{font-size:14px}.cls-row .c2,.cls-row .c3,.cls-row .c4{color:var(--text-dim);font-size:13px}.cls-row .c5{align-items:center;gap:10px;display:flex}.cls-bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;flex:1;height:7px;overflow:hidden}.cls-bar span{background:var(--grad);border-radius:999px;height:100%;display:block}.cls-row .c5 em{font-style:normal;font-family:var(--font-display);color:var(--indigo-l);width:34px;font-size:12.5px;font-weight:700}.adm-bar{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;margin-bottom:14px;display:flex}.adm-search{min-width:0;color:var(--text-mute);flex:240px;align-items:center;gap:10px;padding:11px 15px;display:flex}.adm-search input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:14px}.adm-search input::placeholder{color:var(--text-mute)}.adm-table{padding:8px}.adm-row{border-radius:3px;grid-template-columns:1.5fr 100px 1.4fr 100px 80px 44px;align-items:center;gap:12px;padding:12px 14px;display:grid}.adm-row+.adm-row{border-top:1px solid var(--border);border-radius:0}.adm-head{letter-spacing:.05em;text-transform:uppercase;color:var(--text-mute);font-size:11px;font-weight:700}.adm-row.off{opacity:.55}.adm-av{background:var(--surface-2);border:1px solid var(--border);border-radius:2px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:grid}.adm-row .a1,.stf-row .s1{align-items:center;gap:10px;min-width:0;display:flex}.adm-row .a1 b,.stf-row .s1 b{font-size:14px;display:block}.adm-off{color:var(--text-mute);font-size:10.5px;font-style:normal}.adm-row .a2,.adm-row .a4{color:var(--text-dim);font-size:13px}.adm-row .a3 b{font-size:13px;font-weight:500;display:block}.adm-row .a3 em{color:var(--text-mute);font-size:11.5px;font-style:normal}.adm-fee{border-radius:999px;padding:3px 11px;font-size:11.5px;font-weight:600}.adm-fee.paid{color:var(--emerald);background:#4a6b3a1a;border:1px solid #4a6b3a40}.adm-fee.due{color:var(--gold);background:#b07a161a;border:1px solid #b07a1647}.adm-del{border:1px solid var(--border);width:32px;height:32px;color:var(--text-mute);background:0 0;border-radius:2px;place-items:center;transition:all .15s;display:grid}.adm-del:hover{color:var(--oxide);background:#a6331b14;border-color:#a6331b66}.adm-empty{color:var(--text-mute);flex-direction:column;align-items:center;gap:9px;padding:36px;display:flex}.adm-empty p{margin:0;font-size:14px}.stf-row{grid-template-columns:1.5fr 1fr 1.2fr 150px 90px;align-items:center;gap:12px;padding:12px 14px;display:grid}.stf-row+.stf-row{border-top:1px solid var(--border)}.stf-head{letter-spacing:.05em;text-transform:uppercase;color:var(--text-mute);font-size:11px;font-weight:700}.stf-row.off{opacity:.55}.stf-row .s2,.stf-row .s5{color:var(--text-dim);font-size:13px}.stf-cls{color:var(--indigo-l);background:#a6331b1a;border:1px solid #a6331b40;border-radius:2px;margin-right:5px;padding:2px 8px;font-size:11.5px;font-style:normal;font-weight:600}.stf-none{color:var(--text-mute);font-size:12px;font-style:normal}.stf-role{border:1px solid var(--border);color:var(--text-dim);background:var(--surface-2);border-radius:999px;padding:4px 11px;font-size:11.5px;font-weight:600}.stf-role.rAdmin{color:var(--violet);background:#71548a1a;border-color:#71548a52}.stf-role.rHeadofDepartment{color:var(--cyan);background:#2e6b6b17;border-color:#2e6b6b4d}.att-top{grid-template-columns:320px minmax(0,1fr);align-items:stretch;gap:14px;margin-bottom:16px;display:grid}.att-big{flex-direction:column;justify-content:center;padding:20px;display:flex}.att-big b{font-family:var(--font-display);margin:8px 0 14px;font-size:34px;font-weight:700;display:block}.att-big b em{color:var(--text-mute);font-size:16px;font-style:normal;font-weight:500}.att-big .bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;height:9px;overflow:hidden}.att-big .bar span{background:var(--grad);border-radius:999px;height:100%;display:block}.att-big p{color:var(--text-dim);margin:12px 0 0;font-size:12.5px}.att-week{padding:18px 20px}.wk-chart{align-items:flex-end;gap:14px;height:140px;padding-top:8px;display:flex}.wk-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.wk-val{font-family:var(--font-display);color:var(--indigo-l);font-size:12px;font-weight:700}.wk-bar{background:var(--grad);border-radius:2px 8px 3px 3px;width:100%;max-width:46px;min-height:8px}.wk-day{color:var(--text-mute);font-size:11.5px;font-weight:600}.wk-note{color:var(--text-mute);align-items:center;gap:7px;margin:14px 0 0;font-size:12px;display:flex}.att-cls{border-radius:2px;grid-template-columns:1.4fr 110px 1fr 60px;align-items:center;gap:14px;padding:12px 8px;display:grid}.att-cls+.att-cls{border-top:1px solid var(--border);border-radius:0}.att-cls.low{background:#b07a160f;border:1px solid #b07a1638;border-radius:2px}.att-cls .a-name b{font-size:14px}.att-cls .a-name em{color:var(--gold);align-items:center;gap:4px;margin-left:8px;font-size:10.5px;font-style:normal;display:inline-flex}.att-cls .a-count{color:var(--text-dim);font-size:13px}.a-bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;height:7px;overflow:hidden}.a-bar span{background:var(--grad);border-radius:999px;height:100%;display:block}.att-cls .a-pct{font-family:var(--font-display);text-align:right;font-size:14px;font-weight:700}.fee3{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:14px;display:grid}.fee-track{margin-bottom:16px;padding:16px 20px}.ft-bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;height:12px;overflow:hidden}.ft-bar span{background:var(--grad);border-radius:999px;height:100%;display:block}.fee-track p{color:var(--text-dim);margin:11px 0 0;font-size:12.5px}.fee-cls{grid-template-columns:1.5fr 70px 80px 1.2fr;align-items:center;gap:14px;padding:12px 8px;display:grid}.fee-cls+.fee-cls{border-top:1px solid var(--border)}.fee-clshead{letter-spacing:.05em;text-transform:uppercase;color:var(--text-mute);font-size:11px;font-weight:700}.fee-cls .f1 b{font-size:14px}.f-warn{color:var(--gold);align-items:center;gap:4px;margin-left:8px;font-size:10.5px;font-style:normal;display:inline-flex}.fee-cls .f2,.fee-cls .f3{color:var(--text-dim);font-size:13.5px}.fee-cls .f4{align-items:center;gap:10px;display:flex}.f-bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;flex:1;height:7px;overflow:hidden}.f-bar span{background:var(--grad);border-radius:999px;height:100%;display:block}.fee-cls .f4 em{font-style:normal;font-family:var(--font-display);color:var(--indigo-l);width:34px;font-size:12.5px;font-weight:700}.kb-row{grid-template-columns:1.7fr 100px 90px 150px 120px;align-items:center;gap:12px;padding:12px 14px;display:grid}.kb-row+.kb-row{border-top:1px solid var(--border)}.kb-head{letter-spacing:.05em;text-transform:uppercase;color:var(--text-mute);font-size:11px;font-weight:700}.kb-row .k1{align-items:center;gap:11px;min-width:0;display:flex}.kb-ic{width:34px;height:34px;color:var(--polish);border-radius:2px;flex-shrink:0;place-items:center;display:grid}.kb-row .k1 b{font-size:14px;display:block}.kb-row .k1 em{font-size:11.5px;font-style:normal;font-weight:600}.kb-row .k2,.kb-row .k3,.kb-row .k4{color:var(--text-dim);font-size:13px}.rep-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px;display:grid}.rep-card{flex-direction:column;padding:18px;display:flex}.rep-ic{background:var(--surface-2);border:1px solid var(--border);width:38px;height:38px;color:var(--indigo-l);border-radius:3px;place-items:center;margin-bottom:13px;display:grid}.rep-card h3{margin:0 0 5px;font-size:15px;font-weight:700}.rep-card p{color:var(--text-dim);flex:1;margin:0 0 16px;font-size:12.5px;line-height:1.45}.rep-foot{justify-content:space-between;align-items:center;gap:10px;display:flex}.rec-row{align-items:center;gap:13px;padding:12px 8px;display:flex}.rec-row+.rec-row{border-top:1px solid var(--border)}.rec-ic{background:var(--surface-2);border:1px solid var(--border);width:34px;height:34px;color:var(--text-mute);border-radius:2px;flex-shrink:0;place-items:center;display:grid}.rec-main{flex:1;min-width:0}.rec-main b{font-size:14px;display:block}.rec-main p{color:var(--text-mute);margin:2px 0 0;font-size:12px}.reach-note{color:var(--text-mute);margin:9px 0 0;font-size:12px}.reach-note b{color:var(--indigo-l)}.set-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.set-card{padding:20px}.set-head{align-items:center;gap:9px;margin-bottom:14px;font-size:14.5px;font-weight:700;display:flex}.set-rows{flex-direction:column;display:flex}.set-row{justify-content:space-between;align-items:baseline;gap:16px;padding:9px 0;display:flex}.set-row+.set-row{border-top:1px solid var(--border)}.set-row span{color:var(--text-mute);flex-shrink:0;font-size:12.5px}.set-row b{text-align:right;font-size:13.5px}.set-note{color:var(--text-dim);margin:12px 0 0;font-size:12.5px;line-height:1.55}.set-card.danger{border-color:#a6331b47}.set-card.danger .set-head{color:var(--oxide)}.set-danger-btn{color:var(--oxide);border-color:#a6331b59;margin-top:14px}.set-danger-btn:hover{background:#a6331b14;border-color:#a6331b80}@media (max-width:1000px){.att-top,.fee3,.rep-grid,.set-grid{grid-template-columns:1fr}.kb-row{grid-template-columns:1.6fr 90px 120px}.kb-row .k3,.kb-row .k5{display:none}.att-cls{grid-template-columns:1.3fr 100px 60px}.att-cls .a-bar{display:none}.fee-cls{grid-template-columns:1.4fr 60px 1fr}.fee-cls .f3{display:none}}.cf-overlay{z-index:400;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#03050cc7;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.cf-box{text-align:center;max-width:460px;padding:26px 28px}.cf-ic{width:52px;height:52px;color:var(--oxide);background:#a6331b1f;border:1px solid #a6331b4d;border-radius:3px;place-items:center;margin:0 auto 15px;display:grid}.cf-box h3{margin:0 0 9px;font-size:19px;font-weight:700}.cf-box p{color:var(--text-dim);margin:0 0 20px;font-size:13.5px;line-height:1.55}.cf-actions{justify-content:center;gap:10px;display:flex}.cf-danger{background:var(--oxide);color:#fff}.cf-danger:hover{background:var(--oxide-l)}.undo-bar{z-index:350;align-items:center;gap:14px;padding:12px 14px 12px 20px;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%);box-shadow:0 20px 50px -15px #2e241abf}.undo-bar span{font-size:13.5px}.undo-x{color:var(--text-mute);background:0 0;border:none;place-items:center;padding:4px;display:grid}.undo-x:hover{color:var(--text)}.perm-card{margin-top:16px;padding:20px}.perm-note{color:var(--text-dim);margin:0 0 16px;font-size:13px}.perm-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.perm{background:var(--surface-2);border:1px solid var(--border);border-radius:3px;padding:15px 16px}.perm b{margin-bottom:10px;font-size:13.5px;display:block}.perm ul{flex-direction:column;gap:7px;list-style:none;display:flex}.perm li{align-items:flex-start;gap:7px;font-size:11.5px;line-height:1.45;display:flex}.perm li.yes{color:var(--text-dim)}.perm li.yes svg{color:var(--emerald);flex-shrink:0;margin-top:2px}.perm li.no{color:var(--text-mute)}.perm li.no svg{color:var(--oxide);flex-shrink:0;margin-top:2px}@media (max-width:1000px){.usage-grid,.perm-grid{grid-template-columns:repeat(2,1fr)}.adm-row{grid-template-columns:1.4fr 90px 1fr 44px}.adm-row .a4,.adm-row .a5{display:none}.stf-row{grid-template-columns:1.4fr 1fr 130px}.stf-row .s3,.stf-row .s5{display:none}.cls-row{grid-template-columns:80px 1.3fr 70px 1fr}.cls-row .c4{display:none}}.kid-switch{border-bottom:1px solid #f4f0e826;flex-direction:column;gap:5px;margin-bottom:8px;padding:4px 0 12px;display:flex}.kid-label{letter-spacing:.08em;text-transform:uppercase;color:#f4f0e880;padding:0 8px 3px;font-size:10.5px;font-weight:700}.kid-btn{text-align:left;color:#f4f0e8b8;background:0 0;border:1px solid #0000;border-radius:3px;align-items:center;gap:10px;padding:8px 10px;transition:all .15s;display:flex}.kid-btn:hover{color:#f4f0e8;background:#f4f0e814}.kid-btn.on{color:#f4f0e8;background:#d8a04421;border-color:#d8a04457}.kid-av{background:#f4f0e81f;border:1px solid #f4f0e833;border-radius:2px;flex-shrink:0;place-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:grid}.kid-btn.on .kid-av{color:#26352f;background:#d8a044;border:none}.kid-btn b{font-size:13.5px;display:block}.kid-btn p{color:#f4f0e88c;margin:1px 0 0;font-size:11px}.fee-alert{background:#b07a160d;border-color:#b07a1647;align-items:center;gap:14px;margin-bottom:16px;padding:15px 18px;display:flex}.fee-alert .ic{width:38px;height:38px;color:var(--gold);background:#b07a1624;border-radius:3px;flex-shrink:0;place-items:center;display:grid}.fee-alert b{font-size:14.5px;display:block}.fee-alert p{color:var(--text-dim);margin:2px 0 0;font-size:12.5px}.fee-alert .btn{flex-shrink:0;margin-left:auto}.p-subj+.p-subj{margin-top:13px}.p-subj .row1{justify-content:space-between;align-items:baseline;display:flex}.p-subj b{font-size:13.5px}.p-subj .row1 span{font-family:var(--font-display);font-size:13px;font-weight:700}.p-subj .bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;height:7px;margin-top:7px;overflow:hidden}.p-subj .bar span{background:var(--grad);border-radius:999px;height:100%;display:block}.p-highlight{grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:16px;display:grid}.hl-card{padding:18px 20px}.hl-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute);font-size:11px;font-weight:700}.hl-card b{font-family:var(--font-display);margin:7px 0 4px;font-size:21px;font-weight:700;display:block}.hl-card p{color:var(--text-dim);margin:0;font-size:12.5px}.hl-card.good{border-color:#4a6b3a47}.hl-card.good b{color:var(--emerald)}.hl-card.work{border-color:#b07a1647}.hl-card.work b{color:var(--gold)}.p-table{padding:8px}.p-row{grid-template-columns:1.5fr 1.5fr 100px 1fr;align-items:center;gap:14px;padding:13px 14px;display:grid}.p-row+.p-row{border-top:1px solid var(--border)}.p-head{letter-spacing:.05em;text-transform:uppercase;color:var(--text-mute);font-size:11px;font-weight:700}.p-row .c1{align-items:center;gap:10px;display:flex}.p-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.p-row .c1 b{font-size:14px}.p-row .c2{align-items:center;gap:10px;display:flex}.p-bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;flex:1;height:7px;overflow:hidden}.p-bar span{background:var(--grad);border-radius:999px;height:100%;display:block}.p-row .c2 em{font-style:normal;font-family:var(--font-display);color:var(--indigo-l);width:34px;font-size:12.5px;font-weight:700}.p-row .c3{font-family:var(--font-display);font-size:14px;font-weight:700}.p-row .c4{color:var(--text-mute);font-size:12.5px}.fee-summary{grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:16px;display:grid}.fee-box{padding:18px 20px}.fee-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute);font-size:11px;font-weight:700}.fee-box b{font-family:var(--font-display);margin:8px 0 4px;font-size:28px;font-weight:700;display:block}.fee-box p{color:var(--text-dim);margin:0;font-size:12.5px}.fee-box.due{border-color:#b07a164d}.fee-box.due b{color:var(--gold)}.fee-box.paid b{color:var(--emerald)}.fee-list{flex-direction:column;gap:12px;display:flex}.fee-row{align-items:center;gap:14px;padding:15px 18px;display:flex}.fee-ic{background:var(--surface-2);border:1px solid var(--border);width:34px;height:34px;color:var(--text-mute);border-radius:2px;flex-shrink:0;place-items:center;display:grid}.fee-row.paid .fee-ic{color:var(--emerald);background:#4a6b3a1a;border-color:#4a6b3a40}.fee-row.due .fee-ic{color:var(--gold);background:#b07a161a;border-color:#b07a1647}.fee-main{flex:1;min-width:0}.fee-main b{font-size:14.5px;display:block}.fee-main p{color:var(--text-mute);margin:2px 0 0;font-size:12.5px}.fee-amt{font-family:var(--font-display);flex-shrink:0;font-size:17px;font-weight:700}.fee-act{flex-shrink:0;justify-content:flex-end;min-width:108px;display:flex}.fee-tag{color:var(--text-mute);border:1px solid var(--border);border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600}.fee-note{color:var(--text-mute);margin:16px 2px 0;font-size:12px}.ann-src{border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.ann-src.school{color:var(--indigo-l);background:#a6331b1a;border:1px solid #a6331b40}.ann-src.teacher{color:var(--emerald);background:#4a6b3a1a;border:1px solid #4a6b3a40}.ann-for{color:var(--text-mute);font-size:11px}.msg-card{flex-direction:column;height:calc(100vh - 190px);min-height:440px;display:flex;overflow:hidden}.msg-head{border-bottom:1px solid var(--border);background:#a6331b0d;align-items:center;gap:12px;padding:14px 18px;display:flex}.msg-av{background:var(--grad);width:38px;height:38px;color:var(--polish);border-radius:3px;flex-shrink:0;place-items:center;display:grid}.msg-head b{font-size:15px;display:block}.msg-head span{color:var(--text-mute);font-size:12px}.msg-body{flex-direction:column;flex:1;gap:14px;padding:20px;display:flex;overflow-y:auto}.msg-line{flex-direction:column;max-width:78%;display:flex}.msg-line.me{align-self:flex-end;align-items:flex-end}.msg-line.teacher{align-self:flex-start;align-items:flex-start}.msg-when{color:var(--text-mute);margin-top:4px;padding:0 3px;font-size:10.5px}.msg-input{border-top:1px solid var(--border);gap:9px;padding:13px 16px;display:flex}.msg-input input{background:var(--bg-3);border:1px solid var(--incise);color:var(--text);border-radius:3px;outline:none;flex:1;padding:11px 14px;font-size:14px;box-shadow:inset 0 1px 2px #2e241a1f}.msg-input input:focus{border-color:var(--indigo)}.msg-input button{background:var(--grad);color:var(--polish);border:none;border-radius:3px;place-items:center;width:44px;display:grid}@media (max-width:860px){.p-highlight,.fee-summary{grid-template-columns:1fr}.p-row{grid-template-columns:1.4fr 1.2fr 80px}.p-row .c4{display:none}.fee-row{flex-wrap:wrap}}.chip-class{background:#a6331b1a;border:1px solid #a6331b52;border-radius:2px;flex-direction:column;align-items:center;gap:1px;width:100%;padding:6px;display:flex}.chip-class b{color:var(--indigo-l);font-size:12.5px}.chip-class em{color:var(--text-mute);text-align:center;font-size:10px;font-style:normal;line-height:1.25}.chip-free{color:var(--text-mute);border:1px dashed var(--border-strong);border-radius:2px;padding:6px 12px;font-size:11px;font-weight:600}.lib-explain{align-items:flex-start;gap:13px;margin-bottom:16px;padding:15px 18px;display:flex}.lib-explain .ic{background:var(--grad);width:36px;height:36px;color:var(--polish);border-radius:3px;flex-shrink:0;place-items:center;display:grid}.lib-explain p{color:var(--text-dim);margin:0;font-size:13.5px;line-height:1.55}.lib-explain b{color:var(--text)}.lib-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.lib-upload{text-align:center;border-style:dashed;flex-direction:column;justify-content:center;align-items:center;padding:26px 20px;display:flex}.lib-upload .ic{background:var(--surface-2);border:1px solid var(--border);width:52px;height:52px;color:var(--indigo-l);border-radius:3px;place-items:center;margin-bottom:13px;display:grid}.lib-upload h3{margin:0 0 5px;font-size:15.5px;font-weight:700}.lib-upload p{color:var(--text-dim);margin:0 0 15px;font-size:12.5px;line-height:1.45}.lib-book{padding:18px}.lib-ic{width:40px;height:40px;color:var(--polish);border-radius:3px;place-items:center;margin-bottom:13px;display:grid}.lib-book h3{margin:0 0 3px;font-size:15px;font-weight:700}.lib-sub{margin:0 0 12px;font-size:12px;font-weight:600}.lib-meta{color:var(--text-mute);gap:14px;margin-bottom:14px;font-size:12px;display:flex}.lib-foot{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding-top:12px;display:flex}.lib-tag{border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.lib-tag.ready{color:var(--emerald);background:#4a6b3a1a;border:1px solid #4a6b3a40}.lib-tag.proc{color:var(--gold);background:#b07a161a;border:1px solid #b07a1640}.lib-foot em{color:var(--text-mute);font-size:11.5px;font-style:normal}.ann-layout{grid-template-columns:340px minmax(0,1fr);align-items:start;gap:14px;display:grid}.ann-compose{padding:18px;position:sticky;top:20px}.ann-head{align-items:center;gap:8px;margin-bottom:16px;font-size:14.5px;font-weight:700;display:flex}.ann-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-mute);margin:14px 0 7px;font-size:11px;font-weight:700;display:block}.ann-aud{flex-wrap:wrap;gap:6px;display:flex}.ann-pill{color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);border-radius:999px;align-items:center;gap:5px;padding:6px 11px;font-size:12px;font-weight:600;display:inline-flex}.ann-pill.on{color:var(--text);background:#a6331b24;border-color:#a6331b52}.ann-input{background:var(--bg-3);border:1px solid var(--incise);width:100%;color:var(--text);border-radius:3px;outline:none;padding:11px 13px;font-family:inherit;font-size:14px;box-shadow:inset 0 1px 2px #2e241a1f}.ann-input:focus{border-color:var(--indigo)}.ann-input::placeholder{color:var(--text-mute)}.ann-area{resize:vertical;line-height:1.55}.ann-post{justify-content:center;width:100%;margin-top:16px}.ann-post:disabled{opacity:.45}.ann-note{color:var(--text-mute);text-align:center;margin:10px 0 0;font-size:11.5px;line-height:1.5}.ann-list{flex-direction:column;gap:12px;display:flex}.ann-item{padding:16px 18px}.ann-top{align-items:center;gap:9px;margin-bottom:8px;display:flex}.ann-to{color:var(--indigo-l);background:#a6331b1a;border:1px solid #a6331b40;border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:600}.ann-pin{color:var(--gold);background:#b07a161a;border:1px solid #b07a1640;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}.ann-when{color:var(--text-mute);margin-left:auto;font-size:11.5px}.ann-item h3{margin:0 0 4px;font-size:15px;font-weight:700}.ann-item p{color:var(--text-dim);margin:0;font-size:13.5px;line-height:1.5}.roster{padding:8px}.roster-head,.roster-row{grid-template-columns:54px 1.6fr 1.4fr 100px 100px;align-items:center;gap:12px;padding:12px 14px;display:grid}.roster-head{letter-spacing:.05em;text-transform:uppercase;color:var(--text-mute);font-size:11px;font-weight:700}.roster-row{border-radius:3px}.roster-row+.roster-row{border-top:1px solid var(--border);border-radius:0}.roster-row.flag{background:#a6331b0f;border:1px solid #a6331b2e;border-radius:3px}.c-roll{font-family:var(--font-display);color:var(--text-dim);font-weight:700}.c-name{align-items:center;gap:10px;min-width:0;display:flex}.c-name .r-av{background:var(--surface-2);border:1px solid var(--border);border-radius:2px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:grid}.c-name b{font-size:14px}.r-flag{color:var(--oxide);background:#a6331b1f;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:10.5px;font-weight:600;display:inline-flex}.c-bar{align-items:center;gap:9px;display:flex}.c-bar .r-bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;flex:1;height:7px;overflow:hidden}.c-bar .r-bar span{background:var(--grad);border-radius:999px;height:100%;display:block}.c-bar em{font-style:normal;font-family:var(--font-display);color:var(--indigo-l);width:34px;font-size:12.5px;font-weight:700}.c-att{font-family:var(--font-display);font-size:14px;font-weight:700}.c-last{color:var(--text-mute);font-size:12.5px}.ta-prog{align-items:center;gap:10px;margin-top:8px;display:flex}.ta-bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;flex:1;max-width:260px;height:7px;overflow:hidden}.ta-bar span{background:var(--grad);border-radius:999px;height:100%;display:block}.ta-prog em{color:var(--text-mute);font-size:12px;font-style:normal}.asg .tag.grade{color:var(--gold);background:#b07a161a;border:1px solid #b07a1647}.hist-search{color:var(--text-mute);align-items:center;gap:10px;margin-bottom:12px;padding:12px 16px;display:flex}.hist-search input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:14.5px}.hist-search input::placeholder{color:var(--text-mute)}.hist-clear{color:var(--indigo-l);background:var(--surface-2);border:1px solid var(--border);border-radius:2px;padding:5px 11px;font-size:12.5px;font-weight:600}.hist-count{color:var(--text-mute);margin:0 2px 12px;font-size:12.5px}.hist-list{flex-direction:column;gap:10px;display:flex}.hist-row{overflow:hidden}.hist-top{text-align:left;background:0 0;border:none;align-items:center;gap:13px;width:100%;padding:14px 16px;display:flex}.hist-subj{border:1px solid;border-radius:999px;flex-shrink:0;padding:4px 11px;font-size:11.5px;font-weight:600}.hist-q{flex:1;min-width:0}.hist-q b{font-size:14.5px;display:block}.hist-q p{color:var(--text-mute);margin:2px 0 0;font-size:12px}.hist-mode{text-transform:capitalize;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:4px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.hist-mode.hint{color:var(--gold);background:#b07a161a;border:1px solid #b07a1647}.hist-mode.explain{color:var(--cyan);background:#2e6b6b1a;border:1px solid #2e6b6b47}.hist-when{color:var(--text-mute);text-align:right;flex-shrink:0;width:64px;font-size:12px}.hist-chev{color:var(--text-mute);flex-shrink:0;transition:transform .2s}.hist-chev.up{transform:rotate(180deg)}.hist-answer{color:var(--indigo-l);gap:10px;padding:0 16px 15px;display:flex}.hist-answer p{color:var(--text-dim);margin:1px 0 0;font-size:13.5px;line-height:1.55}.hist-empty{color:var(--text-mute);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:40px;display:flex}.hist-empty p{margin:0;font-size:14px}.cert-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.cert-card{align-items:center;gap:14px;padding:16px 18px;display:flex}.cert-ic{border-radius:3px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.cert-body{flex:1;min-width:0}.cert-body h3{margin:0;font-size:15px;font-weight:700}.cert-body p{color:var(--text-dim);margin:3px 0 4px;font-size:12.5px;line-height:1.4}.cert-meta{color:var(--text-mute);font-size:11.5px}.cert-overlay{z-index:400;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#03050cd1;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex;position:fixed;inset:0;overflow:auto}.cert-actions{gap:10px;display:flex}.cert-sheet{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fbf9f1;border-radius:3px;width:100%;max-width:720px;box-shadow:0 40px 100px -20px #2e241acc}.cert-inner{outline-offset:-12px;text-align:center;color:#2a2410;border:2px solid #caa24a;border-radius:2px;outline:6px solid #fbf9f1;margin:10px;padding:40px 44px 34px;position:relative}.cert-top{justify-content:center;align-items:center;gap:9px;margin-bottom:22px;display:flex}.cert-logo{color:#2a2410;background:linear-gradient(135deg,#caa24a,#e6c979);border-radius:2px;place-items:center;width:34px;height:34px;display:grid}.cert-school{font-family:var(--font-display);letter-spacing:.22em;color:#6b5a26;font-size:15px;font-weight:700}.cert-kind{font-family:var(--font-display);color:#1f1c10;letter-spacing:.01em;font-size:30px;font-weight:700}.cert-present{color:#8a7c4e;letter-spacing:.04em;margin-top:16px;font-size:13px}.cert-name{font-family:var(--font-display);color:#a5822f;margin-top:6px;font-size:34px;font-weight:700}.cert-rule{background:linear-gradient(90deg,#0000,#caa24a,#0000);width:220px;height:2px;margin:12px auto 18px}.cert-for{color:#2a2410;font-size:16px;font-weight:700}.cert-detail{color:#6b5f38;max-width:440px;margin:6px auto 0;font-size:13.5px;line-height:1.5}.cert-foot{justify-content:space-between;align-items:flex-end;gap:20px;margin-top:34px;display:flex}.cert-sign{text-align:center;flex:1}.cert-sign .line{background:#b9a86a;height:1px;margin-bottom:6px;display:block}.cert-sign b{color:#4a4020;font-size:12.5px;font-weight:600}.cert-seal{color:#fff;background:radial-gradient(circle at 40% 35%,#e6c979,#caa24a);border-radius:50%;flex-shrink:0;place-items:center;width:58px;height:58px;display:grid;box-shadow:0 4px 12px -3px #a0823299}.cert-serial{color:#a09468;letter-spacing:.05em;margin-top:20px;font-size:10.5px}.ev-list{flex-direction:column;gap:12px;display:flex}.ev-row{align-items:center;gap:14px;padding:14px 18px;display:flex}.ev-date{text-align:center;border:1px solid var(--border);border-radius:3px;flex-shrink:0;width:54px;padding:7px 0}.ev-date b{font-family:var(--font-display);font-size:19px;font-weight:700;line-height:1;display:block}.ev-date span{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.ev-ic{border-radius:2px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.ev-main{flex:1;min-width:0}.ev-main h3{margin:0;font-size:15px;font-weight:700}.ev-main p{color:var(--text-dim);margin:2px 0 0;font-size:12.5px}.ev-tag{border:1px solid;border-radius:999px;flex-shrink:0;padding:4px 12px;font-size:11.5px;font-weight:600}@media print{body *{visibility:hidden!important}.cert-sheet,.cert-sheet *{visibility:visible!important}.cert-overlay{-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;position:absolute;background:#fff!important}.cert-sheet{max-width:100%;box-shadow:none;position:absolute;top:0;left:0}.cert-actions{display:none!important}}@media (max-width:1000px){.dash-stats{grid-template-columns:repeat(2,1fr)}.dash-grid{grid-template-columns:1fr}.subjects,.ach-grid{grid-template-columns:repeat(2,1fr)}.cert-grid{grid-template-columns:1fr}}@media (max-width:860px){.tutor-layout{grid-template-columns:1fr;height:auto}.kb-chapters{max-height:160px}.chat{height:62vh;min-height:420px}.snap-layout,.snap-result{grid-template-columns:1fr}}@media (max-width:600px){.asg-summary{grid-template-columns:1fr}.asg{flex-wrap:wrap}.asg-action{padding:0 18px 15px}.att-summary{grid-template-columns:1fr}.att-ring .ring{width:130px;height:130px}.ach-grid{grid-template-columns:1fr}}html,body{max-width:100%;overflow-x:clip}.dash-main>*,.dash-main p,.dash-main h1,.dash-main h2,.dash-main h3{max-width:100%}.dash-main p,.dash-main h1{overflow-wrap:break-word}img,svg,video,canvas{max-width:100%}.wrap,.dash-main,.adm-table,.p-table,.roster,.tt-scroll,.cls-table,.fee-list,.ev-list,.lib-grid{min-width:0}@media (max-width:860px){.adm-table,.p-table,.roster{-webkit-overflow-scrolling:touch;box-shadow:inset 0 1px 0 var(--polish), 0 1px 2px #2e241a1a, inset -12px 0 10px -12px #2e241a47;overflow-x:auto}.adm-row,.stf-row,.kb-row,.p-row,.roster-row,.roster-head,.fee-cls,.att-cls,.cls-row{min-width:620px}}@media (max-width:780px){.dash-root{grid-template-columns:minmax(0,1fr)}.dash-side{z-index:120;background:#26352f;flex-direction:row;align-items:center;gap:0;height:auto;padding:0;position:fixed;inset:auto 0 0;overflow:visible;box-shadow:inset 0 1px #d8a04433,0 -8px 20px -12px #2e241a73}.dash-brand,.dash-role,.dash-user{display:none}.dash-root:has(.kid-switch) .dash-side{flex-direction:column;align-items:stretch}.kid-switch{border:none;flex-direction:row;align-items:stretch;gap:0;width:100%;margin:0;padding:0;box-shadow:inset 0 -1px #f4f0e829}.kid-label{display:none}.kid-btn{color:#f4f0e8cc;border-radius:0;flex:1;justify-content:center;min-height:44px;padding:8px}.kid-btn.on{color:#d8a044;background:0 0;box-shadow:inset 0 -2px #d8a044}.kid-btn p{display:none}.dash-root:has(.kid-switch) .dash-main{padding-bottom:140px}.dash-nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-flow:row;gap:0;width:100%;padding:0;overflow-x:auto}.dash-nav::-webkit-scrollbar{display:none}.dash-link,.dash-link.soon{text-align:center;white-space:nowrap;border:none;border-radius:0;flex-direction:column;justify-content:center;gap:4px;min-width:72px;min-height:56px;padding:9px 14px 8px;font-size:10.5px;font-weight:600}.dash-link.active{color:#d8a044;background:0 0;box-shadow:inset 0 -3px #d8a044}.dash-link.soon em{display:none}.dash-main{padding:20px 16px 92px}.dash-head{flex-direction:column;align-items:stretch;gap:12px}.dash-head>*{min-width:0;max-width:100%}.dash-head .mode-hint{align-self:flex-start}.dash-head h1{font-size:26px}.mode-hint{font-size:11.5px}.dash-grid,.subjects,.ach-grid,.cert-grid,.asg-summary,.att-summary,.p-highlight,.fee-summary,.fee3,.set-grid,.rep-grid,.usage-grid,.perm-grid,.lib-grid,.tutor-layout,.snap-layout,.snap-result,.cs-layout,.ann-layout,.att-top{grid-template-columns:minmax(0,1fr)!important}.ann-compose,.cs-controls{position:static}.chat,.msg-card,.cs-output{height:auto;min-height:60vh}.tutor-layout,.cs-layout{height:auto}.chat-head{flex-wrap:wrap;gap:10px}.chat-head .mode{width:100%}.chat-head .mode button{flex:1}.period,.ev-row,.fee-row,.asg,.hist-top,.lb-row,.rec-row{flex-wrap:wrap}.ev-main,.fee-main,.asg-main,.hist-q,.lb-name{min-width:0}.hist-when,.ev-tag{margin-left:auto}.cert-inner{padding:26px 20px 22px}.cert-kind{font-size:21px}.cert-name{font-size:24px}.cert-foot{flex-direction:column;gap:18px}.hero{padding:104px 0 48px}.hero-cta{flex-direction:column;align-items:stretch}.hero-cta .btn{width:100%}.trust{grid-template-columns:1fr 1fr;gap:18px 20px;display:grid}.trust-note{grid-column:1/-1}.badge{flex-wrap:wrap;row-gap:2px;line-height:1.5}.cb-widget{bottom:16px;right:16px}.cb-toggle{width:48px;height:48px}.foot-grid{grid-template-columns:1fr 1fr}}@media (max-width:460px){.wrap{padding:0 16px}.adm-bar{flex-direction:column;align-items:stretch}.adm-bar>*{flex:none;width:100%}.adm-bar .adm-search{flex:none;min-height:46px}.adm-bar .btn{width:100%}.dash-head{display:block}.dash-head h1{font-size:23px}.dash-head p{overflow-wrap:anywhere;max-width:100%}.dash-head .mode-hint{margin-top:10px;display:inline-flex}.lb-bar,.cert-actions,.rep-foot,.att-cal-head,.dash-card-head{flex-wrap:wrap}.fee-act,.asg-action{justify-content:flex-start;width:100%}.dash-main{padding:18px 14px 92px}.trust .n{font-size:23px}.dash-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dash-stats .stat{padding:14px}.dash-stats .ic{margin-bottom:9px}.dash-stats .n{font-size:22px}.dash-stats .l{font-size:12.5px}.dash-stats .s{font-size:11.5px}.fee-box b,.att-big b{font-size:24px}.foot-grid{grid-template-columns:1fr}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
