.room-pin::before{display:none}
.room-pin{color:var(--ink);text-align:left;z-index:2;transition:background .25s;will-change:transform,opacity}
.room-pin[aria-hidden=true]{pointer-events:none}
.room-pin[data-fraction=A]{--fraction-colour:#467568;--fraction-paper:#e8f1ed}
.room-pin[data-fraction=B]{--fraction-colour:#98603d;--fraction-paper:#f4ebe3}
.room-pin[data-fraction] small,.viewer .room-pin[data-fraction] small{color:var(--fraction-colour)}
.has-fraction-hover[data-hover-fraction=A] .room-pin[data-fraction=A],.has-fraction-hover[data-hover-fraction=B] .room-pin[data-fraction=B]{background:var(--fraction-paper);border-color:var(--fraction-colour);box-shadow:0 0 0 2px color-mix(in srgb,var(--fraction-colour) 20%,transparent)}
.fraction-legend{position:absolute;z-index:6;top:24px;left:24px;max-width:min(350px,calc(100% - 48px));pointer-events:none}
.has-fraction-legend .scene-badge{display:none}
.room-mobile-dock{display:none}
@media(max-width:600px){
 .room-mobile-dock{display:flex;gap:8px;overflow-x:auto;padding:12px 0 2px;scrollbar-width:none;max-width:100%;overscroll-behavior-x:contain}
 .room-mobile-dock button{flex:none;min-height:48px;padding:9px 14px;border:1px solid var(--line);border-radius:24px;background:var(--paper);text-align:left;color:var(--ink);font:400 14px/1.1 var(--serif)}
 .room-mobile-dock small{display:block;font:500 10px/1.2 var(--sans);margin-top:5px;color:var(--muted)}
 .room-mobile-dock [data-fraction=A] small{color:#467568}.room-mobile-dock [data-fraction=B] small{color:#98603d}
 .viewer .hotspots .room-pin,.flight-stage .tags .room-pin{display:none}
 .viewer .room-pin-line,.flight-stage .room-pin-line{display:none}
}
.fraction-legend>div{display:flex;gap:4px;width:max-content;padding:4px;border:1px solid var(--line);border-radius:28px;background:#f5f4f0ed;backdrop-filter:blur(12px);pointer-events:auto}
.fraction-legend button{display:flex;align-items:center;gap:8px;border:0;border-radius:22px;background:transparent;padding:10px 14px;min-height:40px;font:500 11px/1.2 var(--sans);color:var(--ink);cursor:pointer;transition:background .2s}
.fraction-legend button[data-fraction-highlight=A]{--fraction-colour:#467568;--fraction-paper:#e8f1ed}
.fraction-legend button[data-fraction-highlight=B]{--fraction-colour:#98603d;--fraction-paper:#f4ebe3}
.fraction-legend button i{width:7px;height:7px;border-radius:50%;background:var(--fraction-colour)}
.fraction-legend button[aria-pressed=true]{background:var(--fraction-paper);color:var(--fraction-colour)}
.fraction-legend button:focus-visible{outline:2px solid var(--fraction-colour);outline-offset:2px}
.fraction-description{font:400 11px/1.5 var(--sans);margin:8px 0 0;padding:8px 12px;background:#f5f4f0ed;border-radius:var(--radius);max-width:100%;width:fit-content}
.fraction-description:empty{display:none}
.flight .fraction-legend{top:80px;left:auto;right:var(--gutter)}
@media(max-width:860px){.fraction-legend{top:16px;left:16px;max-width:calc(100% - 32px)}.fraction-legend button{min-height:44px;padding:10px 12px}.flight .fraction-legend{top:84px;left:16px}.fraction-description{font-size:11px;max-width:260px}}
.room-pin-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 3px #f5f4f0cc;transform:translate(-50%,-50%);pointer-events:none}
.room-pin-line{position:absolute;height:1px;background:#15151555;transform-origin:left center;pointer-events:none}
.viewer .room-pin{display:flex;gap:10px;align-items:center;padding:7px 8px 7px 12px;box-shadow:none}
.viewer .room-pin small{display:block;font:500 10px/1 var(--sans);color:var(--muted);letter-spacing:.06em;margin-top:4px}
.viewer .room-pin i{flex:none;width:24px;height:24px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font:400 16px/1 var(--sans);font-style:normal}
.room-navigation{position:absolute;z-index:5;left:50%;bottom:24px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;max-width:calc(100% - 32px);width:max-content}
.room-floors{display:flex;gap:3px;padding:4px;background:#f5f4f0ed;border:1px solid var(--line);border-radius:32px;backdrop-filter:blur(12px)}
.room-floors button,.room-directory{border:0;background:none;color:var(--muted);padding:11px 14px;white-space:nowrap;border-radius:28px;font:500 10px/1.2 var(--sans);cursor:pointer;min-height:36px}
.room-floors button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.room-directory{background:#f5f4f0ed;border:1px solid var(--line);color:var(--ink);display:flex;gap:14px;align-items:center;backdrop-filter:blur(12px)}
.room-directory:hover,.room-floors button:hover{color:var(--ink);background:#fff}
.room-floors button[aria-pressed=true]:hover{background:#343434;color:#fff}
.room-dialog{width:min(1000px,calc(100% - 32px));max-height:calc(100svh - 32px);padding:24px;border:0;border-radius:var(--radius);background:var(--paper);color:var(--ink);overflow:auto;overscroll-behavior:contain}
.room-dialog::backdrop{background:#16110ee0;backdrop-filter:blur(8px)}
.room-dialog-bar{position:sticky;top:0;z-index:4;background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:26px}
.room-dialog-bar .eyebrow{margin:0}
.room-dialog-bar>button{border:0;background:none;padding:10px 0;font:500 11px/1 var(--sans);color:var(--ink);cursor:pointer}
.room-dialog h2{font:400 clamp(38px,5vw,64px)/1 var(--serif);letter-spacing:-.02em;margin-bottom:24px}
.room-detail{display:grid;grid-template-columns:1fr minmax(260px,.85fr);gap:40px}
.room-detail-copy{padding-top:20px}
.room-detail-copy>p:not(.eyebrow){font:400 15px/1.65 var(--sans);max-width:420px}
.room-detail-copy>.room-area{font:400 52px/1 var(--serif)!important;margin:22px 0 26px}
.room-detail-copy dl{margin:28px 0;display:grid;gap:10px}
.room-detail-copy dl>div{display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding-bottom:10px;font:400 12px/1.4 var(--sans)}
.room-detail-copy dt{color:var(--muted)}
.room-detail-copy dd{margin:0}
.room-preview{margin:24px 0}
.room-preview button{display:block;width:100%;padding:0;border:0;background:#dedbd4;cursor:zoom-in}
.room-preview img{display:block;width:100%;max-height:330px;object-fit:contain}
.room-preview figcaption{font:400 11px/1.5 var(--sans);color:var(--muted);margin-top:8px}
.room-detail-copy .btn{background:var(--wine);color:#f4eee7;border:0;cursor:pointer;font-size:10px;letter-spacing:.02em;text-transform:none;padding:16px}
.room-detail-copy>.room-source{font-size:11px!important;color:var(--muted);line-height:1.5;margin-top:28px}
.room-plan{margin:0;text-align:center}
.room-plan>div{position:relative;max-width:340px;margin:auto}
.room-plan img{width:100%;height:auto}
.room-plan-marker{position:absolute;width:28px;height:28px;border-radius:50%;border:2px solid var(--wine);background:#96574126;box-shadow:0 0 0 7px #96574118;transform:translate(-50%,-50%)}
.room-plan-marker::after{content:'';position:absolute;inset:9px;background:var(--wine);border-radius:50%}
.room-plan figcaption{font:400 11px/1.4 var(--sans);color:var(--muted);margin-top:12px}
.room-related{border-top:1px solid var(--line);padding-top:22px;margin-top:28px}
.room-related .eyebrow{margin-bottom:10px}
.room-related>div{display:flex;flex-wrap:wrap;gap:7px}
.room-related button{border:1px solid var(--line);border-radius:24px;padding:11px 15px;background:transparent;color:var(--muted);font:500 11px/1.2 var(--sans);cursor:pointer}
.room-related button[aria-pressed=true]{background:var(--wine);color:#fff}
.room-catalog{display:grid;grid-template-columns:1fr 1fr;gap:28px 40px}
.room-catalog h3{margin-bottom:16px}
.room-catalog section>div{border-top:1px solid var(--line)}
.room-catalog button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;cursor:pointer;color:var(--ink);font:400 18px/1.15 var(--serif)}
.room-catalog button small{display:block;margin-top:6px;color:var(--muted);font:400 10px/1 var(--sans)}
.room-catalog button>span:last-child{font:400 11px/1 var(--sans);white-space:nowrap}
.room-outdoor img{width:100%;margin-top:20px}
.room-outdoor p{font-size:11px;color:var(--muted);margin-top:10px}
.room-detail-copy .room-tour-entry{display:inline-flex;align-items:center;gap:20px;margin-top:12px;min-height:48px;padding:16px 22px;font-size:12px}
.room-tour{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:hidden;background:#252321;color:#fff;font-family:var(--sans);animation:tour-enter .55s cubic-bezier(.16,1,.3,1) both}
.room-tour::backdrop{background:#252321}
.room-tour.is-leaving{animation:tour-leave .22s ease both}
.tour-stage{position:absolute;inset:0;overflow:hidden}
.tour-stage canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab;outline:none}
.tour-stage canvas.is-dragging{cursor:grabbing}
.tour-stage canvas:focus-visible{outline:2px solid #fff;outline-offset:-4px}
.tour-header{position:absolute;inset:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:max(26px,env(safe-area-inset-top)) max(32px,env(safe-area-inset-right)) 90px;background:linear-gradient(#151310ae,#15131055,transparent);pointer-events:none}
.tour-kicker{font-size:10px;letter-spacing:.13em;text-transform:uppercase;margin:0 0 10px;color:#ffffffb8}
.tour-header h2{font:400 clamp(32px,4vw,50px)/1.05 var(--serif);letter-spacing:-.015em;margin:0 0 10px}
.tour-meta{font-size:11px;line-height:1.6;letter-spacing:.025em;margin:0;color:#ffffffe0}
.room-tour button,.room-tour select{font:500 12px/1.2 var(--sans);cursor:pointer}
.room-tour button:focus-visible,.room-tour select:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.tour-exit{pointer-events:auto;display:flex;align-items:center;gap:24px;min-height:46px;padding:10px 17px;border:1px solid #ffffff55;border-radius:30px;background:#25232170;color:#fff;backdrop-filter:blur(10px);transition:background .2s}
.tour-exit span{font-size:22px;font-weight:400}
.tour-exit:hover{background:#252321b0}
.tour-status{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);padding:12px 20px;background:#252321c9;backdrop-filter:blur(10px);border-radius:28px;text-align:center;max-width:calc(100% - 40px);font-size:12px;pointer-events:none}
.tour-retry{position:absolute;left:50%;top:56%;transform:translateX(-50%);padding:14px 22px;border:0;background:#f5f4ef;color:#252321;border-radius:24px}
.tour-footer{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;align-items:center;padding:55px 24px max(19px,env(safe-area-inset-bottom));background:linear-gradient(transparent,#15131038,#15131075);pointer-events:none}
.tour-hint{font-size:11px;letter-spacing:.035em;text-shadow:0 1px 10px #0008;margin:0 0 15px;transition:opacity .5s}
.tour-hint.is-used{opacity:0}
.tour-controls{display:flex;gap:10px;pointer-events:auto}
.tour-room-picker,.tour-tools{display:flex;align-items:center;background:#f5f4f0f2;color:#24211d;border-radius:28px;padding:4px;box-shadow:0 4px 30px #0002;backdrop-filter:blur(12px)}
.tour-controls button{display:grid;place-items:center;background:none;color:inherit;border:0;border-radius:24px;min-width:44px;min-height:44px;padding:10px;transition:background .2s}
.tour-controls button:hover{background:#24211d12}
.tour-room-picker label{max-width:275px}
.tour-room-picker select{border:0;outline-offset:0;background:transparent;color:inherit;min-height:44px;max-width:100%;padding:0 22px 0 8px}
.tour-tools [data-plan]{display:flex;gap:14px;padding:10px 16px}
.tour-tools [data-plan][aria-expanded=true]{background:#24211d;color:#fff}
.tour-tools [data-zoom-in],.tour-tools [data-zoom-out],.tour-tools [data-reset]{font-size:21px;font-weight:400}
.tour-footnote{font-size:11px;letter-spacing:.025em;color:#ffffffba;margin:12px 0 0}
.tour-plan{position:absolute;right:28px;bottom:160px;width:230px;max-height:calc(100% - 195px);overflow:auto;padding:18px;background:#f5f4f0f5;backdrop-filter:blur(14px);color:#24211d;border-radius:var(--radius);box-shadow:0 5px 40px #0002;animation:tour-plan-in .25s ease}
.tour-plan>p{font:400 20px/1.2 var(--serif);margin:0 0 14px}
.tour-plan small{display:block;font:400 10px/1.4 var(--sans);color:#68625b;margin-top:5px}
.tour-plan>div{position:relative;width:100%}
.tour-plan img{display:block;width:100%;height:auto}
.room-tour [hidden]{display:none!important}
@keyframes tour-enter{from{opacity:0;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}
@keyframes tour-leave{to{opacity:0;transform:scale(.99)}}
@keyframes tour-plan-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:680px){
 .tour-header{padding:22px 18px 80px;gap:10px}
 .tour-header h2{font-size:32px}
 .tour-kicker{font-size:10px}
 .tour-meta{font-size:10px;max-width:210px}
 .tour-exit{font-size:10px!important;gap:12px;white-space:nowrap;padding:8px 12px}
 .tour-controls{flex-direction:column;align-items:center;gap:8px;max-width:100%}
 .tour-room-picker{max-width:100%}
 .tour-room-picker label{max-width:calc(100vw - 144px)}
 .tour-room-picker select{font-size:11px;padding-right:12px}
 .tour-footer{padding:50px 16px max(15px,env(safe-area-inset-bottom))}
 .tour-hint span{display:none}
 .tour-plan{right:16px;bottom:205px;width:180px;max-height:calc(100% - 335px);padding:12px}
 .tour-plan>p{font-size:17px}
}
@media(prefers-reduced-motion:reduce){.room-tour,.room-tour.is-leaving,.tour-plan{animation:none}.tour-hint{transition:none}}
@media(max-width:860px){
  .room-navigation{flex-direction:column;gap:6px;bottom:18px;width:calc(100% - 28px)}
  .room-floors{max-width:100%;width:100%;justify-content:center;border-radius:24px}
  .room-floors button{padding:9px 7px;white-space:normal;font-size:10px;min-height:37px;flex:1}
  .room-directory{padding:9px 15px;min-height:32px;font-size:10px}
  .room-pin{font-size:14px}.room-pin small{font-size:10px;letter-spacing:.04em}
  .room-dialog{padding:20px;width:calc(100% - 24px);max-height:calc(100svh - 24px)}
  .room-detail{grid-template-columns:1fr;gap:26px}
  .room-detail-copy{padding-top:0}
  .room-plan>div{max-width:300px}
  .room-catalog{grid-template-columns:1fr;gap:30px}
}

/* ---------- Painel da divisão, compacto: cabe num ecrã no computador ---------- */
.room-dialog{width:min(1080px,calc(100% - 32px));padding:20px 28px 22px}
.room-dialog-bar{margin-bottom:18px;padding-bottom:12px}
.room-detail{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:clamp(24px,3vw,44px);align-items:start}
.room-detail>*{min-width:0;max-width:100%}
.room-outdoor{width:100%;min-width:0;overflow:hidden}
.room-outdoor img{display:block;width:100%;max-width:100%;height:auto;margin-top:0}
.room-detail-copy{overflow-wrap:break-word}
.room-detail-copy{padding-top:0}
.room-detail-copy>.eyebrow{margin-bottom:10px}
.room-head{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:16px;row-gap:4px;margin-bottom:10px}
.room-dialog .room-head h2{font-size:clamp(32px,3.4vw,46px);margin:0}
.room-head .room-area{font:400 clamp(20px,2vw,26px)/1 var(--serif);color:var(--muted);margin:0;white-space:nowrap}
.room-detail-copy>p.room-desc{font-size:14px;line-height:1.55;margin:0 0 16px;max-width:460px}
.room-detail-copy dl.room-facts{display:flex;flex-wrap:wrap;gap:0;margin:0 0 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.room-detail-copy dl.room-facts>div{display:block;border:0;padding:9px 20px 9px 0;margin-right:20px;border-right:1px solid var(--line)}
.room-detail-copy dl.room-facts>div:last-child{border-right:0;margin-right:0}
.room-facts dt{font:500 10px/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;margin-bottom:3px}
.room-facts dd{font:400 13px/1.3 var(--sans)}
.room-cta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.room-detail-copy .room-cta .btn{margin:0;min-height:44px;padding:13px 18px;font-size:12px}
.room-detail-copy .room-cta .room-btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.room-detail-copy .room-cta .room-btn-ghost:hover{border-color:var(--ink)}
.room-preview{margin:0}
.room-preview img{width:100%;height:clamp(150px,24svh,230px);max-height:none;object-fit:cover}
.room-detail-copy>.room-source{margin-top:12px}
/* A planta acompanha a altura da janela: vê-se sempre inteira, ao lado da informação. */
.room-plan>div{max-width:none}
.room-plan img{width:auto;height:min(560px,calc(100svh - 190px));max-width:100%;object-fit:contain}
.room-plan figcaption{margin-top:8px}
.room-related{margin-top:16px;padding-top:14px}
.room-related button{padding:8px 13px}
@media (max-width:760px){
  .room-dialog{padding:16px 18px 18px}
  .room-detail{grid-template-columns:1fr}
  .room-plan img{width:100%;height:auto;max-width:300px}
  .room-preview img{height:190px}
}

@media(max-width:860px){
  .room-navigation{bottom:max(16px,env(safe-area-inset-bottom));gap:8px}
  .room-floors button{min-height:44px;font-size:10px;line-height:1.3;padding:8px 6px}
  .room-directory{min-height:44px;font-size:10px}
  .room-dialog-bar>button,.room-related button{min-height:44px}
  .room-dialog{max-height:calc(100dvh - 24px)}
  .room-dialog-bar{gap:12px}
  .room-dialog-bar .eyebrow{font-size:10px}
  .tour-header{padding-top:max(18px,env(safe-area-inset-top));padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}
  .tour-header>div{min-width:0}
  .tour-header h2{overflow-wrap:break-word}
  .tour-exit{flex-shrink:0}
  .tour-controls,.tour-room-picker,.tour-tools{max-width:100%;min-width:0}
  .tour-room-picker label{min-width:0;overflow:hidden}
  .tour-footnote{text-align:center;line-height:1.5}
}
@media(max-width:360px){
  .tour-header h2{font-size:28px}
  .tour-exit{gap:8px;padding:8px 10px}
  .tour-meta{font-size:10px}
  .room-floors button{font-size:10px;padding:8px 4px}
}
@media(max-height:560px) and (min-width:600px){
  .room-navigation{flex-direction:row;bottom:12px}
  .room-floors{flex:1;width:auto}
  .room-directory{white-space:nowrap}
  .tour-header{padding:16px 20px 50px}
  .tour-header h2{font-size:30px;margin-bottom:4px}
  .tour-kicker{margin-bottom:6px}
  .tour-footer{padding:30px 20px max(12px,env(safe-area-inset-bottom))}
  .tour-controls{flex-direction:row}
  .tour-hint{margin-bottom:8px}
  .tour-plan{bottom:110px;max-height:calc(100% - 160px)}
}

/* Click targets sit on the two homes rather than in a separate control panel. */
.fraction-zones{position:absolute;inset:0;pointer-events:none;z-index:7}
.fraction-zone{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;display:grid;gap:5px;text-align:left;padding:10px 14px;border:1px solid #467568;border-radius:4px;background:#f5f4f0ed;color:var(--ink);box-shadow:0 3px 14px #15151512;cursor:pointer;transition:background .2s,box-shadow .2s}
.fraction-zone[data-fraction-highlight=B]{border-color:#98603d}
.fraction-zone span{font:400 20px/1 var(--serif)}
.fraction-zone small{font:500 10px/1.2 var(--sans);color:#467568}
.fraction-zone[data-fraction-highlight=B] small{color:#98603d}
.fraction-zone:hover,.fraction-zone:focus-visible,.fraction-zone[aria-pressed=true]{background:#fff;box-shadow:0 0 0 3px #15151515}

.flight-interaction-hint{position:absolute;bottom:28px;left:var(--gutter);z-index:8;margin:0;font:400 12px/1.5 var(--sans);color:var(--muted);pointer-events:none}
@media(min-width:861px){
.flight-stage .tags .room-pin{width:32px;height:32px;min-width:32px;padding:0;justify-content:center;border:1px solid #15151588;background:var(--paper);border-radius:50%;overflow:visible}
.flight-stage .tags .room-pin>i{font-size:18px}
.flight-stage .tags .room-pin>span{position:absolute;bottom:40px;left:50%;transform:translateX(-50%) translateY(5px);padding:10px 14px;background:#f5f4f0;border:1px solid var(--line);border-radius:4px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}
.flight-stage .tags .room-pin:hover>span,.flight-stage .tags .room-pin:focus-visible>span{opacity:1;transform:translateX(-50%) translateY(0)}
.flight-stage .tags .room-pin:hover,.flight-stage .tags .room-pin:focus-visible{box-shadow:0 0 0 5px #15151512;background:white;z-index:9}
.flight-stage .room-pin-line,.flight-stage .room-pin-dot{visibility:hidden}
}

@media(min-width:861px){
.flight-stage .tags .room-pin{width:28px;height:28px;min-width:28px;border:0;background:transparent;box-shadow:none}
.flight-stage .tags .room-pin>i{display:none}
.flight-stage .tags .room-pin::after{content:"";display:block;width:8px;height:8px;background:var(--ink);border:2px solid var(--paper);border-radius:50%;box-shadow:0 0 0 1px #15151555;transition:transform .2s,box-shadow .2s}
.flight-stage .tags .room-pin:hover,.flight-stage .tags .room-pin:focus-visible{background:transparent;box-shadow:none}
.flight-stage .tags .room-pin:hover::after,.flight-stage .tags .room-pin:focus-visible::after{transform:scale(1.3);box-shadow:0 0 0 5px #15151515}
.flight-stage .tags .room-pin>span{bottom:34px;font-size:16px}
}

/* Compact touch targets stay on the house; no duplicate row of room buttons. */
.room-floor-picker{display:none}
@media(max-width:860px){
 .room-mobile-dock{display:none!important}
 .viewer .fraction-legend{display:none}
 .room-navigation{flex-direction:row;bottom:14px;gap:8px;width:calc(100% - 28px)}
 .room-navigation .room-floors{display:none}
 .room-floor-picker{display:flex;align-items:center;gap:8px;background:#f5f4f0ed;border:1px solid var(--line);border-radius:24px;padding:0 12px;min-height:44px;flex:1;min-width:0;font:500 11px var(--sans)}
 .room-floor-picker select{min-width:0;width:100%;min-height:44px;border:0;background:transparent;color:var(--ink);font:500 12px var(--sans)}
 .room-directory{min-height:44px;padding:10px 14px;font-size:11px}
 .viewer .hotspots .room-pin,.flight-stage .tags .room-pin{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:none;pointer-events:auto;touch-action:manipulation;cursor:pointer}
 .viewer .room-pin>span,.viewer .room-pin>i,.flight-stage .tags .room-pin>span,.flight-stage .tags .room-pin>i{display:none}
 .viewer .room-pin::after,.flight-stage .tags .room-pin::after{content:"";display:block;width:10px;height:10px;border:2px solid var(--paper);border-radius:50%;background:var(--ink);box-shadow:0 0 0 1px #15151566}
 .viewer .room-pin:focus-visible,.flight-stage .tags .room-pin:focus-visible{outline:2px solid var(--ink);outline-offset:-6px;background:#f5f4f04d}
 .viewer .room-pin-dot,.flight-stage .room-pin-dot,.viewer .room-pin-line,.flight-stage .room-pin-line{display:none}
}
