.navy-yard-dialog{width:min(1440px,calc(100vw - 32px));border-radius:14px}
.navy-yard-dialog [hidden]{display:none!important}
.navy-yard-dialog .dialog-bar{gap:20px;padding:16px 22px}
.navy-yard-dialog .dialog-bar h2{font-size:24px;white-space:nowrap}
.campus-actions{gap:10px;flex-wrap:wrap}
.campus-actions .outline-button{font-size:13px;min-height:36px}
.campus-view-switch{display:flex;background:#10181e;border:1px solid #3e4d59;border-radius:7px;padding:3px;gap:3px}
.campus-view-switch button{border:0;border-radius:4px;padding:7px 12px;background:transparent;color:#a7b8c3;font:inherit;font-size:13px;cursor:pointer}
.campus-view-switch button[aria-pressed=true]{background:#d7b474;color:#1c211f}
#navy-yard-fly[aria-pressed=true]{background:#d7b474;color:#192125;border-color:#d7b474}
.navy-yard-layout{grid-template-columns:minmax(0,1fr) 240px;padding:18px 22px 0;gap:16px}
#navy-3d-shell{height:min(68vh,680px);min-height:360px;position:relative;background:#17272e}
#navy-3d-map{position:absolute;inset:0;outline:none}
#navy-3d-map:focus-visible{outline:2px solid #ebca8b;outline-offset:-3px}
#navy-3d-map .maplibregl-canvas{outline:none}
.navy-yard-buildings{max-height:min(68vh,680px)}
.campus-building-card{transition:border-color .2s,background .2s}
.campus-building-card.is-active{border-color:#efc982;background:#343125;box-shadow:inset 3px 0 #e6be77}
.campus-card-actions{display:flex;gap:18px;align-items:center;margin-top:8px}
.campus-locate{font:inherit;font-size:13px;padding:4px 9px;border:1px solid #67747d;border-radius:4px;color:#dbe5e8;background:#29353d;cursor:pointer}
.campus-locate:hover,.campus-locate:focus-visible{background:#485d65;color:#fff}
.campus-details{font-size:13px;padding:4px 0}
.campus-work-link{font-size:15px;line-height:1.35}
.campus-building-label,.campus-building-main small{font-size:12px}
.navy-3d-status{position:absolute;top:18px;left:18px;max-width:calc(100% - 86px);background:#111b24ed;border:1px solid #4b606e;border-radius:7px;padding:12px 15px;color:#edf0ee;font-size:14px;box-shadow:0 5px 20px #0005;pointer-events:none;z-index:2}
.navy-3d-selection{position:absolute;bottom:38px;left:18px;min-width:210px;max-width:min(360px,calc(100% - 112px));background:#111c25f2;border:1px solid #b29a68;border-radius:9px;padding:16px 19px;color:#eaf1ef;box-shadow:0 15px 40px #0007;z-index:2}
.navy-3d-selection .selection-building{display:block;font-size:12px;color:#d2b780;margin-bottom:7px}
.navy-3d-selection h3{margin:0;font-size:21px;line-height:1.2;font-weight:500;color:#f3eee0}
.navy-3d-selection h3 a{color:inherit;text-decoration:none}
.navy-3d-selection h3 a:hover{text-decoration:underline}
.navy-3d-selection p{font-size:12px;line-height:1.55;margin:8px 0 0;color:#aebdc4}
.navy-3d-selection .selection-actions{display:flex;gap:18px;margin-top:13px;align-items:center}
.navy-3d-selection .selection-actions a,.navy-3d-selection .selection-actions button{font:inherit;font-size:14px;background:none;border:0;color:#d8c08f;padding:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.navy-3d-steer{position:absolute;right:10px;bottom:43px;display:grid;gap:5px;z-index:2}
.navy-3d-steer button{min-width:40px;min-height:39px;border:1px solid #657985;border-radius:6px;background:#182631ee;color:#dce6e8;cursor:pointer;font:inherit;font-size:17px}
.navy-3d-steer button[data-camera=tilt]{font-size:12px}
.navy-3d-steer button:hover{background:#3d535d}
.navy-building-pin{min-width:36px;height:30px;border:1px solid #b1cbd0;border-radius:6px;background:#294854e8;color:#e5f5f3;font:600 12px system-ui;box-shadow:0 3px 10px #0008;cursor:pointer;position:relative}
.navy-building-pin.benchmark{background:#9b7945;border-color:#e6c58a;color:#fff3d9}
.navy-building-pin.is-active{background:#e3bf79;border-color:#fff1c7;color:#152029;box-shadow:0 0 0 4px #e6c88b3a,0 5px 20px #0008}
.navy-building-pin:focus-visible{outline:3px solid #fff;outline-offset:3px}
.navy-yard-footer{font-size:12px;padding:15px 22px 19px;flex-wrap:wrap;gap:8px 20px}
#navy-3d-map .maplibregl-ctrl-attrib{background:#172630e8;color:#abbcc4;font-size:11px}
#navy-3d-map .maplibregl-ctrl-attrib a{color:#bbd0d9}
#navy-3d-map .maplibregl-ctrl-group{box-shadow:0 3px 12px #0005}
@media(max-width:900px){.navy-yard-dialog .dialog-bar{flex-wrap:wrap;gap:12px}.navy-yard-dialog .dialog-bar h2{font-size:21px}.campus-actions{margin-left:auto}.navy-yard-layout{grid-template-columns:minmax(0,1fr) 210px;padding:12px 14px 0;gap:12px}.campus-actions .outline-button{padding:7px 10px}.navy-yard-buildings{max-height:min(68vh,680px);display:block}.campus-building-card{margin-bottom:9px}}
@media(max-width:680px){.navy-yard-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px)}.navy-yard-dialog .dialog-bar{padding:13px}.navy-yard-dialog .dialog-bar h2{font-size:20px;width:100%}.campus-actions{width:100%;justify-content:space-between;gap:6px}.campus-view-switch button{padding:7px 10px}.campus-actions .icon-button{position:absolute;right:10px;top:10px}.navy-yard-layout{grid-template-columns:1fr;padding:12px 10px 0}#navy-3d-shell{height:54dvh;min-height:330px;max-height:520px}.navy-yard-buildings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;gap:8px;padding:0}.campus-building-card{margin:0;padding:11px 9px}.campus-work-link{font-size:14px}.navy-3d-selection{left:10px;bottom:34px;padding:12px;min-width:0;max-width:calc(100% - 70px)}.navy-3d-selection h3{font-size:18px}.navy-3d-selection p{display:none}.navy-yard-footer{padding:14px;font-size:12px}.navy-3d-selection .selection-actions{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.campus-building-card{transition:none}}
