.bridge-room .room-hero{min-height:260px}.bridge-room .room-hero-content{padding-top:42px;padding-bottom:32px}.bridge-room .room-hero h1{font-size:clamp(34px,5vw,62px)}.bridge-room .room-body{padding-top:24px}.bridge-room .bench-layout{display:block}.bridge-room .bench-header{display:none}.bridge-room .workbench{padding:0;border:0;background:transparent}.bridge-room .side-guide{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:14px 35px;padding:26px;border:1px solid var(--line)}.bridge-room .side-guide .mori-label,.bridge-room .side-guide h3,.bridge-room .side-guide>p,.bridge-room .side-guide form{grid-column:1}.bridge-room .side-guide .next-doors{grid-column:2;grid-row:1/5;margin:0}.bridge-room .lab-assistant{margin-top:24px}.bridge-room #tool-mount{display:flex;flex-direction:column}.bridge-room #bridge-console{order:-1}
.bridge-console{--bridge-accent:#8be0df;--bridge-ink:#eaf3f2;--bridge-dim:#a8bdc2;--bridge-border:#29474f;background:#0c1c25;color:var(--bridge-ink);border:1px solid var(--bridge-border);border-radius:32px 32px 16px 16px;overflow:hidden;box-shadow:0 26px 70px #0003}.bridge-console.accent-amber{--bridge-accent:#edc68c}.bridge-console.accent-violet{--bridge-accent:#c4b6ed}.bridge-console .eyebrow{color:var(--bridge-accent);font-size:10px;letter-spacing:.15em}.bridge-console a{color:var(--bridge-accent)}.bridge-console .button{background:var(--bridge-accent);border-color:var(--bridge-accent);color:#0c1c25;white-space:normal}.bridge-console .button.ghost{background:transparent;color:var(--bridge-accent);border-color:#45626a}.bridge-console button:disabled{opacity:.45;cursor:default}.bridge-console button:focus-visible,.bridge-console a:focus-visible{outline:3px solid #fff;outline-offset:4px}.bridge-header{padding:30px 32px 22px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(120deg,#edf2ee12,transparent)}.bridge-header h2{font-family:var(--sans,sans-serif);font-size:clamp(25px,4vw,40px);font-weight:500;letter-spacing:-.03em;line-height:1.2;margin:6px 0 9px}.bridge-header p{color:var(--bridge-dim);font-size:13px;margin:0}.bridge-header-actions{display:flex;flex-wrap:wrap;gap:8px;max-width:450px;justify-content:flex-end}.bridge-console #bridge-runtime-status{padding:12px 32px;border-top:1px solid var(--bridge-border);border-bottom:1px solid var(--bridge-border);color:var(--bridge-dim);font-size:12px;line-height:1.6;min-height:45px}.bridge-signal-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:14px 22px;gap:9px}.bridge-signal{display:flex;align-items:flex-start;gap:10px;border:1px solid #29474f;background:#152b34;color:var(--bridge-ink);text-align:left;padding:14px;border-radius:8px;min-width:0;cursor:pointer}.bridge-signal>span{font-size:23px;color:var(--bridge-accent)}.bridge-signal b{display:block;font-size:13px;font-weight:500}.bridge-signal small{display:block;font-size:11px;color:var(--bridge-dim);margin:5px 0;line-height:1.5}.bridge-signal em{font-style:normal;font-size:9px;letter-spacing:.03em;color:var(--bridge-accent)}.bridge-signal i{font-style:normal;margin-left:auto;color:var(--bridge-accent)}.bridge-signal.signal-error{border-color:#cfa87480}
.bridge-viewport{position:relative;min-height:500px;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#203f4c 0,#102731 32%,#0c1c25 65%);isolation:isolate}.bridge-hull{position:absolute;inset:5% -4% 10%;border:2px solid #a7c0bd45;border-radius:50%;transform:perspective(650px) rotateX(29deg);pointer-events:none;box-shadow:inset 0 0 0 18px #a7c0bd08,0 0 0 20px #a7c0bd08}.bridge-hull i{position:absolute;inset:9%;border:1px solid #9ccfce25;border-radius:50%}.bridge-hull i:nth-child(2){inset:18%}.bridge-hull i:nth-child(3){inset:28%;border-style:dashed}.bridge-view-mark{position:absolute;top:9px;left:30px;font-size:9px;letter-spacing:.18em;color:var(--bridge-dim)}.bridge-orbit{position:absolute;inset:25px 35px 55px}.bridge-orbit-console{position:absolute;left:var(--bx);top:var(--by);width:118px;min-height:62px;border:1px solid #54747b;background:#18313bed;border-radius:7px;color:var(--bridge-ink);transform:translate(-50%,-50%) scale(var(--bs));padding:8px;cursor:pointer;box-shadow:0 5px 16px #0005;transition:top .35s,left .35s,transform .35s}.bridge-orbit-console>span{display:block;color:var(--bridge-accent);font-size:21px;line-height:1.1}.bridge-orbit-console b{display:block;font-size:10px;line-height:1.4;font-weight:500;margin-top:4px}.bridge-orbit-console small{display:block;font-size:7px;letter-spacing:.13em;margin-top:4px;color:var(--bridge-accent)}.bridge-orbit-console.active{background:var(--bridge-accent);color:#10232c;border-color:var(--bridge-accent)}.bridge-orbit-console.active>span,.bridge-orbit-console.active small{color:#10232c}.bridge-eye{position:absolute;inset:32% 29%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.bridge-eye strong{font-weight:400;font-size:clamp(18px,3vw,31px);line-height:1.25;margin:11px 0 4px;max-width:100%;overflow-wrap:anywhere}.bridge-eye p{font-size:11px;line-height:1.5;color:var(--bridge-dim);margin:5px 0 11px}.bridge-bearing{font-size:8px;letter-spacing:.12em;color:var(--bridge-accent)}.bridge-turn{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:20px;width:max-content;max-width:92%}.bridge-turn>span{color:var(--bridge-dim);font-size:11px}.bridge-turn button{border:1px solid #52717b;background:#203c48;color:var(--bridge-accent);border-radius:50%;height:36px;width:42px;cursor:pointer}
.bridge-console-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:24px}.bridge-console-list button{background:#17313b;color:var(--bridge-ink);border:1px solid #35545e;border-radius:8px;padding:18px;text-align:left;cursor:pointer}.bridge-console-list button.active{border-color:var(--bridge-accent)}.bridge-console-list button>span{font-size:25px;color:var(--bridge-accent);display:block;margin-bottom:10px}.bridge-console-list b,.bridge-console-list small{display:block}.bridge-console-list b{font-size:14px;font-weight:500}.bridge-console-list small{color:var(--bridge-dim);font-size:11px;line-height:1.5;margin-top:6px}.bridge-display{padding:30px 32px;background:#f0f3ed;color:#18323c;border-top:5px solid var(--bridge-accent);border-radius:22px 22px 0 0;min-height:300px}.bridge-display .eyebrow{color:#45636a}.bridge-display a{color:#165d6a}.bridge-display .button.ghost{color:#165d6a;border-color:#8ba7a9}.bridge-display .button:not(.ghost){background:#173f4b;color:#fff;border-color:#173f4b}.bridge-display-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;margin-bottom:20px}.bridge-display-heading h3{font-size:31px;font-weight:500;font-family:var(--sans,sans-serif);margin:7px 0 12px}.bridge-display-heading p{font-size:13px;line-height:1.7;max-width:620px;color:#46636b;margin:0}.bridge-display-heading>a{flex-shrink:0}.bridge-source-state{font-size:10px;text-transform:uppercase;letter-spacing:.1em;display:flex;align-items:center;gap:8px;margin:20px 0 12px}.bridge-source-state i{height:6px;width:6px;border-radius:50%;background:#607a81}.bridge-source-state.state-ready i{background:#24776f}.bridge-source-state.state-error i{background:#a36428}.bridge-provenance{display:flex;flex-wrap:wrap;gap:5px 20px;font-size:10px;line-height:1.6;color:#526b71;padding-bottom:16px;border-bottom:1px solid #bfcfcc}.bridge-provenance>span:first-child{width:100%}.bridge-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:24px 0}.bridge-metrics b{display:block;font-size:27px;font-weight:400;line-height:1.25}.bridge-metrics span{display:block;font-size:10px;line-height:1.5;color:#526b71;margin-top:7px}.bridge-records{max-height:650px;overflow:auto;overscroll-behavior:contain}.bridge-records>article{padding:23px 0;border-bottom:1px solid #c4d2ce}.bridge-records h4{font-size:17px;line-height:1.5;font-weight:500;margin:8px 0}.bridge-records h4 a{text-decoration:none}.bridge-records h4 a:hover{text-decoration:underline}.bridge-records small{display:block;line-height:1.6;color:#526b71;font-size:10px}.bridge-record-tags{display:flex;flex-wrap:wrap;gap:6px}.bridge-record-tags span{font-size:9px;background:#dbe6de;color:#34585c;padding:3px 7px;border-radius:3px}.bridge-area{font-size:11px;line-height:1.6;color:#526b71}.bridge-records details{margin:12px 0;font-size:12px;line-height:1.75}.bridge-records details p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.bridge-records summary{cursor:pointer;color:#1c5963}.bridge-context,.bridge-empty,.bridge-error{font-size:12px;line-height:1.8;color:#526b71;margin:18px 0}.bridge-error{color:#865022;padding:12px;border-left:3px solid #bd8a44;background:#e7d9bd44}.bridge-portals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}.bridge-portals>article{padding:18px;border:1px solid #b9ccca;border-radius:8px;background:#ffffff6b}.bridge-portals h4{font-size:15px;line-height:1.6;margin:7px 0}.bridge-portals h4 a{text-decoration:none}.bridge-portals p{font-size:11px;line-height:1.8;color:#526b71;margin:0}
.bridge-settings{background:#132c36;padding:25px 32px;border-top:1px solid var(--bridge-border)}.bridge-settings>summary{color:var(--bridge-accent);font-size:12px;cursor:pointer;line-height:1.8}.bridge-settings form{margin-top:24px}.bridge-settings fieldset{border:0;padding:0;margin:0;min-width:0}.bridge-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bridge-settings label{display:block;font-size:11px;color:#cadbdd;line-height:1.8}.bridge-settings input:not([type=checkbox]),.bridge-settings select{display:block;width:100%;min-height:44px;background:#0b2029;border:1px solid #45636d;color:#eef5f3;padding:11px 12px;margin-top:6px;border-radius:5px;font:inherit;font-size:13px;box-sizing:border-box}.bridge-settings input:focus,.bridge-settings select:focus{outline:2px solid var(--bridge-accent);outline-offset:2px}.bridge-settings .bridge-check{display:flex;align-items:center;gap:8px}.bridge-settings input[type=checkbox]{width:16px;height:16px;accent-color:var(--bridge-accent);margin-right:8px;vertical-align:middle}.bridge-settings .bridge-context{color:var(--bridge-dim)}.bridge-topic-settings{margin:22px 0}.bridge-topic-settings>span{display:block;margin-bottom:14px}.bridge-topic-settings>div{display:grid;grid-template-columns:1fr 115px 35px 35px;align-items:center;gap:8px;padding:9px 0;border-bottom:1px solid #36515a}.bridge-topic-settings>div button,.bridge-personal-portals button{border:1px solid #47656b;background:#203d47;border-radius:3px;color:var(--bridge-accent);min-height:33px;cursor:pointer}.bridge-location-tools{margin-top:28px;padding-top:6px;border-top:1px solid #36515a}.bridge-location-tools form>div{display:flex;gap:10px;align-items:center;margin-bottom:14px}.bridge-location-tools form input{margin-top:0!important}.bridge-location-tools form button{flex-shrink:0}#bridge-place-results{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0;font-size:12px;color:var(--bridge-dim)}.bridge-settings #bridge-portal-add{padding-top:24px;border-top:1px solid #36515a}.bridge-settings #bridge-portal-add .bridge-form-grid{margin-top:15px;margin-bottom:15px}.bridge-personal-portals>div{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;font-size:12px;border-bottom:1px solid #36515a;padding:15px 0;overflow-wrap:anywhere}.bridge-personal-portals small{color:var(--bridge-dim);font-size:10px}.bridge-personal-portals button{padding:6px 10px}.bridge-console .tool-actions{gap:8px}
@media(min-width:1100px){.bridge-viewport{min-height:555px}.bridge-orbit{inset:25px 8% 55px}.bridge-eye{inset:33% 31%}.bridge-orbit-console{width:140px;min-height:70px}.bridge-orbit-console b{font-size:12px}}
@media(max-width:760px){.bridge-header{display:block;padding:24px 20px}.bridge-header-actions{justify-content:flex-start;margin-top:20px}.bridge-signal-strip{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.bridge-console #bridge-runtime-status{padding:12px 20px}.bridge-viewport{min-height:560px}.bridge-orbit{inset:30px 25px 65px}.bridge-orbit-console{width:90px;min-height:60px;padding:6px}.bridge-orbit-console b{font-size:9px}.bridge-eye{inset:35% 27%}.bridge-eye strong{font-size:20px}.bridge-eye p{font-size:10px}.bridge-turn{gap:12px}.bridge-turn span{font-size:10px}.bridge-display{padding:24px 20px}.bridge-display-heading{display:block}.bridge-display-heading>a{margin-top:15px}.bridge-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.bridge-portals{grid-template-columns:1fr}.bridge-settings{padding:24px 20px}.bridge-form-grid{grid-template-columns:1fr}.bridge-topic-settings>div{grid-template-columns:1fr 85px 30px 30px;gap:4px}.bridge-topic-settings label{font-size:10px}.bridge-console-list{grid-template-columns:repeat(2,minmax(0,1fr));padding:15px}.bridge-location-tools form>div{display:block}.bridge-location-tools form button{margin-top:10px}.bridge-personal-portals>div{grid-template-columns:1fr auto}.bridge-personal-portals small{grid-column:1}.bridge-personal-portals button{grid-row:1/3;grid-column:2}.bridge-room .side-guide{display:block}.bridge-room .side-guide .next-doors{margin-top:25px}.bridge-room .room-hero-content{padding-top:30px}.bridge-room .room-body{padding-top:15px}}
@media(prefers-reduced-motion:reduce){.bridge-orbit-console{transition:none}}

.bridge-locations{padding:24px 32px;border-bottom:1px solid var(--bridge-border);background:#102630}.bridge-area-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.bridge-area-heading h3{font:500 22px/1.35 var(--sans,sans-serif);margin:7px 0}.bridge-area-heading p,.bridge-area-note{font-size:12px;line-height:1.7;color:var(--bridge-dim);margin:8px 0 16px}.bridge-area-heading label{display:block;min-width:240px;max-width:100%;font-size:11px;color:var(--bridge-dim)}.bridge-area-heading select{display:block;width:100%;max-width:370px;min-height:44px;margin-top:6px;padding:10px;border:1px solid #45636d;background:#0b2029;color:#eef5f3;border-radius:5px;font:inherit}.bridge-area-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:10px 0 18px}.bridge-area-cards article{min-width:0;padding:16px;border:1px solid #36565f;border-radius:8px;background:#152e38}.bridge-area-cards article.selected{border-color:var(--bridge-accent)}.bridge-area-cards h4{font:500 15px/1.5 var(--sans,sans-serif);margin:7px 0;overflow-wrap:anywhere}.bridge-area-cards p{font-size:12px;line-height:1.6;margin:10px 0 6px}.bridge-area-cards small{display:block;font-size:10px;line-height:1.7;color:var(--bridge-dim)}.bridge-area-cards article>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.bridge-area-cards button{min-height:44px}.bridge-location-tools>form>label{margin-bottom:10px}.bridge-area-note{margin-bottom:0}.bridge-area-heading select:focus-visible{outline:3px solid var(--bridge-accent);outline-offset:3px}
.bridge-locations .bridge-location-tools{margin:18px 0 24px;padding:16px;border:1px solid #36565f;border-radius:8px;background:#0c222c}.bridge-location-tools label{display:block;font-size:12px;line-height:1.7;color:var(--bridge-dim)}.bridge-location-tools input,.bridge-location-tools select{display:block;min-width:0;width:100%;min-height:44px;background:#0b2029;color:#eef5f3;border:1px solid #45636d;border-radius:5px;padding:10px 12px;font:inherit;box-sizing:border-box}.bridge-location-tools select{max-width:340px}.bridge-location-tools input:focus-visible,.bridge-location-tools select:focus-visible{outline:2px solid var(--bridge-accent);outline-offset:2px}.bridge-location-tools .local-label{font-size:11px;line-height:1.7;color:var(--bridge-dim)}.bridge-coordinate-details{grid-column:1/-1;border:1px solid #36565f;padding:12px;border-radius:5px}.bridge-coordinate-details summary{font-size:12px;color:var(--bridge-accent);cursor:pointer}.bridge-coordinate-details label{margin-top:12px}
.bridge-town-news{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;padding:16px;border:1px solid #36565f;border-radius:8px;margin:12px 0 18px;background:#102630}.bridge-town-news label{display:block;flex:1 1 240px;min-width:0;font-size:12px;color:var(--bridge-dim)}.bridge-town-news input{display:block;min-height:44px;width:100%;box-sizing:border-box;margin-top:8px;padding:10px 12px;border:1px solid #45636d;border-radius:5px;background:#0b2029;color:#eef5f3;font:inherit}.bridge-town-news input:focus-visible{outline:2px solid var(--bridge-accent);outline-offset:2px}.bridge-town-news>p{flex:1 1 100%;margin:0;font-size:11px;line-height:1.7}.bridge-town-news button{min-height:44px}.station-town-news{margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:8px}.station-town-news h4{margin:8px 0 14px}.station-town-news label{display:block;font-size:12px;margin-bottom:7px}.station-town-news input{min-height:44px;width:100%;box-sizing:border-box;padding:10px;font:inherit}.station-town-news .local-label{font-size:12px;line-height:1.6}
@media(max-width:760px){.bridge-locations{padding:22px 20px}.bridge-area-heading{display:block}.bridge-area-heading label{min-width:0}.bridge-area-heading select{max-width:100%}.bridge-area-cards{grid-template-columns:1fr}}

@media(max-width:500px){.masthead{padding:0 14px;gap:12px;height:80px}.masthead .brand{font-size:16px;letter-spacing:1px;gap:7px}.masthead .brand-mark{width:33px;height:33px;font-size:17px}.masthead .brand small{display:none}.masthead nav{gap:12px;font-size:11px;letter-spacing:0}.masthead nav a{gap:4px}.masthead .count{display:none}.masthead .icon-button{width:31px;height:31px}.bridge-orbit-console{width:72px;min-height:58px}.bridge-orbit-console b{font-size:8px}.bridge-orbit-console small{font-size:6px}.bridge-orbit{inset:30px 12px 65px}.bridge-eye{inset:35% 25%}.bridge-eye strong{font-size:17px}}
