/* Dream Challenge operations overview — responsive by design */
.school-hero{position:relative;display:flex;min-height:210px;overflow:hidden;justify-content:space-between;align-items:center;padding:29px 34px;border-radius:23px;color:white;background:radial-gradient(circle at 72% 50%,#cdb4fa3a,transparent 28%),linear-gradient(112deg,#231f52,#6043a1 63%,#9372df);box-shadow:0 18px 42px #52438622;margin-bottom:19px}
.school-hero .kicker{color:#d3c9ff;letter-spacing:.19em}.school-hero h1{font-size:clamp(29px,3.5vw,43px);margin:4px 0 10px;line-height:1.1;letter-spacing:-.05em}.school-hero em{color:#b8f3e7;font-style:normal}.school-hero p{max-width:495px;color:#e9e1fa;margin:0;font-size:13px}.school-hero-art{height:140px;width:245px;position:relative;flex:none;text-align:center}.school-hero-art span{font-size:100px;line-height:140px;color:#e9cfff;position:relative;z-index:2;text-shadow:0 15px 35px #281a7840;animation:schWiggle 8s linear infinite}.school-hero-art i{position:absolute;border:1px solid #ffffff73;border-radius:50%;width:170px;height:170px;top:-10px;left:40px;box-shadow:0 0 0 24px #ffffff10,0 0 0 50px #ffffff07}.school-hero-art b{position:absolute;bottom:-2px;left:0;right:0;letter-spacing:.22em;font-size:9px;color:#dbd3fc}
@keyframes schWiggle{to{transform:rotate(360deg)}}
.school-kpi{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:17px 0}.school-kpi>div{padding:20px;background:#fff;border:1px solid #ede7fa;border-radius:17px;box-shadow:0 7px 26px #43326d0a}.school-kpi span{display:block;font-size:11px;color:#756a8b;font-weight:680}.school-kpi strong{display:block;margin:5px 0;font-size:30px;line-height:1.15;letter-spacing:-.06em;color:#43327d}.school-kpi small{font-size:10px;color:#9185a3}
.school-filter{display:grid;grid-template-columns:minmax(180px,1.9fr) repeat(3,minmax(145px,1fr));align-items:end;gap:11px;background:#fff;border:1px solid #ebe8f3;padding:15px;border-radius:17px;margin:19px 0}.school-filter label{display:grid;gap:5px;color:#857b97;font-size:10px;font-weight:750}.school-filter input,.school-filter select{appearance:auto;border:1px solid #e5dfef;background:#fcfbff;min-width:0;width:100%;min-height:39px;padding:8px 10px;border-radius:9px;color:#403657;font-size:12px}
.school-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.school-card{min-width:0;background:white;border:1px solid #eae5f6;border-radius:18px;box-shadow:0 8px 26px #4134770d;overflow:hidden}.school-card.complete{border-color:#b0e7d6}.school-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:19px 20px 13px}.school-overline{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.09em;color:#937abd}.school-card h3{margin:5px 0 5px;font-size:20px;letter-spacing:-.035em;overflow-wrap:anywhere}.school-card-head p{margin:0;color:#827b94;font-size:11px}.school-count{width:46px;height:46px;border-radius:15px;background:#f2eafd;color:#7957c7;font-weight:860;display:grid;place-items:center;flex-shrink:0}.school-count.done{background:#dff7ee;color:#247e67}
.school-booking{padding:14px 19px;background:#f9f6ff;margin:0 13px;border-radius:13px}.school-booking>div:first-child{display:flex;align-items:center;gap:9px;justify-content:space-between}.school-booking b{font-size:12px}.school-booknum{margin:10px 0 8px;font-size:19px;font-weight:850;letter-spacing:-.04em}.school-track{height:8px;overflow:hidden;border-radius:25px;background:#e5dcf7;margin:9px 0 2px}.school-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(95deg,#8258d4,#23b5a6);transition:width .3s}
.school-state{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;color:#987042;font-size:10px;font-weight:750;background:#fdf3dc;border-radius:19px;padding:5px 8px}.school-state i{width:6px;height:6px;background:#d7a852;border-radius:50%}.school-state.done{background:#e5f8ed;color:#238063}.school-state.done i{background:#32a77e}.school-state.partial{background:#eef0ff;color:#6858a6}.school-state.partial i{background:#8b7ac6}.school-state.empty{background:#f2f1f4;color:#867e92}.school-state.empty i{background:#b6b0be}
.school-mini-status{padding:16px 20px;display:grid;gap:11px}.school-mini-status>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.school-mini-status>div>span:first-child{font-weight:700;font-size:12px}.school-card-foot{background:#fbfaff;border-top:1px solid #f0eaf9;padding:13px 20px;display:flex;align-items:center;justify-content:space-between;gap:9px}.school-card-foot span{color:#81758d;font-size:11px;flex:1}.school-open{white-space:nowrap;background:transparent;border:0;color:#7755b7;font-size:11px;font-weight:800;padding:5px}
.school-detail-header{background:#fff;border:1px solid #ebe5f3;border-radius:17px;padding:20px;display:flex;align-items:center;gap:18px;margin-bottom:17px}.school-detail-header .btn{align-self:flex-start}.school-detail-header>div{flex:1}.school-detail-header h2{margin:3px 0 5px;font-size:25px;letter-spacing:-.04em}.school-detail-header p,.school-detail-header small{margin:0;color:#827b95;font-size:11px}
.school-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.school-detail-panel{background:#fff;border:1px solid #eae6f4;border-radius:17px;padding:19px;min-width:0}.school-detail-panel-head{display:flex;align-items:center;justify-content:space-between;gap:9px}.school-detail-panel h3{font-size:15px;margin:0}.school-big-number{font-size:30px;display:block;color:#4a3986;margin:18px 0 3px}.school-big-number span{font-size:16px;color:#8b80a5}.school-caption,.school-muted{color:#897f9b;font-size:11px}.school-detail-items{display:grid;gap:9px;margin:14px 0;min-height:45px}.school-detail-item{display:flex;gap:9px;align-items:center;justify-content:space-between;border:1px solid #f2eef8;background:#fcfbff;border-radius:10px;padding:10px}.school-detail-item b{display:block;font-size:11px;overflow-wrap:anywhere}.school-detail-item small{display:block;margin-top:3px;font-size:10px;color:#9288a4}.school-detail-actions{display:flex;gap:8px;flex-wrap:wrap}.school-next{margin-top:15px;background:#f9f6ff;border:1px solid #eae0f9;border-radius:16px;padding:20px}.school-next h3{margin:0 0 9px;font-size:15px}.school-next ul{margin:0 0 14px;padding-left:22px}.school-next li{padding:3px 0;font-size:12px}.school-next p{font-size:12px}.school-empty{padding:40px 20px;text-align:center;background:#fff;border:1px dashed #cfc1ea;border-radius:19px}.school-empty-art{font-size:65px;color:#b798e7}.school-empty h2{font-size:22px;letter-spacing:-.04em;margin:10px 0}.school-empty p{font-size:12px;color:#82778f;max-width:550px;margin:0 auto 20px}.school-disclaimer{margin:15px 0;color:#867d95;font-size:11px;line-height:1.65}.school-preview{background:linear-gradient(95deg,#f1eaff,#f0fcfa);border:1px solid #e1d5f9;border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 22px;margin:20px 0}.school-preview b{color:#54409d;font-size:14px}.school-preview p{color:#7c728b;font-size:12px;margin:5px 0 0}
@media(max-width:1050px){.school-kpi{grid-template-columns:repeat(2,minmax(0,1fr))}.school-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.school-cards{grid-template-columns:1fr}}
@media(max-width:700px){.school-hero{min-height:185px;padding:23px}.school-hero-art{position:absolute;right:-65px;top:15px;opacity:.13;pointer-events:none}.school-hero h1{font-size:31px}.school-hero p{max-width:94%}.school-filter{grid-template-columns:1fr 1fr}.school-filter-search{grid-column:1/-1}.school-detail-grid{grid-template-columns:1fr}.school-detail-header{flex-wrap:wrap}.school-detail-header>div{flex-basis:50%}.school-preview{flex-direction:column;align-items:flex-start}}
@media(max-width:420px){.school-filter{grid-template-columns:1fr}.school-filter-search{grid-column:auto}.school-kpi{gap:8px}.school-kpi>div{padding:14px}.school-kpi strong{font-size:26px}.school-card-head{padding:15px}.school-mini-status{padding:15px}.school-card-foot{padding:11px 14px}.school-card-foot span{font-size:10px}.school-hero h1{font-size:28px}.school-detail-header .school-count{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.school-hero-art span{animation:none}}
