:root{--r8-navy:#071a2e;--r8-cyan:#23c8db;--r8-blue:#3977f6;--r8-ink:#10233d;--r8-muted:#687b91;--r8-border:#d7e3ee}.r8-public{margin:0;background:#f7fafc;color:var(--r8-ink);font-family:Tahoma,sans-serif}.r8-topbar{height:86px;background:#071a2ef7;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,28px);position:sticky;top:0;z-index:30}.r8-brand{display:flex;align-items:center;gap:13px;color:#fff;text-decoration:none}.r8-brand>span{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,var(--r8-cyan),var(--r8-blue));font-size:25px;font-weight:900}.r8-brand div{display:grid;gap:4px}.r8-topbar nav{display:flex;gap:24px;align-items:center}.r8-topbar nav a{color:#dce8f3;text-decoration:none;font-weight:700}.r8-topbar .top-login{background:#fff;color:var(--r8-navy);padding:11px 18px;border-radius:14px}.r8-hero{position:relative;height:min(72vh,680px);min-height:510px;overflow:hidden;background:#071a2e}.r8-hero>img{width:100%;height:100%;object-fit:cover}.r8-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,19,34,.88),rgba(5,19,34,.35),rgba(5,19,34,.03))}.r8-hero-copy{position:absolute;left:6vw;bottom:75px;max-width:590px;color:#fff;text-align:right}.r8-hero-copy span{color:#a6f6ff;font-weight:800}.r8-hero-copy h1{font-size:clamp(34px,4vw,62px);line-height:1.25;margin:12px 0}.r8-hero-copy p{font-size:18px;line-height:2;color:#e3edf6}.r8-hero-copy>div{display:flex;gap:12px}.r8-btn{padding:13px 22px;border-radius:15px;text-decoration:none;font-weight:900}.r8-btn.primary{background:linear-gradient(135deg,var(--r8-cyan),var(--r8-blue));color:#fff}.r8-btn.glass{background:#ffffff18;color:#fff;border:1px solid #ffffff55}.r8-countdown{position:absolute;right:5vw;bottom:50px;background:#fff;padding:18px 22px;border-radius:22px;box-shadow:0 24px 50px #00152b55;display:grid;min-width:190px}.r8-countdown b{font-size:32px;color:var(--r8-blue)}.r8-section-title{max-width:760px;margin:0 auto 30px;text-align:center}.r8-section-title>span{color:#159bb0;font-weight:900}.r8-section-title h2{font-size:32px;margin:8px 0}.r8-section-title p{color:var(--r8-muted);line-height:2}.r8-today,.r8-modern,.r8-extras,.r8-about,.r8-plans{padding:70px max(5vw,28px)}.r8-event-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.r8-event-row article{background:#fff;border:1px solid var(--r8-border);border-radius:20px;padding:20px;display:flex;gap:17px}.r8-event-row time{background:#e7f8fb;color:#087f92;padding:8px 11px;border-radius:12px;height:max-content;font-weight:800}.r8-modern{background:linear-gradient(180deg,#f5faff,#edf4f9)}.r8-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1200px;margin:auto}.r8-feature-grid article{background:#fff;border:1px solid #dbe8f2;border-radius:24px;padding:27px;box-shadow:0 18px 45px #0a2b4910;transition:.25s}.r8-feature-grid article:hover{transform:translateY(-7px)}.r8-feature-grid i{width:52px;height:52px;border-radius:17px;background:#e7f8fb;display:grid;place-items:center;color:#168fa3;font-style:normal}.r8-extra-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;max-width:1000px;margin:auto}.r8-extra-grid article{display:grid;grid-template-columns:125px 1fr;border:1px solid var(--r8-border);border-radius:20px;overflow:hidden}.r8-extra-grid article>div{background:#0b2945;color:#fff;padding:22px;display:grid;place-content:center}.r8-extra-grid section{padding:20px}.r8-about{background:var(--r8-navy);color:#fff;display:grid;grid-template-columns:1.5fr 1fr;gap:50px}.r8-about p{line-height:2.1;color:#d6e5f0}.r8-contact{display:grid;gap:14px}.r8-contact div{background:#ffffff0d;border:1px solid #ffffff20;border-radius:18px;padding:18px;display:grid}.r8-plan-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;perspective:1100px}.plan3d{position:relative;min-height:245px;background:#fff;border:1px solid #dce7f0;border-radius:24px;padding:25px;text-decoration:none;color:var(--r8-ink);box-shadow:0 18px 0 #e4ebf1,0 28px 45px #0a29451a;transition:.28s}.plan3d:hover{transform:translateY(-8px);box-shadow:0 10px 0 #dce6ed,0 35px 55px #0a294527}.plan3d i{width:48px;height:48px;border-radius:15px;background:#e8f9fb;color:#168ba0;display:grid;place-items:center;font-style:normal}.plan3d p{color:#667b90;line-height:1.8}.plan3d>b{position:absolute;bottom:22px;color:#138fa4}.r8-footer{background:#04111f;color:#fff;padding:30px 6vw;display:flex;justify-content:space-between}.r8-empty{padding:22px;border-radius:18px;background:#f1f5f8;color:#6b7f91}.r8-nav-group,.nav-section-label{display:block!important;margin:12px 8px 7px!important;padding:10px 12px!important;background:linear-gradient(135deg,#102e4b,#0b243c)!important;border:1px solid #27455f!important;border-radius:13px!important;color:#d9eef7!important;font-size:13px!important;font-weight:900!important}.quick-access-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}.quick-account{background:linear-gradient(145deg,#eafcff,#eef2ff)!important}.student-prof-table td,.student-prof-table th,.student-prof-table .student-name-cell b{color:#102b46!important}.student-prof-table small{color:#6f8293!important}.side-nav [data-page="events"]{display:none!important}.r8-account-head,.r8-account-row{display:grid;grid-template-columns:1.4fr 1fr .7fr 1fr 1fr;gap:10px;align-items:center;padding:12px;border-radius:13px}.r8-account-head{background:#e9f0f6;font-weight:900}.r8-account-row{border:1px solid #dce6ee;background:#fff}.journal-lines{display:grid;gap:8px}.journal-line{display:grid;grid-template-columns:1.2fr .7fr .7fr 1fr 38px;gap:7px}.remove-line{border:0;border-radius:10px;background:#ffe8e8;color:#a63737}.backup-actions{display:flex;gap:10px;flex-wrap:wrap}.backup-list{display:grid;gap:9px;margin-top:18px}.backup-list>div{display:flex;justify-content:space-between;padding:11px;border:1px solid #dde7ef;border-radius:12px}.r8-login{margin:0;background:linear-gradient(135deg,#06182b,#103455);font-family:Tahoma,sans-serif;min-height:100vh}.r8-login main{min-height:100vh;display:grid;grid-template-columns:1fr 520px;align-items:center;gap:50px;padding:50px max(6vw,30px)}.student-login-visual{color:#fff}.r8-login-card{background:#fff;border-radius:30px;padding:38px}.r8-login-card form{display:grid;gap:16px}.r8-login-card label{display:grid;gap:8px}.r8-login-card input{padding:14px;border:1px solid #cedce7;border-radius:14px}.r8-login-card button{border:0;border-radius:15px;padding:14px;background:linear-gradient(135deg,#25c8d7,#3978f3);color:#fff;font-weight:900}.back-home{position:absolute;top:24px;right:30px;color:#fff}.student-plan{margin:0;background:#f3f7fb;color:#122c45;font-family:Tahoma,sans-serif}.student-plan>header{background:#08213a;color:#fff;padding:16px 5vw;display:flex;justify-content:space-between}.student-plan main{padding:28px 5vw}.student-welcome{background:linear-gradient(135deg,#0b2e4b,#12617b);color:#fff;border-radius:28px;padding:30px}.student-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.student-kpis article{background:#ffffff13;border:1px solid #ffffff22;border-radius:16px;padding:16px;display:grid}.student-grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:20px}.student-grid2>section{background:#fff;border:1px solid #dbe6ee;border-radius:22px;padding:22px}.student-item{padding:13px 0;border-bottom:1px solid #e7eef4}
@media(max-width:1050px){.r8-plan-grid,.r8-feature-grid{grid-template-columns:repeat(2,1fr)}.r8-event-row{grid-template-columns:1fr 1fr}.quick-access-grid{grid-template-columns:repeat(3,1fr)!important}.r8-login main{grid-template-columns:1fr}.student-login-visual{display:none}}@media(max-width:700px){.r8-topbar{height:70px;padding:0 16px}.r8-topbar nav a:not(.top-login){display:none}.r8-hero{height:560px}.r8-hero-shade{background:linear-gradient(0deg,#04111ff0,#04111f66,#04111f11)}.r8-hero-copy{right:20px;left:20px;bottom:55px}.r8-countdown{right:20px;top:20px;bottom:auto}.r8-today,.r8-modern,.r8-extras,.r8-about,.r8-plans{padding:48px 18px}.r8-event-row,.r8-feature-grid,.r8-extra-grid,.r8-plan-grid,.r8-about{grid-template-columns:1fr}.quick-access-grid{grid-template-columns:repeat(2,1fr)!important}.r8-account-head{display:none}.r8-account-row{grid-template-columns:1fr 1fr}.journal-line{grid-template-columns:1fr 1fr}.student-kpis{grid-template-columns:1fr 1fr}.student-grid2{grid-template-columns:1fr}.r8-footer{display:grid;gap:8px;text-align:center}}

/* R9 — usability, accessibility, sidebar hierarchy, account shortcuts */
.sidebar{display:flex!important;flex-direction:column!important;overflow:hidden!important;padding-bottom:14px!important}
.school-brand{flex:0 0 auto}
.side-nav{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;margin:18px -5px 10px 0!important;padding:0 0 18px 5px!important;scrollbar-width:thin;scrollbar-color:#2c6a83 #0a2035}
.side-nav::-webkit-scrollbar{width:8px}.side-nav::-webkit-scrollbar-track{background:#0a2035;border-radius:10px}.side-nav::-webkit-scrollbar-thumb{background:#2d6d85;border-radius:10px}
.sidebar-foot{position:static!important;flex:0 0 auto;margin:6px 2px 0!important;padding:10px 12px;border-radius:14px;background:#081d31;border:1px solid #183b55}
.nav-cluster{display:block;margin:0 0 14px;padding:11px;border-radius:20px;background:linear-gradient(155deg,#0d2943,#071c30);border:1px solid #23445d;box-shadow:0 10px 22px rgba(0,0,0,.14)}
.nav-section-label{margin:0 0 10px!important;padding:12px 14px!important;font-size:17px!important;line-height:1.4!important;text-align:right!important;background:linear-gradient(135deg,#153c60,#0f314f)!important;border-color:#2e5b78!important;color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}
.nav-cluster-items{display:grid;gap:7px}.nav-cluster-items button{margin:0!important;background:#0a2035!important;border:1px solid #183b55!important;min-height:48px!important}.nav-cluster-items button:hover,.nav-cluster-items button.active{background:linear-gradient(135deg,#10405a,#0e5264)!important;border-color:#2cd4dc!important}
.nav-cluster-items button b{font-size:14px;line-height:1.5}

/* remove internal event banner; events belong only to the public homepage */
.today-event-banner{display:none!important}

/* explicit account creation area */
.account-launcher{border:1px solid #c8ddea!important;box-shadow:0 22px 55px rgba(8,36,61,.11)!important}
.account-launcher .quick-access-head p{margin:5px 0 0;color:#5f7387;font-size:13px}
.account-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.account-quick-grid button{min-height:138px!important;border-radius:22px!important;padding:20px!important;box-shadow:0 12px 0 #dce8ef,0 22px 34px rgba(20,50,75,.12)!important;transition:.2s!important}
.account-quick-grid button:hover{transform:translateY(-6px)!important;box-shadow:0 7px 0 #d5e3eb,0 28px 38px rgba(20,50,75,.16)!important}
.account-create{border:2px solid transparent!important}.account-create b{font-size:18px!important;color:#0c2943!important}.account-create small{color:#5c7186!important}.teacher-account{background:linear-gradient(145deg,#f4fffb,#e3f7ee)!important;border-color:#9fd8c0!important}.parent-account{background:linear-gradient(145deg,#fffaf0,#f8ecd3)!important;border-color:#e5c98e!important}.student-account{background:linear-gradient(145deg,#f1f8ff,#e3edff)!important;border-color:#a9c4eb!important}

/* student filters — same size, navy 3D cards */
#page-students .filters{display:grid!important;grid-template-columns:repeat(2,minmax(180px,1fr));gap:14px;min-width:min(480px,100%)}
#page-students .filters select{height:62px!important;padding:0 20px!important;border-radius:18px!important;background:linear-gradient(180deg,#153551,#0b263e)!important;color:#fff!important;border:1px solid #315a78!important;box-shadow:0 8px 0 #071b2e,0 14px 24px rgba(7,28,47,.18)!important;font-size:17px!important;font-weight:900!important;line-height:62px!important}
#page-students .filters select:focus{border-color:#33d4db!important;box-shadow:0 7px 0 #071b2e,0 0 0 4px rgba(51,212,219,.14)!important}
#page-students .filters option{background:#0b263e;color:#fff}

/* student table high contrast */
.student-prof-table,.student-prof-table tbody,.student-prof-table tr,.student-prof-table td,.student-prof-table th{color:#0b2740!important}
.student-prof-table thead th{background:#e8f0f6!important;color:#0b2740!important;font-weight:900!important}
.student-prof-table tbody tr{background:#fff!important}.student-prof-table tbody tr:nth-child(even){background:#f6f9fc!important}
.student-prof-table td,.student-prof-table .student-name-cell b,.student-prof-table .metric-number{color:#0a2944!important;opacity:1!important;text-shadow:none!important}
.student-prof-table small{color:#536b7f!important;opacity:1!important}.student-prof-table .badge.ok{color:#087550!important;background:#e5f8ef!important;border-color:#9bdfc5!important}.student-prof-table .badge.warn{color:#8a5a00!important;background:#fff4d8!important;border-color:#efcf7a!important}
.student-prof-table .trend-badge{color:#123c58!important;font-weight:900!important}

/* public hero uses the supplied school sign image visibly, without cropping the sign */
.r8-hero{height:auto!important;min-height:0!important;aspect-ratio:2048/686;background:#071a2e!important}
.r8-hero>img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;display:block!important}
.r8-hero-shade{background:linear-gradient(0deg,rgba(3,15,28,.76) 0%,rgba(3,15,28,.14) 34%,rgba(3,15,28,0) 62%)!important}
.r8-hero-copy{right:5vw!important;left:auto!important;bottom:24px!important;max-width:620px!important;background:rgba(5,25,43,.72);backdrop-filter:blur(10px);padding:18px 22px;border-radius:20px;border:1px solid rgba(255,255,255,.16)}
.r8-hero-copy h1{font-size:clamp(25px,2.6vw,42px)!important;margin:6px 0!important}.r8-hero-copy p{font-size:15px!important;line-height:1.8!important;margin:5px 0 11px!important}
.r8-countdown{bottom:24px!important}

@media(max-width:1050px){.account-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.r8-hero{aspect-ratio:auto!important;height:520px!important}.r8-hero>img{object-fit:cover!important}.r8-hero-copy{right:20px!important;left:20px!important}.r8-countdown{top:18px!important;right:18px!important;bottom:auto!important}}
@media(max-width:700px){#page-students .filters{grid-template-columns:1fr 1fr!important;min-width:0!important;width:100%}.account-quick-grid{grid-template-columns:1fr!important}.account-quick-grid button{min-height:112px!important}.nav-section-label{font-size:16px!important}.r8-hero{height:430px!important}.r8-hero-copy{padding:14px 16px!important;bottom:16px!important}.r8-hero-copy p{display:none}.r8-hero-copy h1{font-size:24px!important}.r8-countdown{transform:scale(.88);transform-origin:top right}}
\n\n/* R11 FINAL — public home premium finish */\n.r8-public{background:#f4f8fb!important;color:#102b43!important}.r8-topbar{background:rgba(6,25,43,.94)!important;backdrop-filter:blur(16px);box-shadow:0 10px 35px rgba(4,23,40,.16)}.r8-hero{border-bottom:1px solid #d9e5ed!important}.r8-hero-copy{box-shadow:0 20px 54px rgba(1,16,30,.30)!important}.r8-section-title h2{color:#102b43!important}.r8-section-title p{color:#62778a!important}.r8-feature-grid article{background:linear-gradient(145deg,#fff,#f4f9fc)!important;border:1px solid #d9e6ee!important;box-shadow:0 14px 34px rgba(21,59,85,.08)!important;transition:.22s}.r8-feature-grid article:hover{transform:translateY(-6px);box-shadow:0 21px 46px rgba(21,59,85,.13)!important}.feature-icon,.plan-icon{font-style:normal!important;display:grid!important;place-items:center!important;width:54px!important;height:54px!important;border-radius:18px!important;background:linear-gradient(145deg,#0b3657,#0d7280)!important;color:#fff!important;font-size:25px!important;box-shadow:0 12px 25px rgba(12,72,91,.16)!important}.plan3d{border-radius:28px!important;box-shadow:0 16px 0 #d7e4ec,0 29px 54px rgba(14,49,75,.16)!important;transition:.24s!important}.plan3d:hover{transform:translateY(-8px)!important;box-shadow:0 21px 0 #d2e0e8,0 37px 62px rgba(14,49,75,.22)!important}.plan3d h3{color:#102b43!important}.plan3d p{color:#607487!important}.r8-event-row>*,.r8-extra-grid>*{box-shadow:0 13px 32px rgba(20,56,82,.075)!important}.r8-about{border-radius:30px!important;box-shadow:0 20px 48px rgba(18,54,80,.08)!important}\n@media(max-width:700px){.r8-hero-copy{background:rgba(5,25,43,.82)!important}.r8-feature-grid article{min-height:145px}.feature-icon,.plan-icon{width:48px!important;height:48px!important;font-size:22px!important}}\n