/* Student Concept 01 — scoped to student accounts only. */
.app.student-redesign{--student-green:#064c3f;--student-green-2:#0b6654;--student-ink:#19231f;--student-muted:#6a756f;--student-bg:#f4f1e9;--student-card:#fffdf8;--student-line:#dddcd3;--student-gold:#c89a36;background:var(--student-bg);font-family:Inter,Arial,sans-serif}
.student-redesign .sidebar{width:220px;padding:20px 14px;background:linear-gradient(180deg,#064c3f,#04382f)}.student-redesign .workspace{margin-left:220px;width:calc(100% - 220px)}.student-redesign .brand{padding:0 8px 22px}.student-redesign .brand img{width:42px;height:42px}.student-redesign .brand strong{font-family:Georgia,serif;font-size:15px}.student-redesign .brand small{font-size:8px}.student-redesign .sidebar nav{gap:4px;margin-top:18px}.student-redesign .sidebar nav a{padding:11px;border-radius:7px;color:#d8e5e1;font-size:12px}.student-redesign .sidebar nav a span{font-size:15px}.student-redesign .sidebar nav a.active,.student-redesign .sidebar nav a:hover{background:#ffffff18;color:#fff;box-shadow:inset 3px 0 #d4af59}
.student-redesign .workspace>header{height:92px;padding:20px 34px;background:#fffdf8ed}.student-redesign header h1{font:700 25px/1.1 Inter,Arial,sans-serif;letter-spacing:-.03em}.student-redesign main{max-width:1450px;padding:25px 34px 60px}.student-redesign .card{border-color:var(--student-line);border-radius:10px;box-shadow:0 3px 16px rgba(30,45,38,.035)}.student-redesign .eyebrow{color:var(--student-gold);font-size:8px}.student-redesign .primary{background:var(--student-green)}.student-redesign .primary:hover{background:var(--student-green-2)}.student-redesign .secondary{color:var(--student-green)}
.level-shirt{--shirt-color:#9aa29e;display:block;width:28px;height:25px;overflow:visible;filter:drop-shadow(0 1px 1px #17261f35);flex:none}.level-shirt path{fill:var(--shirt-color);stroke:#263b32;stroke-width:1.2;stroke-linejoin:round}.level-shirt-probation{--shirt-color:#ed7a24}.level-shirt-white{--shirt-color:#fff}.level-shirt-yellow{--shirt-color:#e4b92f}.level-shirt-blue{--shirt-color:#326bb5}.level-shirt-green{--shirt-color:#328458}.level-shirt-red{--shirt-color:#bb3935}.level-shirt-purple{--shirt-color:#76508e}.level-shirt-grey{--shirt-color:#6d7774}.level-shirt-unassigned{--shirt-color:#a7afab}.summary-shirt{grid-row:1/3;align-self:center}.passport-shirt{width:40px;height:36px}
.student-home-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.student-home-head h2{font:700 28px/1.1 Georgia,serif;margin:0}.student-notice{position:relative;width:40px;height:40px;border:1px solid var(--student-line);border-radius:50%;display:grid;place-items:center;text-decoration:none;color:var(--student-green);background:#fff}.student-notice span{position:absolute;top:-3px;right:-3px;min-width:16px;height:16px;padding:0 4px;border-radius:9px;display:grid;place-items:center;background:#d84a36;color:#fff;font-size:8px}
.student-next-grid{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:12px}.student-next-class{min-height:230px;display:grid;grid-template-columns:1.15fr .85fr;overflow:hidden;border-radius:11px;background:linear-gradient(135deg,#102f27,#0b4a3c);color:#fff}.student-next-class>div:first-child{padding:30px}.student-next-class h2{font:34px Georgia,serif;margin:5px 0 10px}.student-next-class p:not(.eyebrow){color:#d9e5df}.student-gold{margin-top:16px;background:var(--student-gold)!important;color:#17241e!important}.student-training-photo{background:linear-gradient(90deg,#0b493d 0%,transparent 65%),url('/assets/school-training.jpeg') center/cover}.student-summary{display:grid;background:#fff;border:1px solid var(--student-line);border-radius:10px;padding:8px 18px}.student-summary>div{display:grid;grid-template-columns:32px 1fr;align-content:center;border-bottom:1px solid var(--student-line)}.student-summary>div:last-child{border:0}.student-summary>div>span:not(.level-shirt){grid-row:1/3;color:var(--student-green);font-size:20px}.student-summary strong{font-size:20px}.student-summary small{color:var(--student-muted);font-size:9px}
.student-training-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.student-focus{display:grid;grid-template-columns:1fr 110px;gap:15px;align-items:center;position:relative}.student-focus h2{font:20px Georgia,serif;margin:0 0 8px}.student-focus p:not(.eyebrow){color:var(--student-ink)}.student-focus>div>small{display:block;color:var(--student-muted);font-size:9px}.student-focus>a{grid-column:1/3;color:var(--student-green);font-size:10px;font-weight:800;text-decoration:none}.student-readiness{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--student-green) 0 var(--progress),#e3e8e4 var(--progress) 100%);position:relative}.student-readiness:before{content:"";position:absolute;inset:8px;background:#fff;border-radius:50%}.student-readiness span{position:relative;text-align:center}.student-readiness strong,.student-readiness small{display:block}.student-readiness strong{font-size:20px}.student-readiness small{font-size:8px;color:var(--student-muted)}.student-lessons{padding:18px}.student-lessons .section-title{margin-bottom:8px}.student-lesson-row{width:100%;display:grid;grid-template-columns:48px 1fr 25px;align-items:center;gap:10px;padding:9px 0;border:0;border-top:1px solid var(--student-line);background:transparent;text-align:left;cursor:pointer}.student-lesson-thumb{width:45px;height:34px;border-radius:5px;display:grid;place-items:center;background:linear-gradient(135deg,#244a3b,#9a8050);color:#fff;font-size:9px}.student-lesson-row strong,.student-lesson-row small{display:block}.student-lesson-row small{font-size:8px;color:var(--student-muted);margin-top:3px}.student-lesson-row em{font-style:normal;color:var(--student-green)}
.student-message-preview{display:grid;grid-template-columns:36px 1fr auto 18px;align-items:center;gap:10px;padding:15px 18px}.student-message-preview>span{color:#d8663d;font-size:20px}.student-message-preview p{margin:2px 0;color:var(--student-muted);font-size:9px}.student-message-preview strong{font-size:11px}.student-message-preview>a{font-size:24px;text-decoration:none;color:var(--student-green)}.student-message-preview>small{color:var(--student-muted);font-size:8px}
.student-redesign .calendar-subscription{border-left:4px solid var(--student-gold);background:#fff}.student-redesign .student-calendar .calendar-day{border-radius:9px}.student-redesign .student-calendar .calendar-day>header{background:#f1f4f1}.student-redesign .calendar-event time{color:var(--student-green)}
.student-library-title{margin-bottom:18px}.student-library-title h2{font:30px Georgia,serif;margin:0}.student-library-title p:last-child{color:var(--student-muted)}.student-learning-page .learning-category{border-radius:10px}.student-learning-page .video-grid{grid-template-columns:repeat(3,1fr)}.student-learning-page .video-card{border-radius:8px}.student-learning-page .video-art{background:linear-gradient(135deg,#173f32,#9c8457)}
.student-passport-head{display:flex;align-items:center;justify-content:space-between;padding:26px 30px;border-radius:11px;background:linear-gradient(135deg,#103d32,#0a5645);color:#fff}.student-passport-head h2{font:34px Georgia,serif;margin:0}.student-passport-head p:last-child{color:#cbdcd5}.passport-level-mark{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#ffffff16;border:1px solid #ffffff2e}.passport-focus{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:12px 0}.passport-focus h2{font:22px Georgia,serif;margin:0}.passport-focus p:last-child{color:var(--student-muted)}.passport-readiness{flex:none}.passport-pathway{padding:0;overflow:hidden}.passport-pathway .section-title{padding:20px;margin:0}.passport-pathway .section-title>span{color:var(--student-muted);font-size:9px}.passport-items article{display:grid;grid-template-columns:38px 1fr auto 120px;align-items:center;gap:12px;padding:15px 20px;border-top:1px solid var(--student-line)}.passport-skill-icon{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:#e4ede8;color:var(--student-green)}.passport-items p{margin:4px 0 0;color:var(--student-muted);font-size:9px}.passport-items>article>small{color:var(--student-muted);font-size:9px;text-align:right}.passport-status{font-style:normal;padding:5px 9px;border-radius:20px;background:#edf1ef;color:var(--student-green);font-size:8px;font-weight:800}.passport-advisory{margin-top:12px;padding:16px 19px;border-left:3px solid var(--student-green);background:#eaf1ed;border-radius:6px}.passport-advisory p{margin:4px 0 0;color:var(--student-muted);font-size:10px}
.student-redesign .mobile-admin-nav{display:none}
@media(max-width:1000px){.student-next-grid{grid-template-columns:1fr}.student-summary{grid-template-columns:repeat(3,1fr)}.student-summary>div{border:0;border-right:1px solid var(--student-line);padding:12px}.student-summary>div:last-child{border:0}.student-training-grid{grid-template-columns:1fr}.student-learning-page .video-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.student-redesign .workspace{margin:0;width:100%}.student-redesign .workspace>header{padding:15px 18px}.student-redesign main{padding:18px 16px 88px}.student-redesign .sidebar{transform:translateX(-100%)}.student-redesign.nav-open .sidebar{transform:none}.student-redesign .mobile-admin-nav{position:fixed;z-index:25;left:0;right:0;bottom:0;height:66px;display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid var(--student-line);box-shadow:0 -8px 25px #163a2f12}.student-redesign .mobile-admin-nav a{display:grid;place-items:center;align-content:center;gap:3px;color:var(--student-muted);text-decoration:none}.student-redesign .mobile-admin-nav a span{font-size:17px}.student-redesign .mobile-admin-nav a small{font-size:8px}.student-redesign .mobile-admin-nav a.active{color:var(--student-green)}}
@media(max-width:600px){.student-home-head h2{font-size:23px}.student-next-class{min-height:0;grid-template-columns:1fr}.student-next-class>div:first-child{padding:22px}.student-next-class h2{font-size:27px}.student-training-photo{height:125px;grid-row:1}.student-summary{padding:4px}.student-summary>div{grid-template-columns:25px 1fr;padding:9px 6px}.student-summary span{font-size:15px}.student-summary strong{font-size:15px}.student-summary small{font-size:7px}.student-focus{grid-template-columns:1fr 78px;padding:17px}.student-readiness{width:72px;height:72px}.student-readiness strong{font-size:16px}.student-message-preview{grid-template-columns:28px 1fr 16px}.student-message-preview>small{display:none}.student-learning-page .video-grid{grid-template-columns:1fr}.student-passport-head{padding:22px}.student-passport-head h2{font-size:28px}.passport-focus{padding:17px}.passport-items article{grid-template-columns:35px 1fr auto}.passport-items>article>small{grid-column:2/4;text-align:left}.passport-advisory{margin-bottom:10px}}

.student-teaching #mobile-admin-nav{grid-template-columns:repeat(6,minmax(0,1fr))}
/* The shared register formerly used invisible checkbox inputs. Teaching notes are text fields. */
.student-teaching .attendance-row{grid-template-columns:40px minmax(120px,1fr) minmax(110px,160px) minmax(140px,1fr)}
.student-teaching .attendance-row input[data-note-for]{opacity:1;position:static;width:100%;min-height:44px;border:1px solid var(--student-line);border-radius:8px;padding:10px;background:#fff}
.student-teaching .attendance-row select{width:100%;min-height:44px}
@media(max-width:600px){.student-teaching .attendance-row{grid-template-columns:36px minmax(0,1fr)}.student-teaching .attendance-row>label{grid-column:1/-1}.student-teaching .workspace>header h1{font-size:clamp(18px,5.5vw,26px)}}
