:root{--ivory:#f8f4ef;--paper:#fffaf5;--ink:#111;--graphite:#292929;--rose:#f4d7dc;--lav:#dccff8;--sky:#d6e6ff;--peach:#f6ddd2;--lime:#e8f5b5;--line:rgba(17,17,17,.11);--shadow:0 22px 70px rgba(55,40,50,.09);--radius:28px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Manrope,Arial,sans-serif;min-height:100vh;overflow-x:hidden}button,input,select{font:inherit}button{color:inherit}.noise{position:fixed;inset:0;pointer-events:none;opacity:.035;z-index:50;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.ambient{position:fixed;filter:blur(70px);border-radius:50%;pointer-events:none;opacity:.58}.ambient-a{width:380px;height:380px;background:var(--rose);top:-160px;left:24%}.ambient-b{width:460px;height:460px;background:var(--lav);right:-220px;bottom:-100px}.shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh;padding:14px;gap:14px;position:relative;z-index:1}.glass{background:rgba(255,255,255,.56);border:1px solid rgba(255,255,255,.72);backdrop-filter:blur(22px);box-shadow:var(--shadow)}.sidebar{height:calc(100vh - 28px);position:sticky;top:14px;border-radius:30px;padding:28px 18px 18px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none;font:600 23px Unbounded,sans-serif;letter-spacing:-1.7px;padding:0 10px 34px}.brand-mark{background:var(--ink);color:white;border-radius:10px;width:33px;height:33px;display:grid;place-items:center;font-family:Georgia,serif;font-style:italic}.brand-dot{color:#aa7da5}.main-nav{display:grid;gap:5px}.nav-item{border:0;background:transparent;border-radius:15px;display:grid;grid-template-columns:28px 1fr auto;text-align:left;align-items:center;padding:13px 12px;cursor:pointer;font-size:13px;font-weight:600;transition:.25s}.nav-item:hover{background:rgba(255,255,255,.7)}.nav-item.active{background:var(--ink);color:white}.nav-icon{font-size:18px}.nav-count{font-size:10px;border:1px solid currentColor;border-radius:20px;padding:2px 6px;opacity:.7}.sidebar-spacer{flex:1}.studio-card{position:relative;background:linear-gradient(145deg,var(--rose),var(--lav));border-radius:23px;padding:18px;min-height:152px;overflow:hidden;margin-bottom:13px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:9px;font-weight:800}.studio-card strong{display:block;font-size:14px;line-height:1.4;margin-top:16px;position:relative;z-index:1}.studio-orbit{position:absolute;width:110px;height:110px;border:1px solid rgba(17,17,17,.24);border-radius:50%;right:-30px;bottom:-40px}.studio-orbit:before{content:"";position:absolute;inset:16px;border:1px solid rgba(17,17,17,.18);border-radius:50%}.studio-orbit span{position:absolute;width:18px;height:18px;background:#fff3c8;border-radius:50%;left:2px;top:18px}.profile{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border:0;background:transparent;text-align:left;padding:9px;cursor:pointer}.avatar{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:white;font-size:11px;font-weight:800}.profile strong,.profile small{display:block}.profile strong{font-size:12px}.profile small{font-size:10px;opacity:.5;margin-top:2px}.more{font-size:10px}.workspace{padding:0 18px 60px;min-width:0}.topbar{height:80px;display:flex;justify-content:flex-end;align-items:center}.mobile-brand{display:none}.topbar-actions{display:flex;align-items:center;gap:9px}.icon-button,.mini-button,.round-add{border:1px solid var(--line);background:rgba(255,255,255,.55);cursor:pointer}.icon-button{width:40px;height:40px;border-radius:50%;font-size:20px;position:relative}.notification i{position:absolute;width:6px;height:6px;background:#e45d75;border-radius:50%;right:6px;top:6px}.primary-button,.black-button{border:0;background:var(--ink);color:white;border-radius:14px;padding:12px 17px;cursor:pointer;font-size:12px;font-weight:700;transition:transform .2s,background .2s}.primary-button:hover,.black-button:hover{transform:translateY(-2px);background:#292929}.primary-button span{margin-right:5px}.view{display:none;max-width:1430px;margin:0 auto}.view.active{display:block}.hero-grid{display:grid;grid-template-columns:minmax(0,1.17fr) minmax(390px,.83fr);gap:22px;align-items:stretch}.hero-copy{padding:54px 28px 42px}.kicker{font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:800;display:flex;align-items:center;gap:9px}.kicker>span{width:22px;height:1px;background:currentColor}.hero-copy h1,.page-intro h1{font:600 clamp(54px,6.1vw,104px)/.87 Unbounded,sans-serif;letter-spacing:-.085em;margin:35px 0 32px}.hero-copy h1 em,.page-intro h1 em,.lesson-top h1 em{font-family:Georgia,serif;font-weight:400}.hero-copy h1 em{color:#b47793}.hero-copy p{font-size:13px;line-height:1.65;color:#666;margin-left:7px}.glass-card,.panel{border:1px solid rgba(255,255,255,.62);box-shadow:var(--shadow)}.next-session{border-radius:var(--radius);background:linear-gradient(150deg,rgba(255,255,255,.82),rgba(244,215,220,.82) 55%,rgba(220,207,248,.82));padding:28px;position:relative;overflow:hidden;min-height:430px}.card-head,.section-heading{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.mini-button{width:32px;height:32px;border-radius:50%;font-size:9px}.session-time{margin-top:54px;font:600 clamp(36px,4vw,63px)/1 Unbounded,sans-serif;letter-spacing:-.075em;position:relative;z-index:1}.session-time span{display:block;font:500 18px Manrope,sans-serif;letter-spacing:-.02em;margin-top:8px;color:#6b5e66}.next-session h2{font-size:22px;line-height:1.1;margin:27px 0 15px;position:relative;z-index:1}.session-meta{display:flex;align-items:center;gap:12px;font-size:10px;color:#675d62;position:relative;z-index:1}.student-stack{display:flex}.student-stack span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#222;color:white;font-size:8px;border:2px solid #f7e7e7;margin-left:-6px}.student-stack span:first-child{margin-left:0}.student-stack span:nth-child(2){background:#b99bc2}.student-stack span:nth-child(3){background:#82a0c8}.session-cta{position:absolute;left:28px;right:28px;bottom:27px;border:0;background:var(--ink);color:white;border-radius:16px;padding:15px 17px;display:flex;justify-content:space-between;cursor:pointer;z-index:2}.orb{position:absolute;border-radius:50%;filter:blur(1px)}.orb-one{width:150px;height:150px;background:linear-gradient(145deg,#fff3cd,#e8b4c3);right:-45px;top:120px;opacity:.8}.orb-two{width:70px;height:70px;background:linear-gradient(145deg,#c7dfff,#c6b1ee);right:92px;top:210px}.dashboard-grid{display:grid;grid-template-columns:1.35fr .75fr .82fr;grid-template-areas:"schedule schedule focus" "metric tasks focus";gap:18px;margin-top:18px}.panel{background:rgba(255,252,248,.75);border-radius:var(--radius);padding:25px}.schedule-card{grid-area:schedule}.section-heading h3,.tasks h3{font-size:25px;margin:8px 0 0;letter-spacing:-.04em}.date-switch{display:flex;align-items:center;gap:12px;font-size:11px}.date-switch button{border:0;background:transparent;font-size:19px;cursor:pointer}.timeline{margin-top:26px}.timeline-row{display:grid;grid-template-columns:56px 4px 1fr auto;gap:16px;align-items:center;padding:10px 0}.timeline-row time{font-size:11px;font-weight:700}.timeline-row .line{width:3px;height:40px;border-radius:4px;background:#ddd}.timeline-row.rose .line{background:#d58da2}.timeline-row.blue .line{background:#8cadd9}.timeline-row.lime .line{background:#aabf58}.timeline-row p{font-size:12px;font-weight:700;margin:0}.timeline-row small{font-weight:500;display:block;color:#888;margin-top:4px}.timeline-row>span{font-size:9px;color:#888;border:1px solid var(--line);padding:5px 7px;border-radius:20px}.dark{background:#151515;color:white}.focus-card{grid-area:focus;position:relative;overflow:hidden;min-height:440px}.focus-card:after{content:"";position:absolute;width:250px;height:250px;background:radial-gradient(circle,var(--lav),transparent 65%);right:-100px;bottom:-110px;opacity:.45}.focus-card .eyebrow,.dark .index{color:#aaa}.focus-card h3{font-size:28px;line-height:1.08;letter-spacing:-.055em;margin-top:47px;max-width:260px}.focus-card h3 em{font-family:Georgia,serif;font-weight:400;color:#e8c3ce}.progress-ring{width:114px;height:114px;border-radius:50%;background:conic-gradient(var(--rose) 0 76%,#3a3a3a 76% 100%);display:grid;place-items:center;margin:42px 0 22px;position:relative}.progress-ring:after{content:"";position:absolute;inset:8px;background:#151515;border-radius:50%}.progress-ring span{position:relative;z-index:1;font:600 27px Unbounded}.progress-ring small{font-size:11px}.focus-card p{font-size:11px;color:#aaa;line-height:1.6}.metric{grid-area:metric;min-height:176px}.gradient-panel{background:linear-gradient(120deg,var(--peach),var(--rose) 42%,var(--lav))}.metric strong{display:block;font:600 37px Unbounded;margin:31px 0 24px;letter-spacing:-.07em}.metric strong span{font:500 16px Manrope;margin-left:5px}.metric-bottom{display:flex;justify-content:space-between;align-items:flex-end;font-size:9px;font-weight:700}.spark{height:27px;display:flex;gap:3px;align-items:end}.spark i{display:block;width:5px;background:#111;border-radius:4px;height:30%}.spark i:nth-child(2){height:54%}.spark i:nth-child(3){height:42%}.spark i:nth-child(4){height:73%}.spark i:nth-child(5){height:57%}.spark i:nth-child(6){height:82%}.spark i:nth-child(7){height:100%}.tasks{grid-area:tasks}.round-add{width:28px;height:28px;border-radius:50%}.tasks label{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:9px 0;border-top:1px solid var(--line);font-size:10px}.tasks h3{margin-bottom:18px}.tasks label small{color:#999;font-size:8px}.tasks input{accent-color:#111}.tasks .done span{text-decoration:line-through;color:#aaa}.page-intro{padding:45px 25px 34px}.page-intro h1{font-size:clamp(50px,5.8vw,92px);margin:28px 0 0}.page-intro h1 em{color:#a97992}.toolbar{display:flex;align-items:center;gap:18px;padding:12px 14px;margin-bottom:18px}.search{flex:1;display:flex;gap:8px;align-items:center;padding-left:8px}.search input{border:0;background:transparent;outline:0;width:100%;font-size:12px}.filter-pills{display:flex;gap:5px}.filter-pills button{border:0;background:transparent;border-radius:20px;padding:8px 11px;font-size:9px;cursor:pointer}.filter-pills button.active{background:#111;color:#fff}.students-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.student-card{background:rgba(255,252,248,.75);border:1px solid rgba(255,255,255,.7);border-radius:26px;padding:22px;min-height:350px;box-shadow:var(--shadow);display:flex;flex-direction:column}.student-card.featured{background:linear-gradient(155deg,#fff8f4,var(--rose))}.student-top{display:flex;justify-content:space-between;align-items:center}.avatar.large{width:55px;height:55px}.peach{background:#ecb4a4}.lilac{background:#a891bd}.blue{background:#8ca8c8}.status{font-size:8px;background:white;border-radius:20px;padding:6px 8px}.status.pale{background:var(--lav)}.student-card h3{font-size:20px;letter-spacing:-.04em;margin:34px 0 5px}.student-card>p{font-size:10px;color:#777}.skill-line{height:3px;background:rgba(0,0,0,.1);margin:29px 0 21px}.skill-line span{display:block;width:var(--p);height:100%;background:#111}.student-stats{display:flex;justify-content:space-between;margin-bottom:22px}.student-stats span{font-size:8px;color:#777}.student-stats b{font-size:13px;color:inherit;display:block;margin-bottom:2px}.student-card>button{margin-top:auto;background:transparent;border:0;border-top:1px solid var(--line);padding:15px 0 0;text-align:left;font-size:10px;font-weight:700;cursor:pointer}.dark-card{background:#171717;color:white}.dark-card p,.dark-card .student-stats span{color:#aaa}.dark-status{background:#333}.dark-card blockquote{font-family:Georgia,serif;font-style:italic;font-size:16px;line-height:1.25;margin:25px 0}.dark-card>button{border-color:#444}.add-card{border:1px dashed #aaa;background:transparent;justify-content:center;align-items:center;text-align:center;box-shadow:none}.add-card>span{font-size:36px}.add-card h3{margin:18px 0 6px}.add-card p{max-width:190px;line-height:1.5}.library-layout{display:grid;grid-template-columns:.85fr 1.4fr;gap:18px}.library-feature{background:#151515;color:#fff;border-radius:30px;padding:31px;min-height:520px;position:relative;overflow:hidden;box-shadow:var(--shadow)}.library-feature h2{font:600 clamp(44px,5vw,76px)/.88 Unbounded;letter-spacing:-.08em;margin:75px 0 18px;position:relative;z-index:1}.library-feature p{font-size:11px;color:#aaa;position:relative;z-index:1}.library-feature button{position:absolute;left:31px;bottom:30px;border:1px solid #555;background:transparent;color:white;padding:12px 15px;border-radius:15px;font-size:10px;z-index:2}.shape{position:absolute;border-radius:50%}.shape-a{width:270px;height:270px;background:linear-gradient(135deg,var(--rose),var(--lav));right:-90px;bottom:20px}.shape-b{width:130px;height:130px;border:1px solid white;right:90px;bottom:85px}.resource-column{display:flex;flex-direction:column;gap:10px}.resource-head{display:flex;justify-content:space-between;align-items:center;margin:4px 4px 14px}.resource{display:grid;grid-template-columns:64px 1fr auto auto;align-items:center;gap:17px;background:rgba(255,252,248,.78);border:1px solid rgba(255,255,255,.75);padding:14px;border-radius:21px}.resource-type{width:64px;height:64px;display:grid;place-items:center;border-radius:16px;font-size:8px;font-weight:800}.rose-bg{background:var(--rose)}.lilac-bg{background:var(--lav)}.blue-bg{background:var(--sky)}.peach-bg{background:var(--peach)}.resource h3{font-size:13px;margin:0 0 5px}.resource p{font-size:9px;color:#888;margin:0}.tag{font-size:8px;border:1px solid var(--line);border-radius:20px;padding:6px 8px}.resource>button{border:0;background:#111;color:white;border-radius:50%;width:31px;height:31px;cursor:pointer}.lesson-view{max-width:none}.lesson-top{display:flex;justify-content:space-between;align-items:end;padding:25px 8px 18px}.lesson-top h1{font:600 clamp(35px,4vw,62px) Unbounded;letter-spacing:-.07em;margin:13px 0 0}.live-dot{width:7px!important;height:7px!important;background:#e45d75!important;border-radius:50%}.lesson-people{display:flex;align-items:center;gap:14px}.lesson-stage{display:grid;grid-template-columns:58px 1fr 210px;gap:10px;height:calc(100vh - 190px);min-height:580px}.lesson-tools{background:#151515;border-radius:22px;padding:10px 8px;display:flex;flex-direction:column;gap:7px;align-items:center}.lesson-tools button{width:40px;height:40px;color:white;background:transparent;border:0;border-radius:12px;cursor:pointer}.lesson-tools button.active{background:white;color:#111}.lesson-tools span{flex:1}.canvas{position:relative;background:linear-gradient(135deg,#f7e2e3,#e0d5f7 55%,#c8dcf2);border-radius:25px;overflow:hidden;padding:35px}.canvas:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px);background-size:40px 40px;pointer-events:none}.canvas-label{font-size:9px;letter-spacing:.14em;font-weight:800}.canvas h2{font:600 clamp(43px,5vw,78px)/.9 Unbounded;letter-spacing:-.08em;margin:30px 0;position:relative;z-index:1}.canvas h2 em{font-family:Georgia,serif;font-weight:400}.reference-frame{position:absolute;width:37%;right:8%;bottom:7%;transform:rotate(2deg);background:#fff;padding:8px;z-index:2;box-shadow:0 20px 50px rgba(0,0,0,.16)}.fake-render{aspect-ratio:1.35;background:linear-gradient(145deg,#1e2027,#5f5261);position:relative;overflow:hidden}.render-sphere{width:41%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 25%,#fff1d2,#c5846b 40%,#3e3340 75%);position:absolute;left:30%;top:19%;box-shadow:24px 28px 35px rgba(0,0,0,.55)}.render-floor{position:absolute;bottom:0;left:0;right:0;height:30%;background:linear-gradient(#6c5961,#2f2b34);transform:skewY(-4deg);transform-origin:left bottom}.reference-frame>span{display:block;font-size:7px;margin:6px 3px 1px}.sticky-note{position:absolute;left:12%;bottom:13%;background:#fff0a9;padding:20px 18px;width:145px;height:110px;transform:rotate(-4deg);font:italic 15px/1.3 Georgia;z-index:3;box-shadow:0 12px 25px rgba(0,0,0,.1)}.draw-line{position:absolute;width:270px;left:34%;top:45%;color:#9b567a;z-index:3}.cursor-label{position:absolute;background:#111;color:#fff;font-size:8px;padding:5px 7px;border-radius:8px 8px 8px 0;z-index:4}.cursor-one{left:59%;top:39%;background:#8e699c}.cursor-two{left:29%;bottom:34%}.lesson-panel{border-radius:23px;padding:10px;display:flex;flex-direction:column;gap:9px}.video-tile{height:125px;background:#d9c8c0;border-radius:17px;display:flex;align-items:center;justify-content:center;position:relative}.video-tile.teacher{background:#242424}.video-avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#5d4f54;color:white;font-size:11px}.video-avatar.pale{background:#f3e9e3;color:#111}.video-tile small{position:absolute;bottom:8px;left:9px;background:rgba(0,0,0,.55);color:white;padding:4px 6px;border-radius:7px;font-size:7px}.notes-mini{background:white;border-radius:17px;padding:15px;margin-top:auto}.notes-mini p{font:italic 13px/1.4 Georgia}.notes-mini button{border:0;background:transparent;padding:0;font-size:9px;font-weight:700}.modal-backdrop{position:fixed;inset:0;background:rgba(20,16,18,.44);backdrop-filter:blur(12px);z-index:100;display:none;place-items:center;padding:20px}.modal-backdrop.open{display:grid}.modal{width:min(540px,100%);background:#fff9f5;position:relative;padding:36px}.modal-close{position:absolute;right:18px;top:15px;border:0;background:transparent;font-size:26px;cursor:pointer}.modal h2{font-size:28px;letter-spacing:-.05em;margin:18px 0 28px}.modal label{display:grid;gap:7px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-top:14px}.modal input,.modal select{border:1px solid var(--line);background:white;border-radius:13px;padding:12px;outline:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-submit{width:100%;margin-top:23px;display:flex;justify-content:space-between}.mobile-nav{display:none}
@media(max-width:1100px){.shell{grid-template-columns:90px 1fr}.sidebar{padding:25px 12px}.brand>span:last-child,.nav-item>span:nth-child(2),.nav-count,.studio-card,.profile>span:nth-child(2),.more{display:none}.brand{justify-content:center;padding-left:0;padding-right:0}.main-nav .nav-item{grid-template-columns:1fr;text-align:center}.profile{display:flex;justify-content:center}.dashboard-grid{grid-template-columns:1fr 1fr;grid-template-areas:"schedule schedule" "metric tasks" "focus focus"}.focus-card{min-height:320px}.focus-card h3{max-width:60%}.progress-ring{position:absolute;right:35px;top:70px}.students-grid{grid-template-columns:repeat(2,1fr)}.lesson-stage{grid-template-columns:58px 1fr}.lesson-panel{display:none}}
@media(max-width:760px){body{padding-bottom:72px}.shell{display:block;padding:8px}.sidebar{display:none}.workspace{padding:0 4px 25px}.topbar{height:62px;justify-content:space-between;padding:0 5px}.mobile-brand{display:block;font:600 18px Unbounded}.topbar .icon-button{display:none}.primary-button{padding:10px 12px}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:35px 10px 15px}.hero-copy h1,.page-intro h1{font-size:48px;line-height:.9;margin-top:27px}.next-session{min-height:390px}.dashboard-grid{display:flex;flex-direction:column}.schedule-card{overflow:hidden}.timeline-row{grid-template-columns:45px 3px 1fr}.timeline-row>span{display:none}.focus-card h3{max-width:75%;font-size:25px}.progress-ring{position:static}.page-intro{padding:35px 10px 26px}.toolbar{flex-wrap:wrap}.filter-pills{order:3;width:100%;overflow:auto}.students-grid{grid-template-columns:1fr}.library-layout{grid-template-columns:1fr}.library-feature{min-height:430px}.resource{grid-template-columns:55px 1fr auto}.resource-type{width:55px;height:55px}.resource .tag{display:none}.lesson-top{align-items:start}.lesson-top h1{font-size:33px}.lesson-people .student-stack{display:none}.lesson-stage{grid-template-columns:1fr;height:calc(100vh - 155px)}.lesson-tools{position:absolute;left:20px;bottom:95px;z-index:10;flex-direction:row;height:55px;width:calc(100% - 40px);padding:7px}.lesson-tools span{flex:1}.canvas{padding:26px 18px}.canvas h2{font-size:42px}.reference-frame{width:57%;right:5%}.sticky-note{left:7%;bottom:11%;width:115px;height:90px;padding:14px;font-size:12px}.draw-line{display:none}.mobile-nav{position:fixed;display:flex;justify-content:space-around;align-items:center;left:8px;right:8px;bottom:8px;height:62px;border-radius:20px;z-index:80}.mobile-nav button{border:0;background:transparent;display:grid;place-items:center;gap:2px;font-size:17px;opacity:.45}.mobile-nav button.active{opacity:1}.mobile-nav small{font-size:7px}.modal{padding:28px 20px}.form-row{grid-template-columns:1fr}.orb-one{right:-80px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Functional educator dashboard */
.main-nav{gap:2px;overflow:auto;scrollbar-width:none}.main-nav::-webkit-scrollbar{display:none}.nav-item{padding:9px 10px;font-size:11px}.nav-icon{font-size:15px}.nav-count.alert{background:#111;color:#fff;border:0}.nav-item.active .nav-count.alert{background:#fff;color:#111}.quick-studio{min-height:118px;padding:15px}.quick-studio strong{font-size:12px;margin-top:11px}.quick-studio button{border:0;background:rgba(255,255,255,.7);border-radius:10px;padding:8px 9px;font-size:8px;font-weight:800;margin-top:12px;cursor:pointer}.today-header{display:flex;align-items:flex-end;justify-content:space-between;padding:22px 4px 24px}.today-header h1{font-size:34px;line-height:1;letter-spacing:-.055em;margin:14px 0 8px}.today-header p{font-size:10px;color:#777;margin:0}.header-tools{display:flex;gap:7px}.soft-button{border:1px solid var(--line);background:rgba(255,255,255,.64);border-radius:12px;padding:9px 12px;font-size:9px;font-weight:700;cursor:pointer}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.stat-strip article{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;background:rgba(255,252,248,.74);border:1px solid rgba(255,255,255,.7);box-shadow:0 12px 35px rgba(55,40,50,.05);border-radius:19px;padding:14px}.stat-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:14px}.stat-strip small,.stat-strip strong{display:block}.stat-strip small{font-size:8px;color:#777}.stat-strip strong{font:600 23px Unbounded;margin-top:3px}.stat-strip em{font-style:normal;font-size:7px;color:#777;align-self:end}.stat-strip em.urgent{color:#a2465d;background:#f8e1e5;padding:4px 6px;border-radius:9px}.ops-layout{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(260px,.72fr);gap:14px}.ops-main,.ops-side{display:flex;flex-direction:column;gap:14px}.agenda-panel{padding:21px}.agenda-panel .section-heading h3,.weekload h3,.activity h3{font-size:20px;margin:6px 0 0;letter-spacing:-.04em}.agenda-actions{display:flex;align-items:center;gap:7px}.agenda-timeline{margin-top:17px}.agenda-hour{display:grid;grid-template-columns:55px 1fr;gap:12px;align-items:center;height:31px}.agenda-hour time{font-size:8px;color:#999}.agenda-hour span{height:1px;background:var(--line)}.agenda-event{display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:15px;align-items:center;border-radius:18px;padding:14px;margin:5px 0 7px;background:#f1eee9;border:1px solid rgba(255,255,255,.6)}.agenda-event>time{font:600 14px Unbounded;letter-spacing:-.05em}.agenda-event>time small{display:block;font:500 8px Manrope;color:#777;margin-top:5px}.event-type{font-size:7px;text-transform:uppercase;letter-spacing:.09em;font-weight:800;opacity:.55}.agenda-event h4{font-size:13px;margin:4px 0 3px}.agenda-event p{font-size:8px;color:#777;margin:0}.agenda-event>button{border:1px solid rgba(0,0,0,.12);background:rgba(255,255,255,.55);border-radius:11px;padding:8px 10px;font-size:8px;font-weight:800;cursor:pointer}.agenda-event.primary-event{background:linear-gradient(110deg,var(--rose),#eee0f7)}.agenda-event.primary-event>button{background:#111;color:white;border-color:#111}.agenda-event.blue-event{background:linear-gradient(110deg,#edf4ff,var(--sky))}.agenda-event.dark-event{background:#1b1b1b;color:#fff}.agenda-event.dark-event p{color:#999}.agenda-event.dark-event>button{color:white;border-color:#555;background:#2a2a2a}.event-students{display:flex;align-items:center;gap:9px;margin-top:8px}.event-students>span{font-size:7px;opacity:.6}.weekload{padding:20px 21px}.week-bars{height:130px;display:flex;align-items:flex-end;gap:10px;margin-top:16px;padding-top:7px;border-top:1px solid var(--line)}.week-bars>div{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;align-items:center}.week-bars i{display:block;width:100%;height:var(--h);max-width:38px;border-radius:9px 9px 4px 4px;background:#e8e2df}.week-bars .current i{background:linear-gradient(var(--lav),#a98fc5)}.week-bars span{font-size:8px;color:#777}.week-bars small{display:inline;margin-left:4px;color:#111;font-weight:800}.next-compact{padding:20px;background:linear-gradient(145deg,var(--peach),var(--rose) 48%,var(--lav));position:relative;overflow:hidden}.next-compact .live-in{font-size:7px;background:rgba(255,255,255,.62);padding:5px 7px;border-radius:10px}.next-compact>strong{display:block;font:600 37px Unbounded;letter-spacing:-.07em;margin:24px 0 8px}.next-compact h3{font-size:15px;margin:0}.next-compact p{font-size:8px;color:#685e63}.next-compact>button{width:100%;display:flex;justify-content:space-between;background:#111;color:#fff;border:0;border-radius:12px;padding:11px;margin-top:18px;font-size:8px;font-weight:800;cursor:pointer}.ops-side .tasks{grid-area:auto;padding:19px}.ops-side .tasks h3{font-size:19px;margin:5px 0 14px}.ops-side .tasks label{font-size:9px}.text-action{border:0;background:transparent;font-size:8px;font-weight:800;padding:10px 0 0;cursor:pointer}.activity{padding:19px}.activity-item{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}.activity .card-head{margin-bottom:13px}.activity-item .avatar{width:31px;height:31px;font-size:8px}.activity-item p,.activity-item p b,.activity-item p small{display:block}.activity-item p{font-size:8px;margin:0}.activity-item p small{color:#999;margin-top:3px}.activity-file,.activity-arrow{font-size:7px;border:1px solid var(--line);padding:5px;border-radius:8px}.activity-item.warning .activity-arrow{background:#f2d2d8;color:#8c304b}.focus-mini{padding:17px 19px}.focus-mini .eyebrow{color:#aaa}.focus-mini p{font-size:9px;color:#aaa;margin:13px 0}.focus-line{height:4px;background:#383838;border-radius:4px;overflow:hidden}.focus-line span{display:block;width:76%;height:100%;background:linear-gradient(90deg,var(--rose),var(--lav))}.legacy-view{display:none!important}
@media(max-width:1100px){.stat-strip{grid-template-columns:repeat(2,1fr)}.ops-layout{grid-template-columns:1fr}.ops-side{display:grid;grid-template-columns:1fr 1fr}.focus-mini{grid-column:1/-1}}
@media(max-width:760px){.today-header{align-items:flex-start;padding:22px 8px 18px}.today-header h1{font-size:27px}.today-header p{line-height:1.4}.header-tools .soft-button{display:none}.stat-strip{grid-template-columns:1fr 1fr;gap:7px}.stat-strip article{grid-template-columns:auto 1fr;padding:10px}.stat-strip em{display:none}.stat-icon{width:33px;height:33px}.stat-strip strong{font-size:18px}.ops-layout{display:block}.ops-main,.ops-side{display:flex}.ops-side{margin-top:10px}.agenda-panel{padding:16px}.agenda-actions>.soft-button{display:none}.agenda-event{grid-template-columns:49px 1fr;padding:11px;gap:9px}.agenda-event>button{grid-column:2}.agenda-event>time{font-size:11px}.weekload{padding:16px}.week-bars{height:110px}.next-compact>strong{font-size:32px}}

/* Schedule workspace */
.schedule-view{max-width:none}.schedule-header{display:flex;justify-content:space-between;align-items:flex-end;padding:25px 4px 20px}.schedule-header h1{font:600 42px/1 Unbounded,sans-serif;letter-spacing:-.07em;margin:13px 0 0}.schedule-controls{display:flex;align-items:center;gap:8px}.calendar-nav{display:flex;align-items:center;gap:4px;background:rgba(255,255,255,.64);border:1px solid var(--line);border-radius:13px;padding:4px}.calendar-nav button{border:0;background:transparent;width:28px;height:28px;border-radius:9px;cursor:pointer}.calendar-nav strong{font-size:9px;padding:0 7px}.view-switch{display:flex;padding:4px;background:rgba(255,255,255,.64);border:1px solid var(--line);border-radius:13px}.view-switch button{border:0;background:transparent;border-radius:9px;padding:7px 10px;font-size:8px;cursor:pointer}.view-switch button.active{background:#111;color:#fff}.schedule-shell{display:grid;grid-template-columns:minmax(0,1fr) 0;gap:0;transition:grid-template-columns .48s cubic-bezier(.2,.8,.2,1),gap .48s cubic-bezier(.2,.8,.2,1)}.schedule-shell.drawer-open{grid-template-columns:minmax(660px,1fr) 355px;gap:14px}.calendar-card{padding:0;overflow:hidden;min-width:0}.calendar-days{height:74px;display:grid;grid-template-columns:58px repeat(7,1fr);border-bottom:1px solid var(--line);background:rgba(255,255,255,.35)}.calendar-days button{border:0;border-left:1px solid var(--line);background:transparent;display:grid;place-content:center;gap:5px;cursor:pointer}.calendar-days small{font-size:7px;text-transform:uppercase;letter-spacing:.12em;color:#888}.calendar-days b{font:600 18px Unbounded}.calendar-days button.current b{background:#111;color:#fff;border-radius:50%;width:34px;height:34px;display:grid;place-items:center}.calendar-scroll{height:calc(100vh - 210px);min-height:650px;overflow:auto}.calendar-canvas{height:864px;position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 71px,rgba(17,17,17,.08) 71px,rgba(17,17,17,.08) 72px)}.time-labels{position:absolute;top:0;bottom:0;left:0;width:58px;display:grid;grid-template-rows:repeat(12,72px);padding-top:0}.time-labels span{font-size:7px;color:#999;padding:7px 0 0 10px}.day-columns{position:absolute;left:58px;right:0;top:0;bottom:0;display:grid;grid-template-columns:repeat(7,1fr)}.day-columns i{border-left:1px solid var(--line)}.day-columns i.current-column{background:rgba(220,207,248,.12)}.event-layer{position:absolute;left:62px;right:4px;top:0;height:864px;display:grid;grid-template-columns:repeat(7,minmax(80px,1fr));grid-template-rows:repeat(24,36px);gap:0 6px;pointer-events:none}.calendar-event{pointer-events:auto;position:relative;text-align:left;border:1px solid rgba(255,255,255,.65);border-radius:14px;padding:10px;overflow:hidden;cursor:pointer;box-shadow:0 8px 24px rgba(40,30,35,.06);transition:transform .2s,box-shadow .2s}.calendar-event:hover,.calendar-event.selected{transform:translateY(-2px);box-shadow:0 14px 28px rgba(40,30,35,.13)}.calendar-event.selected{outline:2px solid #111;outline-offset:2px}.calendar-event small,.calendar-event strong,.calendar-event span{display:block}.calendar-event small{font-size:7px;opacity:.65}.calendar-event strong{font-size:10px;line-height:1.2;margin:8px 0 5px}.calendar-event span{font-size:7px;opacity:.65;line-height:1.3}.calendar-event i{position:absolute;right:8px;bottom:8px;width:22px;height:22px;border-radius:7px;background:rgba(255,255,255,.6);display:grid;place-items:center;font-style:normal;font-size:6px;font-weight:800}.rose-event{background:linear-gradient(145deg,#f9e8e9,var(--rose))}.lavender-event{background:linear-gradient(145deg,#eee9fb,var(--lav))}.calendar-event.blue-event{background:linear-gradient(145deg,#eef5ff,var(--sky));color:#111}.peach-event{background:linear-gradient(145deg,#fff0ea,var(--peach))}.lime-event{background:linear-gradient(145deg,#f4f9dc,var(--lime))}.dark-calendar-event{background:#1b1b1b;color:#fff}.dark-calendar-event i{background:#393939}.now-line{position:absolute;left:49px;right:0;top:438px;height:1px;background:#d96c82;z-index:4;pointer-events:none}.now-line:before{content:"";position:absolute;left:6px;top:-4px;width:8px;height:8px;background:#d96c82;border-radius:50%}.now-line span{position:absolute;left:-43px;top:-8px;background:#d96c82;color:white;border-radius:7px;padding:2px 4px;font-size:6px}.lesson-drawer{min-width:0;background:rgba(255,252,248,.9);border:1px solid rgba(255,255,255,.78);border-radius:28px;box-shadow:var(--shadow);padding:20px;overflow:auto;opacity:0;visibility:hidden;height:calc(100vh - 136px);position:sticky;top:96px}.schedule-shell.drawer-open .lesson-drawer{visibility:visible}.drawer-top,.drawer-person,.drawer-time,.drawer-tabs,.readiness-head,.history-head{display:flex;align-items:center;justify-content:space-between}.drawer-top>div small{display:block;font-size:8px;color:#888;margin-top:5px}.drawer-status{display:inline-block;font-size:7px;text-transform:uppercase;letter-spacing:.08em;background:#eaf2cc;border-radius:10px;padding:5px 7px;font-weight:800}.drawer-close{border:0;background:#eee7e3;width:30px;height:30px;border-radius:50%;font-size:19px;cursor:pointer}.drawer-person{justify-content:flex-start;gap:11px;margin:24px 0 18px}.drawer-person h2{font-size:17px;letter-spacing:-.04em;margin:0 0 4px}.drawer-person p{font-size:8px;color:#777;margin:0}.drawer-person .mini-button{margin-left:auto}.drawer-time{background:#f1ece8;border-radius:16px;padding:12px 14px;margin-bottom:17px}.drawer-time>div{flex:1}.drawer-time>div+div{border-left:1px solid var(--line);padding-left:14px}.drawer-time small,.drawer-time strong{display:block}.drawer-time small{font-size:7px;color:#888;margin-bottom:5px}.drawer-time strong{font-size:11px}.drawer-tabs{justify-content:flex-start;border-bottom:1px solid var(--line);gap:18px}.drawer-tabs button{border:0;background:transparent;padding:9px 0;font-size:8px;color:#888;cursor:pointer;position:relative}.drawer-tabs button.active{color:#111;font-weight:800}.drawer-tabs button.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#111}.drawer-tabs span{font-size:6px;background:#eee5e1;padding:2px 4px;border-radius:6px}.drawer-tab{display:none;padding-top:18px}.drawer-tab.active{display:block}.lesson-summary{padding-bottom:16px;border-bottom:1px solid var(--line)}.lesson-summary h3{font-size:17px;margin:9px 0 7px}.lesson-summary p{font-size:9px;line-height:1.55;color:#777;margin:0}.lesson-readiness{padding:16px 0}.readiness-head{font-size:8px}.readiness-line{height:5px;background:#e4dfdb;border-radius:6px;margin:9px 0 12px;overflow:hidden}.readiness-line span{display:block;height:100%;background:linear-gradient(90deg,#d796a8,#a98ec3);border-radius:6px}.lesson-readiness ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}.lesson-readiness li{font-size:8px;color:#999}.lesson-readiness li:before{content:"○";margin-right:7px}.lesson-readiness li.ready{color:#111}.lesson-readiness li.ready:before{content:"●"}.drawer-action{width:100%;border-radius:13px;padding:11px 13px;margin-top:7px;display:flex;justify-content:space-between;font-size:9px;font-weight:800;cursor:pointer}.drawer-action.secondary{border:1px solid var(--line);background:#fff}.drawer-action.primary{border:0;background:#111;color:#fff}.material-destination{margin-bottom:15px}.destination-switch{display:flex;background:#eee8e4;border-radius:12px;padding:3px;margin-top:9px}.destination-switch button{flex:1;border:0;background:transparent;border-radius:9px;padding:8px;font-size:7px;cursor:pointer}.destination-switch button.active{background:white;box-shadow:0 4px 12px rgba(0,0,0,.05)}.materials-list{display:grid;gap:7px}.materials-list article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;border:1px solid var(--line);border-radius:13px;padding:9px}.file-icon{width:35px;height:35px;border-radius:9px;display:grid;place-items:center;font-size:6px;font-weight:800}.materials-list strong,.materials-list small{display:block}.materials-list strong{font-size:8px;margin-bottom:4px}.materials-list small{font-size:7px;color:#999}.materials-list article>button{border:0;background:transparent;font-size:7px}.upload-zone{width:100%;border:1px dashed #b8aeaa;background:rgba(255,255,255,.5);border-radius:14px;margin-top:10px;padding:16px;display:grid;justify-items:center;gap:4px;cursor:pointer}.upload-zone span{font-size:20px}.upload-zone strong{font-size:8px}.upload-zone small{font-size:7px;color:#999}.history-head{margin-bottom:10px}.history-head strong{font-size:8px}.history-list{display:grid;gap:7px}.history-list button{display:grid;grid-template-columns:54px 1fr auto;align-items:center;text-align:left;border:1px solid var(--line);background:white;border-radius:13px;padding:11px;cursor:pointer}.history-list time{font-size:7px;color:#888}.history-list strong,.history-list small{display:block}.history-list strong{font-size:8px;margin-bottom:4px}.history-list small{font-size:7px;color:#999}.history-list button>span{font-size:10px}.schedule-toast{position:fixed;right:25px;bottom:25px;background:#111;color:#fff;border-radius:14px;padding:12px 16px;font-size:9px;z-index:120;box-shadow:0 12px 40px rgba(0,0,0,.2)}
@media(max-width:1180px){.schedule-controls .today-button,.view-switch{display:none}.schedule-shell.drawer-open{grid-template-columns:minmax(560px,1fr) 320px}.event-layer{grid-template-columns:repeat(7,minmax(68px,1fr))}.calendar-event{padding:8px}.calendar-event span{display:none}}
@media(max-width:900px){.schedule-header{align-items:flex-start;gap:12px}.schedule-controls{flex-wrap:wrap;justify-content:flex-end}.schedule-shell,.schedule-shell.drawer-open{display:block}.lesson-drawer{position:fixed;left:8px;right:8px;bottom:8px;top:auto;height:min(76vh,690px);z-index:90;transform:translateY(110%);visibility:hidden}.schedule-shell.drawer-open .lesson-drawer{visibility:visible}.calendar-scroll{height:calc(100vh - 235px)}.calendar-card{overflow:auto}.calendar-days,.calendar-canvas{min-width:820px}}
@media(max-width:760px){.schedule-header{display:block;padding:22px 7px 15px}.schedule-header h1{font-size:32px}.schedule-controls{justify-content:flex-start;margin-top:17px}.calendar-nav strong{font-size:8px}.schedule-add{margin-left:auto}.calendar-card{border-radius:22px}.calendar-days{height:62px}.calendar-scroll{min-height:590px}.mobile-nav{overflow-x:auto;justify-content:flex-start;padding:0 12px;gap:22px}.mobile-nav button{min-width:44px}.lesson-drawer{padding:17px;border-radius:23px}}

/* Calendar alignment and availability */
.calendar-scroll{scrollbar-gutter:stable}.calendar-canvas{background:none;overflow:hidden}.calendar-canvas:before{content:"";position:absolute;left:58px;right:0;top:0;bottom:0;background:repeating-linear-gradient(to bottom,transparent 0,transparent 71px,rgba(17,17,17,.08) 71px,rgba(17,17,17,.08) 72px);pointer-events:none}.availability-toggle{display:flex;align-items:center;gap:7px;border:1px solid rgba(117,135,73,.25);background:rgba(239,245,217,.72);border-radius:13px;padding:8px 10px;cursor:pointer}.availability-toggle i{width:7px;height:7px;border-radius:50%;background:#82934d}.availability-toggle span{font-size:8px;font-weight:800}.availability-toggle b{font-size:6px;text-transform:uppercase;letter-spacing:.08em;color:#748044;background:rgba(255,255,255,.65);border-radius:7px;padding:3px 5px}.availability-toggle:not(.active){background:rgba(255,255,255,.5);border-color:var(--line);opacity:.7}.availability-toggle:not(.active) i{background:#aaa}.availability-layer{position:absolute;left:62px;right:4px;top:0;height:864px;display:grid;grid-template-columns:repeat(7,minmax(80px,1fr));grid-template-rows:repeat(24,36px);gap:0 6px;pointer-events:none;z-index:1;transition:opacity .25s}.availability-layer.hidden{opacity:0}.free-slot{pointer-events:auto;border:1px dashed rgba(112,131,60,.38);background:repeating-linear-gradient(135deg,rgba(232,245,181,.34),rgba(232,245,181,.34) 7px,rgba(255,255,255,.38) 7px,rgba(255,255,255,.38) 14px);border-radius:12px;padding:8px;text-align:left;cursor:pointer;color:#687637;position:relative;overflow:hidden}.free-slot span,.free-slot small{display:block}.free-slot span{font-size:8px;font-weight:800}.free-slot small{font-size:6px;margin-top:4px}.free-slot b{position:absolute;right:6px;bottom:6px;width:18px;height:18px;border-radius:6px;background:rgba(255,255,255,.8);display:grid;place-items:center;font-size:9px}.free-slot:hover{background:#edf6cb}.event-layer{z-index:2}

/* Teacher profile */
.profile-view{max-width:1240px}.profile-header{display:flex;justify-content:space-between;align-items:flex-end;padding:30px 6px 25px}.profile-header h1{font:600 42px/1 Unbounded,sans-serif;letter-spacing:-.07em;margin:14px 0 9px}.profile-header p{font-size:10px;color:#777;margin:0}.profile-header-actions{display:flex;align-items:center;gap:12px}.save-state{font-size:8px;color:#999}.save-state.saved{color:#708041}.profile-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:16px}.profile-form{padding:25px}.avatar-editor{display:grid;grid-template-columns:auto 1fr;gap:19px;align-items:center;padding-bottom:24px;border-bottom:1px solid var(--line)}.profile-avatar-preview{width:110px;height:110px;border-radius:28px;background:linear-gradient(145deg,var(--peach),var(--rose),var(--lav));display:grid;place-items:center;overflow:hidden;position:relative}.profile-avatar-preview span{font:600 24px Unbounded;color:#fff}.profile-avatar-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none}.profile-avatar-preview.has-image img{display:block}.field-caption{font-size:7px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.avatar-editor h2{font-size:18px;letter-spacing:-.04em;margin:7px 0}.avatar-editor p{font-size:8px;color:#888;line-height:1.5;max-width:440px}.avatar-actions{display:flex;gap:7px;margin-top:12px}.avatar-actions label,.avatar-actions button{border:1px solid var(--line);background:white;border-radius:11px;padding:9px 11px;font-size:8px;font-weight:800;cursor:pointer}.avatar-actions label{background:#111;color:#fff}.profile-fields{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:23px}.profile-fields label{display:grid;gap:8px}.profile-fields label>span{font-size:8px;font-weight:800}.profile-fields label>span b{color:#bb6279}.profile-fields input,.profile-fields textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:13px;padding:12px 13px;outline:none;font-size:10px;transition:border .2s,box-shadow .2s}.profile-fields textarea{resize:vertical;line-height:1.55}.profile-fields input:focus,.profile-fields textarea:focus{border-color:#a786b0;box-shadow:0 0 0 3px rgba(220,207,248,.45)}.profile-fields .field-wide{grid-column:1/-1}.profile-fields label>small{text-align:right;font-size:7px;color:#999;margin-top:-4px}.profile-preview-card{background:#161616;color:#fff;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);position:sticky;top:95px;align-self:start}.preview-label{display:flex;justify-content:space-between;padding:19px 20px;font-size:7px;text-transform:uppercase;letter-spacing:.1em;color:#999}.preview-label i{font-style:normal;border:1px solid #444;border-radius:8px;padding:4px 6px}.preview-visual{height:185px;background:linear-gradient(145deg,#f2d8d8,#cfbee8 55%,#b9d4f1);position:relative;display:grid;place-items:center;overflow:hidden}.preview-orbit{position:absolute;width:240px;height:240px;border:1px solid rgba(17,17,17,.18);border-radius:50%}.preview-orbit:after{content:"";position:absolute;inset:32px;border:1px solid rgba(17,17,17,.14);border-radius:50%}.profile-avatar-preview.mini{width:102px;height:102px;border-radius:50%;z-index:1;border:5px solid rgba(255,255,255,.7)}.preview-content{padding:25px}.preview-content .eyebrow{color:#888}.preview-content h2{font-size:25px;letter-spacing:-.055em;margin:14px 0 5px}.preview-subject{font-size:10px;color:#d5bad9;margin:0}.preview-description{font:italic 14px/1.45 Georgia,serif;color:#bbb;margin:24px 0}.preview-meta{display:flex;justify-content:space-between;border-top:1px solid #333;padding-top:18px}.preview-meta span{font-size:7px;color:#888}.preview-meta b{display:block;color:#fff;font:600 13px Unbounded;margin-bottom:4px}
@media(max-width:1050px){.profile-layout{grid-template-columns:1fr}.profile-preview-card{position:static;display:grid;grid-template-columns:260px 1fr}.preview-label{position:absolute;left:0;right:0;z-index:2}.preview-visual{height:100%}.availability-toggle b{display:none}}
@media(max-width:760px){.availability-toggle{order:3}.availability-toggle span{font-size:7px}.schedule-controls{row-gap:7px}.profile-header{display:block;padding:24px 7px 18px}.profile-header h1{font-size:32px}.profile-header-actions{justify-content:space-between;margin-top:18px}.profile-layout{display:block}.profile-form{padding:17px}.avatar-editor{grid-template-columns:1fr;text-align:center}.profile-avatar-preview{margin:auto}.avatar-editor p{margin-left:auto;margin-right:auto}.avatar-actions{justify-content:center}.profile-fields{grid-template-columns:1fr}.profile-fields .field-wide{grid-column:auto}.profile-preview-card{display:block;margin-top:12px}.preview-visual{height:180px}}

/* Stable lesson drawer: overlays the calendar without moving it */
@media(min-width:901px){.schedule-shell,.schedule-shell.drawer-open{display:block;position:relative}.lesson-drawer{position:absolute;top:0;right:0;width:370px;height:calc(100vh - 136px);z-index:30;transform:translateX(105%);box-shadow:-24px 0 70px rgba(49,38,44,.16),var(--shadow)}.schedule-shell.drawer-open .lesson-drawer{visibility:visible}.schedule-shell.drawer-open .calendar-card:after{content:"";position:absolute;top:0;right:0;bottom:0;width:370px;background:linear-gradient(90deg,transparent,rgba(248,244,239,.28));pointer-events:none}.calendar-card{position:relative}}

/* Combined students and groups */
.student-card[data-kind="group"]{background:linear-gradient(150deg,#181818,#2a252b);color:#fff}.student-card[data-kind="group"]>p,.student-card[data-kind="group"] .student-stats span{color:#aaa}.student-card[data-kind="group"] .skill-line{background:#3b373c}.student-card[data-kind="group"] .skill-line span{background:linear-gradient(90deg,var(--rose),var(--lav))}.student-card[data-kind="group"]>button{border-color:#444;color:#fff}.group-avatars{display:flex}.group-avatars .avatar{width:42px;height:42px;margin-left:-9px;border:3px solid #242126}.group-avatars .avatar:first-child{margin-left:0}.group-avatars .avatar:last-child{background:#eee5ee;color:#111}.student-card.is-filtered{display:none}

/* Drawer opens beside a fixed-size calendar: the whole calendar moves, its cells never resize */
@media(min-width:901px){.schedule-shell,.schedule-shell.drawer-open{display:block;position:relative;overflow:hidden;border-radius:28px}.calendar-card{width:100%;transform:translateX(0);transition:transform .5s cubic-bezier(.22,.8,.2,1);will-change:transform}.schedule-shell.drawer-open .calendar-card{transform:translateX(-220px)}.lesson-drawer{position:absolute;top:0;right:0;width:370px;height:calc(100vh - 136px);z-index:30;background:#fffaf7;border-color:rgba(255,255,255,.95);transform:translateX(105%);box-shadow:-24px 0 70px rgba(49,38,44,.18),var(--shadow)}.schedule-shell.drawer-open .lesson-drawer{visibility:visible}.schedule-shell.drawer-open .calendar-card:after{display:none}}
@media(min-width:901px) and (max-width:1180px){.schedule-shell.drawer-open .calendar-card{transform:translateX(-180px)}.lesson-drawer{width:340px}}

/* Final schedule behavior: two real columns, fixed calendar geometry */
@media(min-width:901px){.schedule-shell,.schedule-shell.drawer-open{display:grid;position:relative;overflow:visible;border-radius:0;grid-template-columns:minmax(0,1fr) 0;gap:0;transition:grid-template-columns .5s cubic-bezier(.22,.8,.2,1),gap .5s cubic-bezier(.22,.8,.2,1)}.schedule-shell.drawer-open{grid-template-columns:minmax(0,1fr) 370px;gap:14px}.calendar-card,.schedule-shell.drawer-open .calendar-card{position:relative;width:auto;min-width:0;transform:none;overflow:hidden}.calendar-days,.calendar-canvas{min-width:820px;transform:translateX(var(--calendar-pan,0px));transition:transform .5s cubic-bezier(.22,.8,.2,1)}.calendar-scroll{overflow-y:auto;overflow-x:hidden}.lesson-drawer{position:relative;top:auto;right:auto;width:auto;height:calc(100vh - 136px);z-index:3;background:#fffaf7;transform:translateX(105%);box-shadow:var(--shadow)}.schedule-shell.drawer-open .lesson-drawer{visibility:visible}.schedule-shell.drawer-open .calendar-card:after{display:none}}
@media(min-width:901px) and (max-width:1180px){.schedule-shell.drawer-open{grid-template-columns:minmax(0,1fr) 340px}.lesson-drawer{width:auto}}

/* Student / group learning workspace */
.drawer-action.course-link{border:0;background:linear-gradient(100deg,rgba(244,215,220,.72),rgba(220,207,248,.72));color:#111}
.person-view{max-width:1250px}
.person-header{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end;padding:25px 5px 18px}
.person-header .back-button{grid-column:1/-1;justify-self:start}
.back-button{border:0;background:transparent;padding:0;font-size:8px;font-weight:800;color:#777;cursor:pointer}
.person-identity{display:flex;align-items:center;gap:17px}
.person-identity .avatar{width:72px;height:72px;border-radius:22px;font:600 16px Unbounded,sans-serif}
.person-identity h1{font:600 38px/1 Unbounded,sans-serif;letter-spacing:-.065em;margin:7px 0}
.person-identity p{margin:0;font-size:9px;color:#777}
.person-tabs{display:flex;gap:5px;padding:5px;margin-bottom:14px;border:1px solid rgba(255,255,255,.78);border-radius:16px;background:rgba(255,255,255,.48);width:max-content;max-width:100%}
.person-tabs button{border:0;background:transparent;border-radius:11px;padding:10px 14px;font-size:8px;font-weight:800;color:#888;cursor:pointer;white-space:nowrap}
.person-tabs button.active{background:#111;color:#fff;box-shadow:0 7px 20px rgba(17,17,17,.12)}
.person-panel{display:none}
.person-panel.active{display:grid}
.person-panel[data-person-panel="overview"]{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.person-panel[data-person-panel="overview"] .panel,.person-panel[data-person-panel="materials"] .panel,.person-panel[data-person-panel="history"] .panel{padding:28px;min-height:180px}
.person-panel h2{font-size:22px;letter-spacing:-.045em;margin:10px 0}
.person-panel p{font-size:9px;line-height:1.65;color:#777}
.course-workspace{grid-template-columns:275px minmax(0,1fr);gap:14px;align-items:start}
.course-sidebar{padding:23px;position:sticky;top:94px;background:linear-gradient(155deg,rgba(255,255,255,.84),rgba(246,221,210,.48))}
.course-sidebar h2{font-size:21px;margin-bottom:6px}
.course-sidebar>p{margin:0;color:#888}
.course-progress{margin:25px 0 22px}
.course-progress>div{display:flex;justify-content:space-between;font-size:8px;font-weight:800}
.course-progress i{height:6px;display:block;background:rgba(17,17,17,.09);border-radius:9px;margin-top:9px;overflow:hidden}
.course-progress b{display:block;width:68%;height:100%;background:linear-gradient(90deg,#d99aaa,#a990c1);border-radius:9px}
.course-sidebar nav{display:grid;gap:6px}
.course-sidebar nav button{border:0;background:transparent;text-align:left;border-radius:11px;padding:10px 11px;font-size:8px;color:#777;cursor:pointer}
.course-sidebar nav button.active{background:#111;color:#fff}
.course-lessons{display:grid;gap:9px}
.course-section-head{display:flex;align-items:end;justify-content:space-between;padding:13px 8px 9px}
.course-section-head h2{font-size:27px;margin:7px 0 0}
.course-lesson{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:16px;border:1px solid rgba(255,255,255,.82);background:rgba(255,255,255,.62);border-radius:20px;padding:17px 18px;box-shadow:0 10px 35px rgba(55,42,45,.045)}
.course-lesson.upcoming{background:linear-gradient(105deg,rgba(220,207,248,.68),rgba(246,221,210,.72));border-color:rgba(176,145,184,.24)}
.course-lesson.draft{border-style:dashed;background:rgba(255,255,255,.35)}
.lesson-order{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#f0ebe7;font:600 10px Unbounded,sans-serif}
.completed .lesson-order{background:#111;color:#fff}
.upcoming .lesson-order{background:#fff}
.lesson-state{font-size:7px;text-transform:uppercase;letter-spacing:.08em;color:#8a7d84;font-weight:800}
.course-lesson h3{font-size:14px;letter-spacing:-.03em;margin:6px 0 3px}
.course-lesson p{font-size:8px;margin:0}
.course-lesson>button,.course-actions button{border:1px solid var(--line);background:#fff;border-radius:11px;padding:9px 11px;font-size:7px;font-weight:800;cursor:pointer}
.course-actions{display:flex;gap:6px}
.course-actions .open-specific-lesson{background:#111;color:#fff;border-color:#111}
.course-add-row{width:100%;border:1px dashed rgba(17,17,17,.2);background:rgba(255,255,255,.28);border-radius:18px;padding:15px 18px;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer}
.course-add-row>span{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;background:#fff;font-size:17px}
.course-add-row strong,.course-add-row small{display:block}
.course-add-row strong{font-size:9px;margin-bottom:4px}.course-add-row small{font-size:7px;color:#888}
.person-panel[data-person-panel="materials"] .black-button{margin-top:15px}
@media(max-width:960px){.course-workspace{grid-template-columns:1fr}.course-sidebar{position:static}.course-sidebar nav{grid-template-columns:repeat(5,1fr);overflow:auto}.course-sidebar nav button{white-space:nowrap}.course-lesson{grid-template-columns:40px minmax(0,1fr)}.course-lesson>button,.course-actions{grid-column:2}}
@media(max-width:760px){.person-header{display:block;padding-top:20px}.person-identity{margin:19px 0}.person-identity h1{font-size:27px}.person-header .person-plan{width:100%}.person-tabs{width:100%;overflow:auto}.person-tabs button{flex:1}.person-panel[data-person-panel="overview"]{grid-template-columns:1fr}.course-section-head{align-items:flex-start;gap:10px}.course-section-head h2{font-size:22px}.course-lesson{padding:14px 13px;gap:11px}.course-actions{display:grid}.course-actions button{width:100%}}

/* UI hierarchy pass: readable type, neutral workspace, purposeful accents */
:root{--text-body:14px;--text-support:12px;--text-label:11px;--surface:rgba(255,252,248,.9);--surface-muted:#f2eeea;--border-soft:rgba(17,17,17,.08);--shadow:0 12px 36px rgba(55,40,50,.065)}
body{font-size:var(--text-body);line-height:1.55}
p{line-height:1.6}
button,a,input,select,textarea{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(151,112,162,.35);outline-offset:2px}
.eyebrow,.kicker{font-size:var(--text-label)}
.nav-item{font-size:14px;min-height:44px}
.profile strong{font-size:14px}.profile small{font-size:12px;opacity:.68}
.primary-button,.black-button{font-size:13px;min-height:44px;padding:12px 17px}
.soft-button{font-size:12px;min-height:40px;background:rgba(255,255,255,.75)}
.panel,.stat-strip article,.student-card,.resource{background:var(--surface);border-color:var(--border-soft);box-shadow:var(--shadow)}
.ambient{opacity:.34}.glass{box-shadow:0 10px 32px rgba(55,40,50,.055)}

/* Home: the lesson flow is primary, status widgets stay quiet */
.today-header p{font-size:14px;color:#5f595c}
.stat-strip article{padding:15px 16px}.stat-strip small{font-size:12px;color:#625d60}.stat-strip em{font-size:11px;color:#726c6f}
.stat-icon,.stat-icon.rose-bg,.stat-icon.lilac-bg,.stat-icon.peach-bg,.stat-icon.blue-bg{background:#f0ece8;color:#4b4548}
.stat-strip em.urgent{background:transparent;color:#8e4358;padding:0;font-weight:700}
.agenda-panel .section-heading h3,.weekload h3,.activity h3{font-size:23px}
.agenda-hour time{font-size:11px}.agenda-event{background:#f3f0ec;border-color:var(--border-soft);box-shadow:none}
.agenda-event>time{font-size:15px}.agenda-event>time small{font-size:11px}.event-type{font-size:10px;color:#6f686c;opacity:1}
.agenda-event h4{font-size:16px}.agenda-event p{font-size:13px;color:#625d60}.event-students>span{font-size:11px;opacity:.75}
.agenda-event>button{font-size:12px;min-height:40px;background:#fff}
.agenda-event.primary-event{background:linear-gradient(105deg,rgba(244,215,220,.72),rgba(220,207,248,.48));border-color:rgba(169,126,149,.18)}
.agenda-event.blue-event{background:#f3f0ec;border-left:4px solid #aac5e7}
.agenda-event.dark-event{background:#f3f0ec;color:#111;border-left:4px solid #343034}
.agenda-event.dark-event p{color:#625d60}.agenda-event.dark-event>button{color:#111;border-color:var(--border-soft);background:#fff}
.next-compact{background:var(--surface);border:1px solid var(--border-soft)}
.next-compact .live-in{background:#efe9e5}.next-compact p{font-size:13px;color:#625d60}
.ops-side .tasks h3{font-size:21px}.tasks label,.ops-side .tasks label{font-size:13px;min-height:44px}.tasks label small{font-size:11px;color:#706a6d}
.text-action{font-size:12px;min-height:40px}.activity-item{min-height:54px}.activity-item p{font-size:13px}.activity-item p small{font-size:11px;color:#706a6d}.activity-file,.activity-arrow{font-size:10px}
.focus-mini.dark{background:#f0ece8;color:#111}.focus-mini .eyebrow{color:#655f62}.focus-mini p{font-size:13px;color:#625d60}.focus-line{background:#ddd6d2}
.week-bars span{font-size:11px}.week-bars i{background:#e3dedb}.week-bars .current i{background:#aaa0b5}

/* Supporting screens: larger readable copy without competing with page titles */
.student-card.featured{background:var(--surface)}
.student-card[data-kind="group"],.student-card.dark-card{background:var(--surface);color:#111}
.student-card[data-kind="group"]>p,.student-card[data-kind="group"] .student-stats span,.dark-card p,.dark-card .student-stats span{color:#625d60}
.student-card[data-kind="group"] .skill-line{background:#e2ddda}.student-card[data-kind="group"]>button,.dark-card>button{border-color:var(--border-soft);color:#111}
.group-avatars .avatar{border-color:#fffaf7}.dark-status{background:#eee9e5;color:#4d474a}
.student-card h3{font-size:22px}.student-card>p{font-size:14px;color:#625d60}.student-stats span{font-size:11px}.student-stats b{font-size:15px}.student-card>button{font-size:13px;min-height:44px}
.resource h3{font-size:16px}.resource p{font-size:13px;color:#625d60}.tag{font-size:11px}.resource-type{font-size:10px}
.profile-header p{font-size:14px;color:#625d60}.field-caption,.profile-fields label>span{font-size:12px}.avatar-editor p,.profile-fields input,.profile-fields textarea{font-size:14px}.profile-fields label>small{font-size:11px}
.person-identity p,.person-panel p,.course-lesson p{font-size:14px;color:#625d60}.lesson-state{font-size:10px}.course-lesson h3{font-size:17px}.course-sidebar nav button{font-size:12px;min-height:40px}.course-lesson>button,.course-actions button{font-size:12px;min-height:40px}

/* Schedule keeps information density, while the detail drawer stays readable */
.calendar-event strong{font-size:11px}.calendar-event span{font-size:9px}.calendar-event small{font-size:9px}
.drawer-top>div small,.drawer-person p,.drawer-time small,.drawer-tabs button,.readiness-head,.lesson-readiness li,.materials-list strong,.materials-list small,.history-head strong,.history-list time,.history-list strong,.history-list small,.drawer-action{font-size:12px}
.drawer-person h2{font-size:20px}.drawer-time strong{font-size:14px}.lesson-summary h3{font-size:20px}.lesson-summary p{font-size:14px;color:#625d60}.drawer-tabs button{min-height:42px}.drawer-action{min-height:44px}
.drawer-action.course-link{background:#f0ece8;border:1px solid var(--border-soft);font-weight:700}
.drawer-action.secondary{background:#fff}.upload-zone strong{font-size:13px}.upload-zone small{font-size:11px}.destination-switch button{font-size:11px;min-height:38px}

/* Per-lesson color selection */
.lesson-color-editor{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0 14px;border-bottom:1px solid var(--line)}
.lesson-color-editor>div:first-child span,.lesson-color-editor>div:first-child strong{display:block}.lesson-color-editor>div:first-child span{font-size:10px;color:#6d6669}.lesson-color-editor>div:first-child strong{font-size:12px;margin-top:2px}
.lesson-color-swatches{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.lesson-color-swatches button{width:30px;height:30px;min-width:30px;border:2px solid transparent;border-radius:10px;cursor:pointer;position:relative;box-shadow:inset 0 0 0 1px rgba(17,17,17,.08);transition:transform .18s ease,border-color .18s ease}
.lesson-color-swatches button:hover{transform:translateY(-2px)}.lesson-color-swatches button.active{border-color:#111}.lesson-color-swatches button.active:after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;font-size:12px;font-weight:900;color:#111}
.lesson-color-swatches [data-lesson-color="rose-event"],.lesson-color-swatches [data-new-lesson-color="rose-event"]{background:var(--rose)}
.lesson-color-swatches [data-lesson-color="lavender-event"],.lesson-color-swatches [data-new-lesson-color="lavender-event"]{background:var(--lav)}
.lesson-color-swatches [data-lesson-color="blue-event"],.lesson-color-swatches [data-new-lesson-color="blue-event"]{background:var(--sky)}
.lesson-color-swatches [data-lesson-color="peach-event"],.lesson-color-swatches [data-new-lesson-color="peach-event"]{background:var(--peach)}
.lesson-color-swatches [data-lesson-color="lime-event"],.lesson-color-swatches [data-new-lesson-color="lime-event"]{background:var(--lime)}
.lesson-color-swatches [data-lesson-color="dark-calendar-event"],.lesson-color-swatches [data-new-lesson-color="dark-calendar-event"]{background:#292629}.lesson-color-swatches button.active[data-lesson-color="dark-calendar-event"]:after,.lesson-color-swatches button.active[data-new-lesson-color="dark-calendar-event"]:after{color:#fff}
.modal{max-height:calc(100dvh - 32px);overflow:auto}.modal label,.modal-color-field legend{font-size:11px}.modal input,.modal select{font-size:14px;min-height:44px}
.modal-color-field{border:0;padding:0;margin:18px 0 0}.modal-color-field legend{text-transform:uppercase;letter-spacing:.08em;font-weight:800;padding:0}.modal-color-head{display:flex;justify-content:space-between;align-items:center;margin:9px 0}.modal-color-head span{font-size:12px;color:#6b6467}.modal-color-head strong{font-size:13px}.modal-swatches{padding:11px;border:1px solid var(--border-soft);background:#fff;border-radius:14px}.modal-swatches button{width:36px;height:36px;border-radius:11px}

@media(max-width:760px){:root{--text-body:16px;--text-support:14px;--text-label:12px}.today-header p,.student-card>p,.resource p,.profile-header p,.person-panel p,.course-lesson p,.lesson-summary p{font-size:16px}.stat-strip small{font-size:13px}.agenda-event p,.next-compact p,.activity-item p,.focus-mini p{font-size:14px}.agenda-event h4{font-size:17px}.modal label,.modal-color-field legend{font-size:12px}.lesson-color-editor{align-items:flex-start;flex-direction:column}.lesson-color-swatches button{width:34px;height:34px;min-width:34px}}

/* Contextual lesson actions: preparation stays secondary until the live window */
.agenda-event.primary-event>button[data-action-state="prepare"],.agenda-event.primary-event>button[data-action-state="past"]{background:#fff;color:#111;border-color:var(--border-soft)}
.agenda-event>button[data-action-state="start"],.next-compact>button[data-action-state="start"]{background:#111;color:#fff;border-color:#111}
.agenda-event>button[data-action-state="prepare"],.agenda-event>button[data-action-state="past"]{background:#fff;color:#111;border-color:var(--border-soft)}
.next-compact>button[data-action-state="prepare"],.next-compact>button[data-action-state="past"]{background:#fff;color:#111;border:1px solid var(--border-soft)}
.live-in{font-variant-numeric:tabular-nums}
.tasks label span{line-height:1.35}

/* Nearest lesson owns the accent; the daily timeline stays neutral */
.agenda-event.primary-event{background:#f3f0ec;border-color:var(--border-soft)}
.next-compact{background:linear-gradient(135deg,rgba(244,215,220,.88),rgba(220,207,248,.82));border-color:rgba(169,126,149,.16)}

/* Homework and messages workspaces */
.workspace-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px 6px 24px}
.workspace-page-header h1{font:600 42px/1 Unbounded,sans-serif;letter-spacing:-.065em;margin:14px 0 9px}
.workspace-page-header p{font-size:14px;color:#625d60;margin:0}
.work-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.work-summary article{background:var(--surface);border:1px solid var(--border-soft);border-radius:19px;padding:17px 18px;box-shadow:var(--shadow)}
.work-summary span,.work-summary small,.work-summary strong{display:block}.work-summary span{font-size:12px;color:#625d60}.work-summary strong{font:600 25px Unbounded,sans-serif;letter-spacing:-.05em;margin:5px 0}.work-summary small{font-size:11px;color:#777074}
.homework-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.72fr);gap:14px;align-items:start}
.homework-queue{padding:12px}.queue-toolbar{display:flex;align-items:center;gap:12px;padding:2px 2px 12px}
.workspace-search{display:flex;align-items:center;gap:8px;flex:1;min-height:44px;background:#f2eeea;border:1px solid var(--border-soft);border-radius:13px;padding:0 12px}
.workspace-search input{width:100%;border:0;outline:0;background:transparent;font-size:13px}.workspace-search>span{font-size:16px;color:#6d6669}
.compact-tabs{display:flex;gap:4px;padding:4px;border-radius:13px;background:#f0ece8}
.compact-tabs button{border:0;background:transparent;border-radius:9px;min-height:36px;padding:8px 10px;font-size:11px;font-weight:700;cursor:pointer;color:#655f62;white-space:nowrap}
.compact-tabs button.active{background:#fff;color:#111;box-shadow:0 4px 14px rgba(55,40,50,.06)}
.homework-list{display:grid;gap:6px}.homework-item{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;text-align:left;border:1px solid transparent;background:transparent;border-radius:16px;padding:13px;cursor:pointer;min-height:78px;transition:background .2s,border-color .2s}
.homework-item:hover{background:#f5f1ed}.homework-item.active{background:#f1ece8;border-color:var(--border-soft)}
.homework-copy,.homework-meta{display:grid}.homework-copy strong{font-size:15px;margin:4px 0 2px}.homework-copy small,.homework-meta small{font-size:11px;color:#716a6e}.homework-meta{text-align:right;gap:4px}.homework-meta b{font-size:12px}.item-state{width:max-content;font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:#766e72}.item-state.urgent{color:#8f4056}.item-state.assigned{color:#55716a}.item-state.draft{color:#80757f}
.homework-item.is-hidden{display:none}.homework-review{padding:22px;position:sticky;top:94px}.review-top,.review-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.review-person{display:flex;align-items:center;gap:12px;margin:21px 0 24px}.review-person h2{font-size:20px;margin:0 0 3px}.review-person p{font-size:13px;color:#625d60;margin:0}.homework-review h3{font-size:22px;letter-spacing:-.04em;margin:10px 0 7px}.homework-review>p{font-size:14px;color:#625d60;margin:0 0 18px}.submission-file{width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;text-align:left;border:1px solid var(--border-soft);background:#f3efec;border-radius:14px;padding:12px;cursor:pointer}.submission-file>span{width:42px;height:42px;border-radius:10px;background:#fff;display:grid;place-items:center;font-size:9px;font-weight:800}.submission-file strong,.submission-file small{display:block}.submission-file strong{font-size:13px}.submission-file small{font-size:11px;color:#716a6e;margin-top:3px}.feedback-field{display:grid;gap:7px;margin-top:18px}.feedback-field>span{font-size:12px;font-weight:800}.feedback-field textarea{width:100%;resize:vertical;border:1px solid var(--border-soft);border-radius:14px;padding:12px;font-size:14px;line-height:1.5;background:#fff;outline:0}.review-actions{margin-top:12px}.review-actions button{flex:1}

.messages-shell{display:grid;grid-template-columns:330px minmax(0,1fr);padding:0;overflow:hidden;min-height:650px}
.conversation-pane{padding:14px;border-right:1px solid var(--border-soft);background:rgba(247,243,239,.72)}
.message-filter{width:max-content;margin:10px 0}.conversation-list{display:grid;gap:4px}.conversation{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"avatar person time" "avatar person badge";align-items:center;gap:2px 11px;width:100%;border:1px solid transparent;background:transparent;border-radius:16px;padding:12px;text-align:left;cursor:pointer;min-height:75px}.conversation:hover{background:#f1ece8}.conversation.active{background:#fff;border-color:var(--border-soft);box-shadow:0 6px 20px rgba(55,40,50,.05)}.conversation .avatar{grid-area:avatar}.conversation>span:nth-child(2){grid-area:person;min-width:0}.conversation strong,.conversation small{display:block}.conversation strong{font-size:14px}.conversation small{font-size:11px;color:#6e676b;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation time{grid-area:time;font-size:10px;color:#7b7478}.conversation>b{grid-area:badge;justify-self:end;background:#111;color:#fff;min-width:19px;height:19px;border-radius:10px;display:grid;place-items:center;font-size:9px}
.conversation.is-hidden{display:none}.chat-pane{display:grid;grid-template-rows:auto 1fr auto;min-width:0;background:rgba(255,252,248,.7)}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--border-soft)}.chat-person{display:flex;align-items:center;gap:11px}.chat-person h2{font-size:18px;margin:0 0 3px}.chat-person p{font-size:12px;color:#655f62;margin:0}.chat-thread{padding:24px;display:flex;flex-direction:column;gap:10px;overflow:auto;min-height:430px}.chat-date{align-self:center;font-size:10px;color:#777074;background:#f1ece8;border-radius:20px;padding:5px 9px}.message-bubble{max-width:min(72%,560px);padding:12px 14px;border-radius:17px;background:#f0ece8;align-self:flex-start}.message-bubble.mine{align-self:flex-end;background:linear-gradient(110deg,rgba(244,215,220,.8),rgba(220,207,248,.65))}.message-bubble p{font-size:14px;line-height:1.5;margin:0}.message-bubble time{display:block;font-size:9px;color:#746d71;margin-top:5px;text-align:right}.message-attachment{display:flex;align-items:center;gap:9px;margin-top:9px;background:rgba(255,255,255,.7);border-radius:11px;padding:9px}.message-attachment span{width:32px;height:32px;border-radius:8px;background:#fff;display:grid;place-items:center;font-size:8px;font-weight:800}.message-attachment strong{font-size:11px}.message-composer{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:8px;padding:13px 16px;border-top:1px solid var(--border-soft);background:#fff}.message-composer label{display:block}.message-composer textarea{width:100%;min-height:44px;max-height:120px;resize:none;border:1px solid var(--border-soft);border-radius:13px;padding:11px 12px;font-size:14px;line-height:1.45;outline:0}.composer-attach,.composer-send{border:0;min-height:44px;border-radius:12px;cursor:pointer;font-weight:800}.composer-attach{width:44px;background:#f0ece8;font-size:20px}.composer-send{background:#111;color:#fff;padding:0 16px;font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mobile-more-menu{display:none}
@media(max-width:1050px){.homework-layout{grid-template-columns:1fr}.homework-review{position:static}.messages-shell{grid-template-columns:290px minmax(0,1fr)}}
@media(max-width:760px){.workspace-page-header{display:block;padding:22px 8px 18px}.workspace-page-header h1{font-size:31px}.workspace-page-header p{font-size:16px}.workspace-page-header .black-button{width:100%;margin-top:16px}.work-summary{grid-template-columns:1fr}.queue-toolbar{display:grid}.compact-tabs{overflow:auto}.homework-item{grid-template-columns:auto minmax(0,1fr)}.homework-meta{grid-column:2;text-align:left;display:flex}.messages-shell{display:block;min-height:0}.conversation-pane{border-right:0;border-bottom:1px solid var(--border-soft)}.chat-pane{min-height:600px}.chat-header{align-items:flex-start}.chat-header .soft-button{padding:8px;font-size:11px}.message-bubble{max-width:88%}.message-composer{padding:10px}.mobile-more-menu{position:fixed;display:grid;left:12px;right:12px;bottom:78px;z-index:79;background:rgba(255,255,255,.94);border-radius:16px;padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}.mobile-more-menu.open{opacity:1;visibility:visible;transform:none}.mobile-more-menu button{border:0;background:transparent;border-radius:11px;min-height:44px;text-align:left;padding:0 12px;font-size:14px;font-weight:700}.mobile-more-menu button:hover{background:#f1ece8}}

/* Supabase authentication */
.shell[aria-hidden="true"]{display:none}
.auth-gate{position:relative;z-index:2000;min-height:100dvh;display:grid;grid-template-columns:minmax(360px,1.08fr) minmax(440px,.92fr);background:#f6f1ec;color:#171717}
.auth-gate[hidden]{display:none}
.auth-story{position:relative;min-height:100dvh;padding:48px clamp(38px,5vw,82px);overflow:hidden;background:linear-gradient(145deg,#171717 0%,#242023 62%,#342b32 100%);color:#fff;display:flex;flex-direction:column;justify-content:space-between}
.auth-brand,.auth-mobile-brand{display:flex;align-items:center;gap:10px;width:max-content;color:inherit;text-decoration:none;font:600 19px/1 Unbounded,sans-serif;letter-spacing:-.05em}
.auth-brand>span,.auth-mobile-brand>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#f0cbd3,#cfc3e7);color:#171717;font:600 19px Georgia,serif}
.auth-story-copy{position:relative;z-index:2;max-width:700px;padding:70px 0 7vh}
.auth-kicker,.auth-step{display:block;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.auth-kicker{color:#cdbec7}
.auth-story h1{max-width:690px;margin:25px 0 28px;font:600 clamp(46px,5.1vw,82px)/1.03 Unbounded,sans-serif;letter-spacing:-.075em}
.auth-story h1 em{font-family:Georgia,serif;font-weight:400;color:#e6cbd7}
.auth-story-copy p{max-width:540px;margin:0;color:#cfc9cc;font-size:16px;line-height:1.7}
.auth-orbit{position:absolute;border:1px solid rgba(255,255,255,.13);border-radius:50%;pointer-events:none}
.auth-orbit-one{width:54vw;height:54vw;right:-26vw;top:-17vw}
.auth-orbit-two{width:29vw;height:29vw;right:-11vw;top:-4vw;border-color:rgba(231,197,213,.21)}
.auth-panel{min-height:100dvh;display:grid;place-items:center;padding:48px clamp(28px,5vw,88px);background:radial-gradient(circle at 78% 13%,rgba(220,207,248,.62),transparent 28%),radial-gradient(circle at 15% 82%,rgba(246,221,210,.66),transparent 30%),#f8f5f1}
.auth-card{width:min(100%,480px)}
.auth-mobile-brand{display:none;margin-bottom:52px;color:#171717}
.auth-step{color:#776e73}
.auth-card h2{margin:16px 0 10px;font:600 clamp(31px,3vw,43px)/1.08 Unbounded,sans-serif;letter-spacing:-.065em}
.auth-lead{margin:0;color:#686165;font-size:15px;line-height:1.6}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:34px 0 24px;padding:5px;border:1px solid rgba(17,17,17,.08);border-radius:15px;background:rgba(255,255,255,.55)}
.auth-tabs button{min-height:44px;border:0;border-radius:10px;background:transparent;color:#6d666a;font:700 13px Manrope,sans-serif;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}
.auth-tabs button.active{background:#171717;color:#fff;box-shadow:0 8px 22px rgba(17,17,17,.14)}
.auth-tabs button:focus-visible,.auth-submit:focus-visible,.auth-form input:focus-visible,.auth-password button:focus-visible,.sign-out-button:focus-visible{outline:3px solid rgba(151,112,162,.38);outline-offset:2px}
.auth-form{display:grid;gap:17px}
.auth-form>label,.auth-name-fields label{display:grid;gap:8px;color:#393336;font-size:12px;font-weight:800}
.auth-name-fields{grid-template-columns:1fr 1fr;gap:12px}
.auth-form input{width:100%;height:50px;border:1px solid rgba(17,17,17,.12);border-radius:13px;background:rgba(255,255,255,.86);padding:0 15px;color:#171717;font:500 16px Manrope,sans-serif;box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.auth-form input:hover{border-color:rgba(17,17,17,.24);background:#fff}
.auth-form input:focus{border-color:#8c7189;box-shadow:0 0 0 4px rgba(140,113,137,.12);background:#fff;outline:0}
.auth-form input::placeholder{color:#999195}
.auth-password{position:relative;display:block}
.auth-password input{padding-right:92px}
.auth-password button{position:absolute;right:6px;top:6px;min-height:38px;padding:0 10px;border:0;border-radius:9px;background:#eee9e5;color:#4d474a;font:700 11px Manrope,sans-serif;cursor:pointer}
.auth-message{min-height:20px;margin:-2px 0 -3px;color:#6b6468;font-size:12px;line-height:1.5}
.auth-message.error{color:#a92838}.auth-message.success{color:#216b48}
.auth-submit{min-height:52px;border:0;border-radius:14px;padding:0 18px;background:#171717;color:#fff;display:flex;align-items:center;justify-content:space-between;font:800 14px Manrope,sans-serif;cursor:pointer;box-shadow:0 13px 30px rgba(17,17,17,.16);transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}
.auth-submit:hover{transform:translateY(-2px);box-shadow:0 17px 35px rgba(17,17,17,.2)}
.auth-submit:active{transform:translateY(0)}
.auth-submit:disabled{cursor:wait;opacity:.58;transform:none}
.auth-submit b{font-size:21px;font-weight:400}
.auth-privacy{margin:20px 0 0;color:#7a7377;font-size:11px;line-height:1.55}
.sign-out-button{width:100%;min-height:40px;margin-top:8px;border:1px solid rgba(17,17,17,.09);border-radius:12px;background:rgba(255,255,255,.46);color:#6d666a;font:700 11px Manrope,sans-serif;cursor:pointer;transition:background .2s ease,color .2s ease}
.sign-out-button:hover{background:#171717;color:#fff}
.sign-out-button:disabled{cursor:wait;opacity:.45}
@media(max-width:900px){.auth-gate{grid-template-columns:1fr}.auth-story{display:none}.auth-panel{padding:36px 24px}.auth-mobile-brand{display:flex}.auth-card{max-width:520px}}
@media(max-width:520px){.auth-panel{place-items:start center;padding:28px 18px 40px}.auth-mobile-brand{margin-bottom:44px}.auth-card h2{font-size:30px}.auth-tabs{margin-top:27px}.auth-name-fields{grid-template-columns:1fr}.auth-form input{height:52px}.auth-privacy{font-size:12px}}
@media(prefers-reduced-motion:reduce){.auth-tabs button,.auth-form input,.auth-submit,.sign-out-button{transition:none}.auth-submit:hover{transform:none}}

/* Role selection and student workspace */
.auth-role-fields{margin:0;padding:0;border:0;min-width:0}.auth-role-fields legend{margin-bottom:8px;color:#393336;font-size:12px;font-weight:800}.auth-role-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.auth-role-card{position:relative;min-height:82px;display:grid;grid-template-columns:38px 1fr;align-items:center;gap:10px;padding:13px;border:1px solid rgba(17,17,17,.12);border-radius:14px;background:rgba(255,255,255,.66);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.auth-role-card:hover{border-color:rgba(17,17,17,.28);background:#fff}.auth-role-card:has(input:checked){border-color:#2b2528;background:#fff;box-shadow:0 0 0 3px rgba(140,113,137,.12)}.auth-role-card input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.auth-role-card:has(input:focus-visible){outline:3px solid rgba(151,112,162,.38);outline-offset:2px}.auth-role-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,var(--rose),var(--lav));font:700 13px Unbounded,sans-serif}.auth-role-card strong,.auth-role-card small{display:block}.auth-role-card strong{font-size:13px}.auth-role-card small{margin-top:3px;color:#777;font-size:10px;line-height:1.35;font-weight:500}

[data-student-nav],[data-admin-nav],.mobile-nav [data-student-mobile],.mobile-nav [data-admin-mobile],.student-top-action{display:none}.student-home-view{padding:28px 8px 60px}body[data-user-role="student"] [data-student-nav]{display:grid}body[data-user-role="student"] .mobile-nav [data-student-mobile]{display:grid}body[data-user-role="student"] .student-top-action{display:inline-flex}body[data-user-role="student"] .main-nav>.nav-item:not([data-student-nav]),body[data-user-role="student"] [data-teacher-mobile],body[data-user-role="student"] #newLesson{display:none}body[data-user-role="student"] .studio-card{display:none}body[data-user-role="admin"] [data-admin-nav]{display:grid}body[data-user-role="admin"] .mobile-nav [data-admin-mobile]{display:grid}body[data-user-role="admin"] .main-nav>.nav-item:not([data-admin-nav]),body[data-user-role="admin"] .mobile-nav>button:not([data-admin-mobile]),body[data-user-role="admin"] #newLesson,body[data-user-role="admin"] .student-top-action,body[data-user-role="admin"] .topbar .icon-button,body[data-user-role="admin"] .studio-card,body[data-user-role="admin"] .profile{display:none}
body:not(.is-authenticated) .mobile-nav,body:not(.is-authenticated) .mobile-more-menu{display:none}
.student-welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:36px 24px 34px}.student-welcome h1{max-width:950px;margin:28px 0 22px;font:600 clamp(48px,6vw,88px)/.94 Unbounded,sans-serif;letter-spacing:-.075em}.student-welcome h1 em{font-family:Georgia,serif;font-weight:400;color:#a97992}.student-welcome p{max-width:650px;margin:0;color:#696165;font-size:14px;line-height:1.65}.student-welcome>.black-button{flex:0 0 auto;min-height:48px}.student-dashboard-grid{display:grid;grid-template-columns:1.35fr .75fr;gap:18px}.student-next-card,.student-progress-card,.student-task-card,.student-course-card{min-height:300px}.student-next-card{background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(246,221,210,.72));display:flex;flex-direction:column}.student-status-pill{border:1px solid var(--line);border-radius:999px;padding:6px 9px;font-size:9px;font-weight:700}.student-card-empty-icon{width:54px;height:54px;margin:42px 0 22px;display:grid;place-items:center;border-radius:17px;background:#171717;color:#fff;font:600 13px Unbounded,sans-serif}.student-next-card h2,.student-progress-card h2,.student-task-card h2,.student-course-card h2{margin:8px 0 10px;font-size:24px;letter-spacing:-.04em}.student-next-card>p,.student-progress-card>p,.student-inline-empty p,.student-course-placeholder p{color:#777;font-size:12px;line-height:1.55}.student-next-card .text-action{margin-top:auto;text-align:left}.student-progress-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#171717,#292329);color:#fff}.student-progress-card:after{content:"";position:absolute;width:220px;height:220px;right:-95px;bottom:-95px;border-radius:50%;background:radial-gradient(circle,var(--lav),transparent 68%);opacity:.35}.student-progress-ring{position:relative;z-index:1;width:104px;height:104px;margin:40px 0 24px;display:grid;place-items:center;border:8px solid #3a3438;border-radius:50%}.student-progress-ring span{font:600 27px Unbounded,sans-serif}.student-progress-ring small{font:600 11px Manrope,sans-serif}.student-progress-card>p{color:#bdb5ba}.student-task-card,.student-course-card{min-height:245px}.student-inline-empty,.student-course-placeholder{margin-top:34px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;padding:18px;border:1px solid rgba(17,17,17,.08);border-radius:18px;background:rgba(255,255,255,.52)}.student-inline-empty>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--rose);font-weight:800}.student-inline-empty strong,.student-course-placeholder strong{font-size:13px}.student-inline-empty p,.student-course-placeholder p{margin:4px 0 0}.student-task-card>.text-action{margin-top:18px}.student-course-placeholder .student-card-empty-icon{width:42px;height:42px;margin:0;border-radius:13px}.student-course-placeholder .soft-button{min-height:40px}
@media(max-width:900px){.auth-role-options{grid-template-columns:1fr}.student-welcome{align-items:flex-start;flex-direction:column}.student-dashboard-grid{grid-template-columns:1fr}.student-progress-card{min-height:280px}}
@media(max-width:520px){.auth-role-card{min-height:76px}.student-home-view{padding:18px 2px 30px}.student-welcome{padding:24px 10px}.student-welcome h1{font-size:42px}.student-welcome>.black-button{width:100%}.student-inline-empty,.student-course-placeholder{grid-template-columns:auto 1fr}.student-course-placeholder .soft-button{grid-column:1/-1;width:100%}}

/* Empty workspace and Moscow time */
.workspace-empty{display:flex;min-height:180px;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;border:1px dashed rgba(17,17,17,.14);border-radius:20px;background:rgba(255,255,255,.38);color:#171717}
.workspace-empty svg{width:44px;height:44px;margin-bottom:15px;fill:none;stroke:#8c8187;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.workspace-empty strong{font-size:16px;letter-spacing:-.025em}
.workspace-empty p{max-width:390px;margin:7px auto 0;color:#6b6468;font-size:13px;line-height:1.55}
.workspace-empty .soft-button{margin-top:17px;background:#fff;color:#171717}
.agenda-timeline>.workspace-empty{min-height:310px;margin:12px 0 0}
.next-compact>.workspace-empty{min-height:220px;margin-top:13px;padding:20px;background:rgba(255,255,255,.52)}
.next-compact>.workspace-empty svg{width:36px;height:36px}
.tasks>.workspace-empty,.activity>.workspace-empty{min-height:180px;margin-top:15px;padding:18px}
.tasks>.workspace-empty p,.activity>.workspace-empty p{font-size:12px}
.event-layer>.workspace-empty{grid-column:2 / 7;grid-row:4 / 12;align-self:stretch;justify-self:stretch;z-index:1;margin:10px;min-width:420px;background:rgba(255,252,248,.86);pointer-events:auto}
.students-grid>.workspace-empty{grid-column:1 / -1;min-height:360px}
.homework-list>.workspace-empty{min-height:430px;margin:8px}
.homework-review>.workspace-empty{min-height:500px;border:0;background:transparent}
.conversation-list>.workspace-empty{min-height:450px;padding:18px}
.chat-pane>.workspace-empty{height:100%;min-height:620px;border:0;border-radius:0;background:transparent}
.resource-column>.workspace-empty{min-height:370px}
.moscow-clock{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border:1px solid rgba(17,17,17,.08);border-radius:12px;background:rgba(255,255,255,.58);color:#5f585c;font-size:11px;font-weight:800;letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap}
.library-feature[hidden]{display:none}.library-layout:has(.library-feature[hidden]){grid-template-columns:1fr}
@media(max-width:760px){.workspace-empty{min-height:230px;padding:22px}.event-layer>.workspace-empty{grid-column:2 / 7;min-width:520px}.moscow-clock{order:-1;min-height:36px;padding:0 9px;font-size:10px}.topbar-actions{flex-wrap:wrap}.homework-review>.workspace-empty,.chat-pane>.workspace-empty{min-height:340px}}

.student-simple-view{padding:42px 8px 60px}.student-section-header{padding:24px 24px 38px}.student-section-header h1{margin:25px 0 14px;font:600 clamp(52px,6vw,88px)/.94 Unbounded,sans-serif;letter-spacing:-.075em}.student-section-header p{max-width:620px;margin:0;color:#696165;font-size:14px;line-height:1.65}.student-simple-empty{min-height:300px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:25px;padding:38px;background:linear-gradient(145deg,rgba(255,255,255,.8),rgba(246,221,210,.45))}.student-simple-empty .student-card-empty-icon{margin:0}.student-simple-empty h2{margin:10px 0 7px;font-size:27px;letter-spacing:-.04em}.student-simple-empty p{max-width:620px;margin:0;color:#746c70;font-size:13px;line-height:1.6}
@media(max-width:520px){.student-simple-view{padding:18px 2px 30px}.student-section-header{padding:24px 10px}.student-section-header h1{font-size:42px}.student-simple-empty{grid-template-columns:1fr;align-items:start;padding:25px}.student-simple-empty>.black-button{width:100%}}

.admin-dashboard-view{padding:26px 8px 60px}.admin-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:30px 20px 34px}.admin-header h1{margin:25px 0 13px;font:600 clamp(50px,5.8vw,86px)/.94 Unbounded,sans-serif;letter-spacing:-.075em}.admin-header p{margin:0;color:#696165;font-size:14px}.admin-header>.soft-button{min-height:44px}.admin-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.admin-stat-grid article{min-height:160px;padding:22px;border:1px solid rgba(255,255,255,.74);border-radius:22px;background:rgba(255,252,248,.76);box-shadow:var(--shadow);display:flex;flex-direction:column}.admin-stat-grid article.accent{background:linear-gradient(145deg,var(--rose),var(--lav))}.admin-stat-grid span{font-size:11px;font-weight:700;color:#686064}.admin-stat-grid strong{margin:auto 0 8px;font:600 38px Unbounded,sans-serif;letter-spacing:-.06em}.admin-stat-grid small{font-size:9px;color:#827a7e}.admin-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:18px}.admin-users,.admin-activity{min-height:520px}.admin-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.admin-section-head h2{margin:7px 0 0;font-size:24px;letter-spacing:-.04em}.admin-load-state{font-size:10px;color:#756d71}.admin-table-wrap{max-width:100%;overflow:auto;border:1px solid rgba(17,17,17,.08);border-radius:16px}.admin-table{width:100%;border-collapse:collapse;min-width:760px;background:rgba(255,255,255,.42)}.admin-table th,.admin-table td{padding:14px 13px;border-bottom:1px solid rgba(17,17,17,.07);text-align:left;vertical-align:middle}.admin-table th{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#746d70;background:rgba(255,255,255,.65)}.admin-table td{font-size:11px;color:#514b4e}.admin-table td strong,.admin-table td small{display:block}.admin-table td strong{font-size:12px;color:#171717}.admin-table td small{margin-top:3px;color:#8a8286}.admin-table td[data-role]{font-weight:800}.admin-table td[data-role="admin"]{color:#8b3e6b}.admin-table td[data-role="student"]{color:#3a6589}.admin-table tbody tr:hover{background:rgba(255,255,255,.7)}.admin-activity{background:linear-gradient(145deg,#171717,#292329);color:#fff}.admin-activity-list{display:grid;gap:2px}.admin-activity-list>p{color:#aaa;font-size:12px;line-height:1.6}.admin-activity-list article{display:grid;grid-template-columns:9px 1fr;gap:12px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.09)}.admin-activity-dot{width:7px;height:7px;margin-top:5px;border-radius:50%;background:var(--rose)}.admin-activity-list strong{font-size:11px}.admin-activity-list p{margin:3px 0;color:#c3bbc0;font-size:10px}.admin-activity-list small{color:#817a7e;font-size:9px;font-variant-numeric:tabular-nums}
@media(max-width:1100px){.admin-stat-grid{grid-template-columns:1fr 1fr}.admin-grid{grid-template-columns:1fr}.admin-activity{min-height:340px}}
@media(max-width:620px){.admin-dashboard-view{padding:12px 2px 30px}.admin-header{align-items:flex-start;flex-direction:column;padding:25px 10px}.admin-header h1{font-size:42px}.admin-header>.soft-button{width:100%}.admin-stat-grid{grid-template-columns:1fr 1fr;gap:8px}.admin-stat-grid article{min-height:135px;padding:17px}.admin-stat-grid strong{font-size:31px}.admin-users,.admin-activity{padding:19px;min-height:auto}.admin-table{min-width:680px}}
