/* Customer seating: a quiet, spacious room model with persistent booking context. */
.seating-experience{background:#f8f7f3;color:#293d32}
.seating-experience .seating-page-inner{max-width:1440px;padding:27px clamp(24px,5vw,72px) 44px;gap:0}
.seating-breadcrumb{display:flex;align-items:center;gap:13px;font-size:12px;color:#879083;min-height:28px}
.seating-breadcrumb button{display:flex;align-items:center;gap:7px;background:none;border:0;padding:0;color:#526553;font-size:12px;font-weight:550}
.seating-breadcrumb svg{width:14px;height:14px}
.seating-experience .seating-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:22px 0 24px}
.seating-eyebrow{font-size:10px;font-weight:650;letter-spacing:.17em;color:#788673}
.seating-experience .seating-head h1{font-size:clamp(27px,2.75vw,39px);font-weight:500;letter-spacing:-.045em;line-height:1.14;margin:10px 0 10px;color:#203e30}
.seating-experience .seating-head p{font-size:14px;color:#80877a;margin:0}
.seating-steps{display:flex;align-items:center;gap:17px;font-size:12px;color:#959b90;white-space:nowrap}
.seating-steps span{display:flex;align-items:center;gap:8px}
.seating-steps b{width:23px;height:23px;display:grid;place-items:center;border:1px solid #dcded5;border-radius:50%;font-size:10px;font-weight:500}
.seating-steps [aria-current]{color:#385b43}
.seating-steps [aria-current] b{background:#e4ebdb;border-color:#e4ebdb}
.seating-steps i{width:34px;height:1px;background:#dbdfd3}
.seating-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}
.seating-room-column{min-width:0}
.seating-moment{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:0;border:1px solid #e1e3d8;background:#fffefa;border-radius:13px;margin-bottom:20px;padding:12px 5px}
.seating-moment .field{padding:0 15px;gap:0;min-width:0}
.seating-moment .field+.field{border-left:1px solid #e5e7dd}
.seating-moment .field label{font-size:10px;font-weight:500;letter-spacing:.04em;text-transform:none;color:#858c7d;margin:0 0 5px}
.seating-moment .control{background:transparent;border:0;padding:0;min-width:0;height:24px;min-height:24px;border-radius:3px;color:#334937;font-size:13px;font-weight:550;box-shadow:none;width:100%;line-height:24px}
.seating-moment select.control{padding-right:8px}
.seating-experience :is(button,input,select,textarea):focus-visible{outline:3px solid #89a971;outline-offset:3px}
.seating-experience .seating-space-bar{margin:0 0 16px;gap:8px}
.seating-experience .seating-space-tabs{padding-bottom:4px}
.seating-experience .seating-space-tabs .space-tab{border-radius:10px;min-width:140px;padding:9px 13px;font-size:12px}
.seating-experience .seating-space-tabs .space-tab strong{font-weight:550}
.seating-experience .seating-floor-wrap{min-height:0}
.floor-experience{border:1px solid #dee2d5;border-radius:18px;background:#f1f2e9;overflow:hidden;box-shadow:0 8px 28px #293d3207}
.room-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 20px;background:#fcfcf7;border-bottom:1px solid #e3e6da}
.room-space-title{display:flex;align-items:center;gap:10px;min-width:0}
.room-space-title>svg{width:20px;height:20px;color:#73806b;flex-shrink:0}
.room-space-title>div{display:grid;gap:5px}
.room-space-title strong{font-size:14px;font-weight:600;overflow-wrap:anywhere}
.room-availability{display:flex;align-items:center;gap:5px;color:#727e65;font-size:11px}
.room-availability i{height:5px;width:5px;background:#729359;border-radius:50%}
.room-view-switch{display:flex;gap:3px;padding:3px;border:1px solid #e4e7dc;border-radius:9px;background:#f0f2e9;flex-shrink:0}
.room-view-switch button{display:flex;align-items:center;gap:5px;border:0;background:transparent;color:#88917e;font-size:11px;font-weight:550;padding:7px 9px;border-radius:6px;min-height:32px;transition:background .16s,color .16s}
.room-view-switch button[aria-pressed="true"]{background:#fffef8;color:#344e37;box-shadow:0 1px 3px #35452a10}
.room-view-switch svg{width:14px;height:14px}
.room-stage{height:clamp(390px,33vw,475px);position:relative;isolation:isolate;background:radial-gradient(ellipse at 39% 33%,#fffef5 0,#f3f3e900 71%),radial-gradient(#a3b09228 .7px,transparent .7px),#eef0e6;background-size:auto,19px 19px,auto;overflow:hidden}
.room-scene-mount{position:absolute;inset:9px 16px 32px;display:block;min-height:0;min-width:0}
.room-scene{position:absolute;inset:0;width:100%;height:100%;min-height:0;min-width:0;display:block;overflow:visible;font-family:var(--font-brand);user-select:none;touch-action:inherit}
.floor-experience.is-checking .room-scene-mount{opacity:.45;pointer-events:none}
.floor-experience.is-checking[data-room-mode="plan"] .room-scene-mount{opacity:1}
.floor-experience.is-checking .room-availability{color:#65794f}
.room-ground{filter:drop-shadow(8px 19px 13px #4c5b3a24)}
.room-blueprint{opacity:.3;filter:saturate(.4)}
[data-room-mode="plan"] .room-blueprint{opacity:1;filter:none}
.room-architecture{filter:drop-shadow(3px 6px 3px #3c513918);pointer-events:none}
.room-wall-cutaway{opacity:.83}
.room-table{cursor:pointer;outline:none}
.room-table[aria-disabled="true"]{cursor:not-allowed}
.room-table .room-table-label{transition:filter .18s;filter:drop-shadow(0 2px 2px #253f2d15)}
.room-table-label text{font-size:10px;font-weight:650;letter-spacing:.01em;pointer-events:none}
.room-table-label{pointer-events:none}
.room-table:hover:not([aria-disabled="true"]) .room-table-label,.room-table:focus-visible .room-table-label{filter:drop-shadow(0 0 4px #5b784d80)}
.room-table:focus-visible .room-table-label rect{stroke:#567947;stroke-width:3}
.room-table:hover:not([aria-disabled="true"]) .room-table-label rect{stroke:#668553;stroke-width:1.7}
.room-table.selected .room-table-label rect{stroke:#abc784;stroke-width:2}
.room-table.busy{opacity:.67}
.room-table-light,.room-table-candle{display:none}
.room-selection-halo{animation:room-select-in .25s ease-out}
.room-scene-loading{position:absolute;inset:0;display:grid;place-items:center;background:#f3f4ecf5;z-index:3;color:#728369;font-size:13px}
.room-corner-note{position:absolute;top:18px;left:21px;display:flex;align-items:center;gap:5px;font-size:10px;color:#8b977c;pointer-events:none}
.room-corner-note svg{width:13px;height:13px}
.room-navigation{position:absolute;bottom:18px;right:19px;display:flex;gap:2px;padding:4px;background:#fffef8eb;border:1px solid #e0e4d4;border-radius:10px;box-shadow:0 2px 6px #37472b06;backdrop-filter:blur(8px)}
.room-navigation button{background:transparent;border:0;border-radius:6px;width:32px;height:32px;display:grid;place-items:center;color:#536648;padding:7px}
.room-navigation button:hover:not(:disabled){background:#edf0e3}
.room-navigation button:disabled{opacity:.3;cursor:default}
.room-navigation button:nth-child(3){margin-left:4px}
.room-navigation button:last-child{margin-left:5px;border-left:1px solid #e7e9e0;border-radius:0 6px 6px 0}
.room-navigation svg{width:16px;height:16px}
.room-stage.is-panning{cursor:grabbing}
.room-footer{padding:16px 20px;border-top:1px solid #e1e5d6;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f9faf3}
.room-legend{display:flex;gap:16px;font-size:11px;color:#6c7862;flex-wrap:wrap}
.room-legend>span{display:flex;align-items:center;gap:5px}
.room-dot{height:6px;width:6px;border-radius:50%;background:#8a9b68}
.room-dot.selected{background:#274b38;box-shadow:0 0 0 2px #d1dfb9}
.room-dot.unavailable{background:#b7bbae}
.room-hint{font-size:10px;color:#959e8b}
.room-illustration-note{display:none}
.room-architecture-note{margin:0;padding:0 20px 12px;background:#f9faf3;font-size:10px;line-height:1.5;color:#728069}
[data-room-mode="plan"] .room-architecture-note,[data-room-mode="list"] .room-architecture-note{display:none}
.room-explore-note{font-size:11px;color:#6c7862;line-height:1.5}
.table-furniture-art{position:absolute;left:-40px;top:-40px;width:calc(100% + 80px);height:calc(100% + 80px);max-width:none;overflow:visible;pointer-events:none}
.table-object .tabletop.illustrated-furniture{background:transparent;border:0;box-shadow:none}
.room-table-list{height:100%;width:100%;overflow:auto;display:flex;flex-direction:column;gap:8px;align-self:start;padding:14px 4px;overscroll-behavior:contain}
.room-list-table{display:flex;align-items:center;gap:12px;padding:12px 15px;min-height:68px;text-align:left;background:#fffef9;border:1px solid #e0e5d6;border-radius:11px;color:#3c503b}
.room-list-table:hover:not(:disabled){border-color:#8aab70;background:#f9fcf2}
.room-list-table.selected{border-color:#547747;background:#edf3e1}
.room-list-table:disabled{background:#eff0e8;color:#959b8c;opacity:.8}
.room-list-table>span:nth-child(2){display:grid;gap:4px;min-width:0}
.room-list-table strong{font-size:13px;font-weight:600;overflow-wrap:anywhere}
.room-list-table small{font-size:11px;color:#8a9380}
.room-list-icon{width:34px;height:34px;border-radius:8px;background:#edf0e3;display:grid;place-items:center;flex-shrink:0}
.room-list-icon svg{width:19px;height:19px}
.room-list-status{font-size:10px;margin-left:auto;flex-shrink:0}
[data-room-mode="list"] .room-navigation,[data-room-mode="list"] .room-corner-note{display:none}
[data-room-mode="list"] .room-scene-mount{inset:0 15px}
.room-empty{padding:20px;color:#76836c;font-size:14px}
.seating-plan-note{font-size:10px;color:#929989;line-height:1.5;margin:12px 4px 0}
.seating-inspector{background:#fffefa;border:1px solid #e1e4d8;border-radius:17px;padding:21px;min-width:0;box-shadow:0 7px 18px #36452b04}
.seating-inspector-heading{display:flex;justify-content:space-between;gap:8px;align-items:center}
.seating-inspector-heading>span:last-child{color:#8a947f;font-size:10px}
.seating-table-preview{height:142px;position:relative;display:grid;place-items:center;margin:16px 0 20px;border-radius:11px;background:radial-gradient(ellipse at 50% 33%,#fafbed,#eef0e3);overflow:hidden}
.room-furniture-preview{width:83%;height:136px;filter:drop-shadow(0 7px 9px #6370490b);margin-top:-15px}
.seating-table-preview>span{position:absolute;bottom:11px;font-size:9px;color:#959d86;letter-spacing:.01em}
.seating-selection-kicker{color:#8f987f;letter-spacing:.13em;font-size:8px;font-weight:650}
.seating-selection-copy h2{font-size:25px;font-weight:500;letter-spacing:-.035em;color:#2b4935;margin:7px 0}
.seating-selection-copy p{font-size:13px;line-height:1.6;color:#737f68;margin:0;overflow-wrap:anywhere}
.seating-table-facts{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0 0}
.seating-table-facts>span{display:flex;align-items:center;gap:6px;color:#707d64;font-size:11px}
.seating-table-facts svg{width:14px;height:14px;color:#89977d}
.seating-table-facts .seating-available-tag{font-size:10px;background:#eff4e5;border:1px solid #e4ecd7;padding:5px 8px;border-radius:5px;color:#6b8454;margin-left:auto}
.seating-available-tag i{height:4px;width:4px;border-radius:50%;background:#84a264}
.seating-visit{border-top:1px solid #e9ebdf;border-bottom:1px solid #e9ebdf;padding:14px 0;display:grid;gap:12px;margin:19px 0 15px}
.seating-visit>div{display:flex;align-items:baseline;justify-content:space-between;gap:15px;font-size:12px}
.seating-visit dt{color:#7e8873;flex-shrink:0}
.seating-visit dd{margin:0;font-size:12px;color:#596d50;text-align:right;overflow-wrap:anywhere}
.seating-host-choice .check-row{margin:0;color:#6e7b62;font-size:12px;gap:8px;align-items:center;min-height:28px}
.seating-host-choice input[type="checkbox"]{width:14px;height:14px;margin:0;accent-color:#345a3d}
.seating-host-choice .field{margin-top:12px}
.seating-host-choice .field label{font-size:10px;letter-spacing:0;text-transform:none;font-weight:500;color:#8a957c}
.seating-host-choice textarea{font-size:12px;padding:9px;border-radius:8px;border-color:#e1e5d6}
.seating-experience .seating-actions{display:flex;flex-direction:column;gap:10px;margin:19px 0 0}
.seating-actions .btn{width:100%;min-height:45px;border-radius:9px;font-size:12px;font-weight:500;letter-spacing:0;padding:12px 14px;justify-content:space-between;box-shadow:none;background:#284d36;border-color:#284d36}
.seating-actions .btn:hover:not(:disabled){background:#376344;border-color:#376344;transform:translateY(-1px)}
.seating-actions .btn:disabled{background:#e1e7d7;border-color:#e1e7d7;color:#8e9c81;opacity:1}
.seating-actions small{color:#9da48f;font-size:9px;text-align:center}
.seating-mobile-selection{display:none}
.seating-no-floor{border:1px dashed #d4dcc9;border-radius:18px;background:#f0f3e8;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-height:400px;padding:32px;gap:10px}
.seating-empty-icon{height:55px;width:55px;display:grid;place-items:center;border-radius:50%;background:#e3ead8;color:#758c62}
.seating-empty-icon svg{width:25px;height:25px}
.seating-no-floor h2{font-weight:500;font-size:22px;margin:10px 0 0}
.seating-no-floor p{font-size:13px;color:#849276;max-width:310px;line-height:1.6}
.seating-availability-error{margin-bottom:16px;font-size:13px}
.seating-availability-error p{margin:6px 0 12px}
.seating-no-availability{font-size:12px;line-height:1.6;color:#927b49;padding:10px 14px;background:#f4f0df;border-radius:8px}
@keyframes room-select-in{from{opacity:.2}to{opacity:1}}
.seating-experience :is(.seating-eyebrow,.seating-head p,.seating-moment .field label,.seating-selection-copy p,.seating-visit dt,.seating-plan-note,.seating-selection-kicker,.seating-inspector-heading>span:last-child,.seating-table-preview>span,.seating-actions small){color:#69755f}
@media(min-width:1550px){.room-stage{height:490px}}
@media(max-width:1120px){
  .seating-workspace{grid-template-columns:minmax(0,1fr) 270px;gap:18px}
  .seating-inspector{padding:18px}
  .seating-experience .seating-page-inner{padding-inline:28px}
  .seating-steps{gap:9px;font-size:11px}
  .seating-steps i{width:18px}
  .room-toolbar{padding:15px 14px}
  .room-space-title>svg{display:none}
  .room-view-switch button{padding:7px}
  .room-view-switch svg{display:none}
  .room-footer{padding:14px}
  .room-hint{display:none}
}
@media(max-width:860px){
  .seating-workspace{grid-template-columns:minmax(0,1fr)}
  .seating-experience .seating-head{margin:22px 0}
  .seating-steps{display:none}
  .seating-moment{margin-bottom:16px}
  .room-stage{height:450px}
  .room-space-title>svg,.room-view-switch svg{display:block}
  .room-view-switch button{padding:7px 10px}
  .seating-inspector{display:grid;grid-template-columns:170px minmax(0,1fr);gap:0 22px;padding:20px}
  .seating-inspector-heading{grid-column:1/-1;margin-bottom:14px}
  .seating-table-preview{grid-column:1;grid-row:2/5;height:158px;margin:0}
  .seating-selection-copy{grid-column:2;grid-row:2}
  .seating-table-facts{grid-column:2;grid-row:3;margin-top:8px}
  .seating-visit{grid-column:2;grid-row:4;margin:10px 0 0;gap:8px;padding:10px 0;border-bottom:0}
  .seating-host-choice{grid-column:1/-1;margin-top:14px}
  .seating-experience .seating-actions{grid-column:1/-1}
}
@media(max-width:560px){
  .seating-experience .seating-page-inner{padding:17px 16px 25px}
  .seating-experience{padding-bottom:86px}
  .seating-breadcrumb{font-size:10px;gap:9px}
  .seating-breadcrumb button{font-size:10px}
  .seating-experience .seating-head{margin:19px 0 21px}
  .seating-experience .seating-head h1{font-size:30px;max-width:300px;line-height:1.14;margin-top:8px}
  .seating-experience .seating-head p{font-size:12px;line-height:1.5}
  .seating-eyebrow{font-size:8px;letter-spacing:.15em}
  .seating-moment{border-radius:11px;grid-template-columns:1.23fr .95fr .95fr;padding:12px 0}
  .seating-moment .field{padding:0 9px}
  .seating-moment .field label{font-size:9px}
  .seating-moment .control{font-size:11px;min-height:28px;height:28px}
  .floor-experience{border-radius:13px}
  .room-toolbar{padding:12px;gap:8px;align-items:center;flex-wrap:wrap}
  .room-space-title{gap:7px}
  .room-space-title>svg{width:17px;height:17px}
  .room-space-title strong{font-size:11px}
  .room-availability{font-size:9px;gap:4px}
  .room-view-switch{gap:0;padding:2px}
  .room-view-switch button{font-size:10px;min-width:38px;min-height:40px;padding:6px}
  .room-view-switch svg{display:none}
  .room-view-switch button[data-room-view="3d"] span{font-size:0}
  .room-view-switch button[data-room-view="3d"] span::after{content:'3D';font-size:10px}
  .room-stage{height:340px}
  .room-scene-mount{inset:3px -3px 42px}
  .room-corner-note{left:13px;top:13px;font-size:9px}
  .room-navigation{bottom:12px;right:12px;padding:2px;border-radius:8px}
  .room-navigation button{width:40px;height:40px}
  .room-footer{padding:13px}
  .room-architecture-note{padding:0 13px 12px;font-size:9px}
  .room-legend{font-size:9px;gap:17px}
  .room-list-table{padding:10px;gap:8px}
  .room-list-status{font-size:9px}
  .room-list-table small{font-size:10px}
  .seating-plan-note{font-size:9px;margin-top:9px}
  .seating-workspace{gap:16px}
  .seating-inspector{padding:16px;grid-template-columns:110px minmax(0,1fr);gap:0 16px}
  .seating-table-preview{height:139px;grid-row:2/5}
  .room-furniture-preview{width:116%}
  .seating-table-preview>span{font-size:8px;bottom:12px;max-width:80%;text-align:center}
  .seating-selection-copy h2{font-size:22px}
  .seating-selection-copy p{font-size:11px}
  .seating-selection-kicker{font-size:7px;letter-spacing:.1em}
  .seating-visit{grid-column:1/-1;grid-row:5;gap:12px;margin:14px 0 0;padding-top:14px;border-top:1px solid #e3e8d9}
  .seating-table-facts{gap:6px;align-content:start}
  .seating-table-facts>span{font-size:10px}
  .seating-table-facts .seating-available-tag{margin-left:0;font-size:8px;padding:3px 6px}
  .seating-host-choice{grid-column:1/-1;border-top:1px solid #e3e8d9;padding-top:12px}
  .seating-host-choice .check-row{min-height:40px;font-size:12px}
  .seating-experience .seating-actions{position:fixed;z-index:35;bottom:0;left:0;right:0;margin:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,1.2fr);gap:5px 14px;align-items:center;padding:13px 17px calc(13px + env(safe-area-inset-bottom));background:#fffef8f5;border-top:1px solid #dce2d1;backdrop-filter:blur(14px);box-shadow:0 -8px 25px #36452905}
  .seating-actions .btn{font-size:11px;min-height:45px;padding:11px;border-radius:9px}
  .seating-actions small{grid-column:1/-1;font-size:8px}
  .seating-mobile-selection{display:grid;gap:4px;min-width:0}
  .seating-mobile-selection strong{font-size:12px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .seating-mobile-selection span{font-size:9px;color:#8c9880;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}
@media(max-width:360px){
  .seating-experience .seating-page-inner{padding-inline:12px}
  .seating-moment .field{padding-inline:7px}
  .seating-moment .control{font-size:10px}
  .room-toolbar{gap:9px;padding:12px 10px}
  .room-space-title>svg{display:none}
  .room-availability{font-size:8px}
  .room-view-switch button{padding:5px;min-width:32px;font-size:9px}
  .room-stage{height:315px}
  .seating-inspector{gap:0 12px}
}
@media(prefers-reduced-motion:reduce){
  .seating-experience *, .seating-experience *::before,.seating-experience *::after,.floor-experience *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media(forced-colors:active){
  .room-table-label rect{fill:Canvas;stroke:CanvasText}
  .room-table-label text{fill:CanvasText}
  .room-table:focus-visible .room-table-label rect,.room-table.selected .room-table-label rect{stroke:Highlight;stroke-width:3}
}

/* The room is a dark, warm illustration inside the shared light customer
   shell. Variables affect SVG materials only here; studio artwork keeps its
   existing materials, saved coordinates and scale. */
.customer-app .floor-experience{
  --room-floor-light:#74604a;
  --room-floor:#4c473c;
  --room-floor-shade:#293129;
  --room-floor-edge:#272c27;
  --room-floor-rim:#7a6956;
  --room-floor-grain:#181c18;
  --room-wall-light:#8b7156;
  --room-wall-shade:#2b332c;
  --room-wall-top:#8c7862;
  --room-wall-edge:#665a4d;
  --room-wall-foot:#272e27;
  --room-wall-rim:#bd9c78;
  --room-oak-light:#dcab68;
  --room-oak-shade:#88512f;
  --room-oak-edge:#694728;
  --room-walnut-light:#c49359;
  --room-walnut-shade:#633c25;
  --room-walnut-edge:#493523;
  --room-dark-light:#a2815c;
  --room-dark-shade:#594331;
  --room-dark-edge:#39352a;
  --room-ash-light:#87857a;
  --room-ash-shade:#636961;
  --room-ash-edge:#4c534c;
  --room-chair:#345547;
  --room-chair-edge:#192e26;
  --room-chair-unavailable:#777e73;
  --room-chair-unavailable-edge:#444d43;
  --room-table-rim:#e8bf83;
  --room-selection-fill:#2c674b;
  --room-selection-edge:#b9d99e;
  position:relative;
  color:#f5f5ef;
  background:#141a17;
  border:1px solid var(--nomuvo-border,#dee3dd);
  border-radius:16px;
  box-shadow:var(--nomuvo-shadow,0 10px 30px #20282308);
}
.customer-app .floor-experience .room-toolbar{position:relative;z-index:2;background:#141a17;border:0;padding:19px 22px 9px}
.customer-app .floor-experience .room-space-title{gap:13px;color:#fffef7}
.customer-app .floor-experience .room-space-title>svg{width:24px;height:24px;color:#f2f3ed}
.customer-app .floor-experience .room-space-title strong{font-size:15px;font-weight:550}
.customer-app .floor-experience .room-availability{font-size:11px;color:#d7ded2}
.customer-app .floor-experience .room-availability i{background:#83b759;width:7px;height:7px}
.customer-app .floor-experience .room-view-switch{background:#232b24d9;border:1px solid #b6c1b221;border-radius:999px;padding:3px;gap:4px}
.customer-app .floor-experience .room-view-switch button{color:#f2f4ec;border-radius:999px;min-height:35px;padding:8px 13px;font-weight:500}
.customer-app .floor-experience .room-view-switch button:hover{background:#ffffff0c}
.customer-app .floor-experience .room-view-switch button[aria-pressed="true"]{background:#f6faf3;color:#12382e;box-shadow:0 2px 6px #0000001a}
.customer-app .floor-experience .room-stage{height:auto;aspect-ratio:1.72;min-height:350px;max-height:620px;background:radial-gradient(ellipse at 51% 55%,#66533b29 0,transparent 62%),linear-gradient(145deg,#151c18,#101714 58%,#141915);isolation:isolate}
.customer-app .floor-experience .room-scene-mount{inset:0 5px 31px}
.customer-app .floor-experience .room-ground{filter:drop-shadow(3px 18px 13px #00000078)}
.customer-app .floor-experience .room-blueprint{opacity:.17;filter:brightness(.57) saturate(.3)}
.customer-app .floor-experience[data-room-mode="plan"] .room-blueprint{opacity:1;filter:none}
.customer-app .floor-experience .room-architecture{filter:drop-shadow(2px 8px 4px #090e0966)}
.customer-app .floor-experience .room-wall-cutaway{opacity:.94}
.customer-app .floor-experience .room-table-light,.customer-app .floor-experience .room-table-candle{display:inline}
.customer-app .floor-experience .room-table-candle{filter:drop-shadow(0 -1px 3px #f4c37670)}
.customer-app .floor-experience[data-room-mode="plan"] .room-table-light{opacity:.45}
.customer-app .floor-experience .room-table.busy{opacity:.58}
.customer-app .floor-experience .room-table-label{opacity:0;transition:opacity .18s,filter .18s;filter:drop-shadow(0 3px 5px #00000050)}
.customer-app .floor-experience .room-table:is(:hover,:focus-visible,.selected) .room-table-label{opacity:1}
.customer-app .floor-experience .room-table:hover:not([aria-disabled="true"]) .room-table-surface{stroke:#f9e2b6;stroke-width:1.7}
.customer-app .floor-experience .room-table.selected .room-table-surface{fill:#3e634b;stroke:#d4e5b7;stroke-width:1.8}
.customer-app .floor-experience .room-selection-halo{fill-opacity:.62;stroke-width:2;filter:drop-shadow(0 0 8px #67955255)}
.customer-app .floor-experience .room-table:focus-visible .room-table-surface{stroke:#eff9de;stroke-width:3}
.customer-app .floor-experience .room-corner-note{display:none}
.customer-app .floor-experience .room-scene-loading{background:#141a17f5;color:#d7dfd2}
.customer-app .floor-experience .room-navigation{bottom:15px;right:17px;background:#0d2a24ed;border:1px solid #758d6b24;border-radius:14px;padding:5px;box-shadow:0 7px 18px #00000026}
.customer-app .floor-experience .room-navigation button{color:#f7f9ef;width:34px;height:34px;border-radius:8px}
.customer-app .floor-experience .room-navigation button:hover:not(:disabled){background:#ffffff13}
.customer-app .floor-experience .room-navigation button:last-child{border-color:#80927630}
.customer-app .floor-experience .room-footer{position:relative;background:var(--nomuvo-surface,#fffefc);border-top:0;padding:16px 19px;gap:18px;flex-wrap:wrap}
.customer-app .floor-experience .room-legend{color:var(--nomuvo-ink,#112d2b);gap:20px;font-size:10px;flex-shrink:0}
.customer-app .floor-experience .room-legend>span{gap:7px}
.customer-app .floor-experience .room-dot{height:11px;width:11px;background:#80b952}
.customer-app .floor-experience .room-dot.selected{background:transparent;border:1.5px solid #173a2e;box-shadow:none}
.customer-app .floor-experience .room-dot.unavailable{background:#d1d3ce}
.customer-app .floor-experience .room-illustration-note{display:flex;flex:1 1 300px;align-items:center;gap:8px;color:var(--nomuvo-muted,#687370);font-size:9px;line-height:1.5;max-width:500px;margin-left:auto}
.customer-app .floor-experience .room-illustration-note svg{height:18px;width:18px;flex-shrink:0;color:var(--nomuvo-forest,#123e34)}
.customer-app .floor-experience .room-hint{position:absolute;left:20px;bottom:calc(100% + 20px);max-width:calc(100% - 245px);font-size:10px;color:#bcc4b8}
.customer-app .floor-experience[data-image-failed] .room-hint{position:static;display:block;flex-basis:100%;max-width:none;color:var(--nomuvo-muted,#687370)}
.customer-app .floor-experience .room-architecture-note{background:var(--nomuvo-surface,#fffefc);color:var(--nomuvo-muted,#687370);padding:0 19px 13px;font-size:9px}
.customer-app .floor-experience .room-explore-note{color:var(--nomuvo-muted,#687370);font-size:10px}
.customer-app .floor-experience .room-list-table{color:#f7f7ee;background:#202c24;border-color:#59634e6b;border-radius:12px}
.customer-app .floor-experience .room-list-table:hover:not(:disabled){background:#2d3b2e;border-color:#b1c89c80}
.customer-app .floor-experience .room-list-table.selected{background:#2f513d;border-color:#b5cea0}
.customer-app .floor-experience .room-list-table:disabled{background:#202822;color:#9aab96;border-color:#4b58495e}
.customer-app .floor-experience .room-list-table small{color:#c2cbbb}
.customer-app .floor-experience .room-list-icon{color:#d5e4c7;background:#3c4c36}
.customer-app .floor-experience .room-empty{color:#d4ddce}
.customer-app .floor-experience :is(button,.room-table):focus-visible{outline:2px solid #e5eccc;outline-offset:3px}
@media(max-width:1120px){
  .customer-app .floor-experience .room-toolbar{padding:17px 15px 8px}
  .customer-app .floor-experience .room-view-switch button{padding:8px 10px}
  .customer-app .floor-experience .room-footer{padding:14px 15px;gap:12px}
  .customer-app .floor-experience .room-illustration-note{max-width:none;margin-left:0}
}
@media(max-width:860px){
  .customer-app .floor-experience .room-stage{min-height:350px}
}
@media(max-width:560px){
  .customer-app .floor-experience{border-radius:14px}
  .customer-app .floor-experience .room-toolbar{padding:15px 13px 4px;gap:10px}
  .customer-app .floor-experience .room-space-title{gap:8px}
  .customer-app .floor-experience .room-space-title>svg{width:19px;height:19px}
  .customer-app .floor-experience .room-space-title strong{font-size:12px}
  .customer-app .floor-experience .room-availability{font-size:9px}
  .customer-app .floor-experience .room-view-switch{gap:0;padding:2px}
  .customer-app .floor-experience .room-view-switch button{padding:7px 9px;min-height:38px}
  .customer-app .floor-experience .room-stage{height:330px;min-height:0;aspect-ratio:auto}
  .customer-app .floor-experience .room-scene-mount{inset:3px -9px 37px}
  .customer-app .floor-experience .room-navigation{bottom:12px;right:12px;padding:3px}
  .customer-app .floor-experience .room-navigation button{width:40px;height:40px}
  .customer-app .floor-experience .room-footer{gap:13px;padding:14px}
  .customer-app .floor-experience .room-legend{gap:18px;font-size:9px}
  .customer-app .floor-experience .room-illustration-note{flex-basis:100%;font-size:9px;gap:8px}
  .customer-app .floor-experience .room-hint{display:none}
  .customer-app .floor-experience .room-architecture-note{padding:0 14px 13px}
}
@media(prefers-reduced-motion:reduce){
  .customer-app .floor-experience .room-table-label{transition:none}
}
@media(forced-colors:active){
  .customer-app .floor-experience .room-table-label{opacity:1}
  .customer-app .floor-experience .room-table.selected .room-table-surface{fill:Highlight;stroke:HighlightText}
}
