@import url('https://fonts.googleapis.com/css2?family=DM+Sans%3Awght%40400%3B500%3B600%3B700&family=Noto+Sans+TC%3Awght%40400%3B500%3B600%3B700%3B800&display=swap&v=2028091135');
:root{color-scheme:dark;--bg:#101c2b;--panel:#152333;--line:#ffffff12;--text:#edf1f4;--muted:#99a7b5;--accent:#c0e58d;--ink:#1c3326;font-family:'DM Sans','Noto Sans TC',sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}button:disabled{opacity:.4;cursor:default}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button:hover{filter:brightness(1.13)}[hidden]{display:none!important}i[data-icon],.icon{display:inline-flex;width:20px;height:20px;flex-shrink:0}.icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.sidebar{position:absolute;inset:0 auto 0 0;width:288px;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:10;background:var(--bg)}.brand{display:flex;gap:13px;align-items:center;padding:29px 26px}.brand-mark{font:700 25px Georgia,serif;letter-spacing:-1px;min-width:57px;color:var(--accent)}.brand strong{font-size:20px;letter-spacing:3px;font-weight:600}.brand small{display:block;font-size:10px;letter-spacing:1.8px;margin-top:6px;color:var(--muted)}.sidebar-heading{padding:32px 28px 27px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:600;color:var(--accent)}h1{font-size:32px;font-weight:500;line-height:1.55;letter-spacing:1px;margin:12px 0 10px}.sidebar-heading p{font-size:14px;color:var(--muted);margin:0}.overview{display:flex;align-items:center;gap:12px;padding:14px 17px;margin:0 18px;border-radius:8px;text-align:left;font-size:14px}.overview.active{color:var(--accent);background:#c0e58d12}.key{margin-left:auto;font-size:20px;color:#c0e58d80}.list-heading{display:flex;align-items:center;justify-content:space-between;padding:27px 28px 14px}.list-heading h2{font-size:14px;font-weight:500;margin:0}.list-heading>span{font-size:11px;color:var(--muted)}.locations{flex:1;min-height:0;overflow:auto;padding:0 18px 20px;scrollbar-width:thin;scrollbar-color:#344557 transparent}.location{width:100%;display:flex;gap:13px;align-items:center;padding:10px;border-radius:7px;text-align:left;margin:2px 0}.location:hover{background:#ffffff06}.location.selected{background:#c0e58d14}.location .code{display:grid;place-items:center;width:30px;height:32px;border:1px solid #415262;border-radius:6px;font-size:12px;font-weight:600;color:#b2beca}.location.selected .code{border-color:#9dca69;color:var(--accent)}.location .name{font-size:14px}.location .location-arrow{margin-left:auto;color:#627385;font-size:18px}.locations .group-label{font-size:11px;letter-spacing:1px;color:#7f92a3;margin:19px 10px 9px}.sidebar-footer{padding:18px 24px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:8px}.model-badge{font-size:11px;color:#91a0ad}.text-button{display:flex;gap:6px;align-items:center;font-size:12px;color:#9cabb7;padding:0}.text-button .icon{width:14px;height:14px}.workspace{position:absolute;inset:0 0 0 288px}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid var(--line);background:#121e2d}.breadcrumb{display:flex;gap:17px;align-items:center;font-size:14px;color:var(--muted)}.breadcrumb strong{font-weight:500;color:var(--text)}.slash{opacity:.4}.top-actions{display:flex;gap:24px;align-items:center}.location-note{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}.location-note .icon{width:15px;height:15px}.icon-button{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px}.icon-button:hover{background:#ffffff0b}.topbar .icon-button{border:1px solid var(--line)}.menu{display:none}.viewport{position:relative;height:calc(100dvh - 78px);overflow:hidden;background:#182c39}#scene{width:100%;height:100%;display:block;touch-action:none}.scene-heading{position:absolute;top:32px;left:34px;pointer-events:none}.scene-heading .eyebrow{color:#b4c5cd;font-size:10px}.scene-heading h2{margin:8px 0;font-size:28px;letter-spacing:2px;font-weight:500}.scene-heading>span:last-child{font-size:12px;color:#aebec6}.scene-settings{display:flex;position:absolute;top:32px;right:28px;gap:8px}.pill{display:flex;gap:7px;align-items:center;padding:10px 12px;border:1px solid #ffffff16;background:#132532d9;border-radius:8px;font-size:12px;color:#c6d0d6;backdrop-filter:blur(12px)}.pill .icon{width:16px;height:16px}.pill.active{color:var(--accent);border-color:#c0e58d48}.view-tools{position:absolute;right:28px;top:112px;display:flex;flex-direction:column;gap:21px;align-items:center}.compass{width:54px;height:69px;text-align:center}.compass>span{font-size:12px;color:#cad4d7}.compass svg{width:48px;height:48px;display:block}.tool-stack{display:flex;flex-direction:column;padding:4px;background:#112330d9;border:1px solid #ffffff16;border-radius:9px;backdrop-filter:blur(10px)}.tool-stack>span{height:1px;background:var(--line);margin:2px 8px}.tool-stack .icon{width:18px;height:18px}.view-switch{position:absolute;left:34px;bottom:154px;display:flex;gap:3px;padding:4px;border:1px solid #ffffff17;background:#12242edb;border-radius:9px;backdrop-filter:blur(10px)}.view-switch button{display:flex;align-items:center;gap:7px;font-size:12px;padding:11px 14px;border-radius:6px;color:#9eafb9}.view-switch button.active{background:#c0e58d;color:#1c3426}.view-switch .icon{width:16px;height:16px}.tour{position:absolute;bottom:55px;left:34px;right:28px;display:flex;align-items:center;gap:17px;max-width:685px;min-height:78px;padding:17px 20px;border:1px solid #ffffff1c;background:#142631ec;border-radius:12px;backdrop-filter:blur(18px);box-shadow:0 12px 30px #00101925;overflow:hidden}.tour-symbol{display:grid;place-items:center;width:45px;height:45px;color:var(--accent);border:1px solid #c0e58d36;border-radius:50%;flex-shrink:0}.tour-symbol .icon{width:23px;height:23px}.tour-copy{display:flex;flex-direction:column;gap:5px}.tour-copy .eyebrow{font-size:9px;letter-spacing:1.6px;color:#a5b7c1}.tour-copy strong{font-size:16px;font-weight:500}.tour-copy>span:last-child{font-size:11px;color:#9cabb6}.primary-button{display:flex;align-items:center;justify-content:center;gap:9px;padding:12px 17px;border-radius:7px;background:var(--accent);color:#203e29;font-size:13px;font-weight:600;white-space:nowrap}.tour>.primary-button{margin-left:auto}.primary-button .icon{width:16px;height:16px}.tour-controls{display:flex;gap:0;align-items:center;margin-left:auto}.tour-controls .icon-button{width:30px;height:32px}.tour-controls>span{font-size:11px;white-space:nowrap;color:var(--muted)}.tour-progress{position:absolute;bottom:0;left:0;height:2px;background:var(--accent);width:0}.scene-footer{position:absolute;bottom:18px;left:34px;right:28px;display:flex;justify-content:space-between;gap:16px;font-size:10px;color:#a4b3bc;pointer-events:none}.scene-footer>span{display:flex;align-items:center;gap:10px}.scene-footer .icon{width:14px;height:14px}.scene-footer b{font-weight:400;opacity:.5}.labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.building-label{position:absolute;left:0;top:0;display:flex;align-items:center;gap:7px;padding:6px 9px 6px 5px;white-space:nowrap;background:#13232cdd;border:1px solid #dbe5e329;border-radius:6px;font-size:11px;line-height:1.2;color:#e6ebeb;pointer-events:auto;box-shadow:0 3px 12px #091f2e38;will-change:transform}.building-label span{display:grid;place-items:center;min-width:23px;height:23px;background:#f5f7f012;color:#cbd8dd;border-radius:4px;font:500 11px 'DM Sans',sans-serif}.building-label.selected{border-color:#caef98;color:var(--accent);z-index:4}.building-label.selected span{background:var(--accent);color:#163426}.building-label::after{content:'';position:absolute;left:50%;bottom:-9px;height:8px;width:1px;background:#e6ebeb77}.detail{position:absolute;right:28px;bottom:60px;width:305px;background:#132330f5;border:1px solid #ffffff1c;border-radius:12px;overflow:hidden;box-shadow:0 16px 40px #07152140;backdrop-filter:blur(16px)}.detail-close{position:absolute;right:9px;top:9px;background:#101e2acc;z-index:1;width:30px;height:30px}.detail-image{height:144px;overflow:hidden;background:#243c47}.detail-image img{width:100%;height:100%;object-fit:cover}.detail-content{padding:19px}.detail-meta{display:flex;gap:9px;align-items:center;color:#a3b1ba;font-size:11px}.detail-meta>span:first-child{background:#c0e58d1c;color:var(--accent);padding:4px 7px;border-radius:4px}.detail h3{font-size:21px;font-weight:500;letter-spacing:1px;margin:11px 0}.detail p{font-size:13px;line-height:1.9;color:#aebbc4;margin:8px 0 19px}.detail-action{width:100%;display:flex;align-items:center;gap:7px;border-top:1px solid var(--line);padding:15px 0 0;color:var(--accent);font-size:13px}.detail-action .icon:last-child{margin-left:auto}.detail-action .icon{width:17px;height:17px}.detail:not([hidden])~.tour{max-width:calc(100% - 400px)}.detail:not([hidden])~.tour .tour-symbol{display:none}.detail:not([hidden])~.tour .tour-copy .eyebrow{display:none}.detail:not([hidden])~.tour .tour-copy>span:last-child{display:none}.detail:not([hidden])~.tour .tour-controls{gap:0}.walk-pad{position:absolute;bottom:156px;left:34px;display:grid;grid-template-columns:repeat(3,40px);grid-template-rows:repeat(2,40px);gap:4px}.walk-pad button{background:#142834dd;border:1px solid #ffffff30;border-radius:6px;touch-action:none}.walk-pad button:first-child{grid-column:2}.walk-pad button:nth-child(2){grid-row:2;grid-column:1}.walk-pad button:nth-child(3){grid-row:2;grid-column:2}.walk-pad button:nth-child(4){grid-row:2;grid-column:3}.viewport.walking .view-switch{bottom:260px}.loading,.error-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#182c39;z-index:20;text-align:center;padding:35px}.loading strong{font-size:19px;font-weight:500}.loading>span:last-child{font-size:14px;color:var(--muted)}.loader{width:40px;height:40px;border:2px solid #c0e58d20;border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-state p{color:var(--muted);max-width:410px;line-height:1.8}.toast{position:absolute;top:100px;left:50%;transform:translateX(-50%);max-width:85%;background:#101e2ded;border:1px solid #c0e58d55;padding:12px 18px;border-radius:8px;font-size:13px;z-index:50}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.dialog-header h2{font-size:24px;font-weight:500;margin:7px 0 0}.dialog-header .eyebrow{font-size:10px}dialog{color:var(--text);background:#142332;border:1px solid #ffffff25;border-radius:16px;width:min(750px,calc(100% - 32px));max-height:88dvh;padding:28px;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#06131bba;backdrop-filter:blur(6px)}dialog p{font-size:16px;line-height:1.9;color:#b7c3cb}#map-dialog{width:min(820px,calc(100% - 32px))}.campus-map{display:block;width:100%;max-height:65dvh;object-fit:contain;background:#fff;border-radius:5px}.dialog-note{font-size:12px!important;color:#8fa1af!important;margin-bottom:0}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;padding:12px 0}.help-grid .icon{color:var(--accent);width:26px;height:26px}.help-grid h3{font-size:18px;font-weight:500}.help-grid p{font-size:14px;line-height:1.9}.night .scene-heading{text-shadow:0 2px 15px #000}.night .building-label{background:#13212ded}
@media(min-width:1700px){.sidebar{width:320px}.workspace{left:320px}.sidebar-heading{padding-top:45px}.locations .location{padding:13px 10px}.tour{max-width:760px}.detail{width:330px}}
@media(max-height:850px) and (min-width:901px){.brand{padding-top:22px;padding-bottom:19px}.sidebar-heading{padding-top:16px;padding-bottom:20px}h1{font-size:28px;line-height:1.4}.location{padding-top:8px;padding-bottom:8px}.list-heading{padding-top:20px}}
@media(max-width:1200px){.sidebar{width:250px}.workspace{left:250px}.brand{padding-left:22px;gap:10px}.brand strong{font-size:18px}.brand small{font-size:9px}.scene-settings{top:115px;left:30px;right:auto}.scene-heading{top:27px}.scene-settings .pill{padding:8px 10px}.detail{width:270px}.detail:not([hidden])~.tour{max-width:calc(100% - 355px);gap:8px;flex-wrap:wrap}.detail:not([hidden])~.tour .tour-copy{width:100%}.detail:not([hidden])~.tour .primary-button{padding:8px 11px}.detail:not([hidden])~.tour .tour-copy strong{font-size:14px}.scene-footer .model-note{display:none}}
@media(max-width:900px){.sidebar{transform:translateX(-100%);transition:transform .25s;width:280px;top:66px;box-shadow:10px 0 40px #0004}.sidebar.open{transform:translateX(0)}.workspace{left:0}.topbar{height:66px;padding:0 20px}.viewport{height:calc(100dvh - 66px)}.menu{display:inline-flex}.brand{padding-top:20px}.sidebar-heading{padding-top:8px;padding-bottom:20px}h1{font-size:27px;line-height:1.4}.scene-settings{top:29px;left:auto;right:22px}.scene-heading{left:23px}.view-tools{right:20px;top:109px}.scene-footer{left:24px}.tour{left:22px;right:22px}.view-switch{left:22px}.detail{right:22px}.detail:not([hidden])~.tour{max-width:calc(100% - 330px)}}
@media(max-width:600px){.topbar{padding:0 14px}.top-actions{gap:8px}.desktop-only{display:none}.breadcrumb{gap:12px;font-size:13px}.scene-heading{top:22px;left:20px}.scene-heading h2{font-size:25px}.scene-heading>span:last-child{display:none}.scene-settings{top:23px;right:14px;gap:5px}.pill{padding:9px!important}.pill>span:not(.icon){display:none}.scene-heading .eyebrow{font-size:9px;letter-spacing:1.3px}.view-tools{right:14px;top:93px;gap:10px}.tool-stack .icon-button{height:34px;width:32px}.tour{left:14px;right:14px;bottom:49px;padding:14px;gap:10px;min-height:78px}.tour-symbol{display:none}.tour-copy .eyebrow{font-size:8px;letter-spacing:.8px}.tour-copy strong{font-size:14px}.tour-copy>span:last-child{font-size:10px}.primary-button{font-size:12px;padding:11px 13px}.view-switch{left:14px;bottom:146px}.view-switch button{font-size:11px;padding:10px 12px}.scene-footer{left:14px;bottom:17px;right:14px;font-size:9px}.scene-footer>span{gap:6px}.building-label{font-size:10px;padding:4px 7px 4px 4px;gap:5px}.building-label span{min-width:20px;height:20px;font-size:10px}.detail{left:14px;right:14px;bottom:144px;width:auto;max-height:39dvh;overflow:auto}.detail-image{display:none}.detail-content{padding:15px 18px}.detail h3{font-size:19px;margin:8px 0}.detail p{font-size:12px;line-height:1.7;margin:6px 0 9px}.detail-action{padding-top:10px;font-size:12px}.detail:not([hidden])~.tour{max-width:none;flex-wrap:nowrap}.detail:not([hidden])~.tour .tour-copy{width:auto}.viewport:has(.detail:not([hidden])) .view-switch{bottom:auto;top:110px}.tour-controls .icon-button{width:25px}.tour-controls>span{font-size:10px}.tour.active .tour-copy .eyebrow,.tour.active .tour-copy>span:last-child{display:none}.tour.active .tour-copy{max-width:105px}.tour.active .tour-copy strong{font-size:12px;line-height:1.5}.tour.active>.primary-button{padding:9px;margin-left:3px}.tour.active .tour-controls{margin-left:auto}.walk-pad{left:14px;bottom:147px;grid-template-columns:repeat(3,37px);grid-template-rows:repeat(2,37px)}.viewport.walking .view-switch{bottom:244px}.viewport.walking:has(.detail:not([hidden])) .walk-pad{left:auto;right:15px;top:107px;bottom:auto}.help-grid{grid-template-columns:1fr;gap:15px}.help-grid h3{margin:8px 0}.help-grid p{margin:5px 0}dialog{padding:22px}.dialog-header h2{font-size:21px}}
/* Block-world interface: crisp edges, grass/earth palette, inset game buttons. */
body.voxel{--accent:#a6df69;--text:#f0f3e9;--muted:#b5bdaa;--line:#ffffff20}body.voxel{background:#26352a}body.voxel .sidebar{background:linear-gradient(90deg,#273127,#303b2d);border-right:4px solid #172019}body.voxel .brand{border-bottom:3px solid #151d16}body.voxel .brand-mark{border-radius:0;background:#719a43;color:#fff;border:3px solid #c1dc81;box-shadow:4px 4px 0 #152218;text-shadow:2px 2px #3a542a}body.voxel .sidebar-heading .eyebrow,body.voxel .scene-heading .eyebrow{color:#a6df69;font-family:monospace;letter-spacing:2px}body.voxel .sidebar-heading h1{font-weight:800;letter-spacing:2px;text-shadow:3px 3px #172019}body.voxel .sidebar-heading p{color:#c5cfba;font-size:12px}body.voxel .topbar{background:#253027;border-bottom:3px solid #182019}body.voxel .overview,body.voxel .location,body.voxel .location .code,body.voxel .model-badge,body.voxel .icon-button,body.voxel .pill,body.voxel .tool-stack,body.voxel .view-switch,body.voxel .view-switch button,body.voxel .tour,body.voxel .tour-symbol,body.voxel .primary-button,body.voxel .building-label,body.voxel .building-label span,body.voxel .detail,body.voxel .detail-meta>span:first-child,body.voxel .toast,body.voxel .walk-pad button,body.voxel dialog{border-radius:0}body.voxel .overview.active,body.voxel .location.selected{background:#526c39;border-color:#91b766;color:#eff9df}body.voxel .location:hover{background:#435538}body.voxel .scene-heading{padding:14px 18px;background:#243528e8;border-left:5px solid #a6df69;box-shadow:4px 4px 0 #14211945}body.voxel .scene-heading h2{font-weight:800;font-size:25px;margin:6px 0;letter-spacing:2px}body.voxel .scene-heading>span:last-child{color:#d1dcc8}body.voxel .pill,body.voxel .tool-stack,body.voxel .view-switch,body.voxel .tour,body.voxel .detail,body.voxel .building-label,body.voxel .toast{background:#29372cf2;border:2px solid #65765a;backdrop-filter:none;box-shadow:3px 3px 0 #14211970}body.voxel .pill{border-top-color:#8c9b79;border-left-color:#8c9b79}body.voxel .pill.active{color:#cbef9c;border-color:#9fcb73}body.voxel .view-switch button.active,body.voxel .primary-button{background:#89bc55;color:#152611;box-shadow:inset 2px 2px #c4e990,inset -3px -3px #537b31;font-weight:700}body.voxel .primary-button:hover{background:#a5d573}body.voxel .primary-button:active{box-shadow:inset 3px 3px #537b31}body.voxel .tour-symbol{border:2px solid #78965a;background:#3b5032}body.voxel .tour-copy strong{font-weight:700}body.voxel .tour-copy .eyebrow{font-family:monospace;color:#b9cf9e}body.voxel .building-label span{background:#536e3c;color:#ecf5df}body.voxel .building-label.selected{border-color:#c0ef8d}body.voxel .scene-footer{color:#edf4e8;font-weight:600;text-shadow:1px 1px 2px #10261d}body.voxel.night .scene-footer{color:#d9e4d3;text-shadow:0 1px #111}body.voxel .compass{background:#29372ccc;border:2px solid #65765a}body.voxel .loading,body.voxel .error-state{background:#29372c}body.voxel .loader{border-radius:0;border:5px solid #587b3b;border-top-color:#c3eb92;box-shadow:6px 6px #18251b}body.voxel dialog{background:#29372c;border:3px solid #8a9d73;box-shadow:8px 8px 0 #101b14}body.voxel button:focus-visible,body.voxel a:focus-visible{outline:3px solid #d7ffab;outline-offset:4px}
@media(max-width:1200px){body.voxel .scene-settings{top:157px}}
@media(max-width:900px){body.voxel .scene-settings{top:29px}body.voxel .scene-heading{padding:10px 13px}}
@media(max-width:600px){body.voxel .scene-heading{top:19px;left:14px;padding:10px}body.voxel .scene-heading h2{font-size:21px}body.voxel .scene-heading .eyebrow{font-size:8px;letter-spacing:1px}body.voxel .scene-settings{top:24px}body.voxel .scene-footer{font-size:9px}body.voxel .viewport:has(.detail:not([hidden])) .view-switch{top:120px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.loader{animation:none}}

.style-switch{display:flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:7px;background:#ffffff08;white-space:nowrap}
.style-switch button{font-size:12px;padding:7px 10px;border-radius:4px;color:var(--muted)}
.style-switch button[aria-pressed="true"]{background:var(--accent);color:#203622;font-weight:700}
.white{--accent:#e3e7e7;--muted:#b8c4ca}
.white .sidebar,.white .topbar{background:#222c35}
.white .scene-heading,.comic .scene-heading{padding:12px 16px;background:#24313de8;border-radius:8px}
.white .scene-heading .eyebrow{color:#e1e9eb}
.white .scene-footer,.comic .scene-footer{color:#263944;text-shadow:0 1px #ffffffb0}
.white.night .scene-footer,.comic.night .scene-footer{color:#cbd9e0;text-shadow:none}
.comic{--accent:#f6d465;--muted:#b8c8d3}
.comic .sidebar,.comic .topbar{background:#1b2c40;border-color:#101d2b}
.comic .primary-button,.comic .view-switch button.active{background:#f6d465;color:#243041;box-shadow:3px 3px 0 #111f30;font-weight:700}
.comic .tour,.comic .detail,.comic .building-label,.comic .style-switch{border:2px solid #101c2a;box-shadow:3px 3px 0 #15263870}
.comic .scene-heading{border:2px solid #182b3f;box-shadow:4px 4px 0 #15263850}
.comic .scene-heading h2{font-weight:800}
@media(max-width:1200px){.top-actions .location-note{display:none}}
@media(max-width:900px){
  .topbar{height:108px;flex-wrap:wrap;padding:10px 14px;align-content:space-between;gap:5px}
  .breadcrumb{width:100%;min-width:0}.breadcrumb strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .top-actions{width:100%;justify-content:space-between;gap:8px}
  .style-switch{flex:1}.style-switch button{flex:1;padding:7px 5px;font-size:11px}
  .viewport{height:calc(100dvh - 108px)}.sidebar{top:108px}
  .white .scene-heading,.comic .scene-heading{padding:10px}
}
body.voxel .style-switch,body.voxel .style-switch button{border-radius:0}
@media(max-width:600px){.style-switch button{padding:7px;font-size:11px}.topbar{gap:6px}.breadcrumb{gap:6px;font-size:11px}.top-actions{gap:5px}.top-actions .icon-button{width:29px}.breadcrumb .slash,.breadcrumb>span:first-of-type{display:none}}

.blueprint{--accent:#b9e2ff;--muted:#a8c7e2}
.blueprint .sidebar,.blueprint .topbar{background:#0b284b;border-color:#4f8bb366}
.blueprint .scene-heading{padding:12px 16px;border-left:2px solid #b9e2ff;background:#09254ac9}
.blueprint .pill,.blueprint .tour,.blueprint .detail,.blueprint .building-label{border:1px solid #8dcaff70;background:#0b2a50ee;border-radius:2px}
.blueprint .scene-heading .eyebrow,.blueprint .sidebar-heading .eyebrow{font-family:monospace;color:#b9e2ff}
.cyber{--accent:#50edff;--muted:#b0b1db}
.cyber .sidebar,.cyber .topbar{background:#0c0b22;border-color:#b542e94d}
.cyber .brand-mark,.cyber .scene-heading h2{color:#8ff4ff;text-shadow:0 0 16px #32d8ff80}
.cyber .scene-heading{padding:12px 16px;background:#100e29d9;border-left:3px solid #ff4bd1}
.cyber .pill,.cyber .tour,.cyber .detail,.cyber .building-label{background:#100e29ee;border:1px solid #60569c;box-shadow:0 0 12px #28dfff1f}
.cyber .primary-button,.cyber .view-switch button.active{background:#50edff;color:#08192d;box-shadow:0 0 14px #37e5ff45}
.cyber .style-switch button[aria-pressed="true"]{background:#ef66da;color:#1a0923}
.blueprint .scene-footer,.cyber .scene-footer{color:#c2d8ed;text-shadow:0 1px #040a18}
@media(min-width:901px) and (max-width:1450px){.top-actions .location-note{display:none}.style-switch button{padding:7px}}
@media(max-width:900px){
 .style-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));white-space:nowrap}
 .topbar{height:146px}.viewport{height:calc(100dvh - 146px)}.sidebar{top:146px}
 .blueprint .scene-heading,.cyber .scene-heading{padding:10px}
}

.watercolor{--accent:#e3c9a4;--muted:#c5bdb2}
.watercolor .sidebar,.watercolor .topbar{background:#393d3e}
.watercolor .scene-heading,.clay .scene-heading{padding:12px 16px;background:#414344e8;border-radius:12px}
.watercolor .scene-heading .eyebrow{color:#eed7b6;font-size:9px;letter-spacing:1px}
.watercolor .tour,.watercolor .detail,.watercolor .building-label{background:#414344ed;border-color:#dbcebb55}
.watercolor .scene-footer,.clay .scene-footer{color:#55504a;text-shadow:0 1px #fff9}
.watercolor.night .scene-footer,.clay.night .scene-footer{color:#e1d9cc;text-shadow:none}
.clay{--accent:#edba95;--muted:#cbbdaf}
.clay .sidebar,.clay .topbar{background:#423b39}
.clay .brand-mark{color:#edba95}
.clay .tour,.clay .detail,.clay .building-label,.clay .pill{background:#514a45ed;border-radius:16px;border-color:#eedbc044}
.clay .primary-button,.clay .view-switch button.active{background:#edba95;color:#493c32;border-radius:14px}
.clay .scene-heading .eyebrow{color:#f3d3b9;font-size:9px;letter-spacing:1px}
@media(min-width:901px){.style-switch{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.style-switch button{padding:5px 9px;font-size:11px}.top-actions .location-note{display:none}}
@media(max-width:900px){.style-switch{grid-template-columns:repeat(4,minmax(0,1fr))}.style-switch button{padding:8px 2px;font-size:10px}.watercolor .scene-heading,.clay .scene-heading{padding:10px}}
