/* Classroom launcher: compact cards, readable targets, no oversized posters. */
.page-shell{width:min(1200px,calc(100% - 48px));padding:20px 0;min-height:100vh}
.site-header{padding-bottom:14px;gap:12px}.brand-mark{width:40px;height:40px;font-size:22px}.site-header h1{font-size:25px}.eyebrow{font-size:10px}
.student-session input{font-size:13px;width:170px}.student-session button{font-size:12px}.student-session p:empty{display:none}#studentName{font-size:13px}
.intro-grid{grid-template-columns:minmax(0,1fr) 180px;gap:24px;padding:20px 0 22px}.section-label{font-size:10px;margin-bottom:6px}.welcome h2{font-size:32px;letter-spacing:-.025em}.welcome>p:last-child{font-size:14px;line-height:1.5;margin:8px 0 0;max-width:none}.school-opening{width:180px;aspect-ratio:16/9;box-shadow:0 4px 12px #17233d0b;border-radius:6px}
.activity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:none;margin:0}
.activity-card{grid-template-columns:90px minmax(0,1fr);min-height:174px;border-radius:11px;box-shadow:0 3px 10px #17233d06;transition:border-color .15s,box-shadow .15s,transform .15s}
.activity-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #17233d12}.activity-card.is-locked{opacity:1;filter:none;background:#fbfaf7}.activity-card.is-locked .card-art{filter:saturate(.7)}.activity-card.is-locked:hover{box-shadow:0 3px 10px #17233d06}
.card-art{min-height:0;display:flex;align-items:center;justify-content:center}.card-art::after{inset:8px;border-color:#ffffff30;border-radius:5px}
.card-number,.activity-card--maps .card-number{position:static;font-size:25px;letter-spacing:-1px;line-height:1.15}.card-art--rpg .card-number{font-size:25px;text-shadow:2px 2px #d82800}.pixel-flag,.document-line,.map-dot,.map-route{display:none}
.lock-badge{width:22px;height:22px;top:7px;right:7px;font-size:10px;border:0;background:#17233d80}
.card-body{padding:17px 16px;min-width:0}.card-kicker{font-size:9px;letter-spacing:.045em;line-height:1.4;margin-bottom:7px}.card-body h3{font-size:22px;line-height:1.12;letter-spacing:-.025em}.card-body>p:not(.card-kicker){font-size:12px;line-height:1.5;margin:8px 0 12px}.card-action{border:0;padding:0;font-size:11px;line-height:1.4;color:#00157c}.is-locked .card-action{color:#6b707a;font-weight:650}
.kamazon-mark{font-size:19px;letter-spacing:-1px;text-align:center}.kamazon-mark small{display:block;font-size:10px;letter-spacing:0;margin-bottom:3px}.chess-mark{font-size:63px}.chess-mark small{font-size:6px;letter-spacing:1px;margin-top:8px}
footer{margin-top:22px;padding-top:12px;font-size:11px;gap:12px}
@media(min-width:1051px) and (max-height:700px){.page-shell{padding-top:14px}.intro-grid{padding:14px 0 16px;grid-template-columns:1fr 140px}.school-opening{width:140px}.welcome h2{font-size:29px}.activity-card{min-height:160px}.card-body{padding:14px}.card-body h3{font-size:21px}.card-body>p:not(.card-kicker){margin:7px 0 9px}footer{margin-top:16px}}
@media(min-width:701px) and (max-width:1050px){.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-card{min-height:165px}.intro-grid{grid-template-columns:1fr 150px}.school-opening{width:150px}}
@media(max-width:700px){.page-shell{width:calc(100% - 28px);padding-top:14px}.site-header{gap:10px}.site-header h1{font-size:23px}.student-session{margin-top:4px}.student-session input{width:min(230px,60vw)}.intro-grid{grid-template-columns:1fr;padding:20px 0;gap:0}.school-opening{display:none}.welcome h2{font-size:28px}.welcome>p:last-child{font-size:13px}.activity-grid{grid-template-columns:1fr;gap:11px}.activity-card{min-height:150px;grid-template-columns:82px 1fr}.card-body{padding:15px}.card-body h3{font-size:22px}.card-body>p:not(.card-kicker){font-size:12px}.card-action{font-size:12px}footer{flex-direction:row;flex-wrap:wrap}}
