/* MR LEE University Map V3 · Region explorer, no invented campus coordinates */
.mrlee-university-map .mrlee-next-hero-visual{background-image:linear-gradient(90deg,#05152b,transparent 45%),url('scenes/universities.svg')}
.mrlee-school-search{margin:18px 0}
.mrlee-school-filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;align-items:end;gap:12px}
.mrlee-school-filters label{display:grid;gap:6px;font:700 12px system-ui;min-width:0;color:var(--next-ink)}
.mrlee-school-filters :is(input,select){min-width:0;width:100%;height:45px;padding:10px 12px;border:1px solid var(--next-line);background:var(--next-back);border-radius:10px;color:var(--next-ink);font:500 12px system-ui}
.mrlee-map-shell{display:grid;grid-template-columns:minmax(200px,.8fr) minmax(280px,1.6fr) minmax(230px,1fr);gap:14px;align-items:start}
.mrlee-map-shell .mrlee-panel{height:100%;min-width:0}
.mrlee-map-shell h2,.mrlee-university-results h2{font:900 clamp(16px,1.5vw,22px)/1.3 "Segoe UI",system-ui;margin:0;color:var(--next-ink)}
.mrlee-map-shell p{font-size:12px;color:var(--next-muted)}
.mrlee-map-region-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:17px}
.mrlee-map-region-list button{border:1px solid var(--next-line);padding:10px 8px;border-radius:10px;color:var(--next-ink);background:var(--next-back);font:650 11px/1.5 system-ui;cursor:pointer;display:flex;gap:6px;justify-content:space-between}
.mrlee-map-region-list button.selected,.mrlee-map-region-list button:hover{background:linear-gradient(120deg,#19c9df35,#997afb26);border-color:var(--next-aqua);box-shadow:0 0 13px #28bdde20}
.mrlee-map-disclaimer{font:500 11px/1.7 system-ui;color:var(--next-muted);margin-top:17px}
.mrlee-panel-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.mrlee-panel-top span{font:650 12px system-ui;color:var(--next-muted)}
.mrlee-map-visual{margin:12px 0;border:1px solid var(--next-line);border-radius:15px;overflow:hidden;background:#09173b;box-shadow:inset 0 0 35px #2175cc45}
.mrlee-map-visual svg{display:block;width:100%;max-height:640px}
.mrlee-university-detail{display:grid;align-content:start;gap:14px}
#universityDetail{font-size:12px;line-height:1.8;color:var(--next-muted)}
#universityDetail h3{color:var(--next-ink);font-size:19px}
#universityDetail b{color:var(--next-aqua)}
#universityDetail a{color:var(--next-aqua);font-weight:700;overflow-wrap:anywhere}
#universityDetail .mrlee-campus{padding:12px;border:1px solid var(--next-line);border-radius:10px;margin:10px 0}
.mrlee-university-results{margin-top:18px}
.mrlee-university-cards{margin:18px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.mrlee-university-item{min-width:0;text-align:left;display:flex;flex-direction:column;gap:9px;color:var(--next-ink);background:var(--next-back);border:1px solid var(--next-line);border-radius:13px;padding:17px;cursor:pointer;font:650 13px/1.5 system-ui}
.mrlee-university-item b{font-size:15px;color:var(--next-ink)}
.mrlee-university-item small{color:var(--next-muted);font-size:11px}
.mrlee-university-item em{margin-top:auto;font-style:normal;color:var(--next-aqua);font-size:11px}
.mrlee-university-item:hover,.mrlee-university-item.selected{border-color:var(--next-aqua);box-shadow:0 0 21px #20b7fc25;transform:translateY(-2px)}
html[data-mrlee-theme="future"] .mrlee-university-map .mrlee-panel{background:#071a36e8}
html[data-mrlee-theme="future"] .mrlee-university-item{background:linear-gradient(155deg,#0b2753,#06152b)}
html[data-mrlee-theme="future"] .mrlee-school-search{border-color:#3bb4ec}
html[data-mrlee-theme="fresh"] .mrlee-university-item{background:#f6faff}
@media(max-width:1100px){.mrlee-map-shell{grid-template-columns:1fr 1.4fr}.mrlee-university-detail{grid-column:1/-1}.mrlee-university-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:750px){.mrlee-map-shell,.mrlee-school-filters{grid-template-columns:1fr}.mrlee-university-cards{grid-template-columns:1fr}.mrlee-map-region-list{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.mrlee-university-item:hover{transform:none}}
