.guidance-settings-toggle {
  width:42px;
  height:42px;
}
.guidance-settings-toggle svg { width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7; }

.orientation-card {
  position:fixed;
  z-index:126;
  left:50%;
  bottom:max(24px,env(safe-area-inset-bottom));
  width:min(480px,calc(100vw - 28px));
  padding:18px 19px;
  border:1px solid rgba(241,198,115,.3);
  border-radius:17px;
  color:#eef3f9;
  background:rgba(5,10,19,.96);
  box-shadow:0 26px 80px rgba(0,0,0,.64);
  transform:translateX(-50%);
}
.orientation-card small { color:#e5b966;font:800 .62rem/1 system-ui;letter-spacing:.15em;text-transform:uppercase; }
.orientation-card h2 { margin:6px 0 5px;font:700 1.25rem Georgia,serif; }
.orientation-card p { margin:0;color:#aeb9c8;font-size:.78rem;line-height:1.5; }
.orientation-progress { display:flex;gap:5px;margin:13px 0; }
.orientation-progress i { flex:1;height:3px;border-radius:3px;background:rgba(255,255,255,.1); }
.orientation-progress i.is-done { background:#72dae3; }
.orientation-actions { display:flex;justify-content:flex-end;gap:8px;margin-top:13px; }
.orientation-actions button { padding:9px 13px;border:1px solid rgba(255,255,255,.12);border-radius:9px;color:#dfe7ef;background:rgba(255,255,255,.05);cursor:pointer;font-weight:750;font-size:.7rem; }
.orientation-actions .orientation-next { color:#07121b;border:0;background:linear-gradient(90deg,#72dce6,#edbd6b); }

.guidance-focus {
  z-index:125!important;
  outline:3px solid rgba(255,211,122,.9)!important;
  outline-offset:6px!important;
  border-radius:10px;
  animation:guidance-focus 1.2s ease-in-out infinite alternate!important;
}

.resume-card {
  position:fixed;
  z-index:124;
  left:clamp(14px,3vw,48px);
  top:calc(var(--header-height,78px) + 20px);
  width:min(370px,calc(100vw - 28px));
  padding:19px;
  border:1px solid rgba(108,216,226,.25);
  border-radius:16px;
  color:#edf4fa;
  background:linear-gradient(145deg,rgba(7,16,27,.97),rgba(8,12,21,.97));
  box-shadow:0 24px 70px rgba(0,0,0,.55);
}
.resume-card small { color:#72dbe5;font:800 .62rem system-ui;letter-spacing:.14em;text-transform:uppercase; }
.resume-card h2 { margin:6px 0 5px;font:700 1.25rem Georgia,serif; }
.resume-card p { margin:0;color:#a8b5c5;font-size:.76rem;line-height:1.48; }
.resume-next { margin-top:12px;padding:11px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.035); }
.resume-next b { display:block;margin-bottom:3px;color:#e8c37d;font:700 .72rem system-ui; }
.resume-actions { display:flex;gap:8px;margin-top:12px; }
.resume-actions button { flex:1;padding:9px;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#dde8f1;background:rgba(255,255,255,.05);cursor:pointer;font-weight:750;font-size:.68rem; }
.resume-actions .resume-continue { color:#07121b;border:0;background:#78dbe3; }

.stuck-nudge {
  position:fixed;
  z-index:119;
  right:clamp(14px,3vw,48px);
  bottom:max(22px,env(safe-area-inset-bottom));
  width:min(330px,calc(100vw - 28px));
  padding:14px;
  border:1px solid rgba(238,190,105,.25);
  border-radius:13px;
  color:#e8eef5;
  background:rgba(7,12,20,.94);
  box-shadow:0 18px 50px rgba(0,0,0,.48);
}
.stuck-nudge p { margin:0 0 9px;color:#b4bfcc;font-size:.72rem;line-height:1.45; }
.stuck-nudge div { display:flex;gap:7px; }
.stuck-nudge button { padding:7px 9px;border:1px solid rgba(255,255,255,.11);border-radius:7px;color:#dfe7ef;background:rgba(255,255,255,.05);cursor:pointer;font-size:.65rem;font-weight:750; }

.guidance-dialog {
  width:min(720px,calc(100vw - 28px));
  max-height:min(820px,calc(100dvh - 28px));
  padding:26px;
  overflow:auto;
  border:1px solid rgba(108,214,226,.28);
  border-radius:21px;
  color:#eaf1f7;
  background:#08111e;
  box-shadow:0 35px 100px rgba(0,0,0,.75);
}
.guidance-dialog::backdrop { background:rgba(1,4,9,.8);backdrop-filter:blur(8px); }
.guidance-dialog h2 { margin:6px 40px 5px 0;font:700 1.8rem Georgia,serif; }
.guidance-dialog > p { margin:0 0 20px;color:#9ba9bb;font-size:.78rem; }
.guidance-close { position:absolute;right:17px;top:15px;width:35px;height:35px;border:1px solid rgba(255,255,255,.12);border-radius:50%;color:white;background:rgba(255,255,255,.04);cursor:pointer; }
.guidance-section { padding:16px 0;border-top:1px solid rgba(255,255,255,.08); }
.guidance-section h3 { margin:0 0 4px;font-size:.82rem; }
.guidance-section > p { margin:0 0 11px;color:#8f9daf;font-size:.7rem; }
.guidance-options { display:grid;grid-template-columns:repeat(3,1fr);gap:8px; }
.guidance-options label { position:relative;display:block;padding:12px;border:1px solid rgba(255,255,255,.09);border-radius:10px;color:#abb7c6;background:rgba(255,255,255,.025);cursor:pointer;font-size:.69rem; }
.guidance-options label:has(input:checked) { color:#edf5f7;border-color:rgba(102,215,226,.45);background:rgba(95,210,221,.08); }
.guidance-options input { position:absolute;opacity:0; }
.guidance-options strong { display:block;margin-bottom:3px;color:inherit; }
.interaction-key { display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:12px; }
.interaction-key span { display:flex;align-items:center;gap:8px;color:#a6b2c1;font-size:.68rem; }
.interaction-key i { width:12px;height:12px;border:2px solid;border-radius:50%;box-shadow:0 0 8px currentColor; }
.interaction-key .key-quest { color:#ffd170; }
.interaction-key .key-discovery { color:#88e8ff; }
.interaction-key .key-physical { color:#f7cd83; }
.interaction-key .key-story { color:#b57c2b; }
.guidance-save { width:100%;margin-top:18px;padding:12px;border:0;border-radius:10px;color:#07121b;background:linear-gradient(90deg,#72dce6,#edbd6b);cursor:pointer;font-weight:850; }
.guidance-replay { width:100%;margin-top:8px;padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:10px;color:#dbe6ee;background:transparent;cursor:pointer;font-weight:750; }

body.reveal-interactions .discovery-pin::before,
body.reveal-interactions .living-control::before,
body.reveal-interactions .doorway-hotspot .hotspot-pulse,
body.reveal-interactions .room-puzzle button::after { animation:guidance-reveal .9s ease-in-out infinite alternate!important;opacity:1!important; }
body.calm-exploration .story-toggle,
body.calm-exploration .story-whisper,
body.calm-exploration .plan-room.is-objective { display:none!important; }
body.interface-minimal .house-status,
body.interface-minimal .header-button > span:nth-child(2) { display:none; }
body.interface-minimal .header-button { padding-inline:11px; }
body.motion-gentle .atmosphere-mote:nth-child(n+8) { display:none; }
body.motion-gentle .walk-transition,
body.motion-gentle .walk-transition::before,
body.motion-gentle .walk-transition::after { animation-duration:.55s!important; }
body.motion-gentle .foyer-world,
body.motion-gentle .basement-world,
body.motion-gentle .room-world #roomArt { transition-duration:.25s!important; }

@keyframes guidance-focus { to{outline-color:rgba(114,220,230,.9);filter:brightness(1.15)} }
@keyframes guidance-reveal { to{box-shadow:0 0 0 8px rgba(255,210,116,.12),0 0 23px currentColor} }
@media(max-width:700px){
  .resume-card { left:10px;top:74px;width:calc(100vw - 20px); }
  .guidance-options { grid-template-columns:1fr; }
  .interaction-key { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce){
  .guidance-focus,.reveal-interactions * { animation:none!important; }
}
