@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";
*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--font-manrope), Manrope, ui-sans-serif, system-ui;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;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}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.hello-card{--tw-border-opacity:1;border-width:1px;border-color:rgb(233 230 225/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));--tw-shadow:0 18px 45px #17171714;--tw-shadow-colored:0 18px 45px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:8px}.hello-button-primary{--tw-bg-opacity:1;background-color:rgb(255 138 0/var(--tw-bg-opacity,1));--tw-text-opacity:1;min-height:2.5rem;color:rgb(255 255 255/var(--tw-text-opacity,1));border-radius:8px;justify-content:center;align-items:center;padding-left:1rem;padding-right:1rem;font-size:.875rem;font-weight:600;line-height:1.25rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:inline-flex}.hello-button-primary:hover{--tw-bg-opacity:1;background-color:rgb(214 111 0/var(--tw-bg-opacity,1))}.hello-eyebrow{text-transform:uppercase;letter-spacing:.08em;--tw-text-opacity:1;color:rgb(255 138 0/var(--tw-text-opacity,1));font-size:.75rem;font-weight:800;line-height:1rem}.hello-muted{--tw-text-opacity:1;color:rgb(111 106 99/var(--tw-text-opacity,1))}.hello-logo{--tw-text-opacity:1;color:rgb(23 23 23/var(--tw-text-opacity,1));align-items:center;font-size:1.875rem;font-weight:800;line-height:1;display:inline-flex}.hello-logo span{--tw-bg-opacity:1;background-color:rgb(255 138 0/var(--tw-bg-opacity,1));--tw-text-opacity:1;width:.95em;height:.95em;color:rgb(255 255 255/var(--tw-text-opacity,1));border-radius:9999px;place-items:center;margin-left:.02em;font-size:.92em;display:grid;position:relative}.teacher-dashboard .hello-logo span{gap:16px;display:grid}.hello-logo span:after{content:"";background:var(--primary);border-radius:2px 2px 8px;width:.22em;height:.22em;position:absolute;bottom:-.08em;right:.06em;transform:rotate(34deg)}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.mb-4{margin-bottom:1rem}.ml-2{margin-left:.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-6{margin-top:1.5rem}.block{display:block}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.list-item{display:list-item}.hidden{display:none}.min-h-11{min-height:2.75rem}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-3xl{max-width:48rem}.max-w-md{max-width:28rem}.place-items-center{place-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.rounded-hello{border-radius:8px}.border{border-width:1px}.border-hello-line{--tw-border-opacity:1;border-color:rgb(233 230 225/var(--tw-border-opacity,1))}.bg-\[\#fffdfa\]{--tw-bg-opacity:1;background-color:rgb(255 253 250/var(--tw-bg-opacity,1))}.bg-\[radial-gradient\(circle_at_top_left\,\#fff4e8\,transparent_34\%\)\,\#faf9f7\]{background-color:radial-gradient(circle at top left,#fff4e8,transparent 34%),#faf9f7}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-3{padding-left:.75rem;padding-right:.75rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.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)}:root{--bg:#faf9f7;--panel:#fff;--ink:#171717;--muted:#6f6a63;--line:#e9e6e1;--primary:#ff8a00;--primary-dark:#d66f00;--warm:#fff4e8}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.password-field{min-width:0}.password-input-wrap{width:100%;display:block;position:relative}.password-input-wrap input{width:100%;padding-right:5.8rem!important}.password-toggle{color:#8a4b00;cursor:pointer;min-height:1.9rem;font:inherit;background:#fff4e8;border:1px solid #ff8a0047;border-radius:999px;padding:0 .72rem;font-size:.72rem;font-weight:800;line-height:1;transition:background .16s,border-color .16s,color .16s;position:absolute;top:50%;right:.45rem;transform:translateY(-50%)}.password-toggle:hover{color:#663700;background:#ffe8cc;border-color:#ff8a0085}.password-toggle:disabled{cursor:not-allowed;opacity:.55}.password-toggle:focus-visible{outline-offset:2px;outline:3px solid #ff8a0047}.hello-forgot-link{color:var(--primary);justify-self:start;font-size:.9rem;font-weight:800;text-decoration:none}.hello-forgot-link:hover{color:var(--primary-dark)}.hello-reset-message{color:#236b36;background:#f0f9f0;border:1px solid #cfe8d4;border-radius:14px;padding:.8rem .9rem;font-size:.9rem;font-weight:800}.public-shell{background:radial-gradient(circle at 82% 8%, #ff8a0024, transparent 30%), radial-gradient(circle at 8% 18%, #4882d217, transparent 28%), var(--bg);min-height:100vh;overflow:hidden}.public-container{width:min(1120px,100vw - 44px);margin:0 auto}.public-nav{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#faf9f7e0;border-bottom:1px solid #e9e6e1c2;justify-content:space-between;align-items:center;gap:22px;min-height:78px;padding:18px max(22px,50vw - 560px);display:flex;position:sticky;top:0}.public-logo{align-items:center;width:112px;display:inline-flex}.public-logo img{width:100%;height:auto;display:block}.public-nav nav{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.public-nav nav a{color:#514c46;border-radius:8px;align-items:center;min-height:38px;padding:0 12px;font-size:13px;font-weight:800;text-decoration:none;transition:background .18s,color .18s;display:inline-flex}.public-nav nav a:hover{background:var(--warm);color:var(--ink)}.public-nav-actions{align-items:center;gap:10px;display:inline-flex}.public-language-switcher{border:1px solid var(--line);background:#ffffffb8;border-radius:8px;align-items:center;gap:4px;min-height:40px;padding:4px;display:inline-flex}.public-language-switcher a{min-width:34px;min-height:30px;color:var(--muted);border-radius:6px;justify-content:center;align-items:center;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex}.public-language-switcher a.active{background:var(--warm);color:var(--ink)}.pre-enrollment-nav{justify-content:space-between}.pre-enrollment-nav .public-logo{flex-shrink:0}.public-hero{min-height:min(660px,100vh - 128px);padding:64px 0 82px;position:relative;overflow:hidden}.public-hero:after{content:"";background:#ff8a0014;border-radius:50%;width:70vw;height:70vw;position:absolute;bottom:-20vh;right:-10vw}.public-hero-layout{z-index:2;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);align-items:center;gap:clamp(28px,4vw,56px);display:grid;position:relative}.hero-copy{z-index:3;max-width:760px;position:relative}.hero-copy h1{letter-spacing:0;text-wrap:balance;max-width:760px;margin:12px 0 18px;font-size:clamp(46px,4.9vw,74px);font-weight:900;line-height:1}.hero-copy p{color:#4d4740;max-width:650px;margin:0;font-size:clamp(17px,1.6vw,21px);font-weight:650;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.trust-line{color:var(--muted);margin-top:18px;font-size:13px;font-weight:800;display:block}.hero-product-preview{z-index:2;pointer-events:none;min-height:510px;position:relative}.preview-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd6;border:1px solid #e9e6e1e6;border-radius:8px;gap:8px;padding:18px;display:grid;position:absolute;box-shadow:0 24px 80px #1717171a}.preview-panel span,.preview-panel small{color:var(--muted);font-size:12px;font-weight:800}.preview-panel strong{font-size:44px;font-weight:900;line-height:1}.preview-panel b{font-size:18px;font-weight:900}.preview-main{width:min(258px,72%);min-height:206px;top:18px;right:20px}.preview-session{width:min(300px,82%);bottom:26px;left:0}.preview-report{width:min(278px,78%);top:194px;right:0}.preview-bars{align-items:end;gap:10px;height:86px;margin-top:12px;display:flex}.preview-bars i{background:linear-gradient(180deg, var(--primary), #ffb45b);border-radius:999px 999px 4px 4px;width:100%}.public-section{padding:76px 0}.section-title{max-width:720px;margin-bottom:28px}.public-section h2,.final-public-cta h2{letter-spacing:0;margin:8px 0 0;font-size:clamp(30px,3.2vw,48px);font-weight:900;line-height:1.05}.public-section p{color:var(--muted);font-weight:650;line-height:1.65}.public-problem{grid-template-columns:minmax(0,.95fr) minmax(300px,1.05fr);align-items:center;gap:42px;display:grid}.problem-grid,.method-grid,.steps-grid,.case-grid,.offer-grid,.profile-proof-layout,.trust-grid-public{gap:14px;display:grid}.problem-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.problem-grid article,.method-grid article,.steps-grid article,.case-grid article,.offer-grid article,.profile-proof-layout article,.trust-grid-public article,.proof-document,.faq-list details{border:1px solid var(--line);background:var(--panel);border-radius:8px;box-shadow:0 18px 48px #1717170d}.problem-grid article{color:#3b3732;align-items:end;min-height:118px;padding:18px;font-size:16px;font-weight:850;display:grid}.trust-grid-public{grid-template-columns:repeat(4,minmax(0,1fr))}.trust-grid-public article{color:#3b3732;align-items:end;min-height:132px;padding:18px;font-size:15px;font-weight:850;display:grid}.method-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.method-grid article,.steps-grid article,.case-grid article,.offer-grid article,.profile-proof-layout article{padding:20px}.method-grid span,.steps-grid span{background:var(--warm);color:#7a4300;border-radius:8px;align-items:center;width:fit-content;min-height:30px;padding:0 10px;font-size:12px;font-weight:900;display:inline-flex}.method-grid h3,.steps-grid h3,.case-grid h3,.offer-grid h3,.profile-proof-layout h2{margin:14px 0 8px;font-size:20px;font-weight:900;line-height:1.18}.benefit-band,.proof-band,.final-public-cta{color:#fff;background:#171717}.benefit-band .eyebrow,.proof-band .eyebrow,.final-public-cta .eyebrow{color:#ffb45b}.benefit-layout,.proof-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:32px;display:grid}.benefit-band h2,.proof-band h2,.final-public-cta h2{color:#fff}.benefit-band p,.proof-band p,.final-public-cta p{color:#ffffffb8}.benefit-list{flex-wrap:wrap;gap:10px;display:flex}.benefit-list span{color:#fff;background:#ffffff12;border:1px solid #ffffff24;border-radius:8px;align-items:center;min-height:42px;padding:0 13px;font-size:13px;font-weight:850;display:inline-flex}.steps-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.profile-proof-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.proof-document{color:var(--ink);background:#fffffff5;padding:24px}.proof-head{justify-content:space-between;gap:18px;margin-bottom:18px;display:flex}.proof-head span,.proof-row span{color:var(--muted);font-size:12px;font-weight:850}.proof-head strong{color:var(--primary);font-size:30px;font-weight:900}.proof-row{grid-template-columns:135px minmax(0,1fr);align-items:center;gap:12px;margin-bottom:11px;display:grid}.proof-row i{background:linear-gradient(90deg, var(--primary), #4f9d69);border-radius:999px;height:10px}.proof-document p{color:#514c46;margin:18px 0 0}.case-grid,.offer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.highlight-offer{background:#fff7ef!important;border-color:#ff8a0073!important}.offer-grid .button{margin-top:8px}.faq-list{gap:10px;display:grid}.faq-list details{padding:18px 20px}.faq-list summary{cursor:pointer;color:var(--ink);font-weight:900}.faq-list p{margin:12px 0 0}.final-public-cta{padding:86px 0}.final-public-cta .public-container{max-width:860px;margin:0 auto}.public-footer{background:radial-gradient(circle at 88% 8%,#ff8a001a,#0000 28%),#fffdfa;border-top:1px solid #e9e6e1e6}.public-footer-grid{grid-template-columns:minmax(260px,1.35fr) repeat(3,minmax(150px,.75fr));gap:34px;padding:54px 0 34px;display:grid}.public-footer-brand,.public-footer-column{align-content:start;gap:11px;display:grid}.public-footer-logo{width:118px;margin-bottom:6px;display:inline-flex}.public-footer-logo img{width:100%;height:auto;display:block}.public-footer-brand strong{color:var(--ink);font-size:18px;font-weight:900}.public-footer-brand p{max-width:360px;color:var(--muted);margin:0;font-size:14px;font-weight:650;line-height:1.7}.public-footer-column h3{color:var(--ink);text-transform:uppercase;letter-spacing:.04em;margin:0 0 4px;font-size:13px;font-weight:900}.public-footer-column a,.public-footer-column span,.public-footer-legal a{color:#5d574f;width:fit-content;font-size:14px;font-weight:750;text-decoration:none;transition:color .18s,background .18s,border-color .18s}.public-footer-column a:hover,.public-footer-legal a:hover{color:var(--primary)}.public-footer-cta{background:var(--warm);border:1px solid #ff8a0047;border-radius:8px;justify-content:center;align-items:center;min-height:40px;margin-top:8px;padding:0 14px;display:inline-flex;color:#8a4b00!important;font-size:13px!important;font-weight:900!important}.public-footer-cta:hover{background:#ffe9cf;border-color:#ff8a0073}.public-footer-bottom{border-top:1px solid #e9e6e1e6;justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:20px 0 28px;display:flex}.public-footer-bottom>span{color:var(--muted);font-size:13px;font-weight:850}.public-footer-legal{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.public-footer-language{border:1px solid var(--line);background:#fff;border-radius:8px;gap:4px;padding:4px;display:inline-flex}.public-footer-language a{min-width:34px;min-height:30px;color:var(--muted);border-radius:6px;justify-content:center;align-items:center;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex}.public-footer-language a.active{background:var(--warm);color:var(--ink)}.pre-enrollment-page{overflow:visible}.pre-enrollment-hero{grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);align-items:end;gap:28px;padding:74px 0 34px;display:grid}.pre-enrollment-hero h1{letter-spacing:0;max-width:820px;margin:8px 0 16px;font-size:clamp(42px,5.7vw,72px);line-height:.98}.pre-enrollment-hero p{color:#514c46;max-width:720px;margin:0;font-size:18px;font-weight:750;line-height:1.7}.pre-enrollment-reassurance{background:#ffffffc7;border:1px solid #e9e6e1eb;border-radius:14px;gap:10px;padding:18px;display:grid;box-shadow:0 18px 46px #1e181214}.pre-enrollment-reassurance span{color:#554f48;background:#fff8f0;border-radius:10px;align-items:center;min-height:42px;padding:0 12px;font-size:13px;font-weight:900;display:flex}.pre-enrollment-card,.pre-enrollment-success{background:#ffffffeb;border:1px solid #e9e6e1f0;border-radius:18px;width:min(980px,100vw - 44px);margin:0 auto 72px;padding:28px;box-shadow:0 24px 70px #1e181217}.pre-enrollment-card-head{max-width:620px;margin-bottom:24px}.pre-enrollment-card-head span,.pre-enrollment-success span{color:var(--primary);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:900}.pre-enrollment-card-head h1,.pre-enrollment-success h1{margin:8px 0 10px;font-size:clamp(30px,4vw,46px);line-height:1.08}.pre-enrollment-card-head p,.pre-enrollment-success p{color:var(--muted);margin:0;font-weight:650;line-height:1.7}.pre-enrollment-section{border-top:1px solid #e9e6e1db;gap:18px;padding:24px 0;display:grid}.pre-enrollment-section h2{margin:4px 0 0;font-size:22px}.pre-enrollment-age{border:1px solid var(--line);background:#fffaf4;border-radius:10px;align-content:center;gap:4px;min-height:76px;padding:13px 14px;display:grid}.pre-enrollment-age span{color:var(--muted);font-size:12px;font-weight:850}.pre-enrollment-age strong{font-size:18px}.pre-enrollment-section-head{justify-content:space-between;align-items:center;gap:14px;display:flex}.pre-enrollment-section-head .eyebrow{margin:0}.pre-enrollment-toggle,.pre-enrollment-consent{color:#3e3934;align-items:flex-start;gap:10px;font-size:14px;font-weight:850;display:flex}.pre-enrollment-toggle input,.pre-enrollment-consent input{accent-color:var(--primary);margin-top:3px}.enrollment-honeypot{opacity:0;width:1px;height:1px;position:absolute;left:-10000px}.pre-enrollment-actions{border-top:1px solid #e9e6e1db;justify-content:flex-end;padding-top:20px;display:flex}.pre-enrollment-success{align-content:center;justify-items:start;min-height:360px;display:grid}.pre-enrollment-invalid{justify-items:start;gap:14px;display:grid}.user-onboarding-page{overflow:visible}.user-onboarding-hero{grid-template-columns:minmax(0,1fr) minmax(260px,.48fr);align-items:center;padding:54px 0 24px}.user-onboarding-hero h1{max-width:760px;font-size:clamp(34px,4.3vw,58px);line-height:1.04}.user-onboarding-hero p{max-width:680px;font-size:16px}.pre-enrollment-steps{background:#ffffffd1;border:1px solid #e9e6e1eb;border-radius:14px;gap:10px;padding:16px;display:grid;box-shadow:0 18px 46px #1e181214}.pre-enrollment-steps span{color:#554f48;background:#fff8f0;border-radius:10px;align-items:center;min-height:40px;padding:0 12px;font-size:13px;font-weight:900;display:flex}.pre-enrollment-form-card{background:#fffffff0;border:1px solid #e9e6e1f0;border-radius:18px;gap:22px;width:min(960px,100vw - 44px);margin:0 auto 60px;padding:28px;display:grid;box-shadow:0 24px 70px #1e181217}.pre-enrollment-form-grid{gap:22px;display:grid}.pre-enrollment-form-grid section{border-top:1px solid #e9e6e1db;gap:14px;padding-top:20px;display:grid}.pre-enrollment-form-grid section:first-child{border-top:0;padding-top:0}.honeypot{opacity:0;width:1px;height:1px;position:absolute;left:-10000px}@media (max-width:1040px){.public-nav{flex-wrap:wrap;align-items:flex-start}.public-nav nav{order:3;justify-content:flex-start;width:100%}.public-hero{min-height:auto;padding:64px 0 92px}.public-hero-layout{grid-template-columns:1fr;gap:28px}.hero-copy{max-width:800px}.hero-copy h1{max-width:800px;font-size:clamp(44px,7vw,66px)}.hero-product-preview{opacity:1;order:2;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;min-height:0;margin:0;display:grid;position:relative}.preview-panel,.preview-main,.preview-session,.preview-report{width:auto;min-height:160px;position:static}.public-problem,.benefit-layout,.proof-layout{grid-template-columns:1fr}.method-grid,.steps-grid,.trust-grid-public,.public-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pre-enrollment-hero{grid-template-columns:1fr}.public-footer-brand{grid-column:1/-1}}@media (max-width:760px){.public-container{width:min(100% - 32px,1120px)}.public-nav{min-height:0;padding:14px 16px}.public-nav-actions{justify-content:space-between;width:100%}.pre-enrollment-hero{padding:44px 0 24px}.pre-enrollment-hero h1{font-size:clamp(36px,12vw,52px)}.pre-enrollment-card,.pre-enrollment-success{width:min(100% - 32px,980px);padding:20px}.pre-enrollment-actions{justify-content:stretch}.pre-enrollment-section-head{flex-direction:column;align-items:stretch}.pre-enrollment-section-head .button,.pre-enrollment-actions .button{width:100%}.public-nav-actions>.button{flex:1}.public-nav nav a{padding:0 9px}.public-hero{padding:50px 0 72px}.hero-copy{max-width:none}.hero-product-preview,.preview-panel{display:none}.hero-copy h1{text-wrap:balance;max-width:none;font-size:clamp(38px,13vw,58px)}.hero-copy p{font-size:16px}.public-section{padding:54px 0}.problem-grid,.method-grid,.steps-grid,.case-grid,.offer-grid,.profile-proof-layout,.trust-grid-public{grid-template-columns:1fr}.benefit-list span{width:100%}.proof-row{grid-template-columns:1fr;gap:6px}.final-public-cta{padding:62px 0}.public-footer-grid{grid-template-columns:1fr;gap:24px;padding:42px 0 26px}.public-footer-brand{grid-column:auto}.public-footer-bottom{flex-direction:column;align-items:flex-start}.public-footer-legal{justify-content:flex-start}.public-footer-column a,.public-footer-column span{align-items:center;min-height:34px;display:inline-flex}}.app-shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--panel);color:var(--ink);border-right:1px solid var(--line);flex-direction:column;gap:26px;padding:22px;display:flex}.brand{gap:12px;display:grid}.brand-logo-link{align-items:center;width:fit-content;max-width:100%;display:inline-flex}.brand-logo-image{width:112px;max-width:100%;height:auto;display:block}.login-logo-wrap{align-items:center;display:flex}.login-logo-image{width:132px;max-width:100%;height:auto;display:block}.brand>span,.muted{color:var(--muted)}.brand>span{font-size:13px;font-weight:700;display:block}.brand-user-card{background:linear-gradient(135deg,#fff4e8e6,#ffffffe6);border:1px solid #ff8a0029;border-radius:14px;gap:3px;padding:11px 12px;display:grid}.brand-user-card strong{color:var(--ink);font-size:14px;line-height:1.25}.brand-user-card span{color:var(--primary-dark);font-size:12px;font-weight:800;line-height:1.25}.nav{gap:8px;display:grid}.nav-item,.button{border:0;border-radius:8px}.nav-item{color:#514c46;text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-size:14px;font-weight:700;text-decoration:none;transition:all .18s;display:flex;position:relative}.nav-item:hover,.nav-item.active{background:var(--warm);color:var(--ink)}.nav-badge{background:var(--primary);color:#fff;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 7px;font-size:11px;font-weight:900;line-height:1;display:inline-grid}.workspace{min-width:0;padding:28px}.topbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px;display:flex}.topbar h2{margin:2px 0 0;font-size:28px;font-weight:800}.eyebrow{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.top-actions,.row-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.language-switcher{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-items:center;gap:8px;width:auto;min-height:40px;padding:0 10px;display:inline-flex}.language-switcher label{align-items:center;gap:8px;display:inline-flex}.language-switcher span{color:var(--muted);font-size:12px;font-weight:800}.language-switcher strong,.language-switcher select{font-size:13px;font-weight:800}.language-switcher select{min-height:30px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;outline:none}.global-notifications,.global-chat{position:relative}.chat-trigger,.notification-trigger{border:1px solid var(--line);background:var(--panel);min-height:40px;color:var(--ink);font:inherit;cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.chat-trigger.active,.chat-trigger:hover,.notification-trigger.active,.notification-trigger:hover{background:#fff7ef;border-color:#ff8a0059}.chat-trigger.has-unread{border-color:#ff8a006b;box-shadow:0 10px 24px #ff8a001f}.chat-trigger strong,.notification-trigger strong{background:var(--primary);color:#fff;border-radius:999px;place-items:center;min-width:24px;height:24px;font-size:12px;display:inline-grid}.chat-panel{z-index:55;border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;width:min(820px,100vw - 32px);padding:14px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 24px 70px #1717172e}.chat-toast{z-index:60;width:max-content;max-width:min(280px,100vw - 40px);color:var(--ink);background:#fff7ef;border:1px solid #ff8a0042;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:850;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 42px #17171721}.chat-panel header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.chat-panel h3{margin:3px 0 0;font-size:18px}.chat-layout{grid-template-columns:280px minmax(0,1fr);gap:12px;min-height:430px;display:grid}.chat-sidebar,.chat-thread,.chat-new-box,.chat-conversation-list,.chat-messages{min-width:0}.chat-sidebar{grid-template-rows:auto minmax(0,1fr);gap:10px;display:grid}.chat-new-box{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:8px;padding:12px;display:grid}.chat-new-box>strong,.chat-thread-head strong,.chat-conversation strong,.chat-message strong{font-size:13px;font-weight:800}.chat-new-box input,.chat-compose textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:8px}.chat-new-box input{min-height:38px;padding:0 10px}.chat-user-list{gap:6px;max-height:150px;display:grid;overflow:auto}.chat-user-list label{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:8px;padding:8px;display:flex}.chat-user-list span,.chat-conversation span,.chat-thread-head span,.chat-message small,.chat-empty,.chat-notice{color:var(--muted);font-size:12px;font-weight:700}.chat-user-list small{color:var(--muted);margin-top:2px;display:block}.chat-conversation-list{align-content:start;gap:8px;max-height:218px;display:grid;overflow:auto}.chat-conversation{border:1px solid var(--line);color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:8px;gap:5px;padding:10px 36px 10px 10px;display:grid;position:relative}.chat-conversation.active,.chat-conversation:hover{background:#fff7ef;border-color:#ff8a0059}.chat-conversation.unread{background:#fff8f0;border-color:#ff8a0052}.chat-conversation.unread strong{color:#171717}.chat-conversation span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-conversation b{background:var(--primary);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;font-size:11px;display:inline-grid;position:absolute;top:10px;right:10px}.chat-thread{border:1px solid var(--line);background:#fffdfa;border-radius:8px;grid-template-rows:auto minmax(0,1fr) auto;gap:10px;padding:12px;display:grid}.chat-thread-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.chat-thread-head div{gap:4px;display:grid}.chat-thread-head small{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;padding:5px 8px;font-weight:800}.chat-messages{align-content:start;gap:8px;max-height:260px;display:grid;overflow:auto}.chat-message{border:1px solid var(--line);background:#fff;border-radius:8px;gap:5px;width:min(82%,430px);padding:10px 12px;display:grid}.chat-message.mine{background:var(--warm);border-color:#ff8a0047;justify-self:end}.chat-message p{color:#332f2a;margin:0;font-size:13px;line-height:1.45}.chat-compose{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.chat-compose textarea{resize:vertical;min-height:72px;padding:10px}.chat-empty{border:1px dashed var(--line);background:#fff;border-radius:8px;padding:12px}.chat-notice{background:var(--warm);border:1px solid #ff8a003d;border-radius:8px;margin:0;padding:10px 12px}.messages-page{gap:16px;display:grid}.messages-shell{grid-template-columns:330px minmax(0,1fr) 280px;align-items:stretch;gap:14px;display:grid}.messages-shell.no-context{grid-template-columns:340px minmax(0,1fr)}.messages-left,.messages-center,.messages-right,.messages-create-box,.messages-context-card{border:1px solid var(--line);background:var(--card);min-width:0;box-shadow:var(--shadow);border-radius:8px}.messages-left{grid-template-rows:auto minmax(180px,1fr) auto;gap:12px;padding:12px;display:grid}.messages-toolbar{gap:10px;display:grid}.messages-toolbar input,.messages-create-box input,.messages-create-box select,.messages-create-box textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:8px}.messages-toolbar input,.messages-create-box input,.messages-create-box select{min-height:38px;padding:0 10px}.messages-create-box textarea{resize:vertical;padding:10px}.messages-filter-pills{flex-wrap:wrap;gap:6px;display:flex}.messages-filter-pills button{border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:800}.messages-filter-pills button.active,.messages-filter-pills button:hover{color:var(--ink);background:#fff7ef;border-color:#ff8a0059}.messages-conversation-list{align-content:start;gap:12px;display:grid;overflow:auto}.messages-conversation-section{gap:8px;display:grid}.messages-conversation-section-head{justify-content:space-between;align-items:center;gap:10px;padding:0 2px;display:flex}.messages-conversation-section-head span{color:#5e574f;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:900}.messages-conversation-section-head b{min-width:20px;height:20px;color:var(--muted);background:#f5f0ea;border-radius:999px;place-items:center;font-size:11px;display:inline-grid}.messages-conversation{border:1px solid var(--line);color:var(--ink);text-align:left;cursor:pointer;background:#fffdfa;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;padding:11px 36px 11px 11px;display:grid;position:relative}.messages-conversation.active,.messages-conversation:hover{background:#fff7ef;border-color:#ff8a0059}.messages-conversation.unread{background:#fff8f0;border-color:#ff8a0059}.messages-conversation.unread strong{color:#171717;font-weight:950}.messages-conversation.unread>div>span{color:#332f2a;font-weight:900}.messages-conversation.priority-important{border-left:3px solid #ff8a0099}.messages-conversation.priority-urgent{background:#fff7f4;border-left:3px solid #d74c4c8c}.messages-conversation strong,.messages-create-box>strong,.messages-context-card h4{font-size:14px;font-weight:900;display:block}.messages-conversation strong{padding-right:14px;position:relative}.messages-conversation strong i{background:var(--primary);border-radius:999px;width:8px;height:8px;position:absolute;top:5px;right:0;box-shadow:0 0 0 4px #ff8a001f}.messages-conversation span,.messages-conversation small,.messages-conversation em,.messages-thread-head span,.messages-context-lines span{color:var(--muted);font-size:12px;font-weight:750}.messages-conversation em{text-overflow:ellipsis;white-space:nowrap;background:#ff8a0014;border-radius:999px;max-width:130px;padding:4px 7px;font-style:normal;display:inline-flex;overflow:hidden}.messages-card-tags,.messages-thread-badges,.messages-context-badges,.messages-context-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.messages-card-tags{margin-top:8px}.messages-priority-badge{color:#6d665f;background:#f7f4f0;border:1px solid #e9e2d8;border-radius:999px;align-items:center;min-height:23px;padding:4px 8px;font-size:11px;font-weight:900;line-height:1;display:inline-flex}.messages-priority-badge.important{color:#9a5a16;background:#fff3e6;border-color:#ff8a003d}.messages-priority-badge.urgent{color:#a64035;background:#fff0ed;border-color:#d74c4c38}.messages-conversation>div>span{text-overflow:ellipsis;white-space:nowrap;margin-top:4px;display:block;overflow:hidden}.messages-conversation b{background:var(--primary);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;font-size:11px;display:inline-grid;position:absolute;top:10px;right:10px}.messages-conversation-meta{justify-items:end;gap:6px;min-width:84px;display:grid}.messages-create-box{background:#fffdfa;gap:9px;padding:12px;display:grid}.messages-user-list{max-height:190px}.messages-center{background:#fffdfa;grid-template-rows:auto minmax(360px,1fr) auto;gap:12px;padding:14px;display:grid}.messages-thread-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:12px;display:flex}.messages-thread-head h3{margin:2px 0 4px;font-size:22px;font-weight:900}.messages-thread-body{align-content:start;gap:9px;padding-right:4px;display:grid;overflow:auto}.messages-compose{border-top:1px solid var(--line);padding-top:12px}.messages-right{background:#fffdfa;align-content:start;gap:12px;padding:12px;display:grid}.messages-context-card{box-shadow:none;gap:9px;padding:12px;display:grid}.messages-context-card .button.full{justify-content:center}.messages-context-card h4{margin:0}.messages-context-lines{gap:7px;display:grid}.messages-context-actions{gap:8px;display:grid}.accounting-page{gap:18px;display:grid}.accounting-hero{border:1px solid var(--line);background:#fffdfa;border-radius:8px;justify-content:space-between;align-items:flex-end;gap:18px;padding:24px;display:flex;box-shadow:0 18px 48px #1717170f}.accounting-hero h1{margin:4px 0 8px;font-size:34px;font-weight:900;line-height:1.05}.accounting-hero p,.accounting-title p,.accounting-muted,.payment-family-card p,.payment-family-meta span,.payment-family-meta small,.late-payment-card p,.accounting-priority span,.expense-row small,.financial-analysis{color:var(--muted)}.accounting-hero p,.accounting-title p,.payment-family-card p,.late-payment-card p,.financial-analysis{margin:0;font-weight:700}.accounting-actions,.compact-actions,.accounting-tabs,.modal-actions{flex-wrap:wrap;gap:9px;display:flex}.accounting-actions{justify-content:flex-end}.accounting-message{color:#7a4300;background:#fff7ef;border:1px solid #ff8a0047;border-radius:8px;margin:0;padding:12px 14px;font-size:13px;font-weight:800}.accounting-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;display:grid}.accounting-kpi,.accounting-section,.payment-family-card,.late-payment-card,.accounting-priority,.accounting-chart-card,.financial-summary-grid article{border:1px solid var(--line);background:var(--panel);border-radius:8px;box-shadow:0 18px 48px #1717170d}.accounting-kpi{gap:5px;padding:15px;display:grid}.accounting-kpi span,.accounting-kpi small,.financial-summary-grid span{color:var(--muted);font-size:12px;font-weight:800}.accounting-kpi strong{font-size:24px;font-weight:900}.accounting-tabs{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px}.accounting-tabs a{min-height:38px;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;padding:0 13px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.accounting-tabs a.active,.accounting-tabs a:hover{background:var(--warm);color:var(--ink)}.accounting-section{gap:14px;padding:18px;display:grid}.accounting-section-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.accounting-title{gap:4px;display:grid}.accounting-title h2{margin:0;font-size:22px;font-weight:900}.payment-family-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.payment-family-card{grid-template-columns:minmax(0,1.25fr) minmax(160px,.85fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.payment-family-card h3,.late-payment-card h3{margin:2px 0;font-size:18px;font-weight:900}.payment-family-meta{gap:4px;display:grid}.payment-family-meta strong{font-size:18px;font-weight:900}.compact-actions{grid-column:1/-1}.payment-status{white-space:nowrap;border-radius:999px;align-items:center;width:fit-content;min-height:28px;padding:0 10px;font-size:12px;font-weight:900;display:inline-flex}.status-soft{color:#675f55;background:#f5f2ed}.status-paid{color:#257247;background:#eaf7ef}.status-partial{color:#8a5600;background:#fff4df}.status-late{color:#a53a2b;background:#fff1ee}.status-reminded{color:#5a42a8;background:#f0ecff}.late-payment-list,.accounting-priority-list,.expense-list{gap:10px;display:grid}.late-payment-card{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px;display:grid}.late-payment-days{color:#7a4300;background:#fff7ef;border-radius:8px;justify-items:center;min-width:74px;padding:8px;display:grid}.late-payment-days strong{font-size:24px;font-weight:900}.late-payment-days span{font-size:11px;font-weight:900}.accounting-priority{box-shadow:none;justify-content:space-between;align-items:flex-start;gap:12px;padding:13px;display:flex}.accounting-priority div{gap:5px;display:grid}.accounting-priority small{background:var(--warm);color:#7a4300;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:900}.accounting-filters{flex-wrap:wrap;gap:10px;display:flex}.accounting-filters label,.expense-form label,.payment-action-panel label{color:var(--muted);gap:7px;font-size:12px;font-weight:900;display:grid}.accounting-filters select,.expense-form input,.expense-form select,.expense-form textarea,.payment-action-panel textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:8px;font-size:14px}.accounting-filters select,.expense-form input,.expense-form select{min-height:42px;padding:0 12px}.expense-form textarea,.payment-action-panel textarea{resize:vertical;padding:10px 12px}.accounting-split{grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:12px;display:grid}.accounting-chart-card{box-shadow:none;gap:12px;padding:14px;display:grid;position:relative}.chart-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.accounting-chart-card h3{margin:0;padding-right:42px;font-size:16px;font-weight:900}.chart-expand-button{border:1px solid var(--line);width:34px;height:34px;color:var(--ink);cursor:pointer;background:#fffdfa;border-radius:8px;justify-content:center;align-items:center;font-size:12px;font-weight:900;line-height:1;transition:border-color .18s,background .18s,color .18s;display:inline-flex;position:absolute;top:10px;right:10px}.chart-expand-button:hover{color:#7a4300;background:#fff7ef;border-color:#ff8a0073}.category-bars{gap:10px;display:grid}.category-row{grid-template-columns:120px minmax(0,1fr) 80px;align-items:center;gap:10px;font-size:12px;font-weight:800;display:grid}.category-row div{background:#f4f0ea;border-radius:999px;height:9px;overflow:hidden}.category-row i{border-radius:inherit;background:var(--primary);height:100%;display:block}.category-row strong{text-align:right}.expense-row{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;font:inherit;cursor:pointer;background:#fffdfa;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.expense-row:hover{background:#fff7ef;border-color:#ff8a0059}.expense-row-main{color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;flex:1;justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.expense-row span{gap:4px;display:grid}.financial-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.financial-summary-grid article{box-shadow:none;gap:5px;padding:14px;display:grid}.financial-summary-grid strong{font-size:22px;font-weight:900}.finance-bars{grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:10px;min-height:180px;display:grid}.finance-bars>div{justify-items:center;gap:8px;display:grid}.finance-bar-stack{align-items:end;gap:4px;height:140px;display:flex}.finance-bar-stack i{border-radius:999px 999px 3px 3px;width:14px;min-height:4px}.finance-bar-stack .income{background:var(--primary)}.finance-bar-stack .expense{background:#6f6a63}.finance-bars span,.profit-legend span{color:var(--muted);font-size:11px;font-weight:900}.profit-line-chart{background:linear-gradient(#fffdfa,#fff7ef);border-radius:8px;width:100%;min-height:180px}.profit-line-chart polyline{fill:none;stroke:var(--primary);stroke-linecap:round;stroke-linejoin:round;stroke-width:3px}.profit-legend{justify-content:space-between;display:flex}.financial-analysis{border:1px solid var(--line);background:#fffdfa;border-radius:8px;padding:14px}.accounting-modal-backdrop{z-index:70;background:#1717176b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.chart-fullscreen-backdrop{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1717177a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.chart-fullscreen-panel{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:14px;width:min(1180px,100vw - 48px);max-height:calc(100vh - 48px);padding:18px;display:grid;overflow:auto;box-shadow:0 24px 80px #17171738}.chart-fullscreen-panel header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:12px;display:flex}.chart-fullscreen-panel h2{margin:3px 0 0;font-size:28px;font-weight:900;line-height:1.1}.chart-fullscreen-content .accounting-chart-card{min-height:min(68vh,680px);box-shadow:none;padding:22px}.chart-fullscreen-content .chart-expand-button{display:none}.chart-fullscreen-content .finance-bars{gap:18px;min-height:460px}.chart-fullscreen-content .finance-bar-stack{gap:8px;height:390px}.chart-fullscreen-content .finance-bar-stack i{width:28px}.chart-fullscreen-content .profit-line-chart{min-height:460px}.chart-fullscreen-content .category-bars{align-content:center;gap:18px}.chart-fullscreen-content .category-row{grid-template-columns:180px minmax(0,1fr) 120px;gap:16px;font-size:14px}.chart-fullscreen-content .category-row div{height:14px}.accounting-modal{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:16px;width:min(980px,100%);max-height:min(760px,100vh - 48px);padding:20px;display:grid;overflow:auto;box-shadow:0 28px 90px #1717173d}.accounting-modal.small{width:min(680px,100%)}.accounting-modal header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.accounting-modal h2{margin:3px 0 5px;font-size:26px;font-weight:900}.accounting-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.accounting-detail-grid article{border:1px solid var(--line);background:#fff;border-radius:8px;gap:5px;padding:13px;display:grid}.accounting-detail-tabs{grid-template-columns:.95fr 1.05fr;gap:14px;display:grid}.accounting-detail-tabs h3{margin:0 0 10px;font-size:17px;font-weight:900}.payment-history{gap:8px;display:grid}.payment-history button{border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:10px;display:grid}.payment-history button.active,.payment-history button:hover{background:#fff7ef;border-color:#ff8a0059}.payment-action-panel{gap:12px;display:grid}.payment-action-head{background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex}.payment-action-head div{gap:4px;display:grid}.expense-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.expense-form .wide{grid-column:1/-1}.smart-dashboard{gap:18px;display:grid}.smart-dashboard-hero{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffdfa;border-radius:8px;justify-content:space-between;align-items:flex-end;gap:18px;padding:24px;display:flex}.smart-dashboard-hero h1{color:var(--ink);margin:4px 0 8px;font-size:34px;font-weight:900;line-height:1.05}.smart-dashboard-hero p{max-width:760px;color:var(--muted);margin:0;font-weight:700}.smart-dashboard-actions,.smart-link-grid{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.smart-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.smart-kpi-card,.smart-panel{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:8px}.smart-kpi-card{gap:6px;padding:16px;display:grid}.smart-kpi-card span,.smart-kpi-card small,.smart-action-item span,.smart-action-item small,.smart-activity-item span,.smart-activity-item time,.smart-panel-note,.smart-notification-grid span{color:var(--muted);font-size:12px;font-weight:800}.smart-kpi-card strong{color:var(--ink);font-size:30px;font-weight:900}.smart-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-dashboard-link-panel{background:radial-gradient(circle at 94% 8%,#ff8a001f,#0000 28%),#fffdfa;border-color:#ff8a0033}.admin-dashboard-link-panel>.button{justify-self:start}.admin-dashboard-link-preview{background:#fff8ef;border:1px solid #ff8a0033;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.admin-dashboard-link-preview>div:first-child{gap:5px;min-width:0;display:grid}.admin-dashboard-link-preview span,.admin-dashboard-link-preview small{color:var(--muted);font-size:12px;font-weight:850}.admin-dashboard-link-preview strong{overflow-wrap:anywhere;color:var(--ink);font-size:13px;font-weight:900}.admin-dashboard-link-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.smart-panel{align-content:start;gap:12px;padding:16px;display:grid}.smart-panel-head h2{margin:3px 0 0;font-size:20px;font-weight:900}.smart-list{gap:9px;display:grid}.smart-action-item,.smart-activity-item{border:1px solid var(--line);color:var(--ink);background:#fffdfa;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;text-decoration:none;display:flex}.smart-action-item:hover,.smart-activity-item:hover{background:#fff7ef;border-color:#ff8a0059}.smart-action-item strong,.smart-activity-item strong{margin-bottom:4px;font-size:14px;font-weight:900;display:block}.smart-action-item small{margin-top:5px;display:block}.priority-badge{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;flex:none;padding:6px 8px;font-size:11px;font-weight:900}.priority-high,.priority-urgent{color:#9f3412;background:#fff7ed;border-color:#ff8a0073}.smart-notification-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.smart-notification-grid article{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:5px;padding:12px;display:grid}.smart-notification-grid strong{font-size:24px;font-weight:900}.smart-panel-note{background:var(--warm);border:1px solid #ff8a0038;border-radius:8px;margin:0;padding:10px 12px}.notification-dot{background:var(--primary);border-radius:999px;width:8px;height:8px}.notification-panel{z-index:50;border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;width:min(520px,100vw - 32px);padding:14px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 24px 70px #1717172e}.notification-panel header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.notification-panel h3{margin:3px 0 0;font-size:18px}.notification-list{gap:10px;max-height:420px;display:grid;overflow:auto}.notification-card{border:1px solid var(--line);background:#fffdfa;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px;display:grid}.notification-card.unread{background:#fff8f0;border-color:#ff8a0057}.notification-card div{gap:5px;display:grid}.notification-card strong{font-size:13px;font-weight:800}.notification-filter-row,.notification-global-actions,.notification-card-tags,.notification-card-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.notification-filter-row button{border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850}.notification-filter-row button.active,.notification-filter-row button:hover{color:var(--ink);background:#fff7ef;border-color:#ff8a0059}.notification-filter-row.page-filters button{align-items:center;gap:8px;display:inline-flex}.notification-filter-row.page-filters button strong{min-width:21px;height:21px;color:var(--muted);background:#f5f0ea;border-radius:999px;place-items:center;font-size:11px;display:inline-grid}.notification-global-actions{justify-content:space-between}.notification-card-tags span,.notification-card-tags b{color:#6d665f;background:#f7f4f0;border:1px solid #e9e2d8;border-radius:999px;width:fit-content;padding:4px 7px;font-size:11px;font-weight:900;line-height:1}.notification-card-tags .notification-priority.high,.notification-card-tags .notification-priority.urgent{color:#9a5a16;background:#fff3e6;border-color:#ff8a0042}.notification-card-tags .notification-priority.urgent{color:#a64035;background:#fff0ed;border-color:#d74c4c38}.notification-card-actions{justify-content:flex-end}.notification-card span,.notification-card small,.notification-empty span,.notification-message{color:var(--muted);font-size:12px;font-weight:700}.notification-empty{border:1px dashed var(--line);background:#fffdfa;border-radius:8px;gap:5px;padding:14px;display:grid}.notification-message{background:var(--warm);border:1px solid #ff8a003d;border-radius:8px;margin:0;padding:10px 12px}.notifications-page{gap:16px;display:grid}.notifications-grid{gap:12px;display:grid}.notification-center-card{box-shadow:var(--shadow)}.button{justify-content:center;align-items:center;min-height:40px;padding:0 14px;font-size:14px;font-weight:600;text-decoration:none;transition:all .18s;display:inline-flex}.button.primary{background:var(--primary);color:#fff}.button.primary:hover{background:var(--primary-dark)}.button.secondary{background:var(--warm);color:#7a4300}.button.ghost{color:inherit;border:1px solid var(--line);background:0 0}.sidebar .button.ghost{color:var(--ink);border-color:var(--line);margin-top:auto}.teacher-dashboard .grid{gap:16px;display:grid}.teacher-dashboard .metrics{grid-template-columns:repeat(4,minmax(160px,1fr));margin-bottom:18px}.teacher-dashboard .two-col{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr)}.teacher-dashboard .card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:18px;box-shadow:0 8px 28px #1717170d}.teacher-dashboard .metric strong{margin-top:8px;font-size:32px;font-weight:800;display:block}.teacher-dashboard .metric span{color:var(--muted)}.teacher-dashboard .section-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;display:flex}.teacher-dashboard .section-head h3,.teacher-dashboard .card h3{margin:0;font-size:18px;font-weight:800}.teacher-dashboard .list{gap:10px;display:grid}.teacher-dashboard .list-item{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:8px;padding:14px;display:grid}.teacher-dashboard .compact-item{gap:6px}.teacher-dashboard .session-title-line{align-items:center;gap:10px;min-width:0;display:flex}.teacher-dashboard .session-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.teacher-dashboard .pill{color:#514c46;background:#f5f2ed;border-radius:8px;align-items:center;width:fit-content;min-height:28px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.teacher-dashboard .pill.good{color:#2f6b3a;background:#eef7ed}.teacher-dashboard .pill.warn{color:#9b5a00;background:#fff4e8}.teacher-dashboard .mood-pill{color:#7a4300;background:#fff4e8}.teacher-dashboard p{color:#514c46;margin:0;line-height:1.55}.teacher-dashboard .stars{color:#d5cec4;white-space:nowrap;align-items:center;gap:2px;display:inline-flex}.teacher-dashboard .stars span{font-size:15px}.teacher-dashboard .stars .filled,.teacher-dashboard .stars .half{color:var(--primary)}.teacher-dashboard .stars strong{color:var(--ink);margin-left:5px;font-size:13px;font-weight:800}.teacher-dashboard .empty{border:1px dashed var(--line);color:var(--muted);background:#fffdfa;border-radius:8px;padding:16px;font-size:14px;font-weight:700}.button.danger{color:#fff;background:#b42318}.button:disabled{cursor:not-allowed;opacity:.48}.card-selection-bar{border:1px dashed var(--line);color:var(--muted);background:#fffdfa;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:13px;font-weight:800;display:flex}.card-selection-bar.active{color:#7a4300;background:#fff7ef;border-color:#ff8a0073}.card-selection-bar>div{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.card-select-control{width:fit-content;color:var(--muted);cursor:pointer;align-items:center;gap:7px;font-size:12px;font-weight:800;display:inline-flex}.card-select-control input{width:15px;height:15px;accent-color:var(--primary)}.admin-student-card.selected,.feedback-business-card.selected,.expense-row.selected{background:#fff7ef;border-color:#ff8a0080;box-shadow:0 12px 32px #ff8a001a}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:18px;box-shadow:0 8px 28px #1717170d}.pill.good{color:#2f6b3a;background:#eef7ed}.admin-users-page{gap:18px;display:grid}.admin-user-metrics{grid-template-columns:repeat(6,minmax(120px,1fr));gap:14px;display:grid}.admin-user-metric{gap:8px;display:grid}.admin-user-metric span{color:var(--muted);font-size:12px;font-weight:800}.admin-user-metric strong{font-size:28px;font-weight:800}.admin-user-toolbar{grid-template-columns:minmax(240px,1fr) minmax(180px,220px) minmax(180px,220px);align-items:end;gap:14px;display:grid}.admin-user-toolbar label{color:#3b3732;gap:8px;font-size:13px;font-weight:800;display:grid}.admin-user-toolbar input,.admin-user-toolbar select{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:10px 11px}.admin-user-message{background:var(--warm);color:#7a4300;border:1px solid #ff8a003d;border-radius:8px;margin:0;padding:12px 14px;font-size:13px;font-weight:800}.admin-user-onboarding-panel{gap:16px;display:grid}.admin-user-link-preview{background:var(--warm);border:1px solid #ff8a0038;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.admin-user-link-preview div{gap:4px;min-width:0;display:grid}.admin-user-link-preview span,.admin-user-link-preview small{color:var(--muted);font-size:12px;font-weight:800}.admin-user-link-preview strong{color:#7a4300;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.admin-user-link-actions{justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.admin-user-request-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.admin-user-request-card{border:1px solid var(--line);background:#fffdfa;border-radius:8px;align-content:space-between;gap:14px;min-height:170px;padding:14px;display:grid}.admin-user-request-card h4{margin:10px 0 4px;font-size:18px;font-weight:800}.admin-user-request-card p,.admin-user-request-card small{color:var(--muted);margin:0;font-size:13px;font-weight:700}.admin-students-page{gap:18px;display:grid}.admin-student-metrics,.admin-notification-board{grid-template-columns:repeat(5,minmax(140px,1fr));gap:14px;display:grid}.admin-notification-board{grid-template-columns:repeat(4,minmax(180px,1fr))}.admin-student-metric{gap:8px;display:grid}.admin-student-metric span,.admin-notification-box small{color:var(--muted);font-size:12px;font-weight:800}.admin-student-metric strong{font-size:28px;font-weight:800}.admin-notification-box{align-content:start;gap:12px;display:grid}.admin-notification-box h4,.admin-student-card h4{margin:4px 0;font-size:18px;font-weight:800}.admin-notification-list{gap:8px;display:grid}.admin-notification-list span{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:4px;padding:10px;display:grid}.admin-notification-list strong{font-size:13px}.admin-assignment-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;display:grid}.admin-assignment-switch button{border:1px solid var(--line);color:#514c46;text-align:left;background:#fffdfa;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-height:72px;padding:14px 16px;transition:border-color .18s,background .18s,box-shadow .18s;display:flex}.admin-assignment-switch button.active,.admin-assignment-switch button:hover{background:var(--warm);border-color:#ff8a0057;box-shadow:0 8px 24px #1717170d}.admin-assignment-switch span{font-size:14px;font-weight:800}.admin-assignment-switch strong{color:var(--ink);font-size:26px;font-weight:800}.admin-student-toolbar{grid-template-columns:minmax(240px,1fr) minmax(180px,240px) minmax(180px,220px);align-items:end;gap:14px;display:grid}.admin-student-toolbar label,.admin-chat-textarea{color:#3b3732;gap:8px;font-size:13px;font-weight:800;display:grid}.admin-student-toolbar input,.admin-student-toolbar select,.admin-chat-textarea textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:10px 11px}.admin-student-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.admin-student-card{width:100%;color:inherit;text-align:left;border:1px solid var(--line);cursor:pointer;gap:12px;transition:border-color .18s,transform .18s,box-shadow .18s;display:grid}.admin-student-card:hover{border-color:#ff8a004d;transform:translateY(-1px);box-shadow:0 14px 36px #17171714}.admin-student-card .section-head{margin-bottom:0}.admin-student-card .pill,.admin-student-popup .pill{color:#514c46;background:#f5f2ed;border-radius:8px;align-items:center;width:fit-content;min-height:28px;padding:0 9px;font-size:12px;font-weight:800;display:inline-flex}.admin-student-card .pill.good,.admin-student-popup .pill.good{color:#2f6b3a;background:#eef7ed}.admin-student-card strong{font-size:24px}.admin-student-card-lines,.admin-detail-lines{gap:8px;display:grid}.admin-student-card-lines span,.admin-detail-lines span{color:var(--muted);gap:2px;font-size:12px;font-weight:800;display:grid}.admin-student-card-lines strong,.admin-detail-lines strong{color:var(--ink);font-size:13px;font-weight:800}.admin-student-card-stats{flex-wrap:wrap;gap:8px;display:flex}.admin-student-card-stats span,.admin-student-card small{color:var(--muted);font-size:12px;font-weight:800}.admin-student-card-actions{flex-wrap:wrap;gap:8px;margin-top:2px;display:flex}.admin-student-card-actions .button{min-height:34px;padding:0 11px;font-size:12px}.enrollment-request-panel{gap:16px;display:grid}.enrollment-request-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.enrollment-request-card{border-color:#ff8a0029;gap:14px;display:grid}.enrollment-request-card.converted{opacity:.72}.enrollment-request-card h4{margin:9px 0 3px;font-size:19px}.enrollment-generated-link{background:#fff8ef;border-color:#ff8a0033;justify-content:space-between;align-items:center;gap:16px;display:flex}.enrollment-generated-link>div{gap:5px;min-width:0;display:grid}.enrollment-generated-link strong{overflow-wrap:anywhere;font-size:13px}.enrollment-generated-link span{color:var(--muted);font-size:12px;font-weight:800}.admin-detail-lines.compact{gap:8px}.admin-detail-lines.compact span{background:0 0;border:0;min-height:0;padding:0}.enrollment-review-popup{max-height:calc(100vh - 36px);overflow:auto}.enrollment-source-card{background:radial-gradient(circle at 96% 10%,#ff8a0017,#0000 28%),#fffdfa;margin-bottom:14px}.enrollment-source-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.enrollment-source-grid span{color:#4e4943;background:#ffffffb8;border:1px solid #e9e6e1d6;border-radius:8px;gap:3px;padding:11px;font-size:13px;font-weight:800;display:grid}.enrollment-source-grid strong{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.enrollment-parent-message{background:var(--warm);color:#514c46;border:1px solid #ff8a0033;border-radius:10px;margin:12px 0 0;padding:14px;font-size:14px;font-weight:700;line-height:1.6}.admin-unassigned-popup{width:min(1040px,100vw - 28px)}.admin-unassigned-layout{grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:14px;display:grid}.admin-unassigned-list-card,.admin-teacher-choice-card{align-content:start;gap:12px;display:grid}.admin-unassigned-list,.admin-teacher-choice-list{gap:10px;display:grid}.admin-unassigned-list button{border:1px solid var(--line);color:inherit;text-align:left;background:#fff;border-radius:8px;gap:4px;padding:12px;transition:border-color .18s,background .18s;display:grid}.admin-unassigned-list button.active,.admin-unassigned-list button:hover{background:#fff8ef;border-color:#ff8a0057}.admin-unassigned-list strong{font-size:14px}.admin-unassigned-list span{color:var(--muted);font-size:12px;font-weight:800}.admin-teacher-choice{border:1px solid var(--line);color:inherit;text-align:left;background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:13px;transition:border-color .18s,background .18s,transform .18s;display:flex}.admin-teacher-choice:hover{background:#fffdfa;border-color:#ff8a0057;transform:translateY(-1px)}.admin-teacher-choice>div{gap:3px;display:grid}.admin-teacher-choice strong,.admin-teacher-choice b{font-size:14px}.admin-teacher-choice span,.admin-teacher-choice small,.admin-teacher-choice em{color:var(--muted);font-size:12px;font-weight:800}.admin-teacher-choice em{font-style:normal}.admin-teacher-choice small{color:#2f6b3a;background:#eef7ed;border-radius:8px;align-items:center;width:fit-content;min-height:26px;padding:0 9px;display:inline-flex}.admin-teacher-choice.medium small{background:var(--warm);color:#7a4300}.admin-teacher-choice.high small{color:#9f1d14;background:#fff0ee}.admin-teacher-choice.partial small{background:var(--warm);color:#7a4300}.admin-teacher-choice.unavailable small{color:#9f1d14;background:#fff0ee}.admin-teacher-choice.unknown small{color:#514c46;background:#f5f2ed}.admin-student-popup{width:min(1120px,100vw - 28px)}.admin-student-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;margin-bottom:16px;padding-bottom:12px;display:flex}.admin-student-tabs .tab{border:1px solid var(--line);color:#514c46;background:#fffdfa;border-radius:8px;min-height:36px;padding:0 12px;font-size:13px;font-weight:800}.admin-student-tabs .tab.active{background:var(--warm);color:var(--primary-dark);border-color:#ff8a0057}.admin-student-tabs .tab:disabled{cursor:not-allowed;opacity:.45}.admin-student-tab-panel{gap:14px;display:grid}.admin-create-wizard{min-height:420px}.admin-create-two-columns,.admin-create-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-create-card,.admin-summary-card{align-content:start;gap:12px;display:grid}.admin-summary-card span{color:#3b3732;font-size:13px;font-weight:800;line-height:1.45}.admin-available-teacher-list{gap:10px;display:grid}.admin-available-teacher{border:1px solid var(--line);color:inherit;text-align:left;background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:13px;transition:border-color .18s,background .18s,transform .18s;display:flex}.admin-available-teacher:hover,.admin-available-teacher.selected{background:#fff8ef;border-color:#ff8a0061;transform:translateY(-1px)}.admin-available-teacher>span{gap:3px;display:grid}.admin-available-teacher strong,.admin-available-teacher b{font-size:14px;font-weight:800}.admin-available-teacher small{color:var(--muted);font-size:12px;font-weight:800}.admin-finance-preview{background:var(--warm);border:1px solid #ff8a0038;border-radius:8px;gap:6px;padding:12px;display:grid}.admin-finance-preview span,.admin-finance-preview small{color:var(--muted);font-size:12px;font-weight:800}.admin-finance-preview strong{color:var(--ink);font-size:17px;font-weight:800}.admin-teacher-picker{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:8px;max-height:180px;padding:10px;display:grid;overflow:auto}.admin-teacher-picker label,.admin-chat-visibility label{color:#3b3732;align-items:center;gap:9px;font-size:13px;font-weight:800;display:flex}.admin-teacher-picker input,.admin-chat-visibility input{width:16px;height:16px;accent-color:var(--primary)}.admin-teacher-picker span{gap:2px;display:grid}.admin-teacher-picker small{color:var(--muted);font-size:11px}.admin-preferred-slots{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:12px;padding:12px;display:grid}.admin-preferred-slots .section-head{margin-bottom:0}.admin-preferred-slots .section-head p{margin:4px 0 0}.admin-preferred-slot-list{gap:10px;display:grid}.admin-preferred-slot-row{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(180px,1fr) minmax(120px,150px) minmax(120px,150px) auto;align-items:end;gap:10px;padding:12px;display:grid}.admin-preferred-slot-row.compact{grid-template-columns:minmax(130px,1fr) minmax(100px,120px) minmax(100px,120px) auto}.admin-preferred-slot-row label{color:#3b3732;gap:8px;font-size:13px;font-weight:800;display:grid}.admin-schedule-layout,.admin-chat-layout{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:14px;display:grid}.single-form-grid{grid-template-columns:1fr}.admin-doc-row{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid}.admin-doc-row>div:first-child span,.admin-doc-row>div:first-child small{color:var(--muted);font-size:12px;font-weight:800}.admin-doc-row>div:first-child strong{margin-top:3px;font-size:16px;display:block}.admin-chat-thread{gap:10px;max-height:420px;display:grid;overflow:auto}.admin-chat-message{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:6px;padding:12px;display:grid}.admin-chat-message p{color:#3b3732;margin:0;line-height:1.55}.admin-chat-message small{color:var(--muted);font-size:12px;font-weight:800}.admin-chat-visibility{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.admin-users-table-card{padding:0;overflow:hidden}.admin-users-table-scroll{width:100%;overflow-x:auto}.admin-users-table{border-collapse:collapse;width:100%;min-width:1040px}.admin-users-table th,.admin-users-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:14px 12px}.admin-users-table th{color:#514c46;background:#fffdfa;font-size:12px;font-weight:800}.admin-users-table td{color:#3b3732;font-size:13px;font-weight:700}.admin-users-table tr:last-child td{border-bottom:0}.admin-users-table .pill,.user-status,.presence-pill,.user-self-tag{border-radius:8px;align-items:center;width:fit-content;min-height:28px;padding:0 9px;font-size:12px;font-weight:800;display:inline-flex}.admin-users-table .pill{color:#514c46;background:#f5f2ed}.user-self-tag{background:var(--warm);color:#7a4300;margin-left:8px}.user-status.active{color:#2f6b3a;background:#eef7ed}.user-status.blocked{color:#9f1d14;background:#fff0ee}.presence-pill{color:#514c46;background:#f5f2ed;gap:7px}.presence-pill i{background:#a9a29a;border-radius:999px;width:8px;height:8px}.presence-pill.online{color:#2f6b3a;background:#eef7ed}.presence-pill.online i{background:#2f9e44}.presence-pill.blocked{color:#9f1d14;background:#fff0ee}.presence-pill.blocked i{background:#d92d20}.admin-user-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-user-actions .button{min-height:34px;padding:0 10px;font-size:12px}.admin-user-form-sections{gap:14px;display:grid}.admin-user-form-block{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:12px;padding:14px;display:grid}.admin-user-form-block.sensitive{background:#fff8ef;border-color:#ff8a0042}.admin-user-form-block h4{margin:2px 0 0;font-size:15px}.admin-user-tabs{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.admin-user-tabs button{border:1px solid var(--line);color:#514c46;background:#fffdfa;border-radius:999px;min-height:36px;padding:0 12px;font-size:12px;font-weight:800;transition:border-color .18s,background .18s,color .18s}.admin-user-tabs button.active,.admin-user-tabs button:hover{background:var(--warm);color:#7a4300;border-color:#ff8a005c}.admin-user-tab-panel{gap:14px;display:grid}.admin-user-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.admin-user-detail-grid .wide{grid-column:1/-1}.admin-user-sensitive-panel{gap:12px;display:grid}.admin-user-security-panel{gap:14px;display:grid}.admin-user-reset-panel{border:1px solid var(--line);background:#fffdfa;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.admin-user-reset-panel h4{margin:0 0 4px}.admin-user-reset-panel p{margin:0}.admin-user-history{gap:12px;display:grid}.activity-list{gap:10px;display:grid}.activity-item{border:1px solid var(--line);background:#fffdfa;border-radius:8px;justify-content:space-between;gap:14px;padding:12px;display:flex}.activity-item div{gap:4px;display:grid}.activity-item strong{color:var(--ink);font-size:13px}.activity-item span,.activity-item time{color:var(--muted);font-size:12px;font-weight:800}.empty{border:1px dashed var(--line);color:var(--muted);background:#fffdfa;border-radius:8px;padding:16px;font-size:14px;font-weight:700}.section-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;display:flex}.section-head h3{margin:0;font-size:18px;font-weight:800}.sessions-page{padding-bottom:96px}.sessions-page .empty,.session-document .empty{border:1px dashed var(--line);color:var(--muted);background:#fffdfa;border-radius:8px;padding:16px;font-size:14px;font-weight:700}.session-groups{gap:14px;display:grid}.session-group{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 8px 28px #1717170a}.session-group-head{background:#fffdfa;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:14px 16px;display:flex}.session-group-title-block{flex:1;min-width:0}.session-group-title{font-size:16px;font-weight:800;display:block}.session-group-meta{color:var(--muted);margin-top:3px;font-size:13px;font-weight:700;display:block}.session-add-button{border:1px solid var(--line);background:var(--warm);width:34px;height:34px;color:var(--primary-dark);border-radius:8px;flex:none;justify-content:center;align-items:center;font-size:20px;font-weight:800;line-height:1;text-decoration:none;display:inline-flex}.session-group-body{border-top:1px solid var(--line);gap:10px;padding:12px;display:grid}.student-session-section{background:#fffdfa;border:1px solid #e8ded2c7;border-radius:8px;gap:10px;padding:10px;display:grid}.student-session-section+.student-session-section{margin-top:4px}.student-session-section-head{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:900;display:flex}.student-session-section-head span:last-child{min-width:28px;min-height:24px;color:var(--primary-dark);background:#fff;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.session-group-body[hidden]{border-top:0;padding:0;display:none}.session-group-toggle{border:0;border-top:1px solid var(--line);width:100%;min-height:42px;color:var(--primary-dark);text-align:center;background:#fffdfa;padding:0 16px;font-size:13px;font-weight:800}.session-group-toggle:hover{background:var(--warm)}.session-date-row{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;padding:0;transition:border-color .18s,background .18s,box-shadow .18s;display:block;overflow:hidden}.session-date-row.selected{background:#fff8ef;border-color:#ff8a006b}.session-date-row.is-open{border-color:#ff8a0057;box-shadow:0 10px 28px #1717170f}.session-collapse-card:hover{background:#fffdfa;border-color:#ff8a0047}.session-collapse-card:focus-visible{outline-offset:2px;outline:3px solid #ff8a0038}.session-card-summary{grid-template-columns:auto minmax(0,1fr) minmax(220px,auto) auto auto;align-items:center;gap:12px;min-height:70px;padding:12px;display:grid}.session-check{justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.session-check input{width:18px;height:18px;accent-color:var(--primary)}.session-date-link{min-width:0;color:var(--ink);gap:3px;display:grid}.session-date-link strong{font-size:15px}.session-date-link span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.session-card-badges,.session-meta{flex-wrap:wrap;gap:6px;display:flex}.session-card-badges{justify-content:flex-end}.session-card-actions{justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.session-card-actions .button{min-height:34px;padding:7px 10px;font-size:12px}.sessions-page .pill,.session-document .pill{color:#514c46;background:#f5f2ed;border-radius:8px;align-items:center;width:fit-content;min-height:28px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.sessions-page .mood-pill,.session-document .mood-pill{color:#7a4300;background:#fff4e8}.session-chevron{border:1px solid var(--line);width:28px;height:28px;color:var(--primary-dark);background:#fffdfa;border-radius:8px;justify-content:center;align-items:center;font-size:0;font-weight:900;transition:transform .18s,background .18s;display:inline-flex}.session-chevron:before{content:">";font-size:15px}.session-date-row.is-open .session-chevron{background:var(--warm);transform:rotate(180deg)}.session-card-details{opacity:0;border-top:0 solid #0000;max-height:0;padding:0 12px;transition:max-height .22s,opacity .18s,padding .22s,border-color .18s;overflow:hidden}.session-date-row.is-open .session-card-details{opacity:1;border-top:1px solid var(--line);max-height:900px;padding:0 12px 12px}.session-card-details .session-text-grid{padding-top:12px}.session-card-details .session-meta{margin-top:12px}.session-card-details .row-actions{justify-content:flex-end;margin-top:12px}.session-text-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.session-text-block{border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px}.session-text-block h4{margin:0 0 8px;font-size:14px;font-weight:800}.session-text-block p{color:#3b3732;margin:0;line-height:1.55}.floating-session-actions{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:.88;background:#fffffff0;border:1px solid #e9e6e1eb;border-radius:8px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;width:fit-content;max-width:calc(100vw - 304px);margin-left:auto;padding:10px;display:flex;position:fixed;bottom:22px;right:28px;box-shadow:0 16px 42px #17171724}.floating-session-actions.active{opacity:1;border-color:#ff8a0052;box-shadow:0 18px 48px #1717172e}.floating-session-actions span{color:var(--muted);padding:0 8px;font-size:12px;font-weight:800}.session-detail-overlay{z-index:60;background:#1717175c;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--line);background:#fff;border-radius:8px;width:min(720px,100vw - 28px);max-height:min(88vh,940px);padding:20px;overflow:auto;box-shadow:0 28px 80px #17171738}.modal-card.large,.session-document{width:min(980px,100vw - 28px)}.modal-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.modal-head h3{margin:0;font-size:20px;font-weight:800}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid .wide{grid-column:1/-1}.form-grid label,.field-block{gap:8px;display:grid}.form-grid label{color:#3b3732;font-size:13px;font-weight:800}.form-grid input,.form-grid textarea,.form-grid select,.field-row select{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:10px 11px}.field-label{color:#3b3732;font-size:13px;font-weight:800}.field-row{grid-template-columns:minmax(140px,1fr) minmax(180px,240px) auto;align-items:end;gap:10px;display:grid}.score-preview{border:1px solid var(--line);background:#fffdfa;border-radius:8px;align-content:center;gap:5px;min-height:48px;padding:10px 12px;display:grid}.selected-skills{gap:10px;display:grid}.selected-skill{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(110px,150px) auto;align-items:center;gap:12px;padding:12px;display:grid}.skill-score-field{font-size:12px}.form-error{color:#b42318;margin:12px 0 0;font-size:13px;font-weight:800}.modal-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.icon-button{border:1px solid var(--line);width:34px;height:34px;color:var(--ink);background:#fffdfa;border-radius:8px;font-weight:800}.session-doc-hero{border:1px solid var(--line);background:#fffdfa;border-radius:8px;justify-content:space-between;gap:18px;padding:18px;display:flex}.session-doc-hero h2{margin:4px 0 6px}.session-doc-score{align-content:center;justify-items:end;gap:5px;display:grid}.session-doc-score span{color:var(--muted);font-size:12px;font-weight:800}.session-doc-section{margin-top:16px}.session-kpi-grid{grid-template-columns:repeat(3,minmax(140px,1fr));gap:10px;display:grid}.session-kpi{border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px}.session-kpi span{color:var(--muted);font-size:12px;font-weight:800;display:block}.session-kpi strong{margin-top:6px;font-size:24px;display:block}.skill-bars{margin-top:12px}.bar-chart{border:1px solid var(--line);background:linear-gradient(0deg,#f1ede7 1px,#0000 1px) 0 0/100% 20%;border-radius:8px;align-items:end;gap:12px;min-height:240px;padding:16px;display:flex}.bar-chart-item{flex:70px;grid-template-rows:1fr auto auto;place-items:end center;gap:7px;min-width:62px;height:190px;display:grid}.bar-column{background:linear-gradient(180deg, var(--primary), var(--primary-dark));border-radius:8px 8px 3px 3px;width:min(42px,70%);min-height:10px;box-shadow:0 8px 18px #ff8a002e}.bar-column.mood{background:linear-gradient(#8fb8aa,#4f7f73);box-shadow:0 8px 18px #4f7f732e}.bar-chart-item strong{font-size:13px}.bar-chart-item span{max-width:92px;color:var(--muted);text-align:center;font-size:11px;font-weight:800;line-height:1.2}.stars{color:#d5cec4;white-space:nowrap;align-items:center;gap:2px;display:inline-flex}.stars span{font-size:15px}.stars .filled,.stars .half{color:var(--primary)}.stars strong{color:var(--ink);margin-left:5px;font-size:13px;font-weight:800}.session-doc-nav{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:14px;display:flex}.session-doc-nav span{color:var(--muted);font-size:12px;font-weight:800}.pill{color:#514c46;background:#f5f2ed;border-radius:8px;align-items:center;width:fit-content;min-height:28px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.calendar-toolbar{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.calendar-toolbar h3{margin:2px 0 0}.calendar-shell{border:1px solid var(--line);background:#fff;border-radius:8px;overflow-x:auto;box-shadow:0 8px 28px #1717170d}.calendar-grid{grid-template-columns:74px repeat(7,minmax(142px,1fr));grid-template-rows:64px repeat(var(--slot-count), 58px);min-width:1060px;display:grid}.calendar-time-head,.calendar-day-head,.calendar-hour,.calendar-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.calendar-time-head,.calendar-day-head{z-index:1;background:#fffdfa;position:sticky;top:0}.calendar-day-head{min-height:64px;padding:12px}.calendar-day-head strong{text-transform:capitalize;display:block}.calendar-day-head span,.calendar-hour{color:var(--muted);font-size:12px;font-weight:800}.calendar-hour{background:#fffdfa;padding:12px 10px}.calendar-hour.half{color:#87918c;background:#fff}.calendar-cell{background:#fff;padding:6px;position:relative}.calendar-cell.half{background:#fffefa}.calendar-cell:hover{background:var(--warm)}.slot-add{width:30px;height:30px;color:var(--muted);opacity:0;background:0 0;border:1px dashed #d9d2c8;border-radius:8px;font-weight:900}.calendar-cell:hover .slot-add,.slot-add:focus{opacity:1}.lesson-block{z-index:2;border:1px solid #ff8a003d;border-left:4px solid var(--primary);width:100%;height:calc(100% - 12px);color:var(--ink);text-align:left;background:#fff4e8;border-radius:8px;align-content:start;align-self:stretch;gap:4px;margin:6px;padding:9px;display:grid;overflow:hidden}.lesson-block-open{color:inherit;text-align:left;background:0 0;border:0;gap:4px;padding:0;display:grid}.lesson-block strong{font-size:13px}.lesson-block span,.lesson-block em{color:#5c5148;font-size:12px;font-style:normal;font-weight:800}.lesson-block small{color:#7a4300;background:#fff4e8;border-radius:7px;width:fit-content;padding:2px 7px;font-size:10px;font-weight:800}.lesson-join-link{background:var(--primary);color:#fff;border-radius:7px;width:fit-content;margin-top:3px;padding:4px 8px;font-size:11px;font-weight:800;text-decoration:none}.lesson-block.status-annule{background:#fbebe9;border-left-color:#b42318}.lesson-block.status-deplace{background:#fff6de;border-left-color:#b7791f}.video-room-page{grid-template-rows:auto minmax(420px,1fr) auto;gap:16px;min-height:calc(100vh - 56px);display:grid}.video-room-header,.video-room-shell,.video-room-footnote{border:1px solid var(--line);background:var(--panel);border-radius:8px;box-shadow:0 8px 28px #1717170a}.video-room-header{justify-content:space-between;align-items:flex-start;gap:18px;padding:18px;display:flex}.video-room-header h1{margin:3px 0 6px;font-size:28px;font-weight:800}.video-room-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.video-status{border:1px solid var(--line);min-height:34px;color:var(--muted);background:#fffdfa;border-radius:8px;align-items:center;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.video-status.connected{color:#207344;background:#eefaf3;border-color:#2386544d}.video-room-shell{min-height:520px;overflow:hidden}.video-room-frame{background:#111;border:0;width:100%;height:100%;min-height:520px}.video-room-placeholder{min-height:520px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:8px;padding:24px;display:grid}.video-room-placeholder strong{color:var(--ink);font-size:20px}.video-room-footnote{flex-wrap:wrap;gap:8px;padding:12px;display:flex}.video-room-footnote span{background:var(--warm);color:#7a4300;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.lesson-detail-modal{width:min(1080px,100vw - 28px)}.lesson-detail{gap:16px;display:grid}.lesson-detail-hero,.lesson-profile-head{border:1px solid var(--line);background:#fffdfa;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px;display:flex}.lesson-detail-hero h2,.lesson-profile-head h3{margin:4px 0 6px}.lesson-status{align-self:center}.lesson-status.status-prevu,.lesson-status.status-termine{color:var(--primary-dark);background:#fff4e8}.lesson-status.status-annule{color:#b42318;background:#fbebe9}.lesson-status.status-deplace{color:#8a5b00;background:#fff6de}.tabs{gap:8px;margin:0;display:flex;overflow-x:auto}.tab{border:1px solid var(--line);min-height:40px;color:var(--ink);background:#fff;border-radius:8px;padding:0 12px;font-weight:800}.tab.active{border-color:var(--primary);background:var(--primary);color:#fff}.lesson-detail-panel{gap:14px;display:grid}.lesson-detail-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:14px;display:grid}.lesson-info-card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px}.lesson-info-card h4{margin:0 0 12px}.lesson-info-list{gap:10px;margin:0;display:grid}.lesson-info-list div{border-bottom:1px solid var(--line);justify-content:space-between;gap:14px;padding-bottom:8px;display:flex}.lesson-info-list dt{color:var(--muted);font-size:12px;font-weight:800}.lesson-info-list dd{text-align:right;margin:0;font-weight:800}.lesson-note{background:#fffdfa;border-radius:8px;margin-top:14px;padding:12px}.lesson-note span{color:var(--muted);font-size:12px;font-weight:800}.lesson-note p{margin:6px 0 0}.lesson-quick-form{gap:10px;display:grid}.lesson-profile,.lesson-sessions-panel,.lesson-session-document{gap:14px;display:grid}.lesson-profile-grid{grid-template-columns:repeat(3,minmax(140px,1fr));gap:10px;display:grid}.lesson-skill-row{flex-wrap:wrap;gap:8px;display:flex}.lesson-session-list{gap:10px;display:grid}.session-date-row.compact{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.session-date-row.compact .session-date-link{text-align:left;background:0 0;border:0}.lesson-session-return{justify-content:flex-start;display:flex}.teacher-students-page,.teacher-feedback-page{gap:16px;display:grid}.teacher-section-intro{margin-bottom:0}.teacher-section-intro h3{margin:2px 0 4px}.student-workspace{gap:16px;display:grid}.student-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.student-profile-card{border:1px solid var(--line);min-height:150px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:8px;gap:8px;padding:16px;transition:all .18s;display:grid;box-shadow:0 8px 28px #1717170a}.student-profile-card:hover,.student-profile-card.active{background:#fffdfa;border-color:#ff8a006b;transform:translateY(-1px)}.student-profile-card span{background:var(--warm);color:#7a4300;border-radius:8px;width:fit-content;padding:5px 8px;font-size:11px;font-weight:800}.student-profile-card strong{font-size:18px;font-weight:800}.student-profile-card small,.student-mini-row small,.feedback-row small{color:var(--muted);font-size:12px;font-weight:700}.student-card-stats{flex-wrap:wrap;gap:6px;margin-top:auto;display:flex}.student-card-stats b{border:1px solid var(--line);color:#514c46;background:#fff;border-radius:8px;padding:6px 8px;font-size:11px}.student-detail-panel{gap:14px;display:grid}.teacher-student-detail-modal{width:min(1080px,100vw - 28px);max-height:min(86vh,860px);overflow:auto}.student-detail-head{border:1px solid var(--line);background:#fffdfa;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px;display:flex}.student-detail-head h2{margin:4px 0 6px;font-size:26px;font-weight:800}.student-detail-grid{grid-template-columns:minmax(0,1.25fr) minmax(260px,.85fr);gap:14px;display:grid}.student-schedule-block{grid-column:1/-1}.student-detail-block,.student-mini-list,.feedback-groups{gap:10px;display:grid}.student-mini-row,.feedback-row{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:8px;gap:4px;padding:12px;display:grid}.student-mini-row:hover,.feedback-row:hover{background:#fffdfa;border-color:#ff8a0059}.student-mini-row.static{cursor:default}.student-mini-row.static:hover{border-color:var(--line);background:#fff}.student-mini-row span,.feedback-row span{color:var(--primary);font-size:12px;font-weight:800}.student-mini-row strong,.feedback-row strong{font-size:14px}.feedback-document-body{gap:16px;display:grid}.parent-feedback-page,.parent-feedback-grid{gap:18px;display:grid}.parent-feedback-card{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:8px;gap:14px;padding:16px;display:grid}.parent-feedback-card.selected{border-color:#ff8a008c;box-shadow:0 18px 42px #ff8a001f}.parent-feedback-card header,.parent-feedback-card footer,.parent-feedback-card-metrics,.parent-feedback-report-head,.relation-feedback-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.parent-feedback-card h4{margin:2px 0 3px;font-size:20px;font-weight:900}.parent-feedback-card-metrics{flex-wrap:wrap}.parent-feedback-card-metrics span{border:1px solid var(--line);color:#3b3732;background:#fffdfa;border-radius:999px;padding:9px 11px;font-size:12px;font-weight:800}.danger-soft{color:#9f3412}.parent-feedback-report-list{border-top:1px solid var(--line);gap:12px;padding-top:12px;display:grid}.parent-feedback-report{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:10px;padding:12px;display:grid}.parent-feedback-report-head{width:100%;color:var(--ink);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.parent-feedback-report-head strong{font-size:15px;font-weight:900;display:block}.parent-feedback-report-head span,.parent-feedback-report-head small{color:var(--muted);font-size:12px;font-weight:800}.parent-feedback-list{gap:8px;display:grid}.relation-feedback-row{width:100%}.relation-feedback-overlay{z-index:70}.relation-feedback-popup{width:min(1080px,100vw - 28px)}.relation-feedback-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.relation-feedback-form label,.relation-feedback-info{color:#3b3732;gap:8px;font-size:13px;font-weight:800;display:grid}.relation-feedback-form input,.relation-feedback-form select,.relation-feedback-form textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:10px 11px}.relation-feedback-form .wide{grid-column:1/-1}.relation-feedback-info{border:1px solid var(--line);background:#fffdfa;border-radius:8px;padding:12px}.relation-feedback-info span{color:var(--muted)}.relation-feedback-info strong{font-size:14px;font-weight:900}.feedback-business-page{align-content:start}.feedback-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.feedback-summary-card,.feedback-business-card,.feedback-create-panel,.feedback-popup-block{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:8px}.feedback-summary-card{gap:5px;padding:14px;display:grid}.feedback-summary-card span{color:var(--muted);font-size:12px;font-weight:800}.feedback-summary-card strong{color:var(--ink);font-size:28px;font-weight:900}.feedback-summary-card.warn{background:#fff7ed;border-color:#ff8a0073}.feedback-filter-bar{border:1px solid var(--line);background:#fffdfa;border-radius:8px;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding:14px;display:grid}.feedback-filter-bar label,.feedback-create-panel label,.feedback-popup-block label{color:#3b3732;gap:7px;font-size:12px;font-weight:900;display:grid}.feedback-filter-bar select,.feedback-create-panel select,.feedback-popup-block input,.feedback-popup-block select,.feedback-popup-block textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:10px 11px}.feedback-business-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:16px;display:grid}.feedback-create-panel{padding:16px;position:sticky;top:90px}.feedback-context-strip{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:4px;padding:12px;display:grid}.feedback-context-strip span,.feedback-context-strip small{color:var(--muted);font-size:12px;font-weight:800}.feedback-context-strip strong{font-size:16px;font-weight:900}.feedback-main-list{gap:12px;display:grid}.feedback-business-card{grid-template-columns:minmax(118px,auto) minmax(0,1fr) auto;align-items:center;gap:12px 18px;padding:16px;display:grid}.feedback-business-card h4{overflow-wrap:anywhere;margin:5px 0 7px;font-size:19px;font-weight:900;line-height:1.15}.feedback-card-select{align-self:center;min-width:118px}.feedback-card-identity{min-width:0}.feedback-card-period{width:fit-content;max-width:100%;color:var(--accent);text-transform:uppercase;white-space:nowrap;background:#fff4e6;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900;line-height:1.2;display:inline-flex}.feedback-card-people{color:var(--muted);flex-wrap:wrap;gap:6px;font-size:14px;font-weight:750;display:flex}.feedback-card-people span+span:before{content:"•";color:#d9cec3;margin-right:6px}.feedback-card-meta{flex-wrap:wrap;grid-column:2/4;justify-content:flex-start;gap:7px;display:flex}.feedback-card-meta span{border:1px solid var(--line);color:#3b3732;background:#fffdfa;border-radius:999px;padding:7px 9px;font-size:12px;font-weight:800}.feedback-card-actions{white-space:nowrap;justify-content:flex-end;align-self:center;gap:10px;display:flex}.warn-text{color:#9f3412!important;background:#fff7ed!important;border-color:#ff8a0073!important}.feedback-popup-grid{gap:12px;display:grid}.feedback-popup-block{gap:10px;padding:14px;display:grid}.feedback-popup-block h4{margin:0;font-size:18px;font-weight:900}.feedback-distribution-confirm{background:#fff8ef;border:1px solid #ff8a0047;border-radius:8px;gap:14px;margin-top:14px;padding:16px;display:grid}.feedback-distribution-confirm h4{margin:2px 0 4px;font-size:19px;font-weight:900}.feedback-distribution-recipients{flex-wrap:wrap;gap:8px;display:flex}.feedback-distribution-recipients span{border:1px solid var(--line);background:#fff;border-radius:8px;gap:2px;min-width:150px;padding:10px 12px;display:grid}.feedback-distribution-recipients strong{color:var(--ink);font-size:13px;font-weight:900}.feedback-distribution-recipients small{color:var(--muted);font-size:12px;font-weight:800}.feedback-info-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.admin-feedback-page{gap:16px;display:grid}.admin-feedback-summary{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-feedback-filter{grid-template-columns:1.6fr repeat(5,minmax(130px,1fr));align-items:end}.admin-feedback-chips{flex-wrap:wrap;align-self:stretch;gap:8px;display:flex}.admin-feedback-chips button{border:1px solid var(--line);color:#3b3732;background:#fff;border-radius:999px;padding:9px 11px;font-size:12px;font-weight:900}.admin-feedback-chips button.active{color:#9f3412;background:#fff7ed;border-color:#ff8a0073}.admin-feedback-row{text-align:left}.admin-feedback-popup{max-height:min(86vh,920px);overflow:auto}.admin-accounting-page{align-content:start}.admin-accounting-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-accounting-layout{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);align-items:start;gap:16px;display:grid}.admin-finance-alert-list,.admin-finance-report-grid{gap:10px;display:grid}.admin-finance-alert{border:1px solid var(--line);background:#fffdfa;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px;display:grid}.admin-finance-alert h3{margin:2px 0 4px;font-size:17px;font-weight:900}.admin-finance-alert p{color:var(--muted);margin:0;font-size:13px;font-weight:750}.admin-finance-alert>b{color:#9f3412;font-size:15px;font-weight:900}.admin-finance-report-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-finance-report{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:6px;padding:14px;display:grid}.admin-finance-report strong{font-size:16px;font-weight:900}.admin-finance-report span{color:var(--muted);font-size:13px;font-weight:800}.admin-finance-report b{color:var(--ink);font-size:18px;font-weight:900}.activity-list.compact{gap:8px}.reports-page{gap:16px;display:grid}.report-groups{gap:14px;display:grid}.report-group-body{gap:10px;display:grid}.report-row{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:14px;transition:all .18s;display:flex}.report-row:hover,.report-row.active{background:#fffdfa;border-color:#ff8a0066}.report-row strong,.report-row span{display:block}.report-row-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.report-row strong{font-size:15px;font-weight:800}.report-row span,.report-row small,.report-popup-nav span{color:var(--muted);font-size:12px;font-weight:800}.report-row-score{white-space:nowrap;justify-items:end;gap:4px;display:grid}.report-row-score span{color:var(--ink);font-size:18px}.report-status-badge,.report-version-chip,.report-filter-chip strong{border-radius:999px;justify-content:center;align-items:center;min-height:28px;padding:0 10px;font-size:11px;font-weight:800;display:inline-flex}.report-status-badge{border:1px solid #0000}.report-status-badge.draft{color:#7d6953;background:#f6f1ea;border-color:#ead9c9}.report-status-badge.sent{color:#305f99;background:#eef5ff;border-color:#cfe0f5}.report-status-badge.warning{color:#b85e00;background:#fff1e6;border-color:#ffd1a6}.report-status-badge.ready{color:#32724b;background:#edf8ee;border-color:#cfe7d5}.report-status-badge.done{color:#505d6d;background:#f1f3f6;border-color:#dce2e9}.report-version-chip{border:1px solid var(--line);color:var(--muted);background:#fffdfa}.report-detail-overlay .report-popup-card{max-height:92vh;overflow:auto}.report-popup-head{z-index:2;background:#fff;position:sticky;top:0}.report-popup-head p{margin:4px 0 0}.report-popup-tools{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:14px;margin-bottom:16px;padding:16px;display:grid}.report-popup-tools-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.report-popup-tools h4{margin:3px 0 0}.report-workflow-summary,.report-send-panel,.report-history-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:10px;padding:14px;display:grid}.report-workflow-badges{flex-wrap:wrap;gap:8px;display:flex}.report-workflow-meta{gap:6px;display:grid}.report-workflow-meta p,.report-send-panel small{color:var(--muted);margin:0;font-size:12px;font-weight:700}.report-warning-banner{color:#9a5a16;background:#fff7ef;border:1px solid #ffd1a6;border-radius:8px;padding:12px 14px;font-size:13px;font-weight:800}.report-confirm-panel{background:#fff8f0;border:1px solid #ff8a0047;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px;display:flex}.report-confirm-panel h4{margin:0 0 6px;font-size:15px;font-weight:900}.report-confirm-panel p{color:#5f574f;margin:0;font-size:13px;font-weight:700;line-height:1.5}.report-transmit-button{box-shadow:0 10px 24px #ff8a0038}.report-ai-panel{background:linear-gradient(135deg,#fff8ef,#fff);border:1px solid #ff8a0038;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.report-ai-panel h4{margin:3px 0 4px;font-size:15px;font-weight:900}.report-ai-panel p:not(.eyebrow){max-width:720px;color:var(--muted);margin:0;font-size:13px;font-weight:700;line-height:1.5}.ai-report-button{min-width:170px}.ai-report-button:hover:not(:disabled){background:#e97800}.report-download-button{justify-content:center;min-width:190px;box-shadow:0 10px 24px #ff8a0038}.report-send-panel label{color:#3b3732;gap:8px;font-size:13px;font-weight:800;display:grid}.report-send-panel textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;resize:vertical;background:#fff;border-radius:8px;padding:10px 11px}.report-history-list{gap:10px;display:grid}.report-history-list article{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:4px;padding:10px 12px;display:grid}.report-history-list article strong,.report-history-list article span,.report-history-list article small{margin:0}.report-history-list article span,.report-history-list article small{color:var(--muted);font-size:12px;font-weight:700}.report-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.report-editor-grid label{color:#3b3732;gap:8px;font-size:13px;font-weight:800;display:grid}.report-editor-grid textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;resize:vertical;background:#fff;border-radius:8px;padding:10px 11px}.report-popup-nav{border-top:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:14px 0 0;display:flex;position:sticky;bottom:0}.report-period-builder{grid-template-columns:minmax(220px,1fr) minmax(180px,240px) minmax(150px,180px) minmax(150px,180px) auto;align-items:end;gap:14px;display:grid}.report-filter-row{flex-wrap:wrap;gap:10px;display:flex}.report-filter-chip{border:1px solid var(--line);min-height:40px;color:var(--muted);font:inherit;background:#fff;border-radius:999px;align-items:center;gap:10px;padding:0 14px;font-weight:800;display:inline-flex}.report-filter-chip.active{color:var(--ink);background:#fff7ef;border-color:#ff8a0059}.report-period-builder h3{margin:2px 0 4px}.report-period-builder label{color:#3b3732;gap:8px;font-size:13px;font-weight:800;display:grid}.report-period-builder input,.report-period-builder select{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:10px 11px}.report-period-builder .form-error{grid-column:1/-1;margin:0}.parent-directory-page{gap:18px;display:grid}.parent-directory-metrics{grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px;display:grid}.parent-directory-metric,.parent-directory-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;box-shadow:0 8px 28px #1717170a}.parent-directory-metric{padding:16px}.parent-directory-metric span{color:var(--muted);font-size:13px;font-weight:800}.parent-directory-metric strong{margin-top:8px;font-size:28px;font-weight:800;display:block}.parent-directory-toolbar{grid-template-columns:minmax(240px,1fr) minmax(180px,240px) minmax(180px,240px);align-items:end;gap:14px;display:grid}.parent-directory-toolbar label{color:#3b3732;gap:8px;font-size:13px;font-weight:800;display:grid}.parent-directory-toolbar input,.parent-directory-toolbar select{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fffdfa;border-radius:8px;padding:11px 12px}.parent-directory-results{gap:12px;display:grid}.parent-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.parent-directory-card{gap:14px;padding:16px;display:grid}.compact-parent-card{border:1px solid var(--line);width:100%;color:inherit;text-align:left;cursor:pointer;transition:all .18s}.compact-parent-card:hover{background:#fffdfa;border-color:#ff8a0066;transform:translateY(-1px)}.compact-parent-card-main,.compact-parent-card-footer,.compact-parent-card-row{justify-content:space-between;gap:14px;display:flex}.compact-parent-card-main,.compact-parent-card-footer{align-items:flex-start}.compact-parent-card-row{border-top:1px solid var(--line);align-items:center;padding:10px 0}.compact-parent-card-row span,.compact-parent-card-footer small{color:var(--muted);font-size:12px;font-weight:800}.compact-parent-card-row strong{max-width:62%;color:var(--ink);text-align:right;font-size:13px;font-weight:800}.parent-directory-card header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.parent-directory-card h4{margin:3px 0 0;font-size:18px;font-weight:800}.parent-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.parent-contact-grid div,.parent-student-block,.parent-teacher-block,.parent-directory-card footer{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:6px;padding:12px;display:grid}.parent-contact-grid strong,.parent-student-block strong,.parent-teacher-block strong{font-size:14px;font-weight:800}.parent-teacher-list{flex-wrap:wrap;gap:6px;display:flex}.parent-directory-card footer p{color:#3b3732;margin:0;font-size:14px;line-height:1.55}.parent-directory-modal{width:min(1120px,100vw - 28px)}.parent-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.parent-detail-grid-streamlined .parent-relationship-block{grid-column:1/-1}.parent-detail-block{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:12px;padding:14px;display:grid}.parent-detail-block h4{margin:3px 0 0;font-size:17px;font-weight:800}.parent-detail-block-content{gap:10px;display:grid}.parent-detail-block-content>div,.parent-detail-note,.parent-history-list{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:6px;padding:12px;display:grid}.parent-detail-block-content strong{font-size:14px;font-weight:800}.parent-detail-note p,.parent-history-list p{color:#3b3732;margin:0;font-size:14px;line-height:1.55}.parent-history-list>strong{font-size:13px;font-weight:800}.parent-history-list article{border-top:1px solid var(--line);gap:5px;padding-top:9px;display:grid}.parent-history-list article div{justify-content:space-between;gap:12px;display:flex}.parent-history-list article span,.parent-history-list article small{font-size:12px;font-weight:800}.parent-history-list article small{color:var(--muted)}.parent-foldable-card{padding:0;overflow:hidden}.parent-foldable-card summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;list-style:none;display:flex}.parent-foldable-card summary::-webkit-details-marker{display:none}.parent-foldable-card summary span{color:var(--ink);font-size:14px;font-weight:900}.parent-foldable-card summary small{color:var(--muted);font-size:12px;font-weight:800}.parent-foldable-card[open] summary{border-bottom:1px solid var(--line)}.parent-foldable-body{gap:10px;padding:12px;display:grid}.parent-history-row-button,.parent-history-readonly{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;font:inherit;background:#fff;border-radius:8px;gap:6px;padding:12px;display:grid}.parent-history-row-button{cursor:pointer}.parent-history-row-button:hover{border-color:#ff8a0073;transform:translateY(-1px);box-shadow:0 12px 26px #1f1b1614}.parent-history-row-button div,.parent-history-readonly div{justify-content:space-between;gap:12px;display:flex}.parent-history-row-button span,.parent-history-readonly span{font-size:13px;font-weight:900}.parent-history-row-button small,.parent-history-readonly small{color:var(--muted);font-size:12px;font-weight:800}.parent-history-row-button p,.parent-history-readonly p{color:#3b3732;margin:0;font-size:14px;line-height:1.55}.parent-report-detail-overlay{z-index:80}.parent-report-popup-card{width:min(1040px,100vw - 28px)}.parent-readonly-report{margin-top:0}.report-builder{grid-template-columns:minmax(220px,1fr) minmax(180px,240px) minmax(160px,200px) auto auto;align-items:end;gap:14px;display:grid}.report-builder h3{margin:2px 0 0}.report-builder label,.report-editor label{color:#3b3732;gap:8px;font-size:13px;font-weight:800;display:grid}.report-builder input,.report-builder select,.report-editor textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:10px 11px}.report-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.report-editor>div,.report-editor-actions{grid-column:1/-1}.report-editor h3{margin:2px 0 4px}.report-editor-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.monthly-report{border:1px solid var(--line);background:#fff;border-radius:8px;gap:16px;padding:20px;display:grid;box-shadow:0 8px 28px #1717170d}.report-cover,.report-summary-band{border:1px solid var(--line);background:#fffdfa;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px;display:flex}.report-cover-copy{min-width:min(100%,280px)}.report-cover-side{align-content:start;justify-items:end;gap:10px;min-width:112px;margin-left:auto;display:grid}.report-logo{justify-self:end;width:96px;max-width:100%;height:auto;display:block}.report-cover h2,.report-summary-band h3{margin:4px 0 8px}.report-score{align-content:center;justify-items:end;gap:6px;display:grid}.report-score span,.report-kpis span{color:var(--muted);font-size:12px;font-weight:800}.report-section{gap:10px;display:grid}.report-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.single-chart-grid{grid-template-columns:1fr}.report-chart-card{border:1px solid var(--line);background:#fffdfa;border-radius:8px;gap:12px;padding:14px;display:grid}.report-chart-card h4{margin:2px 0 4px}.report-kpis{grid-template-columns:repeat(3,minmax(120px,1fr));gap:10px;min-width:360px;display:grid}.report-kpis article{border:1px solid var(--line);background:#fff;border-radius:8px;padding:12px}.report-kpis strong{margin-top:6px;font-size:20px;display:block}.report-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:8px;padding-top:14px;font-size:12px;font-weight:800}.line-chart{--chart-color:var(--primary);--chart-point:var(--primary-dark);border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px}.line-chart.mood-chart{--chart-color:#87966f;--chart-point:#65734f;background:#fbfcf7}.report-chart-card .line-chart{background:0 0;border:0;padding:0}.line-chart svg{width:100%;height:auto}.line-chart line{stroke:var(--line)}.line-chart polyline{fill:none;stroke:var(--chart-color);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.dual-line-chart .performance-line,.dual-line-chart .mood-line{fill:none;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.dual-line-chart .mood-line{stroke-dasharray:8 7}.dual-line-chart .performance-projection-line{fill:none;stroke:#8f8174;stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:6 8;opacity:.82}.dual-line-chart .performance-line.first,.dual-line-chart .mood-line.first,.dual-line-chart .performance-point.first,.dual-line-chart .mood-point.first{stroke:var(--primary)}.dual-line-chart .performance-line.second,.dual-line-chart .mood-line.second,.dual-line-chart .performance-point.second,.dual-line-chart .mood-point.second{stroke:#65734f}.dual-line-chart .performance-line.outside,.dual-line-chart .mood-line.outside,.dual-line-chart .performance-point.outside,.dual-line-chart .mood-point.outside{stroke:#a9a29a}.line-chart circle{fill:#fff;stroke:var(--chart-point);stroke-width:3px}.line-chart-labels{color:var(--muted);justify-content:space-between;gap:8px;font-size:11px;font-weight:800;display:flex}.mood-chart-legend{flex-wrap:wrap;gap:6px;display:flex}.combined-chart-legend{flex-wrap:wrap;gap:8px;display:flex}.combined-chart-legend span{color:#514c46;align-items:center;gap:7px;font-size:12px;font-weight:800;display:inline-flex;position:relative}.combined-chart-legend span:before{content:"";background:var(--primary);border-radius:999px;width:22px;height:4px}.combined-chart-legend .legend-mood:before{background:#65734f}.combined-chart-legend .legend-month-one:before{background:var(--primary)}.combined-chart-legend .legend-month-two:before{background:#65734f}.combined-chart-legend .legend-performance-style:before{background:#514c46;height:4px}.combined-chart-legend .legend-mood-style:before{background:repeating-linear-gradient(90deg,#514c46 0 8px,#0000 8px 14px);height:4px}.combined-chart-legend .legend-projection-style:before{background:repeating-linear-gradient(90deg,#8f8174 0 6px,#0000 6px 13px);height:4px}.projection-chart-note{color:var(--muted);margin:6px 0 0;font-size:11px;font-weight:700;line-height:1.45}.mood-chart-legend span{color:#5f6b4d;background:#fbfcf7;border:1px solid #dfe5d4;border-radius:8px;padding:6px 8px;font-size:11px;font-weight:800}.report-table{border:1px solid var(--line);border-collapse:collapse;background:#fff;border-radius:8px;width:100%;overflow:hidden}.report-table th,.report-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px}.report-table th{color:var(--ink);background:#fffdfa;font-size:12px;font-weight:800}.report-table tr:last-child td{border-bottom:0}.report-analysis-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.report-skill-grid{flex-wrap:wrap;gap:8px;display:flex}@media (max-width:1020px){.accounting-hero,.accounting-section-head{flex-direction:column;align-items:flex-start}.accounting-actions{justify-content:flex-start}.accounting-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.payment-family-grid,.accounting-split,.accounting-detail-tabs,.app-shell{grid-template-columns:1fr}.sidebar{z-index:5;grid-template-columns:1fr;min-height:auto;display:grid;position:sticky;top:0}.nav{grid-template-columns:repeat(6,minmax(76px,1fr));overflow-x:auto}.sidebar .button.ghost{margin-top:0}.floating-session-actions{width:auto;max-width:none;left:18px;right:18px}.teacher-dashboard .metrics,.teacher-dashboard .two-col,.admin-student-metrics,.admin-notification-board,.admin-assignment-switch,.admin-student-toolbar,.admin-student-grid,.admin-create-two-columns,.admin-create-summary-grid,.admin-preferred-slot-row,.admin-preferred-slot-row.compact,.enrollment-request-grid,.enrollment-source-grid,.admin-unassigned-layout,.admin-schedule-layout,.admin-chat-layout,.admin-user-metrics,.admin-user-toolbar,.admin-user-request-grid,.admin-user-detail-grid,.student-card-grid,.student-detail-grid,.report-editor-grid,.report-period-builder,.report-builder,.report-chart-grid,.report-analysis-grid,.messages-shell,.smart-kpi-grid,.smart-dashboard-grid,.parent-directory-toolbar,.parent-directory-grid,.parent-directory-metrics,.parent-detail-grid,.feedback-summary-grid,.feedback-filter-bar,.feedback-business-layout,.feedback-business-card,.feedback-info-grid,.admin-accounting-layout,.admin-finance-alert,.admin-finance-report-grid{grid-template-columns:1fr}.feedback-card-meta{grid-column:auto}.feedback-card-actions{flex-wrap:wrap;justify-content:flex-start}.report-summary-band,.report-cover,.student-detail-head,.report-popup-tools-head,.report-confirm-panel{flex-direction:column}.card-selection-bar,.expense-row,.expense-row-main{flex-direction:column;align-items:flex-start}.report-kpis{min-width:0}.report-cover-side{justify-items:start}.report-logo{width:86px}}@media (max-width:720px){.workspace{padding:18px}.chat-panel{width:calc(100vw - 36px);left:0;right:auto}.chat-layout{grid-template-columns:1fr;min-height:0}.chat-conversation-list,.chat-messages{max-height:220px}.chat-compose{grid-template-columns:1fr}.topbar,.teacher-dashboard .section-head,.teacher-dashboard .row-actions,.admin-student-card .section-head,.session-list-head,.calendar-toolbar,.lesson-detail-hero,.lesson-profile-head,.session-card-details .row-actions,.session-doc-hero{flex-direction:column;align-items:flex-start}.session-card-summary,.admin-student-metrics,.admin-notification-board,.admin-assignment-switch,.admin-student-toolbar,.admin-student-grid,.admin-preferred-slot-row,.enrollment-request-grid,.enrollment-source-grid,.admin-unassigned-layout,.admin-schedule-layout,.admin-chat-layout,.admin-user-metrics,.admin-user-toolbar,.admin-user-request-grid,.admin-user-detail-grid,.session-text-grid,.form-grid,.field-row,.selected-skill,.lesson-detail-grid,.lesson-profile-grid,.session-date-row.compact,.session-kpi-grid,.student-card-grid,.student-detail-grid,.report-period-builder,.report-builder,.report-editor,.report-chart-grid,.report-analysis-grid,.messages-shell,.smart-kpi-grid,.smart-dashboard-grid,.smart-notification-grid,.parent-directory-toolbar,.parent-directory-grid,.parent-directory-metrics,.parent-contact-grid,.parent-detail-grid,.admin-user-link-preview,.feedback-business-card,.accounting-kpis,.payment-family-card,.late-payment-card,.financial-summary-grid,.accounting-detail-grid,.expense-form,.category-row{grid-template-columns:1fr}.payment-history button{grid-template-columns:1fr;justify-items:start}.smart-dashboard-hero,.smart-dashboard-actions{flex-direction:column;justify-content:flex-start;align-items:flex-start}.feedback-create-panel{position:static}.form-grid .wide,.report-editor>div,.report-editor-actions{grid-column:auto}.session-card-badges{justify-content:flex-start}}@media print{body.printing-report{background:#fff}body.printing-report .marketing-shell,body.printing-report .sidebar,body.printing-report .topbar,body.printing-report .workspace>:not(.active-view),body.printing-report .reports-page>:not(.report-detail-overlay),body.printing-report .report-popup-card>:not(.report-print-shell),body.printing-report .report-screen-only,body.printing-report .report-period-builder,body.printing-report .report-groups,body.printing-report .report-builder,body.printing-report .report-editor,body.printing-report .report-popup-tools,body.printing-report .report-popup-nav,body.printing-report .report-popup-head,body.printing-report .floating-session-actions,body.printing-report .session-detail-overlay:not(.report-detail-overlay),body.printing-report .modal-backdrop,body.printing-report .dialog-backdrop{display:none!important}body.printing-report #app{display:block!important}body.printing-report .session-detail-overlay{background:#fff;padding:0;position:static;inset:auto}body.printing-report .modal-card{width:100%;max-width:none;max-height:none;box-shadow:none;border:0;border-radius:0;overflow:visible}body.printing-report .report-popup-card{background:#fff;padding:0}body.printing-report .report-print-shell{width:100%;display:block!important}body.printing-report .app-shell{display:block}body.printing-report .workspace{padding:0}body.printing-report .view,body.printing-report .reports-page{display:block}body.printing-report .active-view{padding:0}body.printing-report .monthly-report{box-shadow:none;border:0;border-radius:0;width:100%;max-width:none;margin:0}body.printing-report .report-section{gap:4px!important;margin:0!important}body.printing-report .report-section>.section-head{min-height:0!important;margin:0!important;padding:0!important;line-height:1.15!important}body.printing-report .report-section>.section-head h3{margin:0!important;padding:0!important;line-height:1.15!important}body.printing-report .report-section>.section-head+*,body.printing-report .report-chart-grid,body.printing-report .report-analysis-grid{margin-top:0!important}body.printing-report .report-graph-section{gap:2px!important;margin-bottom:0!important}body.printing-report .report-footer{margin-top:18px;padding-top:12px}}.lesson-week-groups{gap:16px;margin-bottom:24px;display:grid}.session-list-head.secondary{margin-top:8px}.lesson-row .session-card-summary{align-items:center}.lesson-row-cancelled{background:#fff8f2b8;border-color:#d1714547}.lesson-status-planned,.lesson-status-moved{color:#9a5400;background:#ff8b001a}.lesson-status-completed{color:#236d48;background:#28a76a1f}.lesson-status-cancelled{color:#9b3333;background:#d75d5d1f}@media (max-width:760px){.lesson-row .session-card-actions{width:100%}}@media (min-width:768px){.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-\[1\.4fr_0\.9fr\]{grid-template-columns:1.4fr .9fr}}
