.school-search-page,.school-detail-page{min-height:650px;background:#f5faf8}
.school-search-hero{padding:58px max(8vw,35px);text-align:center;background:radial-gradient(circle at 75% 15%,rgba(207,233,109,.34),transparent 22%),linear-gradient(135deg,#e5f8f3,#f8fbea)}.school-search-hero>span{color:#188a76;font-size:12px;font-weight:800;letter-spacing:.18em}.school-search-hero h1{margin:8px 0;font-size:39px;color:#173d43}.school-search-hero p{color:#708789;font-size:13px}
.school-search-hero form{width:min(820px,100%);height:58px;margin:25px auto 0;padding:5px;display:grid;grid-template-columns:1fr 170px 125px;gap:5px;border:1px solid #cfe2dd;border-radius:14px;background:#fff;box-shadow:0 12px 30px rgba(34,102,88,.08)}.school-search-hero input,.school-search-hero select{min-width:0;padding:0 15px;border:0;border-right:1px solid #e4edeb;outline:0;color:#35595d;background:#fff}.school-search-hero button{border:0;border-radius:10px;color:#fff;background:#16947c;font-weight:700;cursor:pointer}
.school-live-search{width:min(760px,100%);height:56px;margin:24px auto 0;padding:5px;border:1px solid #cfe2dd;border-radius:14px;background:#fff;box-shadow:0 12px 30px rgba(34,102,88,.08)}.school-live-search input{width:100%;height:100%;padding:0 16px;border:0;outline:0;color:#35595d;background:transparent;font-size:14px}.selected-filter-tags{width:min(760px,100%);min-height:0;margin:10px auto 0;display:flex;justify-content:center;align-items:center;gap:7px;flex-wrap:wrap}.tag-caption{color:#72898b;font-size:11px}.selected-filter-tags button{padding:6px 9px;border:1px solid rgba(255,255,255,.75);border-radius:99px;color:#176f62;background:rgba(255,255,255,.86);font-size:11px;cursor:pointer}.selected-filter-tags button i{margin-left:4px;font-style:normal;font-size:14px}.selected-filter-tags .clear-filter-tags{color:#8b6668;background:rgba(255,255,255,.62)}
.school-results-wrap{width:min(1040px,calc(100% - 40px));margin:28px auto 55px;padding:28px;border:1px solid #e0ece8;border-radius:20px;background:#fff}.school-result-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.school-result-head h2{margin:0;color:#1c4248;font-size:24px}.school-result-head p{margin:5px 0 0;color:#839496;font-size:12px}.school-result-head a{color:#168b76;text-decoration:none;font-size:12px}.school-search-results .school-card{padding:18px}.pagination{display:flex;justify-content:center;gap:7px;margin-top:24px}.pagination button{min-width:38px;height:38px;padding:0 10px;border:1px solid #d9e8e4;border-radius:9px;color:#4c6b6e;background:#fff;cursor:pointer}.pagination button:hover,.pagination button.active{color:#fff;border-color:#17937b;background:#17937b}.pagination button:disabled{opacity:.4;cursor:not-allowed}
.school-filter-panel{margin-bottom:25px;padding:20px 22px;border:1px solid #e0ece8;border-radius:15px;background:#fbfdfc}.school-filter-panel>h2{margin:0 0 14px;color:#23474c;font-size:20px}.filter-row{display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:start;padding:9px 0}.filter-row+ .filter-row{border-top:1px solid #edf2f1}.filter-row>b{padding-top:7px;color:#819395;font-size:12px}.filter-row>div{display:flex;gap:5px;flex-wrap:wrap}.filter-row button{padding:7px 11px;border:0;border-radius:8px;color:#405d61;background:transparent;font-size:12px;cursor:pointer}.filter-row button:hover{background:#edf7f4}.filter-row button.active{color:#fff;background:#16947c}
.school-detail-page{padding:35px max(6vw,25px) 65px}.school-detail-loading{min-height:400px;display:grid;place-items:center;color:#708789}.school-detail-shell{width:min(1120px,100%);margin:auto}.school-breadcrumb{margin-bottom:16px;color:#829597;font-size:12px}.school-breadcrumb a{color:#178b76;text-decoration:none}.school-profile{display:grid;grid-template-columns:100px 1fr;gap:24px;padding:30px;border:1px solid #dceae6;border-radius:22px;background:linear-gradient(135deg,#fff,#f2faf7);box-shadow:0 12px 35px rgba(34,102,88,.06)}.school-profile .school-emblem{width:94px;height:94px;font-size:30px}.school-profile h1{font-size:30px;margin:2px 0 11px}.school-profile-tags{display:flex;gap:8px;flex-wrap:wrap}.school-profile p{margin:12px 0 0;color:#708689;font-size:13px}.school-detail-grid{display:grid;grid-template-columns:1fr 300px;gap:20px;margin-top:20px}.school-detail-main{min-width:0;display:flex;flex-direction:column;gap:20px}.school-detail-card{padding:25px;border:1px solid #e0ebe8;border-radius:18px;background:#fff}.school-detail-card h2{margin:0 0 18px;color:#1c4248;font-size:20px}.school-description{color:#526d71;font-size:13px;line-height:2;white-space:pre-wrap}.school-score-table-wrap{overflow-x:auto;border:1px solid #dfe9e7;border-radius:12px}.school-score-table{width:100%;border-collapse:collapse;min-width:430px}.school-score-table th,.school-score-table td{padding:14px 16px;border-bottom:1px solid #e5eeec;text-align:center;font-size:13px}.school-score-table thead th{color:#587477;background:#f2f8f6;font-size:12px}.school-score-table tbody th{color:#234b50;background:#fafcfb}.school-score-table tbody td{color:#36575b}.school-score-table tbody tr:last-child th,.school-score-table tbody tr:last-child td{border-bottom:0}.school-score-note{margin:11px 2px 0;color:#8a9b9c;font-size:11px}.school-facts{display:grid;gap:12px}.school-fact{padding-bottom:11px;border-bottom:1px solid #edf2f1}.school-fact:last-child{border:0}.school-fact span{display:block;color:#8a9b9c;font-size:11px}.school-fact b,.school-fact a{display:block;margin-top:4px;color:#36575b;font-size:13px;text-decoration:none;word-break:break-all}.school-map-wrap{position:relative;height:220px;margin-top:18px;overflow:hidden;border:1px solid #dfe9e7;border-radius:14px;background:#edf3f2;transition:.2s}.school-map{width:100%;height:100%}.school-map-actions{position:absolute;z-index:8;top:9px;left:9px;display:flex;gap:6px}.school-map-actions button{padding:7px 9px;border:1px solid rgba(34,75,73,.16);border-radius:7px;color:#315c5d;background:rgba(255,255,255,.94);box-shadow:0 2px 8px rgba(20,55,54,.12);font-size:11px;cursor:pointer}.school-map-actions button:hover{color:#147e70;background:#fff}.school-map-wrap.is-expanded{position:fixed;z-index:200;inset:24px;width:auto;height:auto;margin:0;border:6px solid #fff;border-radius:18px;box-shadow:0 0 0 9999px rgba(7,18,25,.72),0 20px 60px rgba(0,0,0,.35)}body.school-map-open{overflow:hidden}.school-map-status{position:absolute;z-index:10;inset:0;display:grid;place-items:center;color:#5c7a7d;background:linear-gradient(135deg,#e8f4f2,#edf2f5);font-size:12px;text-align:center}.school-map-status[hidden]{display:none}.school-map-label{display:block;padding:6px 9px;border:1px solid #d5e4e0;border-radius:7px;color:#234b50;background:rgba(255,255,255,.96);box-shadow:0 4px 12px rgba(24,72,63,.13);font-size:11px;line-height:1.35;white-space:nowrap}.amap-marker-label{width:max-content!important;border:0!important;background:transparent!important}
@media(max-width:720px){.school-search-hero{padding:38px 18px}.school-search-hero h1{font-size:31px}.school-live-search{height:52px}.school-results-wrap{width:calc(100% - 24px);padding:18px}.school-filter-panel{padding:16px 12px}.filter-row{grid-template-columns:1fr}.filter-row>b{padding:0}.school-result-head{align-items:flex-start;gap:12px}.school-profile{grid-template-columns:1fr;text-align:center}.school-profile .school-emblem{margin:auto}.school-profile-tags{justify-content:center}.school-detail-grid{grid-template-columns:1fr}.school-detail-page{padding:20px 12px 45px}.school-map-wrap.is-expanded{inset:10px;border-width:4px}.school-map-actions{top:7px;left:7px}.school-map-actions button{padding:7px}}

/* 高中学校库：与初升高页面保持深海蓝视觉体系。 */
body[data-school-level="senior"] .school-search-page{background:#f3f7fa}
body[data-school-level="senior"] .senior-search-hero{background:radial-gradient(circle at 76% 18%,rgba(135,204,239,.4),transparent 25%),linear-gradient(135deg,#062d4e,#075b87 65%,#8ccce9);color:#fff}
body[data-school-level="senior"] .senior-search-hero>span{color:#a8ddf4}
body[data-school-level="senior"] .senior-search-hero h1{color:#fff}
body[data-school-level="senior"] .senior-search-hero p{color:#cce4ee}
body[data-school-level="senior"] .school-live-search{border-color:rgba(255,255,255,.5);box-shadow:0 13px 32px rgba(4,42,70,.2)}
body[data-school-level="senior"] .selected-filter-tags button{color:#075a86}
body[data-school-level="senior"] .school-filter-panel{border-color:#d9e7ee;background:#f8fbfc}
body[data-school-level="senior"] .school-filter-panel>h2,body[data-school-level="senior"] .school-result-head h2{color:#123d5a}
body[data-school-level="senior"] .filter-row button:hover{color:#075a86;background:#e7f3f8}
body[data-school-level="senior"] .filter-row button.active{color:#fff;background:#0879aa}
body[data-school-level="senior"] .school-card:hover{border-color:#75b9d8;background:#f6fbfd}
body[data-school-level="senior"] .school-emblem{border-color:#c9e1ec;color:#0875a8;background:linear-gradient(145deg,#e6f4fa,#f4f8fa)}
body[data-school-level="senior"] .school-tag{color:#08729f;background:#e7f3f8}
body[data-school-level="senior"] .school-tag.orange{color:#536f80;background:#e9eef2}
body[data-school-level="senior"] .school-result-head a{color:#0875a8}
body[data-school-level="senior"] .pagination button:hover,body[data-school-level="senior"] .pagination button.active{border-color:#0879aa;background:#0879aa;color:#fff}

/* 学校详情页根据初、高中自动切换绿色/蓝色主题。 */
body[data-school-level="senior"] .school-detail-page{background:#f3f7fa}
body[data-school-level="senior"] .school-breadcrumb,
body[data-school-level="senior"] .school-breadcrumb a{color:#4e839d}
body[data-school-level="senior"] .school-profile{border-color:#d6e5ed;background:linear-gradient(135deg,#fff,#eef7fb);box-shadow:0 12px 35px rgba(19,79,113,.07)}
body[data-school-level="senior"] .school-detail-card{border-color:#dbe7ed}
body[data-school-level="senior"] .school-detail-card h2{color:#123d5a}
body[data-school-level="senior"] .school-description,
body[data-school-level="senior"] .school-fact b,
body[data-school-level="senior"] .school-fact a{color:#3f6477}
body[data-school-level="senior"] .school-score-table-wrap{border-color:#d8e6ed}
body[data-school-level="senior"] .school-score-table thead th{color:#52758a;background:#eef6fa}
body[data-school-level="senior"] .school-score-table tbody th{color:#174d6b;background:#f8fbfd}
