:root{--navy:#11233f;--navy-deep:#0b172c;--accent:#2563eb;--accent-dark:#1d4ed8;--accent-light:#eaf1ff;--text:#172b47;--muted:#65758b;--border:#e2e8f0;--surface:#fff;--canvas:#f4f7fb;--amber:#a56a12;--radius:14px;--shadow:0 2px 8px rgba(17,35,63,.035)}*{box-sizing:border-box}html{font-size:14px}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--text);background:var(--canvas);line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #6082bc;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;line-height:1.2;letter-spacing:-1px;margin-bottom:10px;font-weight:750}h2{font-size:17px;letter-spacing:-.3px;margin-bottom:5px;font-weight:700}h3{font-size:17px;margin-bottom:8px}p{color:var(--muted)}.sidebar{position:fixed;inset:0 auto 0 0;width:246px;background:var(--navy);color:#e0e4eb;display:flex;flex-direction:column;padding:29px 17px 20px;z-index:50}.brand{display:flex;align-items:center;gap:10px;color:#fff;padding:0 11px;font-size:23px;font-weight:700;letter-spacing:-.65px}.brand-mark{height:39px;width:39px;display:flex;align-items:center;justify-content:center;background:#a6bade;border-radius:12px;color:var(--navy);font-size:24px;font-weight:850;letter-spacing:-5px;padding-right:5px}.brand-mark span{font-size:24px;transform:translateY(2px)}.brand small{display:block;color:#8f9aae;font-size:10px;font-weight:500;letter-spacing:1.1px;text-transform:uppercase;margin-top:1px}.school-label{margin:29px 10px 22px;padding:16px 12px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.07);border-radius:11px}.school-label .eyebrow{font-size:9px;color:#8593aa}.school-label strong{display:block;font-size:12px;line-height:1.55;font-weight:600;margin-top:7px}.sidebar nav{overflow-y:auto;flex:1}.nav-section{display:block;font-size:9px;font-weight:650;letter-spacing:1.5px;color:#6d7c95;margin:20px 15px 9px}.nav-section:first-child{margin-top:0}.nav-link{display:flex;align-items:center;gap:12px;border-radius:8px;padding:11px 14px;margin:3px 0;font-size:12px;font-weight:500;color:#bdc3cf;transition:background .15s,color .15s}.nav-link:hover{background:rgba(255,255,255,.06);color:#fff}.nav-link.active{background:#1f3254;color:#d7e2f5;box-shadow:inset 3px 0 #9eb3d8}.nav-icon{font-size:18px;width:21px;text-align:center;color:#8291ab;line-height:1}.nav-link.active .nav-icon{color:#bbcce9}.sidebar-footer{border-top:1px solid rgba(255,255,255,.08);padding:20px 13px 0;color:#b6bfce;font-size:10px}.status-dot{display:inline-block;width:6px;height:6px;background:#8ca7d6;border-radius:50%;margin-right:6px}.sidebar-footnote{display:block;color:#738199;margin-top:4px;font-size:9px}.workspace{margin-left:246px;min-height:100vh}.topbar{height:79px;display:flex;justify-content:space-between;align-items:center;padding:0 35px;border-bottom:1px solid var(--border);background:rgba(255,255,255,.9);gap:20px}.topbar-left,.topbar-right{display:flex;align-items:center;gap:21px}.topbar-breadcrumb{font-size:12px;color:#6c7b95}.topbar-right{gap:22px}.school-switch-link{font-size:11px;color:var(--accent);font-weight:600}.user-profile{display:flex;align-items:center;gap:9px}.user-profile strong{font-size:11px;font-weight:650;display:block}.user-profile small{font-size:10px;color:var(--muted);display:block}.avatar{width:34px;height:34px;border-radius:50%;background:#e8ebf1;display:inline-flex;align-items:center;justify-content:center;color:#3f557c;font-size:12px;font-weight:700;flex-shrink:0}.menu-toggle{display:none;border:0;background:transparent;color:var(--text);font-size:23px;padding:5px}.page-content{max-width:1550px;padding:34px 36px 45px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:26px}.page-heading p{margin:0;font-size:12px}.eyebrow{display:block;font-size:9px;font-weight:700;letter-spacing:1.7px;color:#68768f;margin-bottom:10px}.heading-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 16px;border-radius:8px;font-size:11px;line-height:1.5;font-weight:650;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:background .15s,transform .15s}.button:hover,.btn:hover{transform:translateY(-1px)}.button-primary,.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 3px 8px #10367710}.button-primary:hover,.btn-primary:hover{background:var(--accent-dark)}.button-secondary,.btn-secondary{background:#fff;color:#3b475c;border-color:#dfe2e7}.button-secondary:hover,.btn-secondary:hover{background:#f7f8fa}.button-small{min-height:32px;padding:7px 11px;font-size:10px}.btn-quiet{background:transparent;color:#74829a;font-size:10px;padding:8px 0;border:0}.btn-block{width:100%}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:24px}.stat-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px 22px 21px;box-shadow:var(--shadow);min-height:147px}.stat-icon{position:absolute;right:18px;top:20px;width:31px;height:31px;display:flex;align-items:center;justify-content:center;border-radius:9px;font-size:20px}.mint{background:#eaeef5;color:#21437e}.blue{background:#ebf1f7;color:#527894}.amber{background:#f9f2e5;color:#aa7d3b}.stat-label{display:block;color:#697790;font-size:11px;margin-bottom:13px}.stat-card>strong{display:block;font-size:32px;line-height:1.2;font-weight:700;letter-spacing:-1px;margin-bottom:12px}.stat-card>strong.money-stat{font-size:25px;letter-spacing:-.5px}.money-stat small{font-size:10px;letter-spacing:0;color:#7e8ba2;font-weight:600}.stat-foot{font-size:10px;color:#818ea4}.amber-text{color:#936d2e}.dashboard-grid{display:grid;grid-template-columns:1.28fr 1fr;gap:22px;margin-bottom:24px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:22px}.dashboard-grid>.panel{margin-bottom:0}.panel-heading{padding:21px 22px 18px;display:flex;justify-content:space-between;align-items:center;gap:15px}.panel-heading p{font-size:10px;margin:3px 0 0}.panel-heading h2{margin-bottom:0}.text-link{color:var(--accent);font-size:10px;font-weight:650;white-space:nowrap}.text-link:hover{text-decoration:underline}.muted,.muted-link{color:var(--muted);font-size:11px}.muted-link:hover{color:var(--accent)}.class-chart{padding:4px 23px 23px}.chart-row{display:flex;align-items:center;gap:15px;padding:10px 0;font-size:10px}.chart-row>span{width:94px;flex-shrink:0;color:#5f6d84}.chart-row>strong{font-size:11px;width:25px;text-align:right}.chart-track{height:9px;border-radius:10px;background:#edeff3;flex:1;overflow:hidden}.chart-bar{height:100%;border-radius:10px;background:#889cbe;min-width:1px}.chart-row:nth-child(2n) .chart-bar{background:#465b7f}.quick-links{padding:0 22px 12px}.quick-links a{display:flex;align-items:center;padding:13px 0;gap:12px;border-top:1px solid #eceef2}.quick-icon{display:flex;align-items:center;justify-content:center;border-radius:9px;width:35px;height:35px;background:#f0f2f5;color:#5d6d88;font-size:18px}.quick-links strong{display:block;font-size:11px;font-weight:600}.quick-links small{display:block;color:#828ea4;font-size:10px;margin-top:2px}.quick-links b{margin-left:auto;font-weight:400;color:#6e7d96}.table-wrap{position:relative;width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:11px}thead{background:#f8f9fa;color:#7f8ca2;font-size:9px;letter-spacing:.65px;text-transform:uppercase}th{font-weight:600;white-space:nowrap;padding:13px 21px;border-top:1px solid #edeff2;border-bottom:1px solid #eceef2}td{padding:15px 21px;border-bottom:1px solid #eceef2;vertical-align:middle;color:#4d586c}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfcfd}td strong{font-size:11px;font-weight:600;color:#36445b}.numeric{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.person-link{display:flex;align-items:center;gap:10px;color:#36445b}.person-link small,.cell-sub{display:block;color:#838fa5;font-size:9px;margin-top:3px}.badge{display:inline-flex;align-items:center;border-radius:5px;padding:4px 7px;white-space:nowrap;font-size:9px;font-weight:550;line-height:1.35}.badge-success{color:#375384;background:#eaeef4}.badge-warning{color:#9a743c;background:#faf2e3}.badge-danger{color:#b25d57;background:#faeeec}.badge-muted{color:#738199;background:#eff1f4}.info-panel{padding:25px}.info-panel p{font-size:12px;max-width:350px;line-height:1.8}.filter-bar{display:flex;align-items:center;gap:12px;padding:18px 21px;flex-wrap:wrap}.search-field{flex:1;min-width:230px}.filter-bar select{min-width:165px}.filter-count{margin-left:auto;font-size:10px;color:#808da3}.field,.form-field{margin-bottom:18px}.field label,.form-field label{display:block;font-weight:600;font-size:11px;color:#4f5a6c;margin-bottom:7px}input:not([type="checkbox"]):not([type="hidden"]),select,textarea{width:100%;color:#323f56;border:1px solid #dcdfe5;background:#fff;border-radius:7px;min-height:40px;padding:10px 12px;font-size:11px;outline:none}input::placeholder,textarea::placeholder{color:#949fb2}input:focus,select:focus,textarea:focus{border-color:#7b91b7;box-shadow:0 0 0 3px #10367710}select{padding-right:26px}textarea{resize:vertical;line-height:1.6}.field>span,.form-field>span{color:#b25851;font-size:10px}.field small,.help-text{display:block;font-size:10px;color:#818ea4;line-height:1.7;margin-top:7px}.form-panel{max-width:880px}.narrow-form{max-width:620px}.form-section{padding:25px 27px;border-bottom:1px solid var(--border)}.form-section h2{font-size:15px;margin-bottom:18px}.form-section p{font-size:11px;margin-top:-10px;margin-bottom:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 23px}.span-two{grid-column:span 2}.form-actions{display:flex;align-items:center;gap:10px;padding:20px 27px;background:#fbfbfc;flex-wrap:wrap}.checkbox-field{padding-top:26px}.checkbox-field label,.checkbox-label{display:flex;align-items:center;gap:9px;cursor:pointer;font-size:11px}.checkbox-field input,.checkbox-label input{width:15px;height:15px;accent-color:var(--accent)}.checkbox-field small{margin-left:24px}.back-link{display:inline-block;font-size:10px;font-weight:600;color:var(--accent);margin-bottom:12px}.validation-summary:not(:empty){margin:20px 27px;padding:13px 17px;border:1px solid #f1dcd7;background:#fff4f0;border-radius:7px;font-size:11px;color:#a44e45}.validation-summary-valid{display:none}.validation-summary ul{padding-left:16px;margin:0}.input-validation-error{border-color:#bf796e!important}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.detail-list{margin:0;padding:0 23px 22px}.detail-list>div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #eceef2}.detail-list>div:last-child{border-bottom:0}.detail-list dt{color:#77859d;font-size:11px}.detail-list dd{margin:0;text-align:right;font-size:11px;font-weight:550}.balance-value{color:var(--amber)}.class-grid,.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.class-card{padding:23px}.class-card-top,.resource-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.class-emblem{font-size:25px;line-height:1;color:#4a638d}.class-card h2{font-size:19px;margin-bottom:9px}.class-card p{font-size:11px}.class-card p strong{color:#4f5f7c}.capacity-track{height:5px;background:#edeff3;border-radius:5px;overflow:hidden;margin:19px 0}.capacity-track span{display:block;height:100%;background:#8ea0bf}.class-card-bottom,.resource-bottom{display:flex;justify-content:space-between;gap:10px;padding-top:15px;border-top:1px solid #eeeff2}.resource-card{padding:23px;display:flex;flex-direction:column;margin-bottom:0}.resource-icon{height:38px;width:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#eef0f4;color:#6b7a93;font-size:24px}.resource-card h2{font-size:17px;line-height:1.5}.resource-meta{font-size:9px;margin:7px 0 13px;color:#707e97}.resource-description{font-size:11px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;flex:1;margin-bottom:20px}.resource-bottom{margin-top:auto}.notice,.alert{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-radius:10px;border:1px solid #dce2ec;background:#eff2f7;padding:15px 19px;font-size:11px;color:#465979;margin-bottom:22px}.notice strong{font-size:11px}.notice span{flex:1;font-size:10px}.notice-info{border-color:#e0e5ef;background:#f1f4f9;color:#647189}.alert-success{background:#eaeef6;color:#3c5683}.alert-danger{background:#fff1ed;border-color:#f2dad3;color:#a55a4f}.empty-state{text-align:center;padding:48px 25px}.empty-state h3{font-size:17px;color:#4f5a6d}.empty-state p{font-size:11px;max-width:370px;margin:0 auto;line-height:1.8}.empty-state.compact{padding:28px 20px}.empty-cell{text-align:center;padding:35px 20px!important;color:#818ea4;font-size:11px}.empty-icon,.success-mark{display:flex;align-items:center;justify-content:center;background:#edf0f5;color:#6f82a2;border-radius:50%;height:44px;width:44px;margin:0 auto 18px;font-size:23px}.attendance-table td:nth-child(2){min-width:135px;width:24%}.attendance-table td:nth-child(3){min-width:210px;width:40%}.attendance-table input,.attendance-table select{min-height:35px;padding:8px 10px}.inline-field{margin:0}.inline-field label{font-size:9px;margin-bottom:5px}.filter-bar:has(.inline-field){align-items:flex-end}.payment-form{padding:0 22px 24px}.payment-form .help-text{margin-top:-2px;margin-bottom:19px}.skip-link{position:fixed;top:-100px;left:20px;padding:12px;background:#fff;color:var(--accent);z-index:200}.skip-link:focus{top:10px}.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}.auth-shell{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.auth-intro{position:relative;background:var(--navy);color:#fff;padding:45px 8%;display:flex;flex-direction:column;overflow:hidden}.auth-intro:after{content:"";position:absolute;bottom:-190px;right:-140px;width:470px;height:470px;border:90px solid #23355440;border-radius:50%;pointer-events:none}.auth-intro .brand{padding:0}.auth-message{margin:auto 0;position:relative;z-index:1;padding:80px 0;max-width:410px}.auth-message .eyebrow{color:#97a7c4}.auth-message h1{font-size:45px;letter-spacing:-1.7px;line-height:1.22;margin:20px 0}.auth-message p{color:#a0abbd;font-size:14px;line-height:1.9}.auth-features{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:35px}.auth-features span{font-size:11px;color:#b6c3d8}.auth-footer{font-size:10px;color:#818ea4;z-index:1;margin:0}.auth-form-panel{display:flex;align-items:center;justify-content:center;padding:50px 35px;background:#f7f8fa}.auth-card{max-width:390px;width:100%}.auth-card h2{font-size:26px;letter-spacing:-.6px;margin:14px 0 10px}.auth-card .muted{margin-bottom:27px;font-size:12px}.auth-card input:not([type="checkbox"]):not([type="hidden"]){font-size:12px;min-height:45px}.auth-card .form-field{margin-bottom:20px}.auth-card .checkbox-label{color:#76849c;margin:6px 0 24px}.auth-card .btn-primary{font-size:12px;min-height:46px}.auth-card .validation-summary{margin:0 0 20px}.demo-panel{border:1px dashed #ced4e0;padding:16px 19px;margin-top:29px;background:#f0f2f6;border-radius:9px;font-size:10px;color:#67768f}.demo-panel strong{font-size:11px;color:#45546f}.demo-panel p{font-size:10px;color:#64728b;margin:8px 0;line-height:1.8}.demo-panel small{font-size:9px;color:#828fa5}.demo-panel code{color:#475977}.form-stack{display:flex;flex-direction:column}.form-stack .form-field{width:100%}.form-stack .btn{margin-top:5px}.switch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.school-card{padding:25px}.button:disabled,.btn:disabled{opacity:.6;cursor:wait;transform:none}
@media(min-width:1500px){.page-content{padding:40px 45px}.stat-card{padding:26px}.dashboard-grid{gap:25px}.topbar{padding:0 45px}}
@media(max-width:1200px){.sidebar{width:220px;padding-left:12px;padding-right:12px}.workspace{margin-left:220px}.page-content{padding:28px 26px}.topbar{padding:0 26px}.stat-grid{gap:12px}.stat-card{padding:21px 17px}.stat-card>strong.money-stat{font-size:21px}.stat-icon{width:26px;height:26px;right:14px;top:17px}.dashboard-grid{grid-template-columns:1fr 1fr}.page-heading{gap:15px}.heading-actions{gap:7px}.heading-actions .button{padding:10px 12px;font-size:10px}.class-grid,.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}th,td{padding-left:16px;padding-right:16px}}
@media(max-width:1000px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.topbar-right{gap:14px}.topbar-breadcrumb{display:none}.page-heading{align-items:flex-start}.page-heading h1{font-size:27px}.heading-actions{flex-direction:column;align-items:stretch}.detail-grid{grid-template-columns:1fr}.auth-intro{padding:35px 9%}.auth-message h1{font-size:36px}.auth-message p{font-size:12px}.auth-features{grid-template-columns:1fr}.stat-grid.three .stat-card>strong.money-stat{font-size:18px}.stat-grid.three .stat-card{padding:19px 13px}.stat-grid.three .stat-label{font-size:10px}.stat-grid.three .stat-foot{font-size:9px}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);width:246px;transition:transform .22s;box-shadow:8px 0 30px #0f1d3420}.sidebar.is-open{transform:translateX(0)}.workspace{margin-left:0}.menu-toggle{display:block}.topbar{height:66px;padding:0 20px}.topbar-left{gap:10px}.topbar-breadcrumb{display:inline;font-size:11px}.topbar-right{gap:14px}.user-profile{gap:7px}.user-profile strong{max-width:120px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.school-switch-link{display:none}.topbar-right .btn-quiet{font-size:9px}.page-content{padding:25px 20px 35px}.page-heading{margin-bottom:22px;flex-wrap:wrap;gap:17px}.heading-actions{flex-direction:row;width:100%;align-items:center}.heading-actions .button{padding:10px 14px;font-size:11px}.eyebrow{font-size:8px;letter-spacing:1.4px}.page-heading h1{font-size:27px}.page-heading p{font-size:11px}.stat-grid{gap:12px;margin-bottom:19px}.stat-card{min-height:137px;padding:20px 17px}.stat-card>strong{font-size:29px}.stat-card>strong.money-stat{font-size:23px}.stat-foot{font-size:9px}.stat-grid.three{grid-template-columns:1fr}.stat-grid.three .stat-card{padding:19px;min-height:118px}.stat-grid.three .stat-card>strong.money-stat{font-size:25px}.stat-grid.three .stat-label{font-size:11px}.stat-grid.three .stat-foot{font-size:10px}.dashboard-grid{gap:19px;margin-bottom:19px}.panel-heading{padding:19px}.panel-heading h2{font-size:16px}.panel-heading p{font-size:9px}.panel-heading .text-link{font-size:9px}.filter-bar{padding:16px;gap:10px}.search-field{min-width:100%;flex-basis:100%}.filter-bar select{min-width:130px}.filter-count{font-size:9px}.class-grid,.resource-grid{gap:15px}.class-card{padding:18px}.class-card h2{font-size:17px}.resource-card{padding:18px}.form-section{padding:22px 20px}.form-grid{gap:0 16px}.form-actions{padding:18px 20px}.auth-shell{grid-template-columns:1fr}.auth-intro{padding:28px 25px;min-height:270px}.auth-intro .brand{font-size:22px}.auth-message{padding:32px 0 0;max-width:100%;margin:0}.auth-message h1{font-size:31px;margin:12px 0}.auth-message h1 br{display:none}.auth-message p{font-size:11px;margin-bottom:0;max-width:430px}.auth-features,.auth-footer{display:none}.auth-form-panel{padding:34px 25px;align-items:flex-start}.auth-card{max-width:420px}.auth-card h2{font-size:24px}.notice{padding:14px 16px;font-size:10px}.notice span{flex-basis:100%}.detail-list{padding:0 20px 20px}.detail-list>div{padding:12px 0}.chart-row>span{width:85px}.sidebar-backdrop{position:fixed;inset:0;background:#0f1e3745;z-index:40}.switch-grid{grid-template-columns:1fr}}
@media(max-width:450px){.page-content{padding:23px 15px 30px}.topbar{padding:0 15px}.topbar-breadcrumb{display:none}.user-profile strong{font-size:10px;max-width:115px}.user-profile small{font-size:9px}.avatar{width:30px;height:30px}.page-heading h1{font-size:25px}.page-heading p{font-size:10px}.stat-card{padding:18px 14px}.stat-card>strong.money-stat{font-size:20px}.stat-icon{width:23px;height:23px;font-size:16px}.stat-label{font-size:10px}.stat-foot{font-size:8px}.class-grid,.resource-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.span-two{grid-column:auto}.checkbox-field{padding-top:4px}.filter-bar .button{font-size:10px;padding:9px 12px}.filter-count{margin-left:0}.panel-heading{gap:10px;padding:18px 16px}.panel-heading h2{font-size:14px}th,td{padding:13px 15px}.detail-list dt,.detail-list dd{font-size:10px}.heading-actions .button{font-size:10px;padding:10px 11px}.quick-links{padding-left:17px;padding-right:17px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.sidebar,.topbar,.page-heading .button,.filter-bar,.form-actions,.payment-form,.notice,.skip-link{display:none!important}.workspace{margin:0}.page-content{padding:0}.panel{box-shadow:none;break-inside:avoid;border-color:#ddd}.dashboard-grid{display:block}.panel{margin-bottom:15px}body{background:#fff}.stat-grid{display:flex}.stat-card{flex:1}.text-link{color:#333}}
/* Shared settings and workspace selection surfaces. */
.page-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.page-header p{font-size:12px;margin-bottom:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:25px;margin-bottom:22px}.card .badge{margin-bottom:16px}.card h2{font-size:20px}.card p{font-size:12px}.form-card{max-width:750px}.form-card .form-actions{margin:5px -25px -25px;border-top:1px solid var(--border);border-radius:0 0 var(--radius) var(--radius)}.form-card .validation-summary{margin:0 0 20px}
/* Schoolplex public welcome and team access. */
.landing-page{background:#fff}.landing-nav{max-width:1320px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:25px 40px;gap:25px}.landing-brand{color:var(--navy);padding:0;font-size:24px}.landing-brand small{color:#8591a6}.landing-brand .brand-mark{background:#d4dded}.landing-nav nav{display:flex;align-items:center;gap:29px;font-size:11px;font-weight:550;color:#6a7993}.landing-nav .landing-signin{margin-left:9px;color:var(--navy);font-weight:650}.landing-nav .button{font-size:10px}.landing-hero{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center;padding:55px 40px 76px;background:#fff;position:relative}.hero-kicker{display:inline-flex;align-items:center;gap:9px;background:#f0f3f7;color:#67758e;font-size:9px;font-weight:650;letter-spacing:1.4px;padding:8px 11px;border-radius:30px;margin-bottom:24px}.hero-kicker i{width:5px;height:5px;background:#637dab;border-radius:50%}.hero-copy h1{font-size:46px;letter-spacing:-1.9px;font-weight:760;line-height:1.15;margin-bottom:23px;color:#16243c}.hero-copy h1 em{font-style:normal;color:#5a7095;font-weight:600}.hero-copy>p{max-width:430px;color:#78869d;font-size:13px;line-height:1.95;margin-bottom:29px}.hero-actions{display:flex;align-items:center;gap:22px;margin-bottom:30px}.hero-actions .button{font-size:11px;min-height:45px;padding:12px 21px}.hero-secondary{font-size:10px;font-weight:650;color:#606e85}.hero-secondary span{margin-left:5px}.hero-note{display:flex;gap:16px;font-size:8px;color:#8591a6;flex-wrap:wrap}.hero-preview{border:1px solid #dfe3eb;border-radius:15px;overflow:hidden;box-shadow:0 22px 50px #17274410;transform:rotate(-1deg);background:#fff;position:relative}.preview-top{display:flex;align-items:center;gap:14px;font-size:8px;padding:12px 15px;color:#8894a8;border-bottom:1px solid #e8eaee}.preview-dots{display:flex;gap:4px}.preview-dots i{width:5px;height:5px;border-radius:50%;background:#c9ced8}.preview-status{margin-left:auto;font-size:8px;letter-spacing:1px}.preview-workspace{display:grid;grid-template-columns:104px 1fr;min-height:355px}.preview-sidebar{display:flex;flex-direction:column;gap:15px;background:var(--navy);color:#9ca6b8;padding:17px 9px;font-size:7px}.preview-mark{color:#c0cde3;font-size:22px;font-weight:750;letter-spacing:-4px;margin-bottom:7px;padding:0 8px}.preview-sidebar>span{padding:0 5px}.preview-sidebar>span.preview-nav-active{background:#293a58;border-radius:4px;color:#e2e8f3;padding:7px 5px;margin-bottom:-5px}.preview-sidebar small{font-size:5px;letter-spacing:1px;color:#627089;margin-top:6px;padding-left:5px}.preview-main{background:#f4f5f7;padding:22px 19px 18px;min-width:0}.preview-greeting>span{font-size:6px;color:#828ea4;letter-spacing:1.4px}.preview-greeting h2{font-size:18px;margin:8px 0 5px;letter-spacing:-.45px}.preview-greeting p{font-size:7px;margin-bottom:20px;color:#8d99ad}.preview-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:15px}.preview-stat-row>div{padding:12px 10px;background:#fff;border:1px solid #e4e6eb;border-radius:8px}.preview-stat-row div>span{font-size:6px;display:block;color:#8a96aa;margin-bottom:7px}.preview-stat-row strong{font-size:24px;display:block;color:#52617a;font-weight:600;line-height:1.2;margin-bottom:7px}.preview-stat-row strong span{font-size:11px;margin-left:2px}.preview-stat-row small{font-size:5px;color:#909baf;display:block}.preview-columns{display:grid;grid-template-columns:1.13fr .87fr;gap:10px;margin-bottom:15px}.preview-columns>section{background:#fff;border:1px solid #e4e6eb;border-radius:8px;padding:13px 11px}.preview-columns h3{font-size:8px;font-weight:600;color:#546177;margin-bottom:14px}.preview-bar{display:flex;align-items:center;gap:6px;font-size:5px;margin-bottom:10px}.preview-bar span{width:32px;flex-shrink:0;color:#8c98ac}.preview-bar i{position:relative;height:5px;background:#f0f2f6;border-radius:5px;flex:1}.preview-bar i:before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--bar);background:#909fb9;border-radius:5px}.preview-bar b{font-weight:500;color:#64728b;font-size:6px}.preview-tasks>div{display:flex;align-items:center;gap:8px;font-size:9px;color:#7a889f;padding:9px 0;border-top:1px solid #eef0f3}.preview-tasks>div span{font-size:6px;flex:1;white-space:nowrap;color:#7b889f}.preview-bottom{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e4e6eb;border-radius:8px;padding:11px}.preview-avatar{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#e9edf3;border-radius:50%;font-size:9px;color:#8592a7}.preview-bottom strong{display:block;font-size:7px;font-weight:550;color:#707f98}.preview-bottom small{display:block;font-size:6px;color:#9ba5b6;margin-top:3px}.preview-bottom i{margin-left:auto;font-style:normal;font-size:8px;color:#b9c5d9}.landing-intro{border-top:1px solid #edeff3;border-bottom:1px solid #edeff3;background:#f9fafc;text-align:center;padding:29px 25px}.landing-intro>p{font-size:7px;letter-spacing:2px;color:#95a0b3;margin-bottom:16px}.landing-intro>div{display:flex;align-items:center;justify-content:center;gap:32px;color:#718099;font-size:12px;font-weight:550}.landing-intro i{font-size:13px;font-style:normal;color:#c5cbd5}.landing-section{max-width:1230px;padding:76px 40px 75px;margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.landing-section-heading h2,.landing-resources h2,.landing-start h2{font-size:34px;letter-spacing:-1.2px;color:#28354c;line-height:1.25;margin:15px 0 21px}.landing-section-heading p{font-size:12px;line-height:1.95;max-width:300px;color:#8894a8}.landing-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:33px 27px}.landing-feature-grid article{padding:0}.landing-feature-icon{display:flex;align-items:center;justify-content:center;width:33px;height:33px;color:#7184a4;background:#eff2f7;border-radius:10px;font-size:20px;margin-bottom:14px}.landing-feature-grid h3{font-size:12px;font-weight:650;color:#55647e;margin-bottom:9px}.landing-feature-grid p{font-size:10px;color:#8c98ac;line-height:1.85;margin:0}.landing-resources{max-width:1150px;margin:0 auto 65px;padding:45px 50px;display:grid;grid-template-columns:1fr 1fr;gap:65px;background:#f0f3f8;border:1px solid #e0e5ee;border-radius:18px;align-items:center}.landing-resources h2{font-size:29px;letter-spacing:-.95px}.landing-resources p{font-size:11px;line-height:1.9;color:#8793a8}.landing-resources .text-link{font-size:10px}.landing-resources small{display:block;font-size:8px;color:#9ba5b7;margin-top:13px}.landing-resource-stack{display:flex;flex-direction:column;gap:13px}.landing-resource-stack>div{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid #dfe4ec;padding:17px;border-radius:10px;box-shadow:0 3px 5px #60739303}.landing-resource-stack>div>span{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#eef2f8;border-radius:8px;font-size:20px;color:#7a8cab}.landing-resource-stack h3{font-size:11px;font-weight:550;color:#64738e;margin:0 0 6px}.landing-resource-stack p{font-size:8px;line-height:1.4;margin:0;color:#98a3b5}.landing-resource-stack b{font-weight:400;color:#9faabc;margin-left:auto}.landing-start{max-width:1150px;margin:0 auto;padding:35px 10px 65px;display:flex;align-items:center;justify-content:space-between;gap:25px}.landing-start h2{font-size:29px;margin:10px 0 12px}.landing-start p{font-size:11px;color:#8c98ac;margin-bottom:0}.landing-start .button{padding:13px 23px;min-height:44px;font-size:11px}.landing-footer{max-width:1320px;margin:auto;border-top:1px solid #e9ecf0;padding:30px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px}.landing-footer .brand{font-size:19px}.landing-footer .brand-mark{width:31px;height:31px;font-size:20px;letter-spacing:-4px}.landing-footer .brand-mark span{font-size:20px}.landing-footer .brand small{font-size:7px}.landing-footer>span{font-size:9px;color:#9aa4b6}.landing-footer>div{display:flex;gap:20px;font-size:9px;color:#78869d}.auth-alternate{text-align:center;margin:24px 0 0;font-size:11px;color:#838fa5}.auth-alternate a{color:var(--accent);font-weight:600}.auth-home-link{display:block;text-align:center;font-size:10px;color:#8894a9;margin:17px 0 0}.register-card{max-width:475px}.register-shell .auth-message{padding:60px 0}.register-shell .auth-form-panel{padding:38px}.register-shell .form-field{margin-bottom:16px}.register-shell .form-grid{gap:0 17px}.register-shell .auth-card input:not([type="checkbox"]):not([type="hidden"]){min-height:43px}.password-help{margin:-6px 0 17px}.onboarding-steps{margin-top:31px;display:flex;flex-direction:column;gap:22px}.onboarding-steps>div{display:flex;gap:13px;align-items:center}.onboarding-steps>div>span{display:flex;align-items:center;justify-content:center;width:29px;height:29px;border:1px solid #586c9045;border-radius:50%;color:#b6c3d8;font-size:11px;flex-shrink:0}.onboarding-steps strong{font-size:11px;display:block;font-weight:550;color:#bfc9d9}.onboarding-steps small{font-size:9px;display:block;color:#8895ab;margin-top:4px}.team-stats .stat-card{min-height:130px}.team-bottom-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:23px}.access-timeline{padding:0 24px 24px}.access-timeline article{display:flex;gap:13px;padding:17px 0;border-top:1px solid #edeff2}.audit-dot{width:7px;height:7px;margin-top:5px;background:#9ba9c0;border-radius:50%;flex-shrink:0}.access-timeline strong{font-size:11px;font-weight:550;color:#606d84}.access-timeline p{font-size:10px;margin:4px 0 4px;color:#8a96ab}.access-timeline time{font-size:8px;color:#99a3b5}.role-guide{padding:25px}.role-guide h2{font-size:18px;margin-bottom:19px}.role-guide dl{margin:0}.role-guide dl>div{padding:11px 0;border-top:1px solid #ebeef3}.role-guide dt{font-size:10px;font-weight:650;color:#707e97;margin-bottom:4px}.role-guide dd{margin:0;font-size:9px;color:#97a2b4;line-height:1.7}.invitation-note{margin:22px 0 0;font-size:10px;display:block}.invitation-note strong{display:block;margin-bottom:7px}.invitation-note span{display:block;line-height:1.8}.member-identity{display:flex;align-items:center;gap:12px;padding:0 0 23px;margin-bottom:22px;border-bottom:1px solid #e8ebf0}.member-identity .avatar{width:40px;height:40px}.member-identity strong{font-size:13px;color:#5e6b81}.member-identity p{font-size:10px;color:#98a2b4;margin:4px 0 0}.access-checkbox{padding-top:0}.invitation-result .form-section{padding:29px}.invitation-result h2{text-align:center;font-size:20px}.invitation-result .muted{text-align:center;margin:12px auto 22px!important;font-size:11px;max-width:390px;line-height:1.8}.invitation-result .success-mark{width:46px;height:46px;margin-bottom:22px}.copy-feedback{display:inline-block;font-size:10px;margin-left:12px;color:#7688a7;vertical-align:middle}.invitation-result .notice{margin-top:23px}.invitation-result .field input{font-size:10px!important;background:#f8fafd!important}.invitation-shell{padding:35px 25px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:100vh;background:#f0f3f8}.invitation-shell>.brand{margin:15px 0 30px}.invitation-card{width:100%;max-width:530px;padding:31px}.invitation-card h1{font-size:27px;line-height:1.4;letter-spacing:-.5px;margin-top:15px}.invitation-card>p{font-size:12px;line-height:1.9}.invitation-details{margin:23px 0;padding:0;border-top:1px solid #e6eaf0;border-bottom:1px solid #e6eaf0}.invitation-details>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0;font-size:10px}.invitation-details dt{color:#909baf}.invitation-details dd{margin:0;font-weight:550;color:#6c7b95;text-align:right;overflow-wrap:anywhere;max-width:70%}.invitation-card .validation-summary{margin:0 0 20px}.invitation-card .help-text{font-size:10px;margin-bottom:20px}.invitation-card .form-field>.help-text{margin-bottom:0}.invitation-card .button{white-space:normal;text-align:center}.invitation-footer{font-size:9px;color:#99a3b5;margin:0}.onboarding-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;padding:22px;background:#eaeef4;border:1px solid #d8dee9;border-radius:13px}.onboarding-banner h2{font-size:17px;color:#4e5e7a}.onboarding-banner p{margin:7px 0 0;font-size:11px;color:#8591a6}.onboarding-banner .heading-actions{flex-shrink:0}
@media(max-width:1200px){.landing-nav{padding:25px 32px}.landing-nav nav{gap:21px}.landing-hero{gap:30px;padding:45px 32px 65px}.hero-copy h1{font-size:39px}.hero-copy>p{font-size:12px}.hero-note{gap:11px}.hero-actions{gap:14px}.hero-secondary{font-size:9px}.landing-section{gap:45px;padding:65px 35px}.landing-resources,.landing-start{margin-left:35px;margin-right:35px}.landing-resources{gap:35px;padding:38px}.preview-main{padding:21px 15px}.preview-workspace{grid-template-columns:94px 1fr}.preview-sidebar{font-size:6px;padding-left:8px;padding-right:8px}.preview-stat-row{gap:6px}.preview-stat-row>div{padding:11px 8px}.preview-tasks>div span{font-size:5px}.landing-intro>div{gap:23px;font-size:11px}.landing-section-heading h2{font-size:30px}.landing-footer{padding:30px 35px}.landing-start h2{font-size:27px}}
@media(max-width:1000px){.landing-nav nav>a:not(.button):not(.landing-signin){display:none}.landing-hero{grid-template-columns:1fr;gap:39px;max-width:750px;padding:40px 35px 65px}.hero-copy{max-width:530px}.hero-copy h1{font-size:44px}.hero-copy>p{font-size:13px;max-width:470px}.hero-preview{transform:none}.preview-workspace{grid-template-columns:110px 1fr}.preview-sidebar{font-size:8px;padding:21px 12px;gap:17px}.preview-main{padding:27px 24px 22px}.preview-greeting h2{font-size:23px}.preview-greeting>span{font-size:7px}.preview-greeting p{font-size:8px}.preview-stat-row>div{padding:16px 14px}.preview-stat-row div>span{font-size:8px}.preview-stat-row strong{font-size:29px}.preview-stat-row small{font-size:6px}.preview-columns h3{font-size:10px}.preview-bar{font-size:7px;gap:8px;margin-bottom:13px}.preview-bar span{width:44px}.preview-bar b{font-size:7px}.preview-columns>section{padding:16px}.preview-tasks>div{font-size:11px;padding:12px 0}.preview-tasks>div span{font-size:7px}.preview-bottom{padding:14px}.preview-bottom strong{font-size:9px}.preview-bottom small{font-size:7px}.landing-section{grid-template-columns:1fr;gap:30px;padding:55px 35px;max-width:760px}.landing-section-heading{max-width:450px}.landing-section-heading h2 br{display:none}.landing-section-heading p{max-width:400px}.landing-feature-grid{gap:30px}.landing-feature-grid h3{font-size:13px}.landing-feature-grid p{font-size:11px}.landing-resources{gap:32px;padding:30px}.landing-resources h2{font-size:25px}.landing-resources p{font-size:10px}.landing-resource-stack>div{gap:10px;padding:15px}.landing-resource-stack h3{font-size:10px}.landing-resource-stack p{font-size:7px}.landing-intro>div{gap:17px;font-size:10px}.landing-footer>span{display:none}.team-bottom-grid{grid-template-columns:1fr}.onboarding-banner{align-items:flex-start}.onboarding-banner .heading-actions{flex-direction:column;align-items:stretch}}
@media(max-width:760px){.landing-nav{padding:22px 23px;gap:15px}.landing-nav .brand{font-size:21px}.landing-nav .brand-mark{width:34px;height:34px}.landing-nav nav{gap:15px}.landing-nav .button{font-size:9px;min-height:34px;padding:8px 12px}.landing-nav .landing-signin{font-size:10px;margin:0}.landing-hero{padding:30px 25px 45px;gap:34px}.hero-copy h1{font-size:38px;letter-spacing:-1.35px}.hero-copy>p{font-size:12px;max-width:450px;margin-bottom:23px}.hero-kicker{font-size:8px;letter-spacing:1.2px;margin-bottom:18px}.hero-actions{gap:22px;margin-bottom:23px}.hero-note{gap:18px;font-size:7px}.preview-workspace{grid-template-columns:100px 1fr}.preview-main{padding:21px 19px}.preview-sidebar{font-size:7px;gap:17px;padding-left:9px;padding-right:9px}.preview-greeting h2{font-size:20px}.preview-stat-row>div{padding:12px 10px}.preview-stat-row div>span{font-size:7px}.preview-stat-row strong{font-size:25px}.preview-stat-row small{font-size:5px}.preview-columns>section{padding:14px 11px}.preview-bar{font-size:6px;margin-bottom:12px}.preview-bar span{width:34px}.preview-columns h3{font-size:8px}.preview-tasks>div span{font-size:6px}.preview-tasks>div{font-size:9px;padding:10px 0}.landing-intro{padding:24px 20px}.landing-intro>div{flex-wrap:wrap;gap:10px 17px;font-size:9px;line-height:1.8}.landing-intro>div i{display:none}.landing-section{padding:43px 25px}.landing-section-heading h2{font-size:28px}.landing-section-heading p{font-size:11px}.landing-feature-grid{gap:29px 24px}.landing-feature-grid h3{font-size:12px}.landing-feature-grid p{font-size:10px}.landing-resources{grid-template-columns:1fr;margin:0 23px 30px;padding:29px;gap:24px}.landing-resources h2{font-size:26px}.landing-resources p{font-size:11px}.landing-resource-stack h3{font-size:11px}.landing-resource-stack p{font-size:8px}.landing-start{padding:27px 0 40px;margin:0 25px;display:block}.landing-start h2{font-size:26px}.landing-start p{font-size:10px;line-height:1.8}.landing-start .button{margin-top:22px;padding:10px 17px;min-height:40px;font-size:10px}.landing-footer{padding:25px;gap:15px}.landing-footer>div{gap:15px;font-size:8px}.landing-footer .brand{font-size:18px}.landing-footer .brand small{font-size:6px}.register-shell .auth-message{padding:28px 0 0}.register-shell .auth-message h1 br{display:none}.onboarding-steps{display:none}.register-shell .auth-intro{min-height:250px}.register-shell .auth-form-panel{padding:30px 25px}.register-card .form-grid{gap:0 14px}.register-shell .auth-card .form-field{margin-bottom:16px}.invitation-shell{padding:25px 20px}.invitation-card{padding:25px}.invitation-card h1{font-size:24px}.invitation-details>div{font-size:9px}.role-guide{padding:22px}.team-stats .stat-card{min-height:120px}.onboarding-banner{display:block;padding:20px}.onboarding-banner .heading-actions{flex-direction:row;flex-wrap:wrap;margin-top:15px}.invitation-result .form-section{padding:25px}.copy-feedback{font-size:9px}.invitation-result h2{font-size:18px}}
@media(max-width:450px){.landing-nav{padding:19px 19px}.landing-nav .brand{font-size:19px;gap:8px}.landing-nav .brand small{font-size:7px}.landing-nav .brand-mark{height:31px;width:31px;font-size:21px}.landing-nav .brand-mark span{font-size:21px}.landing-nav nav{gap:13px}.landing-nav .button{display:none}.hero-copy h1{font-size:33px;letter-spacing:-1.2px}.hero-copy>p{font-size:11px;line-height:1.9}.landing-hero{padding:27px 20px 35px;gap:27px}.hero-kicker{font-size:7px;letter-spacing:1px;margin-bottom:17px}.hero-actions{gap:16px;flex-wrap:wrap}.hero-actions .button{font-size:10px;min-height:40px;padding:10px 15px}.hero-secondary{font-size:9px}.hero-note{gap:11px;font-size:6px}.hero-preview{border-radius:10px}.preview-top{padding:10px 12px;font-size:6px}.preview-status{font-size:6px}.preview-workspace{grid-template-columns:75px 1fr;min-height:275px}.preview-sidebar{font-size:5px;gap:13px;padding:13px 5px}.preview-mark{font-size:18px}.preview-sidebar small{font-size:4px;margin-top:4px}.preview-main{padding:15px 11px 13px}.preview-greeting>span{font-size:5px}.preview-greeting h2{font-size:16px;margin-top:6px}.preview-greeting p{font-size:5px;margin-bottom:13px}.preview-stat-row{gap:5px;margin-bottom:10px}.preview-stat-row>div{padding:9px 7px;border-radius:6px}.preview-stat-row div>span{font-size:5px;margin-bottom:6px}.preview-stat-row strong{font-size:20px;margin-bottom:6px}.preview-stat-row strong span{font-size:9px}.preview-stat-row small{font-size:4px}.preview-columns{gap:5px;margin-bottom:10px}.preview-columns>section{padding:10px 7px;border-radius:6px}.preview-columns h3{font-size:6px;margin-bottom:10px}.preview-bar{font-size:4px;gap:4px;margin-bottom:9px}.preview-bar span{width:26px}.preview-bar b{font-size:4px}.preview-bar i{height:4px}.preview-tasks>div{gap:4px;font-size:6px;padding:8px 0}.preview-tasks>div span{font-size:4px}.preview-bottom{padding:9px;border-radius:6px}.preview-avatar{height:20px;width:20px;font-size:7px}.preview-bottom strong{font-size:6px}.preview-bottom small{font-size:4px}.landing-section{padding:38px 20px;gap:25px}.landing-section-heading h2{font-size:26px}.landing-section-heading p{font-size:10px}.landing-feature-grid{gap:26px 21px}.landing-feature-grid h3{font-size:11px}.landing-feature-grid p{font-size:9px}.landing-feature-icon{width:31px;height:31px;font-size:19px;margin-bottom:12px}.landing-resources{margin:0 20px 25px;padding:24px}.landing-resources h2{font-size:23px;letter-spacing:-.75px}.landing-resources p{font-size:10px}.landing-resource-stack>div{padding:13px;gap:12px}.landing-resource-stack h3{font-size:10px}.landing-resource-stack p{font-size:7px}.landing-start{margin:0 22px;padding-bottom:34px}.landing-start h2{font-size:24px}.landing-start p{font-size:9px}.landing-footer{padding:24px 20px}.landing-footer .brand{font-size:17px}.landing-footer>div{gap:11px;font-size:8px}.landing-footer .brand-mark{width:28px;height:28px}.register-card .form-grid{grid-template-columns:1fr}.register-shell .auth-card input:not([type="checkbox"]):not([type="hidden"]){min-height:43px}.register-shell .auth-intro{min-height:230px}.register-shell .auth-message h1{font-size:29px}.invitation-shell{padding:21px 15px}.invitation-card{padding:23px}.invitation-card h1{font-size:22px}.invitation-card>p{font-size:11px}.invitation-details>div{font-size:8px}.access-timeline{padding:0 19px 19px}.access-timeline strong{font-size:10px}.access-timeline p{font-size:9px}.copy-feedback{margin:12px 0 0;display:block}.onboarding-banner .heading-actions .button{font-size:9px;padding:9px 10px}}
/* Admissions, periods and learner relationship workflows. */
.workflow-toolbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.workflow-toolbar form{margin:0}.workflow-toolbar .button{min-height:34px;padding:8px 12px;font-size:10px}.workflow-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 24px;background:#f7f8fa;border-bottom:1px solid var(--border)}.workflow-summary h2{font-size:20px;margin:4px 0 8px}.workflow-summary p{font-size:11px;margin:0;line-height:1.8}.workflow-status-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px}.workflow-step{padding:5px 9px;background:#eef0f3;color:#8390a6;border-radius:6px;font-size:9px}.workflow-step.is-current{background:#dce3ef;color:#5b7094;font-weight:600}.workflow-step.is-complete{background:#edf0f6;color:#7789a8}.workflow-note{padding:16px 23px;font-size:11px;background:#f6f8fb;color:#828ea4;border-top:1px solid #e8ecf2;line-height:1.8}.workflow-note strong{color:#71809a}.record-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}.record-meta{display:flex;gap:15px;flex-wrap:wrap;color:#8390a6;font-size:10px;margin-top:7px}.record-meta strong{color:#647189;font-weight:550}.record-detail-list{padding:0 23px 23px;margin:0}.record-detail-list>div{padding:12px 0;border-bottom:1px solid #ebeef2;display:grid;grid-template-columns:135px 1fr;gap:17px;font-size:11px}.record-detail-list>div:last-child{border-bottom:0}.record-detail-list dt{color:#96a1b3}.record-detail-list dd{margin:0;color:#66748d;overflow-wrap:anywhere;white-space:pre-wrap}.notes-box{border:1px solid #e8ebf1;border-radius:9px;background:#fbfcfd;padding:16px 18px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;color:#8591a6;line-height:1.9;margin:0 23px 23px}.document-review{display:flex;align-items:flex-start;gap:9px;margin-top:12px;color:#738199;font-size:11px}.document-review input{width:15px;height:15px;margin-top:3px;accent-color:var(--accent)}.document-review strong{display:block;font-weight:550;margin-bottom:4px}.document-review small{display:block;color:#95a0b3;font-size:9px}.period-card{margin-bottom:24px}.period-card .panel-heading{background:#f5f7fa;border-bottom:1px solid #e2e6ee}.period-dates{display:flex;align-items:center;gap:10px;font-size:10px;color:#8693a8;margin-top:7px}.period-card .period-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.period-card .period-actions .button{min-height:32px;font-size:9px;padding:7px 10px}.term-list{padding:2px 24px 21px}.term-row{display:flex;align-items:center;gap:18px;justify-content:space-between;padding:17px 0;border-bottom:1px solid #e8ecf2}.term-row:last-child{border-bottom:0}.term-number{height:31px;width:31px;display:flex;align-items:center;justify-content:center;background:#e7ecf5;border-radius:9px;font-size:12px;color:#7a8aa7;flex-shrink:0}.term-identity{display:flex;gap:13px;align-items:center;flex:1}.term-identity h3{font-size:12px;color:#697891;margin-bottom:3px}.term-identity p{font-size:9px;color:#929eb2;margin:0}.term-row .workflow-toolbar{justify-content:flex-end}.term-empty{font-size:11px;color:#909db4;padding:22px 0 8px;line-height:1.8}.timeline-records{padding:0 24px 24px}.timeline-record{display:flex;gap:15px;padding:20px 0;border-bottom:1px solid #e8ecf2}.timeline-record:last-child{border-bottom:0}.timeline-record>span{height:28px;width:28px;background:#e8edf5;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;color:#798cae;flex-shrink:0}.timeline-record h3{font-size:13px;color:#647491;font-weight:600;margin-bottom:5px}.timeline-record p{font-size:10px;color:#919cb0;line-height:1.8;margin:0 0 6px}.timeline-record time{font-size:9px;color:#9fa9bb}.guardian-name-cell{min-width:190px}.sensitive-label{font-size:9px;letter-spacing:.8px;color:#96a1b3;text-transform:uppercase}.danger-action{background:#fcf1ec!important;border-color:#f0ded3!important;color:#b48365!important}.relationship-card .panel-heading p{font-size:10px;line-height:1.7}.relationship-card .table-wrap td{white-space:normal}.inline-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end;flex-wrap:wrap}.inline-actions form{margin:0}.compact-select{min-width:160px}.history-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.readonly-description{font-size:11px;color:#8f9aae;line-height:1.8;margin-top:-5px;margin-bottom:20px}.field-heading{font-size:13px;color:#6f7e97;margin-bottom:17px}.filter-bar .field.grow{flex:1;min-width:200px}
@media(max-width:1000px){.record-grid{grid-template-columns:1fr}.period-card .panel-heading{align-items:flex-start}.period-card .period-actions{justify-content:flex-end}.record-detail-list>div{grid-template-columns:120px 1fr}}
@media(max-width:760px){.workflow-summary{padding:19px;align-items:flex-start}.workflow-summary h2{font-size:18px}.workflow-summary p{font-size:10px}.term-row{gap:12px;flex-wrap:wrap}.term-identity{min-width:210px}.term-row .workflow-toolbar{justify-content:flex-start;margin-left:44px}.term-list{padding:0 20px 18px}.period-card .panel-heading{flex-wrap:wrap}.period-card .period-actions{justify-content:flex-start}.workflow-toolbar .button{font-size:9px;padding:7px 10px}.record-detail-list{padding:0 20px 20px}.record-detail-list>div{font-size:10px;grid-template-columns:108px 1fr;gap:12px}.notes-box{margin-left:20px;margin-right:20px;font-size:10px}.timeline-records{padding:0 20px 20px}.timeline-record h3{font-size:12px}.history-actions .button{font-size:10px}.workflow-note{padding:15px 19px;font-size:10px}}
@media(max-width:450px){.workflow-summary{padding:17px;flex-wrap:wrap;gap:10px}.workflow-summary h2{font-size:17px}.workflow-summary p{font-size:9px}.workflow-status-strip{gap:6px}.workflow-step{font-size:8px;padding:4px 7px}.record-detail-list>div{grid-template-columns:90px 1fr;font-size:9px}.record-meta{font-size:9px;gap:10px}.period-card .period-actions .button{font-size:8px}.term-identity{min-width:190px}.term-identity h3{font-size:11px}.term-identity p{font-size:8px}.term-row .workflow-toolbar{margin-left:0;gap:6px}.workflow-toolbar .button{font-size:8px}.term-empty{font-size:10px}.document-review{font-size:10px}.document-review small{font-size:8px}}
.relationship-verify{margin-top:13px;padding-top:13px;border-top:1px solid #e8ecf2}.relationship-verify .checkbox-label{font-size:8px;color:#8995aa;white-space:nowrap;margin-bottom:9px}.relationship-verify .checkbox-label input{width:12px;height:12px}.relationship-verify .button{font-size:8px;padding:6px 9px;min-height:29px}select[multiple]{min-height:170px;padding:8px}select[multiple] option{padding:8px 9px;border-radius:4px;font-size:11px}input[readonly],select[disabled]{background:#f7f8fb!important;color:#8c97ab!important}
.learner-choice-list{max-height:280px;overflow-y:auto;border:1px solid #dde2eb;border-radius:9px;padding:6px;background:#f8fafd}.learner-choice-list .learner-choice{display:flex;align-items:center;gap:11px;margin:0;padding:12px 10px;color:#7686a2;font-size:11px;font-weight:450;border-radius:5px;cursor:pointer}.learner-choice:hover{background:#edf1f8}.learner-choice input{width:15px;height:15px;accent-color:var(--accent);flex-shrink:0}.learner-choice:has(input:checked){background:#e7ecf5;color:#5f7499}.learner-choice-list .help-text{padding:12px;margin:0}
/* Fee structures, batches, immutable corrections and learner statements. */
tfoot th{background:#f6f8fb;border-top:1px solid #e2e6ee;color:#647592;font-size:11px;letter-spacing:0;text-transform:none}.charge-total{font-size:19px;color:#617393;letter-spacing:-.45px;text-align:right;white-space:nowrap}.charge-total small{font-size:9px;display:block;font-weight:400;color:#96a1b4;letter-spacing:0;margin-top:5px}.batch-post-form{padding:2px 25px 26px}.batch-post-form .checkbox-label{font-size:11px;line-height:1.8;color:#7e8fac;align-items:flex-start;max-width:640px;margin-bottom:20px}.batch-post-form .checkbox-label input{margin-top:5px;flex-shrink:0}.batch-confirmation .form-actions{border-top:1px solid #e5e9f0}.finance-detail-grid{grid-template-columns:1.22fr 1fr}.finance-detail-grid td{vertical-align:top}.reversed-payment{background:#fcfaf5!important}.reversed-payment td{border-color:#f0ece0}.reversal-note{margin-top:11px;max-width:280px;padding:10px 11px;background:#f8f5e9;border:1px solid #efe9d6;border-radius:7px;font-size:9px;line-height:1.8;white-space:normal;color:#a49b78}.reversal-note strong{display:block;color:#aa9a6b;font-size:9px;font-weight:550}.reversal-note span{display:block;overflow-wrap:anywhere}.reversal-note small{display:block;font-size:8px;margin-top:5px;color:#b3aa84}.correction-link{display:inline-block;margin-top:12px;font-size:9px}.correction-context{padding:19px;border:1px solid #dfe4ed;background:#f3f6fb;border-radius:11px;margin-bottom:25px}.correction-context>span{font-size:10px;color:#8a99b3;display:block;margin-bottom:9px}.correction-context>strong{font-size:26px;font-weight:600;color:#687c9e;display:block;letter-spacing:-.6px}.correction-context small{display:block;margin-top:8px;font-size:10px;color:#9aa6ba}.correction-explanation{display:block;margin-top:22px;margin-bottom:0}.correction-explanation span{font-size:10px;line-height:1.9}.stat-card>strong.account-filter-stat{font-size:25px;color:#687894;letter-spacing:-.5px}.statement-sheet{border:1px solid #dbe0ea;border-radius:14px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.statement-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:29px 28px 23px;border-bottom:1px solid #dfe5ef}.statement-heading h2{font-size:22px;color:#657796;letter-spacing:-.45px;line-height:1.5;margin:0 0 8px}.statement-heading p{font-size:11px;color:#939fb3;margin:0}.statement-heading>div:last-child{text-align:right}.statement-heading>div:last-child strong{font-size:11px;color:#7f8da6;font-weight:550}.statement-heading>div:last-child small{display:block;font-size:9px;color:#9eabc1;margin-top:6px}.statement-contact{display:flex;gap:25px;flex-wrap:wrap;padding:18px 28px;background:#f8fafd;font-size:10px;color:#98a5bb;border-bottom:1px solid #e2e7f1}.statement-contact strong{font-weight:550;color:#8291ab}.statement-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:25px 28px;border-bottom:1px solid #dfe4ee}.statement-summary>div>span{font-size:10px;color:#909fba;display:block;margin-bottom:9px}.statement-summary strong{font-size:22px;font-weight:600;letter-spacing:-.5px;color:#5f77a0;display:block;line-height:1.45}.statement-summary small{display:block;font-size:8px;color:#9fadc6;margin-top:6px;line-height:1.8}.statement-section{border-bottom:1px solid #dfe4ee}.statement-section .panel-heading{padding:23px 28px 19px}.statement-section .panel-heading h2{color:#657a9f;font-size:15px}.statement-section th,.statement-section td{padding-left:25px;padding-right:25px}.statement-table td:nth-child(3){max-width:290px;overflow-wrap:anywhere;font-size:10px}.opening-balance td{font-size:10px;color:#a0abbd;background:#f9fbfe}.statement-footer{font-size:9px;line-height:1.9;color:#96a4bc;padding:23px 28px;background:#f8fafe}.print-heading{display:none}
@media(max-width:1100px){.finance-detail-grid{grid-template-columns:1fr}.statement-summary{gap:15px;padding:23px}.statement-summary strong{font-size:19px}.statement-heading{padding:25px}.statement-contact{padding:17px 25px}.statement-section .panel-heading{padding-left:25px;padding-right:25px}}
@media(max-width:760px){.statement-heading{padding:22px;align-items:flex-start}.statement-heading h2{font-size:19px}.statement-heading p{font-size:10px}.statement-heading>div:last-child strong{font-size:9px}.statement-heading>div:last-child small{font-size:8px}.statement-contact{padding:17px 22px;gap:13px;font-size:9px}.statement-summary{grid-template-columns:1fr;padding:18px 22px;gap:18px}.statement-summary>div{padding-bottom:17px;border-bottom:1px solid #e6ebf4}.statement-summary>div:last-child{border-bottom:0;padding-bottom:0}.statement-summary strong{font-size:24px}.statement-summary small{font-size:9px}.statement-section .panel-heading{padding-left:22px;padding-right:22px}.statement-section td,.statement-section th{padding-left:19px;padding-right:19px}.statement-footer{padding:19px 22px;font-size:8px}.charge-total{font-size:16px}.charge-total small{font-size:8px}.batch-post-form{padding:0 20px 23px}.batch-post-form .checkbox-label{font-size:10px}.correction-context{padding:17px}.correction-context>strong{font-size:24px}.correction-explanation span{font-size:9px}.reversal-note{font-size:8px}}
@media(max-width:450px){.statement-heading{display:block;padding:21px}.statement-heading h2{font-size:19px}.statement-heading>div:last-child{text-align:left;margin-top:20px}.statement-heading>div:last-child small{font-size:8px}.statement-summary,.statement-contact{padding-left:21px;padding-right:21px}.statement-contact{display:block;font-size:9px}.statement-contact>span{display:block;margin:5px 0}.statement-summary strong{font-size:22px}.statement-summary small{font-size:8px}.statement-section .panel-heading{padding:19px}.statement-section .panel-heading h2{font-size:14px}.statement-section th,.statement-section td{padding-left:17px;padding-right:17px}.batch-post-form .checkbox-label{font-size:9px}.charge-total{font-size:14px}.correction-context>span{font-size:9px}.correction-context small{font-size:9px}.stat-card>strong.account-filter-stat{font-size:22px}}
@media print{@page{size:A4;margin:13mm}.no-print,[data-print],.back-link,.heading-actions{display:none!important}.print-heading{display:block;margin:0 0 15px;padding-bottom:13px;border-bottom:1px solid #ccc}.print-heading h2{font-size:20px;color:#222}.print-heading p{font-size:11px;color:#555;margin:5px 0 0}.statement-sheet{border:0;border-radius:0;box-shadow:none;overflow:visible}.statement-heading{padding:0 0 18px;border-color:#ccc}.statement-heading h2{color:#222;font-size:21px}.statement-heading p,.statement-heading strong,.statement-heading small,.statement-contact,.statement-summary span,.statement-summary small,.statement-footer{color:#444!important}.statement-contact{padding:13px 0;background:#fff}.statement-contact strong{color:#222}.statement-summary{padding:18px 0;gap:20px;grid-template-columns:repeat(3,minmax(0,1fr))}.statement-summary strong{font-size:20px;color:#222}.statement-summary>div{border:0;padding-bottom:0}.statement-section{break-inside:auto;overflow:visible}.statement-section .panel-heading{padding:18px 0 13px}.statement-section h2{color:#222!important}.statement-section .table-wrap{overflow:visible}.statement-section th,.statement-section td{padding:9px 7px;font-size:9px;color:#333!important;border-color:#ddd}.statement-section th{white-space:normal;letter-spacing:.4px}.statement-section td strong{font-size:9px;color:#222}.statement-section td .cell-sub{font-size:8px;color:#555}.statement-section thead{display:table-header-group}.statement-section tfoot{display:table-row-group}.statement-section tr{break-inside:avoid}.statement-section tfoot th{color:#222;background:#fff;border-top:1px solid #aaa;font-size:10px;letter-spacing:0}.statement-footer{padding:17px 0;background:#fff;font-size:8px}.opening-balance td{background:#fff;color:#555}.finance-detail-grid{display:block}.reversal-note{background:#fff;border-color:#ddd;color:#444}.reversal-note strong,.reversal-note small{color:#444}.stat-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.stat-card{min-height:auto;padding:12px;border-radius:0;border-color:#ddd}.stat-card>strong.money-stat{font-size:17px}.stat-foot{font-size:8px;color:#555}.money-stat small,.stat-label{color:#555}.stat-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-icon{display:none}.panel{border-radius:0}.workflow-note{background:#fff;color:#444}.panel table th,.panel table td{color:#333}.panel table tfoot{display:table-row-group}}
/* Readable finance captions and secondary amounts. */
.stat-label{color:#59667c}.stat-foot{color:#606d84}.statement-heading p,.statement-heading>div:last-child strong,.statement-heading>div:last-child small,.statement-contact,.statement-contact strong,.statement-summary>div>span,.statement-summary small,.statement-footer{color:#59657b}.statement-summary strong,.statement-section .panel-heading h2{color:#3c4f70}.statement-sheet .cell-sub,.finance-detail-grid .cell-sub{color:#5c6980}.reversal-note,.reversal-note small{color:#786c48}.reversal-note strong{color:#71603a}.correction-context>span,.correction-context small{color:#54647f}.correction-context>strong{color:#3a4e71}.charge-total{color:#3f5274}.charge-total small{color:#57657c}.batch-post-form .checkbox-label{color:#4d5d79}
.stat-card>strong.money-stat,.statement-summary strong{overflow-wrap:anywhere}

/* Reviewed term rollover and retained placement snapshots. */
.rollover-options{margin-top:22px;padding:19px;border:1px solid #dde1e9;background:#f7f9fc;border-radius:10px}.rollover-options .checkbox-label{font-size:11px;line-height:1.8;color:#47546b;align-items:flex-start}.rollover-options .checkbox-label input{flex-shrink:0;margin-top:4px}.rollover-options .help-text{margin:7px 0 18px 24px;color:#576479;font-size:10px}.rollover-options .help-text:last-child{margin-bottom:0}.rollover-notice{margin-top:22px;line-height:1.9;color:#525e73}.rollover-notice span{font-size:11px}.rollover-context{padding:18px 20px;background:#f2f5fa;border:1px solid #dce2ec;border-radius:10px;margin-bottom:24px}.rollover-context strong{display:block;color:#40506c;font-size:16px;margin-bottom:7px}.rollover-context p{color:#556176;font-size:11px;margin:5px 0;line-height:1.8}.rollover-context .notes-box{margin:15px 0 0;font-size:11px;color:#46546c;background:#fff}.rollover-capacity-note{padding:0 24px 18px;margin:0;font-size:11px;line-height:1.9;color:#566277}.rollover-table td{vertical-align:top;white-space:normal;font-size:11px;line-height:1.8}.rollover-table .cell-sub{color:#5b687e;font-size:10px;line-height:1.7}.rollover-table td:first-child{min-width:170px}.rollover-table .action-cell{min-width:160px}.rollover-action{display:inline-flex;align-items:center;padding:4px 8px;border-radius:5px;background:#e9ecf1;font-size:10px;line-height:1.5;color:#576377;font-weight:550}.rollover-action.enrol{color:#3d5072;background:#e8edf5}.rollover-action.complete{color:#795e39;background:#fbf2df}.rollover-action.skip{color:#586479;background:#eff1f4}.rollover-note-disclosure{margin-top:11px;max-width:320px;color:#515d71;font-size:10px}.rollover-note-disclosure summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.rollover-note-disclosure p{white-space:pre-wrap;overflow-wrap:anywhere;margin:9px 0 0;padding:9px 10px;background:#f3f6fa;border:1px solid #dfe4ee;border-radius:6px;color:#545f73;font-size:10px;line-height:1.8}.rollover-note-disclosure strong{display:block;color:#445166;font-weight:550}.rollover-history-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px;font-size:10px}.rollover-capacity-overflow{background:#fff8ee!important}.rollover-capacity-overflow td{color:#885c32}.rollover-status-explanation{padding:0 25px 20px;color:#536077;font-size:11px;line-height:1.9;margin:0}.rollover-bulk-warning{padding:15px 17px;margin:0 0 22px;border:1px solid #efd9ba;background:#fffaef;border-radius:9px;font-size:11px;line-height:1.9;color:#815c35}.rollover-bulk-warning strong{display:block;color:#73522e;font-size:12px;margin-bottom:5px}.rollover-decision-help{padding:16px 18px;background:#f6f8fc;border:1px solid #dde2eb;border-radius:9px;margin:22px 0 0;color:#505d73;font-size:11px;line-height:1.9}.rollover-decision-help p{margin:0 0 7px}.rollover-decision-help p:last-child{margin:0}.rollover-decision-help strong{color:#3f4e68;font-weight:550}.rollover-form .field textarea{min-height:110px}.rollover-summary .stat-foot{font-size:10px;line-height:1.7}.rollover-review-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid #dee4ee;background:#f5f8fc}.rollover-review-tools p{font-size:11px;color:#58657b;line-height:1.8;margin:0;max-width:600px}.rollover-review-tools .button{flex-shrink:0}.rollover-roster-count{color:#536179;font-size:10px}.rollover-confirmation .batch-post-form .checkbox-label{max-width:760px;color:#41506a;font-size:11px}.rollover-confirmation .workflow-note{font-size:11px;color:#505d74}.rollover-record-dates{display:flex;gap:15px;flex-wrap:wrap;font-size:11px;color:#576378;margin-top:12px}.rollover-record-dates strong{color:#455268;font-weight:550}.rollover-record-detail .record-detail-list dd{color:#495976}.rollover-record-detail .record-detail-list dt{color:#5c687e}.rollover-record-detail .notes-box{color:#515f76}.rollover-index-table td{font-size:11px}.rollover-index-table .cell-sub{font-size:10px;color:#59657b}
@media(max-width:760px){.rollover-review-tools{padding:16px 20px;align-items:flex-start;flex-wrap:wrap;gap:13px}.rollover-review-tools p{font-size:10px}.rollover-notice span,.rollover-options .checkbox-label,.rollover-capacity-note,.rollover-status-explanation,.rollover-decision-help,.rollover-bulk-warning{font-size:10px}.rollover-context strong{font-size:15px}.rollover-context p{font-size:10px}.rollover-context{padding:16px}.rollover-capacity-note{padding-left:20px;padding-right:20px}.rollover-table td,.rollover-index-table td{font-size:10px}.rollover-record-dates{font-size:10px;gap:10px}.rollover-confirmation .batch-post-form .checkbox-label{font-size:10px}.rollover-options{padding:16px}.rollover-record-detail .record-detail-list>div{font-size:10px}}
@media(max-width:450px){.rollover-summary .stat-foot{font-size:9px}.rollover-review-tools p{font-size:9px}.rollover-context strong{font-size:14px}.rollover-options .help-text{font-size:9px}.rollover-bulk-warning strong{font-size:11px}.rollover-confirmation .batch-post-form .checkbox-label{font-size:9px}}

/* Assessment books, saved academic reports and paper output. */
.assessment-subject-choice td{vertical-align:middle;font-size:12px}.assessment-subject-choice .cell-sub{color:#546075;font-size:11px}.assessment-subject-choice .checkbox-label{margin:0}.assessment-subject-choice input[type="checkbox"]{width:17px;height:17px;accent-color:var(--accent)}.assessment-subject-choice input[type="number"]{max-width:155px;min-width:110px}.assessment-subject-choice input[disabled]{background:#f0f2f6;color:#627088;opacity:1;cursor:not-allowed}.assessment-book-table td{font-size:12px;white-space:normal;line-height:1.7}.assessment-book-table .cell-sub{color:#59657a;font-size:11px}.assessment-book-summary .stat-foot{font-size:11px;line-height:1.7}.assessment-mark-instructions{padding:0 25px 22px;color:#455268;font-size:12px;line-height:1.8}.assessment-mark-instructions p{margin:0 0 8px;max-width:900px}.assessment-mark-instructions strong{color:#2b3a54;font-weight:600}.assessment-marks-form>.validation-summary{margin:24px 25px 0}.assessment-mark-table{min-width:1000px}.assessment-mark-table tbody th{font-size:12px;white-space:normal;vertical-align:top;min-width:160px;color:#2f3d56;background:#f8fafd;letter-spacing:0;text-transform:none}.assessment-mark-table tbody th strong{font-size:12px;display:block;font-weight:600}.assessment-mark-table .cell-sub{font-size:10px;color:#576479;line-height:1.7}.assessment-mark-table td{vertical-align:top;min-width:140px}.assessment-mark-table td:nth-child(3){min-width:105px;max-width:125px}.assessment-mark-table td:nth-child(5){min-width:240px}.assessment-mark-table .mark-cell-label{font-size:10px;color:#515d71;line-height:1.6;margin:0 0 7px;display:block}.assessment-mark-table input,.assessment-mark-table select,.assessment-mark-table textarea{font-size:12px;width:100%;min-width:0}.assessment-mark-table textarea{min-height:88px}.assessment-report-comment{padding-top:25px}.assessment-marks-form .field-validation-error,.assessment-subject-choice .field-validation-error{display:block;font-size:11px;line-height:1.7;max-width:240px;margin-top:7px}.assessment-publication .workflow-note{font-size:12px;color:#4f5d74;line-height:1.9}.report-card-sheet{background:#fff;border:1px solid #d5dbe6;border-radius:14px;box-shadow:var(--shadow);overflow:hidden;margin-bottom:25px}.report-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:29px 30px 24px;border-bottom:1px solid #dde2ea}.report-card-heading .eyebrow{color:#4f5e79;font-size:10px;margin-bottom:10px;display:block}.report-card-heading h2{font-size:25px;color:#24334c;line-height:1.4;letter-spacing:-.35px;overflow-wrap:anywhere;margin:0 0 9px}.report-card-heading p{font-size:13px;color:#48566d;margin:0;line-height:1.8}.report-card-period{flex-shrink:0;max-width:260px;text-align:right;font-size:12px;line-height:1.8;color:#515d72}.report-card-period strong{display:block;font-weight:600;color:#36455e;overflow-wrap:anywhere}.report-card-period span{display:block;margin-top:8px;font-size:11px}.report-card-identity{margin:0;display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1fr;gap:20px;padding:24px 30px;background:#f8f9fc;border-bottom:1px solid #dce1eb}.report-card-identity dt{font-size:10px;color:#58657c;margin:0 0 7px}.report-card-identity dd{font-size:13px;font-weight:550;color:#2f3e59;margin:0;overflow-wrap:anywhere;line-height:1.7}.report-card-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:25px 30px;border-bottom:1px solid #dde2eb}.report-card-summary>div>span{display:block;font-size:11px;color:#4f5e77;margin-bottom:10px}.report-card-summary strong{display:block;font-size:26px;font-weight:600;color:#26395b;letter-spacing:-.5px;line-height:1.4;overflow-wrap:anywhere}.report-card-summary small{display:block;font-size:10px;color:#53617a;line-height:1.8;margin-top:7px}.report-card-results .panel-heading{padding:24px 30px 18px}.report-card-results h3,.report-card-comment h3{font-size:15px;font-weight:600;color:#2c3e5d;margin:0;line-height:1.5}.report-status-count{font-size:11px;color:#5a6880}.report-card-table{min-width:850px;table-layout:fixed}.report-card-table thead th{font-size:9px;white-space:normal;padding:13px 13px;color:#435066;line-height:1.7}.report-card-table tbody th,.report-card-table td{font-size:11px;white-space:normal;padding:16px 13px;color:#3d4a5f;vertical-align:top;line-height:1.8;overflow-wrap:anywhere}.report-card-table tbody th{font-weight:500;letter-spacing:0;text-transform:none}.report-card-table tbody th strong{font-size:11px;display:block;color:#2a3b58;font-weight:600}.report-card-table .cell-sub{color:#58667f;font-size:10px}.report-card-table th:first-child{width:19%}.report-card-table th:nth-child(2){width:10%}.report-card-table th:nth-child(3){width:8%}.report-card-table th:nth-child(4){width:9%}.report-card-table th:nth-child(5){width:11%}.report-card-table th:nth-child(6){width:15%}.report-card-table th:nth-child(7){width:28%}.report-card-table .numeric{white-space:nowrap}.report-result-status{font-size:10px;border-radius:5px;background:#eaeef4;color:#41516c;padding:4px 6px;display:inline-block;line-height:1.5}.report-result-status.absent{background:#fbf1e4;color:#7d5b32}.report-result-status.exempt{background:#eef0f4;color:#525f75}.report-card-table .report-result-comment{white-space:pre-wrap}.report-card-comment{padding:24px 30px;border-top:1px solid #dce2ec}.report-card-comment p{margin:13px 0 0;font-size:12px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;color:#45536c}.report-card-footer{padding:22px 30px;background:#f8fafd;border-top:1px solid #dee4ee}.report-card-footer p{font-size:10px;line-height:1.9;color:#58657a;margin:0 0 5px}.report-card-footer p:last-child{margin-bottom:0}.report-print-body{margin:0;background:#f0f2f6}.report-print-main{max-width:1080px;margin:0 auto;padding:30px}.report-print-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.report-print-toolbar>div{text-align:right}.report-print-toolbar p{font-size:11px;color:#525f74;line-height:1.8;margin:10px 0 0;max-width:430px}.report-print-toolbar .button{font-size:12px}
@media(max-width:1000px){.report-card-identity{grid-template-columns:repeat(2,minmax(0,1fr))}.report-card-heading{padding:25px}.report-card-summary,.report-card-identity{padding:23px 25px}.report-card-results .panel-heading,.report-card-comment,.report-card-footer{padding-left:25px;padding-right:25px}.report-card-heading h2{font-size:23px}.report-card-period{max-width:230px}.report-print-main{padding:25px}.assessment-book-summary .stat-foot{font-size:10px}}
@media(max-width:760px){.assessment-mark-table{min-width:0;display:block}.assessment-mark-table thead{position:absolute;clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;width:1px;overflow:hidden;white-space:nowrap}.assessment-mark-table tbody{display:block;padding:0 20px 20px}.assessment-mark-table tr{display:grid;grid-template-columns:1fr 1fr;border:1px solid #d7dde9;border-radius:10px;margin-bottom:18px;overflow:hidden;background:#fff}.assessment-mark-table tbody th{display:block;grid-column:1/-1;border:0;border-bottom:1px solid #dce2ed;padding:17px;min-width:0;background:#f0f4fa}.assessment-mark-table td{display:block;border:0;padding:15px 17px;min-width:0}.assessment-mark-table td:nth-child(3){min-width:0;max-width:none}.assessment-mark-table td:nth-child(4),.assessment-mark-table td:nth-child(5){grid-column:1/-1;min-width:0;padding-top:0}.assessment-mark-table td:last-child{border-bottom:0}.assessment-mark-table .mark-cell-label{font-size:11px}.assessment-mark-table textarea{min-height:75px}.assessment-mark-instructions{padding:0 20px 20px;font-size:11px}.assessment-marks-form>.validation-summary{margin-left:20px;margin-right:20px}.assessment-book-table td{font-size:11px}.assessment-book-table .cell-sub{font-size:10px}.assessment-publication .workflow-note{font-size:11px}.report-card-heading{padding:22px;flex-wrap:wrap;gap:16px}.report-card-heading h2{font-size:22px}.report-card-heading p{font-size:12px}.report-card-period{text-align:left;max-width:none;font-size:11px}.report-card-period span{margin-top:3px}.report-card-identity{padding:20px 22px;gap:18px}.report-card-identity dd{font-size:12px}.report-card-summary{padding:22px;gap:16px}.report-card-summary strong{font-size:22px}.report-card-summary>div>span{font-size:10px}.report-card-summary small{font-size:9px}.report-card-results .panel-heading{padding:22px;flex-wrap:wrap;gap:10px}.report-card-comment,.report-card-footer{padding:22px}.report-card-comment p{font-size:11px}.report-print-main{padding:20px}.report-print-toolbar{gap:15px;flex-wrap:wrap}.report-print-toolbar>div{text-align:left}.assessment-subject-choice td{font-size:11px}.assessment-subject-choice .cell-sub{font-size:10px}}
@media(max-width:450px){.report-card-summary{grid-template-columns:1fr;gap:18px}.report-card-summary>div{padding-bottom:16px;border-bottom:1px solid #dfe5ef}.report-card-summary>div:last-child{padding-bottom:0;border:0}.report-card-summary strong{font-size:26px}.report-card-summary small{font-size:10px}.report-card-identity{gap:17px 13px}.report-card-identity dd{font-size:11px}.report-card-heading h2{font-size:20px}.report-card-heading .eyebrow{font-size:9px}.report-print-main{padding:15px}.report-print-toolbar .button{font-size:11px}.assessment-mark-table tr{grid-template-columns:1fr}.assessment-mark-table td:nth-child(3){padding-top:0}.assessment-mark-table tbody{padding-left:17px;padding-right:17px}.report-card-results h3,.report-card-comment h3{font-size:14px}}
@media print{.report-print-body{background:#fff}.report-print-main{max-width:none;padding:0;margin:0}.report-card-sheet{border:0;border-radius:0;box-shadow:none;overflow:visible;margin:0}.report-card-heading{padding:0 0 17px;border-color:#bbb;break-inside:avoid;display:flex;flex-wrap:nowrap}.report-card-heading .eyebrow{font-size:8px;color:#444}.report-card-heading h2{font-size:20px;color:#222}.report-card-heading p{font-size:11px;color:#333}.report-card-period{text-align:right;max-width:230px;color:#444;font-size:10px}.report-card-period strong{color:#333}.report-card-period span{font-size:9px}.report-card-identity{padding:15px 0;background:#fff;border-color:#ccc;grid-template-columns:1.4fr 1fr 1.2fr 1fr;gap:15px;break-inside:avoid}.report-card-identity dt{font-size:8px;color:#444}.report-card-identity dd{font-size:10px;color:#222}.report-card-summary{padding:17px 0;gap:20px;grid-template-columns:repeat(3,minmax(0,1fr));border-color:#ccc;break-inside:avoid}.report-card-summary>div{border:0;padding:0}.report-card-summary>div>span{font-size:9px;color:#444}.report-card-summary strong{font-size:22px;color:#222}.report-card-summary small{font-size:8px;color:#444}.report-card-results{overflow:visible;break-inside:auto}.report-card-results .panel-heading{padding:17px 0 13px}.report-card-results h3,.report-card-comment h3{font-size:12px;color:#222}.report-status-count{font-size:9px;color:#444}.report-card-results .table-wrap{overflow:visible}.report-card-table{min-width:0;width:100%;table-layout:fixed}.report-card-table thead{display:table-header-group}.report-card-table thead th{font-size:8px;line-height:1.7;letter-spacing:.2px;color:#333;background:#fff;padding:9px 5px;border-color:#ccc}.report-card-table tbody th,.report-card-table td{font-size:9px;line-height:1.7;color:#222;padding:11px 5px;border-color:#ddd}.report-card-table tbody th strong{font-size:9px;color:#222}.report-card-table .cell-sub{font-size:8px;color:#444}.report-card-table tr{break-inside:avoid}.report-card-table .numeric{white-space:normal}.report-result-status{font-size:8px;padding:0;background:transparent!important;color:#333!important}.report-card-comment{padding:17px 0;border-color:#ccc;break-inside:avoid}.report-card-comment p{font-size:10px;color:#333}.report-card-footer{padding:15px 0;background:#fff;border-color:#ccc;break-inside:avoid}.report-card-footer p{font-size:8px;color:#444}}
