:root{color-scheme:dark;--gold:#d4b96d;--ink:#05070d;--panel:#0c1725;--text:#eef3f7;--muted:#aebbc7}*{box-sizing:border-box}body{min-width:320px;margin:0;background:radial-gradient(circle at 50% 15%,#12243a,transparent 42%),var(--ink);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.bridge-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,4vw,3rem);border-bottom:1px solid #26384b}.brand{display:flex;align-items:center;gap:.7rem;color:inherit;text-decoration:none}.brand img{width:42px;height:42px;object-fit:contain}.bridge-bar nav{display:flex;gap:.75rem;flex-wrap:wrap}.bridge-bar a,.bridge-map a{color:var(--text)}main{width:min(1100px,calc(100% - 2rem));margin:2rem auto 5rem}.bridge-intro p:first-child{color:var(--gold);letter-spacing:.18em}.bridge-intro h1{font-size:clamp(2rem,6vw,4.5rem);margin:.35rem 0}.bridge-intro p:last-child{color:var(--muted)}.bridge-world{position:relative;min-height:430px;margin-top:2rem;padding:3rem;border:1px solid #31475d;border-radius:28px;background:linear-gradient(160deg,rgba(35,70,91,.55),rgba(7,16,28,.9));overflow:hidden}.bridge-player{position:absolute;left:50%;bottom:32px;width:52px;height:52px;display:grid;place-items:center;border:2px solid var(--gold);border-radius:50%;background:#14273a;color:var(--gold);font-weight:900;transform:translateX(-50%)}.bridge-destinations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.destination,.bridge-map a{display:block;padding:1rem;border:1px solid #40566c;border-radius:16px;background:var(--panel);color:var(--text);text-decoration:none}.destination:hover,.destination:focus-visible,.bridge-map a:hover,.bridge-map a:focus-visible{border-color:var(--gold);outline:2px solid transparent}.bridge-map{margin-top:1.5rem}.bridge-map div{display:flex;gap:.65rem;flex-wrap:wrap}.bridge-map a{padding:.65rem .9rem}#bridge-status{color:var(--muted)}@media(max-width:700px){.bridge-bar{align-items:flex-start}.bridge-world{min-height:0;padding:1rem}.bridge-player{display:none}.bridge-destinations{grid-template-columns:1fr}.bridge-map a{min-height:44px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.bridge-world:focus-visible{box-shadow:0 0 0 3px var(--gold)}.bridge-kairos{position:absolute;z-index:3;left:55%;bottom:75px;display:grid;place-items:center;color:#d9f7ff;text-shadow:0 0 14px #61d8ff;transition:left .12s linear,bottom .12s linear}.bridge-kairos span{font-size:1.8rem}.bridge-kairos strong{font-size:.65rem;letter-spacing:.12em}.bridge-player{transition:left .12s linear,bottom .12s linear}.destination{position:absolute;width:clamp(108px,15vw,165px);text-align:center}.destination.is-near{border-color:var(--gold);box-shadow:0 0 0 2px rgba(212,185,109,.35)}.bridge-interaction{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);padding:.4rem .7rem;border-radius:999px;background:#05070dcc}.bridge-controls,#bridge-voice-status{color:var(--muted)}.bridge-guide{margin-top:1.5rem;padding:1.2rem;border:1px solid #31475d;border-radius:20px;background:rgba(12,23,37,.8)}.bridge-guide header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.bridge-guide h2,.bridge-guide header p{margin:.15rem 0}.bridge-guide header p{color:var(--gold);letter-spacing:.18em}.bridge-voice-controls{display:flex;gap:.5rem;flex-wrap:wrap}.bridge-guide button{min-height:42px;border:1px solid #536b80;border-radius:10px;background:#13263a;color:var(--text);padding:.55rem .8rem}.bridge-messages{display:grid;gap:.5rem;margin:1rem 0}.bridge-message{margin:0;padding:.75rem;border-radius:12px;background:#07111d}.bridge-message.is-user{border-left:3px solid var(--gold)}.bridge-message.is-error{color:#ffb4b4}#bridge-kairos-form label{display:block;margin-bottom:.45rem}#bridge-kairos-form div{display:flex;gap:.5rem}#bridge-kairos-input{flex:1;min-width:0;padding:.7rem;border:1px solid #536b80;border-radius:10px;background:#07111d;color:var(--text)}@media(max-width:700px){.bridge-guide header,#bridge-kairos-form div{align-items:stretch;flex-direction:column}}@media(prefers-reduced-motion:reduce){.bridge-kairos,.bridge-player{transition:none}.bridge-kairos{text-shadow:none}}

.bridge-quick{margin-top:1.5rem;padding:1rem;border:1px solid #31475d;border-radius:18px}.bridge-quick label{display:block;margin:.4rem 0;color:var(--muted)}#bridge-quick-search{width:min(100%,420px);min-height:44px;padding:.7rem;border:1px solid #536b80;border-radius:10px;background:#07111d;color:var(--text)}#bridge-quick-links{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:.8rem}#bridge-quick-links a{padding:.65rem .9rem;border:1px solid #40566c;border-radius:14px;background:var(--panel);color:var(--text);text-decoration:none}#bridge-quick-links a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media(max-width:700px){.bridge-world{min-height:420px;padding:0}.bridge-player{display:grid}.bridge-destinations{display:block}.destination{min-height:48px;padding:.5rem}.bridge-controls{font-size:.9rem}}@media(prefers-reduced-motion:reduce){.bridge-world{scroll-behavior:auto}}

.bridge-missions{margin-top:1.5rem;padding:1rem;border:1px solid #31475d;border-radius:18px}.bridge-missions>p{color:var(--muted)}#bridge-mission-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}#bridge-mission-list article{padding:1rem;border:1px solid #40566c;border-radius:14px;background:var(--panel)}#bridge-mission-list h3{margin-top:0}#bridge-mission-list small{display:block;color:var(--muted);margin-bottom:.7rem}#bridge-mission-list article div{display:flex;gap:.5rem}#bridge-mission-list a,#bridge-mission-list button{padding:.5rem .7rem;border:1px solid #536b80;border-radius:9px;background:#13263a;color:var(--text);text-decoration:none}.bridge-message.is-provenance{font-size:.8rem;color:var(--muted)}

/* OTL-01: one-viewport world with authorized tools presented as overlays. */
html,body{height:100%;overflow:hidden}.bridge-bar{height:72px}.bridge-bar button{min-height:42px;padding:.55rem .8rem;border:1px solid #40566c;border-radius:10px;background:#0c1725;color:var(--text)}main{position:relative;width:100%;height:calc(100vh - 72px);margin:0}.bridge-intro{position:absolute;z-index:4;top:clamp(.75rem,3vh,2rem);left:clamp(1rem,4vw,3rem);max-width:min(42rem,75vw);pointer-events:none}.bridge-intro h1{font-size:clamp(1.75rem,4vw,3.4rem)}.bridge-intro p{margin:.35rem 0}.bridge-world{height:100%;min-height:0;margin:0;border:0;border-radius:0;padding:0;background:linear-gradient(160deg,rgba(35,70,91,.55),rgba(7,16,28,.9))}.bridge-controls,#bridge-status{position:absolute;z-index:4;left:clamp(1rem,4vw,3rem);margin:0;padding:.45rem .7rem;border-radius:10px;background:#05070dcc}.bridge-controls{bottom:1rem}#bridge-status{right:clamp(1rem,4vw,3rem);bottom:1rem;left:auto}.bridge-panel{position:fixed;z-index:20;inset:84px 1rem auto auto;width:min(480px,calc(100vw - 2rem));max-height:calc(100vh - 100px);overflow:auto;padding:1rem;border:1px solid #40566c;border-radius:20px;background:#08131fee;box-shadow:0 20px 70px #000b}.bridge-panel[hidden]{display:none}.panel-close{position:sticky;z-index:2;top:0;float:right;min-width:44px;min-height:44px;border:1px solid #536b80;border-radius:50%;background:#13263a;color:var(--text);font-size:1.4rem}.bridge-guide,.bridge-missions,.bridge-quick,.bridge-map{margin:0;border:0;padding:.25rem;background:transparent}.semantic-command-link{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:760px){.bridge-bar{height:auto;min-height:72px;padding:.65rem}.bridge-bar nav{justify-content:flex-end}.bridge-bar nav a{display:none}.bridge-bar button{min-height:44px;padding:.4rem .55rem}main{height:calc(100dvh - 112px)}.bridge-intro{top:.5rem;max-width:92vw}.bridge-intro p:last-child{display:none}.bridge-panel{inset:118px .5rem auto .5rem;width:auto;max-height:calc(100dvh - 128px)}#bridge-status{display:none}.bridge-controls{font-size:.75rem}}

/* Founder commercial reconciliation: living district and non-spatial parity. */
.bridge-direct-link{position:static!important;display:block;padding:.65rem .9rem;border:1px solid #40566c;border-radius:14px;background:var(--panel);color:var(--text);text-decoration:none}
.bridge-map div,#bridge-quick-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.65rem}
.bridge-landmark{position:absolute;z-index:2;left:50%;top:46%;display:grid;place-items:center;transform:translate(-50%,-50%);pointer-events:none}.bridge-landmark img{width:clamp(120px,18vw,230px);filter:drop-shadow(0 0 38px rgba(212,185,109,.28));animation:bridge-float 8s ease-in-out infinite}.bridge-landmark span{margin-top:.5rem;color:#d4b96d;font-size:.65rem;letter-spacing:.24em}
.bridge-paths{position:absolute;inset:16% 5% 8%;opacity:.55;background:radial-gradient(ellipse at center,transparent 0 18%,rgba(212,185,109,.13) 18.5% 19.5%,transparent 20%),linear-gradient(28deg,transparent 48.8%,rgba(110,231,255,.11) 49% 51%,transparent 51.2%),linear-gradient(-28deg,transparent 48.8%,rgba(110,231,255,.11) 49% 51%,transparent 51.2%);pointer-events:none}
.destination{border-width:1px 1px 5px;background:linear-gradient(155deg,#19334b,#0b1725);box-shadow:0 14px 28px #0007}.destination:before{content:"";display:block;width:42px;height:18px;margin:-.35rem auto .45rem;border:1px solid #61758b;border-radius:16px 16px 3px 3px;background:#233d54}.destination[data-place="academy"]:before,.destination[data-place="archive"]:before{border-radius:3px}.destination[data-place="observatory"]:before{border-radius:50%;background:#254963}.destination[data-place="pavilion"]{background:linear-gradient(155deg,#49364e,#171724)}
.bridge-controls{transition:opacity .6s ease}.bridge-controls.is-understood{opacity:0;pointer-events:none}
@keyframes bridge-float{50%{transform:translateY(-8px) rotate(1.5deg)}}
@media(prefers-reduced-motion:reduce){.bridge-landmark img{animation:none}.bridge-controls{transition:none}}
@media(max-width:700px){.bridge-landmark{top:50%}.bridge-landmark img{width:108px}}

.bridge-people>p{color:var(--muted)}#bridge-people-list{display:grid;gap:.65rem}#bridge-people-list article{padding:.8rem;border:1px solid #40566c;border-radius:12px;background:#0c1725}#bridge-people-list strong,#bridge-people-list small{display:block}#bridge-people-list small{margin:.3rem 0 .6rem;color:var(--muted)}#bridge-people-list article div{display:flex;gap:.5rem}#bridge-people-list a{padding:.45rem .65rem;border:1px solid #536b80;border-radius:8px;color:var(--text);text-decoration:none}


/* Final Founder closeout: VALRYN Town is a camera-followed 2D district. */
.bridge-world{isolation:isolate;background:linear-gradient(#102a3b 0 58%,#132b25 58% 100%)}
.bridge-scene{position:absolute;left:0;top:0;width:1600px;height:1000px;transform-origin:0 0;will-change:transform;transition:transform .1s linear;background:radial-gradient(circle at 50% 47%,rgba(212,185,109,.13),transparent 16%),linear-gradient(90deg,transparent 49.4%,rgba(214,203,160,.11) 49.5% 50.5%,transparent 50.6%),linear-gradient(transparent 49.4%,rgba(214,203,160,.08) 49.5% 50.5%,transparent 50.6%)}
.bridge-scene .bridge-landmark{left:800px;top:480px}.bridge-scene .bridge-landmark img{width:310px;opacity:.92}.bridge-scene .bridge-paths{inset:90px}
.bridge-town-plaza{position:absolute;left:650px;top:350px;width:300px;height:250px;border:1px solid rgba(212,185,109,.24);border-radius:50%;background:radial-gradient(circle,rgba(212,185,109,.08),transparent 70%)}
.bridge-scene .destination{z-index:4;width:126px;min-height:64px;padding:.55rem .6rem;font-size:.78rem;transform:translate(-50%,-50%)}
.bridge-scene .bridge-player,.bridge-scene .bridge-kairos{bottom:auto;transform:translate(-50%,-50%)}
.bridge-scene .bridge-player{z-index:8;width:42px;height:42px}.bridge-scene .bridge-kairos{z-index:7}
.bridge-car,.bridge-pedestrian{position:absolute;z-index:3;display:grid;place-items:center;pointer-events:none}.bridge-car{width:48px;height:22px;border-radius:8px 11px 6px 6px;background:#6fa9c6;border:1px solid #d6e8ef;box-shadow:inset 0 6px #173149;animation:town-drive 22s linear infinite}.bridge-car i,.bridge-car b{position:absolute;bottom:-5px;width:10px;height:10px;border:2px solid #aab7c4;border-radius:50%;background:#07101c}.bridge-car i{left:7px}.bridge-car b{right:7px}.bridge-car.car-two{background:#c7a958;animation:town-drive-turn 27s linear -11s infinite}.bridge-pedestrian{width:22px;height:38px;animation:town-walk 16s ease-in-out infinite}.bridge-pedestrian i{position:absolute;left:6px;width:11px;height:11px;border-radius:50%;background:#f0c9a7}.bridge-pedestrian b{position:absolute;left:4px;top:11px;width:15px;height:20px;border-radius:8px 8px 4px 4px;background:#7f91bd}.bridge-pedestrian.pedestrian-two{animation:town-walk-turn 19s ease-in-out -8s infinite}.bridge-pedestrian.pedestrian-two b{background:#a56d79}
@keyframes town-drive{0%{transform:translate(0,0)}44%{transform:translate(1280px,0)}50%{transform:translate(1280px,110px) rotate(90deg)}94%{transform:translate(0,110px) rotate(180deg)}100%{transform:translate(0,0) rotate(270deg)}}@keyframes town-drive-turn{0%{transform:translate(0,0)}35%{transform:translate(760px,0)}45%{transform:translate(760px,-230px) rotate(-90deg)}80%{transform:translate(120px,-230px) rotate(-180deg)}100%{transform:translate(0,0)}}@keyframes town-walk{0%,18%{transform:translate(0,0)}48%,58%{transform:translate(0,100px)}88%,100%{transform:translate(70px,100px)}}@keyframes town-walk-turn{0%,15%{transform:translate(0,0)}45%,55%{transform:translate(-90px,0)}82%,100%{transform:translate(-90px,-70px)}}
.bridge-scene.is-paused *{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.bridge-scene{transition:none}.bridge-car,.bridge-pedestrian{animation:none}}
@media(max-width:700px){.bridge-scene .destination{width:112px;font-size:.7rem}.bridge-scene .bridge-landmark img{width:240px}}

.car-one{left:110px;top:620px}.car-two{left:260px;top:430px}.pedestrian-one{left:690px;top:570px}.pedestrian-two{left:1080px;top:540px}
#bridge-map-search{width:100%;min-height:46px;margin:.5rem 0 1rem;padding:.7rem;border:1px solid #536b80;border-radius:10px;background:#07111d;color:#eef3f7}

/* Subtractive reconciliation: roads and destinations carry the map hierarchy. */
.town-ground{background:none}
.bridge-scene{background:linear-gradient(180deg,#102838 0 10%,#173528 10% 100%)}
.town-road{border-width:3px;box-shadow:none;opacity:.76}
.district-sign{background:#07111de6;border-bottom-width:1px}
.bridge-scene .destination{box-shadow:0 8px 16px #0006}
.bridge-scene .bridge-kairos{color:#d8eef5;text-shadow:none}
.bridge-scene .bridge-kairos span{font-size:1.3rem}
.bridge-scene .bridge-player{width:36px;height:36px;border-width:1px;font-size:.75rem}


/* Founder experience unification: coherent Town roads and bounded walkers. */
.bridge-intro{top:1rem}.bridge-intro p{margin:0;padding:.45rem .7rem;border:1px solid rgba(212,185,109,.28);border-radius:999px;background:#07111dcc;color:var(--gold);font-size:.72rem;font-weight:850;letter-spacing:.2em}
.bridge-scene{background:linear-gradient(#102a3b 0 42%,#183a2b 42% 100%)}
.bridge-scene:before,.bridge-scene:after{content:"";position:absolute;z-index:1;background:#27323a;border:6px solid #394750;box-shadow:inset 0 0 0 2px rgba(255,225,150,.18)}
.bridge-scene:before{left:70px;right:70px;top:610px;height:92px}
.bridge-scene:after{left:760px;top:180px;width:92px;height:690px}
.bridge-car{transform-origin:center;animation:town-road-east 22s linear infinite}.bridge-car.car-two{animation:town-road-turn 27s linear -11s infinite}
@keyframes town-road-east{0%,8%{transform:translate(0,0) rotate(0)}46%,54%{transform:translate(1280px,0) rotate(0)}55%{transform:translate(1280px,42px) rotate(180deg)}94%,100%{transform:translate(0,42px) rotate(180deg)}}
@keyframes town-road-turn{0%,10%{transform:translate(0,205px) rotate(0)}42%{transform:translate(500px,205px) rotate(0)}45%,75%{transform:translate(500px,-245px) rotate(-90deg)}78%,100%{transform:translate(0,-245px) rotate(180deg)}}
.pedestrian-one{left:660px;top:530px}.pedestrian-two{left:1010px;top:505px}
@keyframes town-walk{0%,18%{transform:translate(0,0)}45%,58%{transform:translate(0,82px)}75%{transform:translate(66px,82px)}88%,100%{transform:translate(66px,0)}}
@keyframes town-walk-turn{0%,18%{transform:translate(0,0) scaleX(1)}48%,60%{transform:translate(-92px,0) scaleX(-1)}82%,100%{transform:translate(-92px,72px) scaleX(-1)}}

/* Commercial Town: one civic plan, spatial districts, and recognizable places. */
.bridge-scene{background:linear-gradient(180deg,#102b3c 0 12%,#183a2b 12% 100%)}
.bridge-scene:before,.bridge-scene:after{content:none}
.town-ground{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at 50% 48%,rgba(212,185,109,.12),transparent 19%),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px);background-size:auto,80px 80px,80px 80px}
.town-road{position:absolute;background:#18242d;border:5px solid #31424c;box-shadow:inset 0 0 0 2px rgba(255,255,255,.04)}.town-road:after{content:"";position:absolute;background:repeating-linear-gradient(90deg,#d4b96d 0 26px,transparent 26px 48px)}.road-east{left:55px;right:55px;top:610px;height:94px;border-radius:24px}.road-east:after{left:20px;right:20px;top:43px;height:3px}.road-north{left:753px;top:95px;width:94px;height:820px;border-radius:24px}.road-north:after{top:20px;bottom:20px;left:44px;width:3px;background:repeating-linear-gradient(#d4b96d 0 26px,transparent 26px 48px)}
.town-path{position:absolute;border:7px solid #a99c7a;border-left-color:#c7b994;border-right-color:#776e58;border-radius:999px;opacity:.72}.path-plaza{left:575px;top:285px;width:450px;height:390px}.path-learning{left:300px;top:285px;width:510px;height:14px;transform:rotate(31deg)}.path-creative{left:800px;top:300px;width:505px;height:14px;transform:rotate(-30deg)}
.district-sign{position:absolute;padding:.38rem .65rem;border-bottom:2px solid rgba(212,185,109,.6);color:#f1dfaa;background:#07111dcc;font-size:12px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.district-learning{left:115px;top:55px}.district-creative{right:105px;top:55px}.district-community{left:105px;top:720px}.district-institutional{right:95px;top:720px}
.bridge-town-plaza{z-index:2;left:625px;top:315px;width:350px;height:330px;border:4px double rgba(212,185,109,.48);background:radial-gradient(circle,rgba(212,185,109,.17) 0 8%,rgba(13,43,49,.8) 9% 58%,rgba(199,185,148,.3) 59% 64%,transparent 65%)}
.bridge-scene .bridge-landmark{z-index:3}.bridge-scene .bridge-landmark img{width:270px}
.town-park{position:absolute;width:260px;height:145px;border:3px solid #315f45;border-radius:48% 52% 42% 58%;background:radial-gradient(circle at 30% 40%,#315f45 0 9%,transparent 10%),radial-gradient(circle at 70% 65%,#2c5740 0 11%,transparent 12%),#204b35}.park-one{left:40px;top:470px}.park-two{right:55px;top:455px}
.town-tree{position:absolute;width:30px;height:38px;border-radius:55% 45% 50% 50%;background:#3f7952;box-shadow:inset -8px -8px #28563b}.town-tree:after{content:"";position:absolute;left:13px;top:30px;width:5px;height:15px;background:#765b38}.tree-one{left:90px;top:500px}.tree-two{left:245px;top:560px}.tree-three{right:100px;top:500px}.tree-four{right:250px;top:555px}
.town-bench{position:absolute;width:50px;height:12px;border:3px solid #8b6b42;border-radius:3px;background:#b28850}.town-bench:after{content:"";position:absolute;left:5px;right:5px;top:10px;height:8px;border-left:3px solid #77603f;border-right:3px solid #77603f}.bench-one{left:570px;top:520px}.bench-two{left:990px;top:520px}
.town-light{position:absolute;width:5px;height:54px;background:#596976}.town-light:before{content:"";position:absolute;left:-7px;top:-9px;width:18px;height:14px;border-radius:50%;background:#f1d894;box-shadow:0 0 18px rgba(241,216,148,.65)}.light-one{left:590px;top:370px}.light-two{left:1005px;top:370px}
.bridge-scene .destination{width:138px;min-height:86px;padding:2.7rem .65rem .55rem;border:0;border-bottom:5px solid #8d7438;border-radius:5px 5px 10px 10px;background:linear-gradient(90deg,transparent 12%,rgba(160,193,210,.35) 13% 26%,transparent 27% 38%,rgba(160,193,210,.35) 39% 52%,transparent 53% 65%,rgba(160,193,210,.35) 66% 79%,transparent 80%),linear-gradient(#263f52,#122332);box-shadow:0 14px 20px #0008;color:#f4f6f8;font-weight:800}
.bridge-scene .destination:before{position:absolute;left:-7px;right:-7px;top:-24px;width:auto;height:35px;margin:0;border:0;border-radius:4px 4px 0 0;background:linear-gradient(145deg,transparent 49%,#8e7339 50%) left/50% 100% no-repeat,linear-gradient(215deg,transparent 49%,#8e7339 50%) right/50% 100% no-repeat}
.destination[data-district="learning"]{border-bottom-color:#428f75}.destination[data-district="creative"]{border-bottom-color:#6d8eb7}.destination[data-district="community"]{border-bottom-color:#b27b63}.destination[data-district="institutional"]{border-bottom-color:#d4b96d}.destination[data-place="pavilion"]{background:linear-gradient(90deg,transparent 15%,rgba(255,255,255,.3) 16% 30%,transparent 31% 56%,rgba(255,255,255,.3) 57% 71%,transparent 72%),linear-gradient(#664f70,#2e2636)}
.bridge-car{width:58px;height:27px;border-radius:12px 15px 7px 7px;box-shadow:inset 0 8px #173149,0 5px 8px #0008}.bridge-car:before{content:"";position:absolute;left:13px;top:-8px;width:31px;height:13px;border-radius:12px 12px 2px 2px;background:#83bad4}.bridge-pedestrian{width:26px;height:45px}.bridge-pedestrian i{left:7px;width:13px;height:13px;box-shadow:0 0 0 2px #203240}.bridge-pedestrian b{left:4px;top:13px;width:19px;height:25px;border-radius:9px 9px 4px 4px}.bridge-pedestrian b:before,.bridge-pedestrian b:after{content:"";position:absolute;top:22px;width:6px;height:13px;border-radius:4px;background:#263748}.bridge-pedestrian b:before{left:1px}.bridge-pedestrian b:after{right:1px}
@media(max-width:700px){.district-sign{font-size:10px}.bridge-scene .destination{width:124px;min-height:78px}.town-tree,.town-bench,.town-light{display:none}}

.destination[data-place="simulation"]{background:linear-gradient(155deg,#214c58,#0a1725);border-bottom-color:#61d8ff}.destination[data-place="simulation"]:before{border-radius:50% 50% 4px 4px;background:#d4b96d}

/* Clean House II final composition: districts breathe beyond the initial viewport. */
.bridge-scene{width:1800px;height:1250px;background:linear-gradient(180deg,#102b3c 0 10%,#183a2b 10% 100%)}
.road-east{left:70px;right:70px;top:690px}.road-north{left:853px;top:110px;height:1010px}
.path-plaza{left:650px;top:350px;width:500px;height:430px}.path-learning{left:250px;top:350px;width:650px}.path-creative{left:900px;top:350px;width:650px}
.district-learning{left:110px;top:65px}.district-creative{right:110px;top:65px}.district-community{left:110px;top:790px}.district-institutional{right:110px;top:790px}.district-play{left:720px;top:965px;border-color:#61d8ff}
.bridge-town-plaza{left:710px;top:385px;width:380px;height:350px}.bridge-scene .bridge-landmark{left:900px;top:555px}
.park-one{left:40px;top:580px}.park-two{right:55px;top:570px}
.destination[data-district="play"]{border-bottom-color:#61d8ff}
