:root{--bg-top: #d8ebff;--bg-mid: #eef5fc;--bg-bot: #f7fafc;--ink: #163a6b;--ink-soft: #5a7394;--card-deep: #1a4f9c;--card-deep-2: #163f7d;--accent: #ff9f28;--accent-press: #f08a12;--white: #ffffff;--line: #e4edf7;--public: #2f7fd6;--private: #d98a4a;--ok: #1f9d5a;--warn: #c45c1a;--radius: 18px;--shadow: 0 10px 28px rgba(22, 58, 107, .12);--font: "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--font);color:var(--ink);background:linear-gradient(180deg,var(--bg-top) 0%,var(--bg-mid) 38%,var(--bg-bot) 100%);-webkit-font-smoothing:antialiased}body{background-image:radial-gradient(ellipse 80% 40% at 50% -10%,rgba(255,255,255,.75),transparent 60%),linear-gradient(180deg,var(--bg-top) 0%,var(--bg-mid) 38%,var(--bg-bot) 100%)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.28;background-image:linear-gradient(rgba(255,255,255,.55) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.55) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 70%);mask-image:linear-gradient(180deg,#000 0%,transparent 70%)}.app{position:relative;width:min(100%,430px);margin:0 auto;padding:28px 16px 36px;min-height:100dvh}.hero{text-align:center;margin-bottom:18px;animation:rise .55s ease both}.hero-title{margin:0;font-size:clamp(34px,9vw,42px);font-weight:900;letter-spacing:.04em;color:#1a5db8;text-shadow:0 2px 0 rgba(255,255,255,.65);line-height:1.15}.hero-sub{margin:10px 0 0;font-size:13px;font-weight:500;color:var(--ink-soft);letter-spacing:.08em}.query-card{position:relative;background:linear-gradient(165deg,var(--card-deep) 0%,var(--card-deep-2) 100%);border-radius:22px;padding:22px 16px 18px;box-shadow:var(--shadow);color:var(--white);animation:rise .65s ease .05s both}.query-card__head{text-align:center;margin-bottom:16px}.query-card__badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;background:#ffffff24;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:4px 10px;margin-bottom:10px}.query-card__badge:before{content:"";width:8px;height:8px;border-radius:2px;background:#7dffb2;box-shadow:0 0 0 2px #7dffb240}.query-card__title{margin:0;font-size:20px;font-weight:700;letter-spacing:.06em}.field{display:block;margin-bottom:12px}.field__label{display:block;font-size:13px;font-weight:500;opacity:.92;margin-bottom:6px}.field__control{background:var(--white);border-radius:12px;overflow:hidden}.field__control input{width:100%;border:0;outline:0;background:transparent;padding:13px 14px;font:inherit;font-size:15px;color:var(--ink)}.field__control input::placeholder{color:#9aadc4}.btn-search{width:100%;margin-top:6px;border:0;border-radius:999px;padding:14px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(180deg,#ffb84a 0%,var(--accent) 100%);color:#fff;font:inherit;font-size:17px;font-weight:700;letter-spacing:.08em;box-shadow:0 8px 18px #ff9f2861;cursor:pointer;transition:transform .15s ease,filter .15s ease}.btn-search svg{width:18px;height:18px}.btn-search:active{transform:scale(.98);filter:brightness(.96);background:var(--accent-press)}.summary{margin-top:16px;background:var(--white);border-radius:var(--radius);padding:16px 10px 12px;box-shadow:0 6px 18px #163a6b14;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;animation:rise .5s ease both}.summary__item{text-align:center;padding:4px 2px}.summary__icon{width:28px;height:28px;margin:0 auto 6px;border-radius:8px;background:#edf4ff center / 16px no-repeat}.summary__icon--plan{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f7fd6' stroke-width='2'%3E%3Cpath d='M7 3h8l4 4v14H7z'/%3E%3Cpath d='M15 3v4h4'/%3E%3Cpath d='M9 12h6M9 16h4'/%3E%3C/svg%3E")}.summary__icon--behind{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d98a4a' stroke-width='2'%3E%3Ccircle cx='12' cy='8' r='3'/%3E%3Cpath d='M5 20c1.5-3.5 4-5 7-5s5.5 1.5 7 5'/%3E%3C/svg%3E")}.summary__icon--ahead{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231f9d5a' stroke-width='2'%3E%3Cpath d='M12 3l2.2 4.5L19 9l-3.5 3.4.8 4.8L12 15.2 7.7 17.2l.8-4.8L5 9l4.8-1.5z'/%3E%3C/svg%3E")}.summary__label{font-size:12px;color:var(--ink-soft);margin-bottom:4px}.summary__value{font-size:20px;font-weight:700;color:var(--ink);line-height:1.2}.summary__value--status{font-size:16px;color:var(--ok)}.summary__value--warn{color:var(--warn)}.summary__note{grid-column:1 / -1;margin:10px 0 0;text-align:center;font-size:12px;color:#d14a4a}.results{margin-top:14px;display:flex;flex-direction:column;gap:12px}.school-card{background:var(--white);border-radius:var(--radius);padding:14px 12px 12px;box-shadow:0 6px 18px #163a6b14;animation:rise .45s ease both}.school-card--featured{outline:2px solid rgba(255,159,40,.45);box-shadow:0 8px 22px #ff9f2829}.school-card__head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.school-card__icon{width:22px;height:22px;flex:0 0 auto;border-radius:6px;background:#e8f1ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f7fd6' stroke-width='2'%3E%3Cpath d='M3 21h18M5 21V8l7-4 7 4v13M9 21v-6h6v6'/%3E%3C/svg%3E") center / 14px no-repeat}.school-card__name{flex:1;font-size:16px;font-weight:700;line-height:1.25}.school-card__count{flex:0 0 auto;font-size:12px;color:var(--ink-soft);background:#f1f5fa;border-radius:999px;padding:4px 10px}.school-card__meta{display:flex;flex-wrap:wrap;gap:6px 10px;margin:-2px 0 10px;font-size:12px;color:var(--ink-soft)}.school-card__tag{display:inline-flex;align-items:center;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.school-card__tag--featured{background:#fff3e0;color:#c46a10}.school-card__tag--soft{background:#eef4ff;color:#3d6eb5}.major-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.major-item{background:#f5f8fc;border-radius:12px;padding:10px 10px 9px;min-width:0}.major-item__name{font-size:13px;font-weight:600;line-height:1.35;margin-bottom:8px;word-break:break-all}.major-item__stats{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:11px;color:var(--ink-soft)}.major-item__stat{display:inline-flex;align-items:center;gap:3px}.major-item__stat--plan:before{content:"";width:10px;height:10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e25555'%3E%3Cpath d='M12 2C8 2 5 5.1 5 9c0 5.2 7 13 7 13s7-7.8 7-13c0-3.9-3-7-7-7zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5z'/%3E%3C/svg%3E") center / contain no-repeat}.major-item__stat--fee:before{content:"";width:10px;height:10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e0a12a'%3E%3Cpath d='M12 2C7 2 3.5 5 3.5 9.2c0 2.6 1.4 4.7 3.5 6.1V20l5-2.2 5 2.2v-4.7c2.1-1.4 3.5-3.5 3.5-6.1C20.5 5 17 2 12 2zm0 3.2c2.7 0 4.8 1.6 4.8 3.6S14.7 12.4 12 12.4 7.2 10.8 7.2 8.8 9.3 5.2 12 5.2z'/%3E%3C/svg%3E") center / contain no-repeat}.nature-pill{margin-left:auto;border-radius:999px;padding:2px 7px;font-size:11px;font-weight:600}.nature-pill--公办{background:#e5f0ff;color:var(--public)}.nature-pill--民办{background:#fff0e4;color:var(--private)}.empty{background:var(--white);border-radius:var(--radius);padding:28px 16px;text-align:center;color:var(--ink-soft);font-size:14px;box-shadow:0 6px 18px #163a6b0f}.footer-art{margin-top:22px;display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:8px;padding:8px 4px 0;animation:rise .6s ease .1s both}.footer-art__copy{display:flex;flex-direction:column;gap:14px;padding-left:6px}.footer-art__copy p{margin:0;font-size:22px;font-weight:800;color:#1a5db88c;letter-spacing:.08em;line-height:1;text-shadow:0 1px 0 rgba(255,255,255,.7)}.footer-art__illust{display:flex;justify-content:flex-end}.footer-art__illust svg{width:min(100%,210px);height:auto;filter:drop-shadow(0 10px 14px rgba(47,111,214,.18))}.disclaimer{margin:18px 8px 0;text-align:center;font-size:11px;color:#8ea3bd;line-height:1.5}[hidden]{display:none!important}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(min-width:480px){.app{padding-top:36px}}
