.campus-hub{gap:18px;display:grid}.campus-hub-hero{background:linear-gradient(135deg,var(--grey-dark),var(--teal));color:#fff;border-radius:24px;justify-content:space-between;align-items:center;gap:22px;padding:28px;display:flex}.campus-hub-hero h2,.reports-hero h3,.wins-hero h3{margin:4px 0 8px;font-size:2rem}.campus-hub-hero p,.reports-hero p,.wins-hero p{color:#dbeaf2;max-width:720px}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.hub-tabs{gap:8px;padding-bottom:6px;display:flex;overflow-x:auto}.hub-tabs button{color:#36536a;white-space:nowrap;background:#edf3f6;border:0;border-radius:999px;align-items:center;gap:7px;padding:10px 14px;font-weight:700;display:flex}.hub-tabs button.active{background:var(--blue);color:#fff}.stat-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.hub-stat{gap:5px;padding:20px;display:grid}.hub-stat span{text-transform:uppercase;letter-spacing:.08em;color:#6d7f8d;font-size:.78rem}.hub-stat strong{color:var(--navy);font-size:2rem}.hub-stat small{color:#82909a}.dashboard-grid,.two-grid{grid-template-columns:repeat(2,1fr);gap:15px;display:grid}.hub-panel{padding:22px}.panel-head{justify-content:space-between;gap:15px;margin-bottom:14px;display:flex}.panel-head h3,.toolbar h3{margin:3px 0}.list-button{text-align:left;background:#fff;border:1px solid #dfe8ed;border-radius:14px;grid-template-columns:1fr auto;gap:4px 12px;width:100%;margin-top:8px;padding:13px;display:grid}.list-button span{color:#6b7d89}.list-button small{color:#8a969e}.list-button svg{grid-area:1/2/3;align-self:center}.priority{border-bottom:1px solid #edf1f3;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px 0;display:grid}.priority small{color:#84919a}.quick-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.quick-grid button{color:#294d65;background:#f8fbfc;border:1px solid #dce7ed;border-radius:15px;justify-items:start;gap:8px;padding:17px;font-weight:700;display:grid}.toolbar{justify-content:space-between;align-items:center;gap:18px;padding:20px;display:flex}.search-box{border:1px solid #d8e3e9;border-radius:12px;align-items:center;gap:8px;padding:0 12px;display:flex}.search-box input{border:0;outline:0;min-width:260px;padding:11px 0}.card-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.entity-card,.teacher-card{text-align:left;background:#fff;border:1px solid #dfe8ed;border-radius:20px;padding:20px;box-shadow:0 9px 24px #1a3c530f}.entity-top{justify-content:space-between;align-items:center;display:flex}.icon-box{background:var(--blue-pale);width:44px;height:44px;color:var(--navy-deep);border-radius:14px;place-items:center;display:grid}.status{background:var(--purple-pale);width:max-content;color:var(--purple-text);border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:800;display:inline-flex}.entity-card h3,.teacher-card h3{margin:14px 0 4px}.teacher-card .status{background:var(--blue-pale);color:var(--accent-blue-text)}.entity-card p,.teacher-card p{color:#647886}.entity-card small,.teacher-card small{color:#7f8f99;margin:9px 0;display:block}.entity-card b,.teacher-card b{color:#36586e;font-size:.82rem}.detail-hero{justify-content:space-between;align-items:center;gap:20px;padding:24px;display:flex}.detail-metrics{flex-wrap:wrap;gap:10px;display:flex}.detail-metrics span{color:#758691;background:#f4f8fa;border-radius:13px;gap:3px;padding:11px 14px;display:grid}.detail-metrics b{color:var(--navy)}.mini-record{border-bottom:1px solid #edf1f3;gap:4px;padding:12px 0;display:grid}.mini-record span{color:#7a8a94}.mini-record p{color:#526675;margin:2px 0}.note{background:#f7fafb;border-left:4px solid #2b83ae;border-radius:9px;margin-top:9px;padding:12px}.hub-panel a{color:#1b648b;justify-content:space-between;margin-top:10px;display:flex}.teacher-card{gap:14px;display:flex}.avatar{background:linear-gradient(135deg,var(--purple),var(--teal));color:#fff;border-radius:16px;place-items:center;width:48px;height:48px;font-size:1.2rem;font-weight:800;display:grid}.teacher-card>div:last-child{gap:4px;display:grid}.record-card{padding:20px}.record-card h3{margin:12px 0 4px}.record-card small{text-transform:uppercase;letter-spacing:.08em;color:#728694;margin-top:12px;display:block}.recorder{border:1px dashed var(--blue);background:linear-gradient(180deg,#f7fcfb,var(--blue-pale));text-align:center;border-radius:24px;padding:42px}.recorder button{background:var(--blue);color:#fff;border:0;border-radius:50%;place-items:center;width:84px;height:84px;margin:0 auto 15px;display:grid}.recorder button.recording{background:var(--brand-red)}.voice-row{border-bottom:1px solid #edf1f3;gap:12px;padding:14px 0;display:flex}.voice-row>div{gap:4px;display:grid}.tags{flex-wrap:wrap;gap:6px;display:flex}.tags span{color:#505f9a;background:#eef2ff;border-radius:999px;padding:4px 7px;font-size:.72rem}.schedule-grid{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}.schedule-card{padding:18px}.schedule-card>div{border-bottom:1px solid #edf1f3;grid-template-columns:auto 1fr;gap:7px;padding:12px 0;display:grid}.schedule-card small{color:#84919a;grid-column:2}.resource-card{color:inherit;padding:20px;text-decoration:none}.resource-card small{text-transform:uppercase;letter-spacing:.08em;color:var(--blue);margin-top:12px;display:block}.resource-card h3{margin:7px 0}.resource-card p{color:#657987}.resource-card b{color:var(--blue);align-items:center;gap:5px;display:flex}.reports-hero{background:linear-gradient(135deg,var(--purple),var(--teal))}.wins-hero{background:linear-gradient(135deg,var(--accent-blue),var(--teal))}.win-list{gap:12px;display:grid}.win-card{gap:14px;padding:20px;display:flex}.win-card .icon-box{background:var(--green-pale);color:var(--green-text)}.win-card h3{margin:4px 0}.win-card p{color:#60727f}.empty{color:#81909a}.reports-hero{margin-bottom:15px}@media (width<=1000px){.stat-grid,.card-grid,.schedule-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=720px){.campus-hub-hero,.reports-hero,.wins-hero,.toolbar,.detail-hero{flex-direction:column;align-items:flex-start}.dashboard-grid,.two-grid,.stat-grid,.card-grid,.schedule-grid{grid-template-columns:1fr}.search-box{width:100%}.search-box input{width:100%;min-width:0}.recorder{padding:28px 18px}}.toolbar-right{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.empty-state{color:#7f8f99;background:#f8fbfc;border:1px dashed #cfe0e8;border-radius:16px;justify-items:start;gap:10px;padding:24px;display:grid}.add-inline{color:var(--blue);margin-top:10px;font-weight:700}.icon-btn{color:#4a5d68;background:#eef3f5;border:0;border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.icon-btn.danger{background:var(--brand-red-pale);color:var(--brand-red)}.icon-btn.danger:hover{background:#efd0ce}.detail-hero{position:relative}.detail-hero .icon-btn{margin-left:auto}.modal-overlay{z-index:50;background:#0f1e2d73;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:20px;width:100%;max-width:480px;max-height:88vh;padding:26px;overflow-y:auto;box-shadow:0 20px 60px #0a192840}.modal-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-head h3{margin:0}.modal-form{gap:14px;display:grid}.field{color:#3a4d59;gap:6px;font-size:.85rem;font-weight:700;display:grid}.field input,.field select,.field textarea{color:#1d2c35;background:#fff;border:1px solid #d8e3e9;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:.95rem;font-weight:400}.field textarea{resize:vertical;min-height:70px}.field-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.modal-actions{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.form-error{color:var(--brand-red);font-size:.85rem}.form-hint{color:#82909a;margin:-4px 0 0;font-size:.85rem}.voice-row{flex-wrap:wrap;align-items:center}.voice-row audio{max-width:260px}.voice-meta{flex:1;min-width:200px}.voice-tags{flex-wrap:wrap;gap:8px;display:flex}.voice-tags select{color:#3a4d59;background:#fff;border:1px solid #d8e3e9;border-radius:8px;padding:5px 8px;font-size:.8rem}@media (width<=720px){.field-row{grid-template-columns:1fr}.modal{padding:20px}}.sample-banner{background:var(--gold-pale);color:var(--gold-text);border:1px solid #ecd98f;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.sample-banner span{font-size:.9rem}.coordinator-bar{justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;display:flex}.coordinator-bar h3{margin:3px 0}.coordinator-chips,.campus-filter{gap:8px;padding:4px 0;display:flex;overflow-x:auto}.coordinator-chips button,.campus-filter button{white-space:nowrap;color:#36536a;background:#fff;border:1px solid #d7e3e9;border-radius:999px;padding:8px 12px;font-weight:700}.coordinator-chips button.active,.campus-filter button.active{background:var(--blue);border-color:var(--blue);color:#fff}.campus-filter{background:#edf3f6;border-radius:16px;padding:10px 12px}.campus-filter span{background:#edf3f6;border-radius:999px;place-items:center;min-width:20px;height:20px;margin-left:4px;font-size:.72rem;display:inline-grid}.campus-filter .active span{background:#fff3}.official-campus-link{color:var(--blue);align-items:center;gap:6px;margin-top:8px;font-weight:700;text-decoration:none;display:inline-flex}.official-campus-link:hover{text-decoration:underline}.campus-map-card{justify-self:center;width:100%;max-width:1120px;margin-top:4px;padding:22px}.campus-map-card .panel-head p:not(.eyebrow){color:#6b7d89;margin:5px 0 0}.campus-map{background:#edf3f6;border-radius:18px;height:clamp(250px,32vw,380px);position:relative;overflow:hidden}.campus-map iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.address-line,.campus-address{align-items:flex-start;gap:6px;display:flex!important}.address-line svg,.campus-address svg{flex:none;margin-top:2px}.campus-address{color:#647886}.entity-card .address-line{text-transform:none;letter-spacing:0;min-height:34px}.schedule-list{gap:12px;display:grid}.schedule-entry{grid-template-columns:minmax(150px,.6fr) 1fr auto auto;align-items:center;gap:16px;padding:17px 20px;display:grid}.schedule-date{gap:4px;display:grid}.schedule-date span,.schedule-entry p{color:#6b7d89}.schedule-entry h3,.schedule-entry p{margin:0}.schedule-entry>div:nth-child(2){gap:4px;display:grid}.voice-text{color:#3a4d59;background:#f4f8fa;border-radius:10px;max-width:340px;padding:12px 14px;font-style:italic}@media (width<=720px){.sample-banner,.coordinator-bar{flex-direction:column;align-items:flex-start}.coordinator-chips{width:100%}.campus-map{height:280px}.schedule-entry{grid-template-columns:1fr auto}.schedule-entry>div:nth-child(2){grid-column:1/-1}.schedule-entry .secondary{justify-self:start}}:root{color:#17324a;font-synthesis:none;text-rendering:optimizelegibility;--teal:#48a1ad;--purple:#484e94;--purple-text:#3b4078;--accent-blue:#5374b8;--accent-blue-text:#3f5a91;--light-green:#7fb650;--green-text:#5c8a3a;--grey-dark:#28383b;--grey-light:#d4d4d5;--red:#ca6a67;--red-pale:#f7e7e6;--gold:#f3d266;--gold-text:#9c7a17;--gold-pale:#fbf1d1;--teal-pale:#e4f1f2;--purple-pale:#e5e6f5;--blue-pale:#e5eaf7;--green-pale:#ebf4e1;--navy:var(--grey-dark);--navy-deep:var(--grey-dark);--blue:var(--teal);--blue-light:var(--light-green);--brand-red:var(--red);--brand-red-pale:var(--red-pale);background:#eef3f6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(#eef4f7,#f7fafb);min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}a{color:inherit}#root{min-height:100vh;padding:24px}.card{background:#fff;border:1px solid #dfe7ec;border-radius:20px;box-shadow:0 10px 28px #0b2d4e12}.eyebrow{letter-spacing:.11em;text-transform:uppercase;color:var(--blue);margin:0;font-size:.72rem;font-weight:800}.primary,.secondary,.text-button{border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-weight:750;display:inline-flex}.primary{border:1px solid var(--blue);background:var(--blue);color:#fff}.secondary{color:var(--navy);background:#fff;border:1px solid #cfe3e5}.text-button{color:var(--blue);background:0 0;border:0;padding-inline:0}h1,h2,h3,p{margin-top:0}@media (width<=720px){#root{padding:14px}}
