.enter-interior{margin-top:15px}.interior-entry-note{text-align:center;color:var(--muted);font-size:8px;margin:8px 0 -7px}
.interior-modal{border:1px solid #dce0d2;border-radius:5px;padding:0;width:calc(100% - 56px);max-width:1380px;height:calc(100dvh - 64px);max-height:980px;background:var(--paper);color:var(--ink);overflow:hidden;box-shadow:0 30px 100px #122e3e50}
.interior-modal::backdrop{background:#16332dde;backdrop-filter:blur(8px)}
.interior-header{height:95px;display:flex;align-items:center;gap:28px;padding:20px 30px;border-bottom:1px solid var(--line)}
.interior-eyebrow{font-size:8px;letter-spacing:1.6px;color:var(--gold);display:block}
.interior-header h2{font:400 32px/1 var(--serif);margin:8px 0 0;letter-spacing:-.4px}
.interior-identity{margin-left:auto;display:flex;flex-direction:column;text-align:right;gap:6px}
.interior-identity strong{font:500 23px var(--serif)}.interior-identity span{font-size:9px;color:var(--muted)}
.interior-close{border:1px solid #d5daca;flex-shrink:0;width:36px;height:36px}.interior-close svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}
.interior-layout{display:grid;grid-template-columns:minmax(0,1fr) 264px;height:calc(100% - 95px)}
.interior-stage{position:relative;min-width:0;overflow:hidden;background:#e6e4dc}
.interior-stage canvas{display:block;width:100%;height:100%;touch-action:none;outline-offset:-3px}
.interior-scene-heading{position:absolute;top:27px;left:30px;pointer-events:none;background:linear-gradient(90deg,#f4f1e9f0,#f4f1e900);padding:12px 28px 12px 15px;border-left:1px solid #a78b5a}
.interior-scene-heading h3{font:400 29px var(--serif);margin:8px 0 0}.interior-scene-heading .interior-eyebrow{font-size:7px}
.interior-toolbar{position:absolute;bottom:47px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:9px}
.interior-modes{background:#faf8f0eF;border:1px solid #d8ddcc;box-shadow:0 8px 25px #1b3f2c15;padding:4px;display:flex;border-radius:4px;backdrop-filter:blur(10px)}
.interior-modes button{display:flex;align-items:center;justify-content:center;gap:10px;padding:13px 18px;font-size:10px;border-radius:2px;color:#647366}
.interior-modes button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.interior-modes svg,.interior-rooms svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.4}
.interior-reset{border:1px solid #d8ddcc;background:#faf8f0ed;width:39px;height:45px;border-radius:4px;font-size:23px;color:#63705d}
.interior-hint{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);width:max-content;max-width:95%;text-align:center;color:#4d6154;font-size:9px;pointer-events:none;margin:0;padding:5px 9px;background:#f8f6eada;border-radius:3px}
.interior-sidebar{background:var(--paper);border-left:1px solid var(--line);padding:27px 24px 20px;overflow:auto;scrollbar-width:thin}
.interior-room-heading .interior-eyebrow{font-size:7px;letter-spacing:1.2px}.interior-room-heading h3{font:400 29px var(--serif);margin:12px 0 8px;letter-spacing:-.3px}.interior-room-heading p{font-size:9px;line-height:1.7;color:var(--muted);margin:0 0 20px}
.interior-rooms{border-top:1px solid var(--line)}.interior-rooms button{display:flex;align-items:center;gap:13px;text-align:left;width:100%;padding:16px 1px;border-bottom:1px solid var(--line);transition:background .2s}
.interior-rooms button>span{font:17px var(--serif);color:var(--gold)}.interior-rooms strong{font-size:10px;font-weight:500;flex:1}.interior-rooms svg{width:13px;color:#8c9886}
.interior-rooms button:hover,.interior-rooms button[aria-current]{background:#e9eddf}.interior-rooms button[aria-current]{color:#304e3a}
.interior-plan-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:9px;text-align:left;padding:18px 0}.interior-plan-toggle>span{font-size:17px;color:var(--gold)}
.interior-plan{background:#eeede3;border:1px solid var(--line);padding:7px}.interior-plan svg{display:block;width:100%;height:auto}.interior-plan small{display:block;font-size:7px;text-align:center;color:var(--muted);padding:10px 3px 5px}
.interior-disclaimer{font-size:8px;line-height:1.8;color:#828978;margin:18px 0 0}
.interior-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#faf8eeef;padding:22px;font-size:11px;line-height:1.8;max-width:80%;border:1px solid var(--line);text-align:center}
.interior-modal button:disabled{opacity:.5;cursor:wait}
@media(max-width:1000px){.interior-modal{width:calc(100% - 28px);height:calc(100dvh - 28px)}.interior-layout{grid-template-columns:minmax(0,1fr) 220px}.interior-sidebar{padding:24px 18px}.interior-header{padding:18px 22px}.interior-header h2{font-size:28px}.interior-modes button{padding:12px 10px;font-size:9px}.interior-scene-heading{top:20px;left:20px}}
@media(max-width:700px){.interior-modal{width:100%;height:100dvh;max-height:100dvh;max-width:100%;border:0;border-radius:0}.interior-header{height:76px;padding:14px 17px;gap:12px}.interior-header h2{font-size:23px;margin-top:6px}.interior-header .interior-eyebrow{font-size:6px;letter-spacing:1.3px}.interior-identity{margin-left:auto}.interior-identity strong{font-size:18px}.interior-identity span{display:none}.interior-close{height:30px;width:30px}.interior-layout{height:calc(100% - 76px);grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto}.interior-stage{min-height:230px}.interior-scene-heading{top:15px;left:17px;padding:9px 20px 9px 11px}.interior-scene-heading h3{font-size:24px;margin-top:6px}.interior-scene-heading .interior-eyebrow{font-size:6px}.interior-toolbar{bottom:35px;gap:5px;padding:0 8px}.interior-modes{flex:1;max-width:370px}.interior-modes button{flex:1;padding:11px 7px;font-size:9px;white-space:nowrap;gap:5px}.interior-modes svg{width:12px}.interior-reset{width:32px;height:42px}.interior-hint{bottom:12px;font-size:8px;padding:0 10px}.interior-sidebar{border:0;border-top:1px solid var(--line);padding:13px 17px 12px;max-height:38dvh;overflow:auto}.interior-room-heading{display:none}.interior-rooms{display:flex;overflow-x:auto;gap:7px;border:0;padding-bottom:5px;scrollbar-width:thin}.interior-rooms button{min-width:max-content;width:auto;gap:8px;border:1px solid var(--line);padding:11px 12px;background:#f5f4ea;border-radius:2px}.interior-rooms button>span{font-size:15px}.interior-rooms strong{font-size:9px}.interior-rooms svg{display:none}.interior-plan-toggle{font-size:9px;padding:9px 0}.interior-disclaimer{font-size:7px;line-height:1.5;margin:4px 0 0}.interior-plan{max-width:310px;margin:4px auto 10px}}
@media print{.interior-modal{display:none}}
.interior-sidebar-toggle,.interior-touch-hint{display:none}
.interior-modes svg{width:18px;height:18px;stroke-width:1.7;flex-shrink:0}
.interior-modes button{min-height:44px;font-weight:600}
.interior-modal button:focus-visible{outline:2px solid #ad8150;outline-offset:3px}
@media(max-width:700px){
  .interior-modal{margin:0;background:#f7f5ef}
  .interior-header{height:72px;padding:10px 14px;gap:10px;background:#faf8f2}
  .interior-header>div:first-child{min-width:0;flex:1}
  .interior-header h2{font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .interior-header .interior-eyebrow{font-size:8px;letter-spacing:1.2px}
  .interior-identity{flex:none;text-align:right}
  .interior-identity strong{font:600 12px Manrope,sans-serif}
  .interior-close{width:44px;height:44px;border-radius:50%;background:#fffdf7}
  .interior-close svg{width:18px;height:18px}
  .interior-layout{height:calc(100% - 72px);display:flex;flex-direction:column}
  .interior-stage{flex:1;min-height:200px}
  .interior-scene-heading{top:16px;left:14px;max-width:calc(100% - 82px);border:0;border-radius:10px;background:#faf8f2ed;padding:10px 13px;box-shadow:0 3px 15px #173b3710}
  .interior-scene-heading .interior-eyebrow{display:none}
  .interior-scene-heading h3{font-size:23px;margin:0}
  .interior-toolbar{bottom:14px;left:14px;right:14px;padding:0;display:block}
  .interior-modes{max-width:none;width:100%;padding:5px;gap:4px;border:1px solid #fff;border-radius:16px;background:#faf8f2f5;box-shadow:0 8px 24px #173b3720}
  .interior-toolbar .interior-modes button{flex:1;flex-direction:column;gap:5px;min-height:58px;padding:7px 4px;border-radius:11px;font:600 10px/1.2 Manrope,sans-serif;color:#456052}
  .interior-toolbar .interior-modes button[aria-pressed=true]{background:#214b3d;color:#fff;box-shadow:0 3px 7px #173b3724}
  .interior-modes svg{width:22px;height:22px}
  .interior-reset{position:fixed;top:88px;right:14px;width:44px;height:44px;border:1px solid #fff;border-radius:50%;background:#faf8f2f2;box-shadow:0 3px 15px #173b3710}
  .interior-hint{bottom:93px;padding:6px 9px;border-radius:8px;font:500 9px/1.6 Manrope,sans-serif;color:#315044;background:#faf8f2e8;max-width:calc(100% - 28px)}
  .interior-desktop-hint{display:none}.interior-touch-hint{display:inline}
  .interior-modal:not([data-mode=cutaway]) .interior-hint{left:auto;right:14px;bottom:114px;transform:none;text-align:right;max-width:calc(100% - 187px);font-size:9px;padding:8px 10px}
  .interior-sidebar{flex-shrink:0;padding:0 14px max(8px,env(safe-area-inset-bottom));max-height:43%;border-top:1px solid #dce2d4;background:#faf8f2;overflow:auto}
  .interior-sidebar-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:59px;text-align:left;color:#234b3e;padding:10px 2px;font:600 12px/1.4 Manrope,sans-serif}
  .interior-sidebar-toggle small{display:block;font:400 9px/1.5 Manrope,sans-serif;color:#788276;margin-top:2px}
  .interior-sidebar-toggle svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.7;fill:none;transition:transform .2s}
  .interior-sidebar-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
  .interior-sidebar-content{display:none;padding-bottom:8px}
  .interior-modal[data-rooms-open=true] .interior-sidebar-content{display:block}
  .interior-rooms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible;padding:2px 0 8px}
  .interior-rooms button{min-width:0;width:100%;min-height:46px;padding:10px 11px;border-radius:9px;border:1px solid #d9dfd2;background:#f2f2e9}
  .interior-rooms button>span{font-size:16px}.interior-rooms strong{font-size:10px}
  .interior-rooms button[aria-current]{background:#214b3d;color:white;border-color:#214b3d}.interior-rooms button[aria-current]>span{color:#d8c19b}
  .interior-plan-toggle{min-height:44px;padding:10px 2px;font-size:11px}
  .interior-disclaimer{font-size:9px;line-height:1.6;margin:8px 2px}
}
@media(max-width:700px) and (max-height:600px){.interior-header{height:60px}.interior-layout{height:calc(100% - 60px)}.interior-reset{top:74px}.interior-scene-heading{top:10px}.interior-sidebar-toggle{min-height:44px}.interior-sidebar-toggle small{display:none}.interior-toolbar .interior-modes button{min-height:48px;flex-direction:row;gap:7px}.interior-modes svg{width:19px;height:19px}.interior-hint{display:none}}

/* Essential context stays visible; instructions are available on demand. */
.interior-header{height:64px;padding-top:10px;padding-bottom:10px;gap:12px}
.interior-header h2{font-size:28px;margin:0;letter-spacing:0}
.interior-identity{margin-left:auto;gap:0}
.interior-identity span{font:500 11px/1.5 Manrope,sans-serif}
.interior-layout{height:calc(100% - 64px)}
.interior-help{display:grid;place-items:center;width:44px;height:44px;min-width:44px;border:1px solid #d5daca;border-radius:50%;color:#315345;background:#fffdf7;font:600 16px/1 Manrope,sans-serif}
.interior-help[aria-expanded=true]{background:#214b3d;color:#fff;border-color:#214b3d}
.interior-close{width:44px;height:44px;border-radius:50%}
.interior-scene-heading h3{margin:0}
.interior-sidebar{padding-top:12px}
.interior-rooms{border-top:0}
.interior-rooms button{min-height:46px}
.interior-hint[hidden]{display:none}
.interior-modal .interior-hint:not([hidden]){display:block;top:76px;right:20px;bottom:auto;left:auto;transform:none;width:max-content;max-width:300px;padding:12px 15px;background:#faf8f2f7;border:1px solid #fff;border-radius:10px;box-shadow:0 8px 25px #173b3726;font:500 11px/1.7 Manrope,sans-serif;text-align:left;z-index:7}
@media(max-width:700px){
  .interior-header h2{font-size:24px}.interior-header>div:first-child{flex:1}
  .interior-identity{margin-left:0}.interior-identity span{display:block;font-size:10px;max-width:105px;text-align:right}
  .interior-reset{top:80px}
  .interior-sidebar{padding-top:0}.interior-sidebar-toggle{min-height:48px}
  .interior-modal .interior-hint:not([hidden]){top:72px;right:14px;max-width:calc(100% - 28px)}
}
