
    #nz-campus-atlas{color:var(--foreground)}
    #nz-campus-atlas .atlas-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:12px}
    #nz-campus-atlas .atlas-head h2{margin:0}
    #nz-campus-atlas .atlas-meta{color:var(--muted-foreground)}
    #nz-campus-atlas .atlas-controls{display:flex;gap:8px;flex-wrap:wrap;align-items:end;margin-bottom:8px}
    #nz-campus-atlas .atlas-controls label{min-width:170px;flex:1}
    #nz-campus-atlas .atlas-controls select{width:100%}
    #nz-campus-atlas .atlas-tabs{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
    #nz-campus-atlas .atlas-map{width:100%;height:590px;display:block}
    #nz-campus-atlas .atlas-district{fill:var(--muted);stroke:var(--background);stroke-width:.5}
    #nz-campus-atlas .atlas-coast{fill:none;stroke:var(--border);stroke-width:.55}
    #nz-campus-atlas .atlas-point circle.dot{stroke:var(--background);stroke-width:1.6}
    #nz-campus-atlas .atlas-point.uni circle.dot{fill:var(--viz-series-1)}
    #nz-campus-atlas .atlas-point.poly circle.dot{fill:var(--viz-series-2)}
    #nz-campus-atlas .atlas-point.both circle.dot{fill:var(--viz-series-3)}
    #nz-campus-atlas .atlas-point.selected circle.dot{stroke:var(--foreground);stroke-width:2.5}
    #nz-campus-atlas .atlas-point .hit{fill:transparent}
    #nz-campus-atlas .atlas-point text{fill:var(--foreground);font-size:11px;font-weight:500;paint-order:stroke;stroke:var(--background);stroke-width:2.5px;stroke-linejoin:round;pointer-events:none}
    #nz-campus-atlas .atlas-island-label{font-size:11px;fill:var(--muted-foreground);letter-spacing:.08em}
    #nz-campus-atlas .atlas-legend{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted-foreground);margin:2px 0 14px}
    #nz-campus-atlas .atlas-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}
    #nz-campus-atlas .atlas-legend .u{background:var(--viz-series-1)}
    #nz-campus-atlas .atlas-legend .p{background:var(--viz-series-2)}
    #nz-campus-atlas .atlas-legend .b{background:var(--viz-series-3)}
    #nz-campus-atlas .atlas-detail{margin-top:7px}
    #nz-campus-atlas .atlas-detail h3{margin:0 0 5px}
    #nz-campus-atlas .atlas-sub{color:var(--muted-foreground);margin:0 0 12px}
    #nz-campus-atlas .atlas-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 22px}
    #nz-campus-atlas .atlas-school{border-top:1px solid var(--border);padding-top:9px;min-width:0}
    #nz-campus-atlas .atlas-school strong{font-weight:500}
    #nz-campus-atlas .atlas-school .kind{color:var(--muted-foreground);font-size:12px;margin-left:5px}
    #nz-campus-atlas .atlas-school p{margin:4px 0;color:var(--muted-foreground)}
    #nz-campus-atlas .atlas-school ul{margin:5px 0 0;padding-left:18px}
    #nz-campus-atlas .atlas-school li{margin:3px 0}
    #nz-campus-atlas .atlas-school a{color:var(--primary)}
    #nz-campus-atlas .atlas-note{margin-top:13px;color:var(--muted-foreground)}
    #nz-campus-atlas .atlas-panel{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:14px;align-items:start}
    #nz-campus-atlas .atlas-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;font-size:13px}
    #nz-campus-atlas .atlas-reset{border:0;background:none;color:var(--primary);cursor:pointer;font-size:12px}
    #nz-campus-atlas .atlas-school-picker{margin-top:44px;padding:15px;background:var(--background);border:1px solid var(--border);border-radius:14px}
    #nz-campus-atlas .atlas-picker-head h2{font-size:16px;margin:0 0 4px}
    #nz-campus-atlas .atlas-picker-head p,#nz-campus-atlas .atlas-picker-tip{font-size:12px;color:var(--muted-foreground);margin:0 0 10px}
    #nz-campus-atlas .atlas-group{border-top:1px solid var(--border)}
    #nz-campus-atlas .atlas-group summary{display:flex;gap:8px;cursor:pointer;padding:11px 0;font-weight:700;list-style:none}
    #nz-campus-atlas .atlas-group summary::-webkit-details-marker{display:none}
    #nz-campus-atlas .atlas-group summary::after{content:'+';margin-left:auto}
    #nz-campus-atlas .atlas-group[open] summary::after{content:'−'}
    #nz-campus-atlas .atlas-group small{font-size:11px;color:var(--muted-foreground);font-weight:400}
    #nz-campus-atlas .atlas-school-buttons{display:grid;gap:3px;padding-bottom:10px}
    #nz-campus-atlas .atlas-school-button{width:100%;text-align:left;border:0;border-radius:8px;background:none;padding:8px;cursor:pointer;color:var(--foreground);font-size:13px}
    #nz-campus-atlas .atlas-school-button:hover,#nz-campus-atlas .atlas-school-button[aria-pressed="true"]{background:var(--muted);color:var(--primary)}
    #nz-campus-atlas .atlas-school-button small{display:block}
    #nz-campus-atlas .atlas-point.muted{opacity:.25}
    #nz-campus-atlas .atlas-point.focus .halo{fill:none;stroke:var(--viz-series-1);stroke-width:2.4}
    #nz-campus-atlas .atlas-point.focus circle.dot{fill:var(--viz-series-1);stroke:var(--background);stroke-width:2.5}
    @media(max-width:700px){#nz-campus-atlas .atlas-panel{grid-template-columns:1fr}#nz-campus-atlas .atlas-school-picker{grid-row:1;margin-top:0}}
    @media(max-width:540px){#nz-campus-atlas .atlas-map{height:510px}#nz-campus-atlas .atlas-list{grid-template-columns:1fr}}


#kc-campus-page{--brand-50:#FDF1EC;--brand-100:#FBDDCE;--brand-200:#F6B99A;--brand-600:#C2410C;--brand-700:#9A3412;--foreground:#1C1B18;--muted:#F0EFEC;--muted-foreground:#6B6760;--border:#E6E4E0;--background:#fff;--primary:#9A3412;--viz-series-1:#C2410C;--viz-series-2:#0B6A85;--viz-series-3:#17664F;color:var(--foreground);font:16px/1.7 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;padding-top:10px;padding-bottom:44px}
#kc-campus-page,#kc-campus-page *{box-sizing:border-box}
#kc-campus-page .kc-col-main{min-width:0}
#kc-campus-page .breadcrumb{display:flex;gap:8px;align-items:center;padding-top:14px;color:var(--muted-foreground);font-size:13px}
#kc-campus-page .breadcrumb a:hover{color:var(--brand-700)}
#kc-campus-page .page-hero{padding:13px 0 18px;border-bottom:1px solid var(--border)}
#kc-campus-page .eyebrow{display:block;color:var(--brand-700);font-size:11px;font-weight:700;letter-spacing:.12em;margin-bottom:3px}
#kc-campus-page .page-hero h1{font-size:clamp(26px,3vw,34px);line-height:1.24;letter-spacing:-.025em;margin:0 0 5px;font-weight:700}
#kc-campus-page .page-hero p{max-width:850px;color:var(--muted-foreground);margin:0;font-size:14px;line-height:1.55}
#kc-campus-page .hero-facts{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px;color:var(--muted-foreground);font-size:12px}
#kc-campus-page .hero-facts b{font-size:17px;color:var(--brand-700);margin-right:4px}
#kc-campus-page .atlas-wrap{padding-top:18px}
#kc-campus-page .text-small{font-size:13px}
#kc-campus-page .text-muted{color:var(--muted-foreground)}
#kc-campus-page .atlas-qs{display:inline-flex;align-items:baseline;gap:7px;padding:6px 11px;border-radius:9px;background:var(--brand-50);color:var(--brand-700);font-size:13px;font-weight:600}
#kc-campus-page .atlas-qs strong{font-size:21px;line-height:1.2}
#kc-campus-page .atlas-major-list{display:flex;flex-wrap:wrap;gap:7px;list-style:none!important;margin:8px 0 16px!important;padding:0!important}
#kc-campus-page .atlas-major-list li{padding:5px 9px;border-radius:7px;background:#F5F3EF;color:#4F4941;font-size:12px}
#kc-campus-page .directory-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;font-size:12px;font-weight:600;color:var(--brand-700)}
#kc-campus-page .directory-actions a:hover{text-decoration:underline}
#kc-campus-page button,#kc-campus-page select{font:inherit}
#kc-campus-page :focus-visible{outline:2px solid var(--brand-700);outline-offset:3px}

#nz-campus-atlas{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"panel" "detail" "note";row-gap:12px;align-items:start}
#nz-campus-atlas .atlas-head{display:none}
#nz-campus-atlas .atlas-panel{grid-area:panel;display:grid;grid-template-columns:minmax(0,1fr) 280px;grid-template-areas:"map picker";gap:14px;align-items:start}
#nz-campus-atlas .atlas-map-column{grid-area:map;min-width:0}
#nz-campus-atlas .atlas-map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:45px;padding:0 2px}
#nz-campus-atlas .atlas-map-status{font-size:13px;line-height:1.3}
#nz-campus-atlas .atlas-reset{border:0;background:none;color:var(--brand-700);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}
#nz-campus-atlas .atlas-reset:hover{text-decoration:underline}
#nz-campus-atlas .atlas-map{height:540px;width:100%;background:#F7F7F5;border:1px solid var(--border);border-radius:16px}
#nz-campus-atlas .atlas-school-picker{grid-area:picker;min-width:0;max-height:550px;overflow-y:auto;scrollbar-width:thin;margin-top:45px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:17px}
#nz-campus-atlas .atlas-picker-head h2{font-size:16px;line-height:1.3;margin:0 0 4px}
#nz-campus-atlas .atlas-picker-head p,#nz-campus-atlas .atlas-picker-tip{font-size:12px;line-height:1.55;color:var(--muted-foreground);margin:0 0 13px}
#nz-campus-atlas .atlas-picker-tip{margin:15px 2px 0}
#nz-campus-atlas .atlas-group{border-top:1px solid var(--border)}
#nz-campus-atlas .atlas-group:last-of-type{border-bottom:1px solid var(--border)}
#nz-campus-atlas .atlas-group summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;padding:13px 2px;font-size:14px;font-weight:700}
#nz-campus-atlas .atlas-group summary::-webkit-details-marker{display:none}
#nz-campus-atlas .atlas-group summary::after{content:'＋';margin-left:auto;color:var(--brand-700);font-size:18px;font-weight:400;line-height:1}
#nz-campus-atlas .atlas-group[open] summary::after{content:'−'}
#nz-campus-atlas .atlas-group small{font-size:11px;color:var(--muted-foreground);font-weight:400;white-space:nowrap}
#nz-campus-atlas .atlas-school-buttons{display:grid;gap:4px;padding-bottom:12px}
#nz-campus-atlas .atlas-school-button{display:block;width:100%;text-align:left;border:0;border-radius:9px;background:none;padding:8px 10px;color:var(--foreground);font-size:13px;line-height:1.3;cursor:pointer}
#nz-campus-atlas .atlas-school-button:hover{background:var(--brand-50);color:var(--brand-700)}
#nz-campus-atlas .atlas-school-button[aria-pressed="true"]{background:var(--brand-50);color:var(--brand-700);font-weight:700}
#nz-campus-atlas .atlas-school-button small{display:block;margin-top:2px;font-size:11px;color:var(--muted-foreground);font-weight:400}
#nz-campus-atlas .atlas-district{fill:#E2E5DE;stroke:#F7F7F5;stroke-width:.55}
#nz-campus-atlas .atlas-point circle.dot{stroke:#fff;stroke-width:1.7}
#nz-campus-atlas .atlas-point.uni circle.dot{fill:var(--viz-series-1)}
#nz-campus-atlas .atlas-point.poly circle.dot{fill:var(--viz-series-2)}
#nz-campus-atlas .atlas-point.both circle.dot{fill:var(--viz-series-3)}
#nz-campus-atlas .atlas-point text{fill:#1C1B18;stroke:#F7F7F5;stroke-width:3}
#nz-campus-atlas .atlas-point.muted{opacity:.23}
#nz-campus-atlas .atlas-point.focus .halo{fill:none;stroke:var(--brand-600);stroke-width:2.4}
#nz-campus-atlas .atlas-point.focus circle.dot{fill:var(--brand-600);stroke:#fff;stroke-width:2.5}
#nz-campus-atlas .atlas-legend{margin:7px 0 0;gap:10px;padding:0 2px;align-self:start;font-size:11px}
#nz-campus-atlas .atlas-detail{grid-area:detail;margin:0;background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px;min-height:120px}
#nz-campus-atlas .atlas-detail h3{font-size:22px;line-height:1.3}
#nz-campus-atlas .atlas-sub{font-size:13px;margin:0 0 17px}
#nz-campus-atlas .atlas-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#nz-campus-atlas .atlas-school{border-top:1px solid var(--border);padding-top:12px}
#nz-campus-atlas .atlas-school strong{font-size:16px;font-weight:700}
#nz-campus-atlas .atlas-school p{color:var(--muted-foreground)}
#nz-campus-atlas .atlas-school a{color:var(--brand-700);font-weight:600}
#nz-campus-atlas .atlas-school a:hover{text-decoration:underline}
#nz-campus-atlas .atlas-intro{font-size:14px;color:var(--muted-foreground);line-height:1.75;margin:14px 0 20px}
#nz-campus-atlas .atlas-section-label{font-size:13px;color:var(--brand-700);font-weight:700;letter-spacing:.03em;margin:0 0 7px;padding-top:13px;border-top:1px solid var(--border)}
#nz-campus-atlas .atlas-campus-list{list-style:none;padding:0;margin:0}
#nz-campus-atlas .atlas-campus-list li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border);font-size:13px}
#nz-campus-atlas .atlas-campus-list strong{font-weight:600;line-height:1.5}
#nz-campus-atlas .atlas-campus-list span{flex:none;color:var(--muted-foreground);white-space:nowrap}
#nz-campus-atlas .atlas-source{display:inline-block;margin-top:16px;color:var(--brand-700);font-size:13px;font-weight:600}
#nz-campus-atlas .atlas-source:hover{text-decoration:underline}
#nz-campus-atlas .atlas-note{grid-area:note;border-top:1px solid var(--border);padding-top:18px;color:var(--muted-foreground);line-height:1.7}
#nz-campus-atlas .atlas-note a{color:var(--brand-700);text-decoration:underline;text-underline-offset:2px}

@media(max-width:700px){#nz-campus-atlas .atlas-panel{grid-template-columns:minmax(0,1fr);grid-template-areas:"picker" "map"}#nz-campus-atlas .atlas-school-picker{margin-top:0;max-height:none;overflow:visible}#nz-campus-atlas .atlas-map{height:505px}}
@media(max-width:580px){#kc-campus-page .page-hero{padding:18px 0 23px}#kc-campus-page .atlas-wrap{padding-top:16px}#nz-campus-atlas .atlas-detail{padding:17px}#nz-campus-atlas .atlas-list{grid-template-columns:1fr}#nz-campus-atlas .atlas-legend{gap:8px 14px}}
