/* Workspace layout: separate operational spaces, without promotional content. */
:root{--blue:#215c72;--blue-light:#e8f2f5;--ink:#1b2c39;--muted:#5a6a77;--paper:#f3f5f7;--line:#dce2e7;--radius:10px;font-family:system-ui,-apple-system,'Segoe UI',sans-serif;font-size:17px}
h1,h2,h3,.brand strong,.lesson-time,.class-card b,.stat b{font-family:inherit;letter-spacing:-.02em}.main{max-width:1700px;padding:29px 34px 46px}.shell{grid-template-columns:238px minmax(0,1fr)}.sidebar{background:#152f40;border-right:0;padding:27px 14px;color:#fff;overflow-y:auto}.sidebar .brand{color:#fff;border-bottom:1px solid #ffffff20;padding-bottom:26px;margin-bottom:10px}.sidebar .brand small{color:#bfd0db}.sidebar .space-label{color:#a9c6d6;padding:17px 12px 12px;letter-spacing:.11em;font-size:.68rem}.sidebar .nav button{color:#d4e0e8;font-size:.8rem;border-radius:7px;min-height:44px;padding:12px}.sidebar .nav button:hover{background:#ffffff10}.sidebar .nav button.active{background:#eaf2f6;color:#163e52}.sidebar .nav button .count{background:#406173;color:#fff}.sidebar .nav button.active .count{background:#d5e6ef;color:#163e52}.sidebar .mini-profile{border-color:#ffffff20}.sidebar .mini-profile small{color:#aec3cf}.sidebar .mini-profile strong{font-size:.77rem}.sidebar-bottom{padding-top:25px}.topbar{height:72px;padding:0 34px;background:white}.topbar strong{font-size:.84rem}.avatar{background:#dfedf1;color:#1c5b71}.page-heading{margin-bottom:23px;align-items:center}.page-heading h1{font-size:1.85rem;margin:6px 0}.eyebrow{font-size:.67rem;letter-spacing:.08em}.btn{border-radius:6px;min-height:43px;padding:10px 15px;font-size:.83rem}.btn:hover{background:#17465a}.btn.secondary:hover{background:#edf2f6}.btn.quiet:hover{background:#e9f1f5}.pill{font-size:.69rem;border-radius:5px;padding:4px 8px}.panel{padding:21px 23px;border-radius:10px;box-shadow:0 1px 3px #122a3b04;margin-bottom:22px}.panel h2{font-size:1.04rem}.panel-top{margin-bottom:14px}.desk-toolbar{display:flex;gap:14px;align-items:end;margin:0 0 23px;flex-wrap:wrap}.desk-toolbar .field{min-width:175px;font-size:.76rem}.field{font-size:.8rem;gap:7px}.field input,.field select,.field textarea{border-color:#b9c6cf;border-radius:6px;padding:11px;font-size:.9rem;min-height:43px}.desk-columns{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:24px;align-items:start}.desk-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:0 0 23px}.desk-metrics button{background:white;text-align:left;border:1px solid var(--line);border-radius:9px;padding:18px 20px;color:var(--ink);display:flex;align-items:center;gap:16px}.desk-metrics button:hover{border-color:#6d9bad;background:#fbfdfe}.desk-metrics strong{font-size:1.8rem;line-height:1.1;font-weight:650}.desk-metrics span{font-size:.76rem;line-height:1.5;color:var(--muted);max-width:125px}.desk-item{padding:16px 0;border-bottom:1px solid var(--line)}.desk-item:last-child{border-bottom:0}.desk-item strong{font-size:.84rem}.desk-item p{font-size:.8rem;margin:5px 0}.desk-item small{font-size:.72rem}.panel-footer{padding-top:16px;text-align:center}.lesson{padding:18px 0;gap:15px;grid-template-columns:78px minmax(0,1fr) auto}.lesson-body{border-color:#5c8da1;border-left-width:3px;padding-left:14px}.lesson-body h3{font-size:.85rem}.lesson-body p{font-size:.73rem;line-height:1.6}.lesson-time{font-size:.84rem}.lesson-time small{font-size:.7rem}.course-block{border-color:#528297;box-shadow:none;min-height:112px}.day-col{background:#edf1f4;border-radius:8px}.day-col.today{background:#e5f0f5;border-color:#9db9c6}.week-grid{gap:10px}.course-block .hour{color:#28596f}.tabs{gap:26px;margin-bottom:21px}.tabs button{font-size:.83rem}.identifier{font-family:ui-monospace,monospace;font-size:.78rem}.row-actions{display:flex;gap:4px;flex-wrap:wrap;max-width:360px}.row-actions .btn{font-size:.72rem;padding:6px 9px;min-height:34px}.school-login{min-height:100dvh;display:grid;grid-template-columns:.82fr 1fr;background:white}.school-login-brand{background:#152f40;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:50px 65px;position:relative;overflow:hidden}.school-login-brand:after{content:'';width:380px;height:380px;border:1px solid #ffffff15;border-radius:50%;position:absolute;bottom:-140px;right:-130px;pointer-events:none}.school-login-brand .brand{color:white}.school-login-brand .brand small{color:#adc6d5}.school-login-brand h1{font-size:2.8rem;font-weight:650;margin:14px 0 18px}.school-login-brand p{font-size:1rem;color:#c4d4de}.school-login-brand>small{color:#9fb9c9;font-size:.78rem}.school-label{color:#a8c6d5;font-size:.71rem;letter-spacing:.14em}.school-login-form{display:grid;place-items:center;padding:50px 40px}.school-login-form .login-box{max-width:425px}.school-login-form h2{font-size:1.8rem;margin-bottom:20px}.school-login-form .login-box>.muted:empty{display:none}.school-login-form .login-box>.muted{margin-bottom:22px}.school-login-form .field{margin-bottom:21px}.school-login-form .btn{min-height:47px}.school-login-form .switches{margin-top:16px;justify-content:flex-end}.connected-as{padding:12px 14px;background:#eef3f6;border-radius:6px;font-size:.83rem;margin-bottom:22px}.credential-summary{display:flex;flex-direction:column;gap:20px}.credential-summary input{font-family:ui-monospace,monospace;font-size:1rem}.preview-banner{background:#fff0cf;color:#6e4814;border-bottom:1px solid #d5b56d;padding:12px 26px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.84rem;position:sticky;top:0;z-index:50}.is-preview .sidebar{top:67px;height:calc(100dvh - 67px)}.is-preview #main{position:relative}.is-preview .btn.danger,.is-preview [data-action=edit-lesson],.is-preview [data-action=move-lesson],.is-preview [data-action=request-move],.is-preview [data-action=edit-entry],.is-preview [data-action=delete-entry],.is-preview [data-action=change-password]{display:none}.print-help{font-size:.83rem;color:var(--muted);margin-bottom:20px}#credential-print>header{margin-bottom:15px}#credential-print>header p{font-size:.75rem;color:var(--muted)}.credential-cards{display:grid;grid-template-columns:1fr;gap:17px}.credential-card{border:1px dashed #9aabb7;border-radius:7px;padding:19px;background:white;break-inside:avoid}.credential-card h3{font-size:1rem}.credential-card>p{font-size:.73rem;color:var(--muted);margin-top:4px}.credential-card dl{font-size:.8rem;margin:17px 0;display:grid;grid-template-columns:1fr;gap:5px}.credential-card dt{font-size:.7rem;color:#576674}.credential-card dd{margin:0 0 6px;overflow-wrap:anywhere}.credential-card dd.printed-password{font-size:1rem;font-family:ui-monospace,monospace;font-weight:650}.empty{padding:26px 20px}.empty svg{width:28px;height:28px;margin-bottom:10px}.empty strong{font-size:.9rem}.empty p{font-size:.77rem}table th{font-size:.64rem;padding:13px 10px}table td{font-size:.78rem;padding:15px 10px}.class-card{border-radius:9px}.class-card b{font-size:1.55rem}.class-card small{font-size:.75rem}.space-student .topbar .year{display:inline}.space-student .page-heading h1{font-size:1.85rem}.space-student .entry-card h2{font-size:1.1rem}.space-student .entry-meta{font-size:.77rem}.space-student .lesson-body p{font-size:.8rem}.space-student .lesson-body h3{font-size:.92rem}
@media(max-width:1200px){.desk-columns{grid-template-columns:1fr}.desk-metrics{grid-template-columns:repeat(2,1fr)}.school-login-brand{padding:45px}.main{padding:26px}.topbar{padding:0 26px}}
@media(max-width:760px){.shell{display:block}.sidebar{width:245px}.main{padding:23px 17px}.topbar{padding:0 17px}.desk-metrics{gap:10px}.desk-metrics button{padding:15px;gap:12px}.desk-metrics strong{font-size:1.4rem}.desk-metrics span{font-size:.67rem}.desk-toolbar .field{flex:1}.desk-columns{gap:0}.lesson{grid-template-columns:65px 1fr}.lesson>.actions{grid-column:2}.school-login{grid-template-columns:1fr}.school-login-brand{padding:25px;min-height:190px;gap:35px}.school-login-brand h1{font-size:1.8rem;margin:8px 0}.school-login-brand .school-label,.school-login-brand>small{display:none}.school-login-brand p{font-size:.86rem}.school-login-form{padding:35px 25px}.preview-banner{padding:12px 16px;align-items:start;font-size:.72rem}.preview-banner .btn{font-size:.68rem}.panel{padding:18px}.page-heading h1{font-size:1.65rem}.page-heading{align-items:start}.is-preview .sidebar{top:0;height:100dvh}}
@media print{body{background:white!important;color:black!important;font-size:11pt}.skip,#root,#notice,.modal-head,.modal-actions,.print-help{display:none!important}body:has(#credential-print) dialog{display:block!important;position:static!important;width:100%!important;max-width:none!important;max-height:none!important;overflow:visible!important;border:0!important;box-shadow:none!important;border-radius:0!important;margin:0!important;padding:0!important}dialog::backdrop{display:none!important}.modal-body{padding:0!important}#credential-print{display:block!important}.credential-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:7mm}.credential-card{padding:5mm;border:1px dashed #555;break-inside:avoid;page-break-inside:avoid}.credential-card h3{font-size:12pt}.credential-card dl{font-size:10pt}.credential-card dd.printed-password{font-size:12pt}.credential-card p{font-size:9pt}.credential-card dd{word-break:break-word}}
