/* Coding Classroom v0.9.6 — First Start UX + Student Management */

/* Logged-out students get one obvious starting point instead of the full learning UI. */
body.student-logged-out .learner-bar,
body.student-logged-out .header-right,
body.student-logged-out .main-nav a[data-route="lessons"],
body.student-logged-out .main-nav a[data-route="classroom"],
body.student-logged-out .main-nav a[data-route="lab"],
body.student-logged-out .main-nav a[data-route="progress"],
body.student-logged-out .main-nav a[data-route="project"],
body.student-logged-out #view-home .home-hero-classic,
body.student-logged-out #view-home .kru-mascot-home,
body.student-logged-out #view-home .role-entry,
body.student-logged-out #view-home .focus-section,
body.student-logged-out #view-home .other-tracks,
body.student-logged-out #view-home .home-progress{display:none!important}
body.student-logged-in #view-home .home-hero-classic,
body.student-logged-in #view-home .kru-mascot-home,
body.student-logged-in #view-home .role-entry{display:none!important}
body.student-logged-out .main-nav{justify-content:flex-end}

.first-start-shell{max-width:1120px;margin:14px auto 34px;padding:clamp(18px,3vw,34px);border:1px solid #c9ddf2;border-radius:24px;background:linear-gradient(145deg,#f9fcff 0%,#eef6ff 52%,#f4fbff 100%);box-shadow:0 18px 50px rgba(24,73,121,.08);position:relative;overflow:hidden}
.first-start-shell:before{content:"</>";position:absolute;right:30px;top:18px;color:#1f68c20d;font:900 110px/1 ui-monospace,monospace;pointer-events:none}
.first-start-intro{display:grid;grid-template-columns:170px minmax(0,1fr);align-items:center;gap:26px;margin-bottom:24px}
.first-start-intro img{width:170px;height:170px;object-fit:contain;filter:drop-shadow(0 10px 12px rgba(19,55,96,.13))}
.first-start-intro h1{margin:3px 0 8px;color:#123d70;font-size:clamp(1.8rem,3.4vw,3rem);line-height:1.3}
.first-start-intro p:not(.eyebrow){margin:0;max-width:760px;color:#59738d;line-height:1.8}
.first-start-points{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.first-start-points span{padding:6px 9px;border:1px solid #cde4dc;border-radius:999px;background:#f3fbf7;color:#2a6d58;font-size:.78rem;font-weight:750}
.first-start-auth-grid{display:grid;grid-template-columns:minmax(300px,.86fr) minmax(420px,1.14fr);gap:16px}
.first-start-card{display:grid;align-content:start;gap:12px;padding:20px;border:1px solid #d7e4f0;border-radius:17px;background:#fff;box-shadow:0 9px 25px rgba(23,66,109,.045)}
.first-start-card h2{margin:1px 0 2px;color:#163f6f}.first-start-card>div:first-child>p:not(.eyebrow){margin:0;color:#71859a;font-size:.86rem}
.first-start-register{border-top:4px solid #386fd0}.first-start-login{border-top:4px solid #1f8a6b}
.first-start-card .primary-cta{width:100%;justify-content:center;margin-top:2px}
.first-start-message{min-height:24px;margin:13px 0 0;color:#a24c3f;font-weight:650;text-align:center}
.first-start-teacher{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid #dce8f3;color:#6a8097;font-size:.85rem}.first-start-teacher .secondary-cta{min-height:40px}.text-link{color:#2868ad;font-weight:700;text-decoration:none}

.student-home-dashboard{display:grid;gap:18px;margin:8px 0 24px}
.student-home-welcome{display:grid;grid-template-columns:minmax(0,1fr) 185px;align-items:center;min-height:240px;padding:28px 30px;border:1px solid #c8ddf0;border-radius:22px;background:linear-gradient(125deg,#f8fbff,#eaf4ff 58%,#effaf6);overflow:hidden;box-shadow:0 13px 36px rgba(22,67,111,.065)}
.student-home-welcome h1{margin:4px 0;color:#123b6a;font-size:clamp(1.8rem,3.2vw,2.7rem)}.student-home-welcome>div>p:not(.eyebrow){margin:0;color:#647d95}
.student-home-welcome img{width:190px;height:190px;object-fit:contain;justify-self:end;filter:drop-shadow(0 10px 12px rgba(20,58,98,.12))}
.student-home-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:18px}.student-home-actions .text-danger{min-height:44px;padding:8px 12px}
.student-home-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.student-home-stats article{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:0 9px;padding:16px;border:1px solid #d8e4ef;border-radius:14px;background:#fff}.student-home-stats article>span{grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#edf5ff;color:#2265b7;font-size:1.1rem}.student-home-stats strong{color:#164473;font-size:1.35rem}.student-home-stats small{color:#788da1}
.student-home-rooms{padding:20px;border:1px solid #d7e3ef;border-radius:18px;background:#fff}.student-home-room-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.student-home-room{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;text-align:left;padding:15px;border:1px solid #d5e3f0;border-radius:13px;background:linear-gradient(145deg,#fff,#f5f9ff);color:#274f79;cursor:pointer}.student-home-room:hover{border-color:#75aae4;box-shadow:0 8px 18px rgba(37,91,148,.08)}.student-home-room>span:first-child{display:grid}.student-home-room strong{color:#173f6b}.student-home-room small{margin-top:3px;color:#758ba0}.student-home-room>span:nth-child(2){grid-row:2;color:#5d7690;font-size:.8rem}.student-home-room b{grid-column:2;grid-row:1/3;align-self:center;color:#2368b7;font-size:.8rem}.student-home-no-room{grid-column:1/-1;padding:18px;border:1px dashed #c8d9e9;border-radius:12px;background:#f8fbfe}.student-home-no-room p{color:#71869a}

/* Teacher student management */
.student-management-panel{border-top:4px solid #4d78bf!important}.student-manage-filters{display:grid;grid-template-columns:minmax(260px,1fr) 230px;gap:12px;margin:6px 0 14px}.manage-count{align-self:center;padding:5px 9px;border-radius:999px;background:#eef4fb;color:#55718d;font-size:.75rem;font-weight:800}
.student-manage-list{display:grid;gap:9px}.student-manage-card{display:grid;grid-template-columns:minmax(260px,1.3fr) minmax(155px,.6fr) auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid #d8e4ef;border-radius:12px;background:#fff}.student-manage-card.is-disabled{background:#fafafa;border-color:#e0e0e0}.student-manage-main{display:flex;align-items:flex-start;gap:10px;min-width:0}.student-status-dot{width:10px;height:10px;margin-top:7px;flex:none;border-radius:50%;background:#25a277;box-shadow:0 0 0 4px #e8f7f1}.student-manage-card.is-disabled .student-status-dot{background:#9aa5ae;box-shadow:0 0 0 4px #f0f2f4}.student-manage-main>div{display:grid;gap:2px;min-width:0}.student-manage-main strong{color:#204b76}.student-manage-main small{color:#73889b;overflow-wrap:anywhere}.student-manage-chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px}.student-manage-chips span{padding:3px 6px;border-radius:999px;background:#edf5ff;color:#47709a;font-size:.68rem}.student-manage-chips .is-muted{background:#f2f3f5;color:#828d97}.student-manage-progress{display:grid;gap:2px;color:#62788d;font-size:.78rem}.student-manage-progress strong{color:#1f5d9e}.student-manage-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.student-manage-actions button{min-height:36px;padding:6px 9px;font-size:.74rem}.account-disable-btn{border:1px solid #e8caa2;border-radius:8px;background:#fff9ee;color:#93621d;font:inherit;font-weight:750;cursor:pointer}.account-delete-permanent{border:1px solid #e3aaa2;border-radius:8px;background:#fff2f0;color:#a23f35;font:inherit;font-weight:800;cursor:pointer}.student-manage-note{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#f8fafc;color:#667d92;font-size:.78rem;line-height:1.65}.room-member-actions{display:flex;gap:5px;justify-content:flex-end;flex-wrap:wrap}.mini-remove-member{min-height:34px;padding:6px 8px;border:1px solid #e1c5a7;border-radius:7px;background:#fff9f2;color:#8b5a20;font:inherit;font-size:.72rem;cursor:pointer;white-space:nowrap}

@media(max-width:900px){
  .first-start-intro{grid-template-columns:120px minmax(0,1fr)}.first-start-intro img{width:120px;height:120px}.first-start-auth-grid{grid-template-columns:1fr}.student-home-stats{grid-template-columns:1fr 1fr}.student-home-room-list{grid-template-columns:1fr}.student-manage-card{grid-template-columns:1fr 1fr}.student-manage-actions{grid-column:1/-1;justify-content:flex-start}.student-manage-filters{grid-template-columns:1fr 190px}
}
@media(max-width:650px){
  .first-start-shell{margin-top:6px;padding:16px;border-radius:17px}.first-start-intro{grid-template-columns:80px minmax(0,1fr);gap:12px}.first-start-intro img{width:78px;height:78px}.first-start-intro h1{font-size:1.65rem}.first-start-points{display:none}.first-start-card{padding:15px}.first-start-auth-grid .student-auth-two{grid-template-columns:1fr}.first-start-teacher{justify-content:flex-start}.student-home-welcome{grid-template-columns:1fr 90px;padding:20px}.student-home-welcome img{width:92px;height:110px}.student-home-actions{grid-column:1/-1}.student-home-stats{grid-template-columns:1fr 1fr}.student-home-rooms{padding:15px}.student-manage-filters{grid-template-columns:1fr}.student-manage-card{grid-template-columns:1fr}.student-manage-actions{grid-column:auto}.room-member-actions{justify-content:flex-start}
}
@media(max-width:430px){.first-start-intro{grid-template-columns:1fr}.first-start-intro img{width:92px;height:92px}.student-home-welcome{grid-template-columns:1fr}.student-home-welcome img{display:none}.student-home-stats{grid-template-columns:1fr 1fr}}
