/* The door and blind controls belong to the drawing; no hotspot badges. */
body[data-year] .room-story-secret.blind-toggle,
body[data-year] .room-story-secret.room-pool-secret,
body[data-year] #pool-return-door {
  appearance:none; margin:0; padding:0; border:0; border-radius:0;
  background:transparent; box-shadow:none; min-width:0; min-height:0;
}
body[data-year] .room-pool-secret[hidden] { display:none !important; }
body[data-year] .room-stage > .room-story-secret.blind-toggle {
  z-index:10;
  pointer-events:auto;
  cursor:pointer;
  touch-action:manipulation;
}
@media (pointer:coarse) {
  body[data-year] .room-stage > .room-story-secret.blind-toggle {
    min-width:44px;
    min-height:44px;
  }
}
body[data-year] .blind-toggle:focus-visible,
body[data-year] .room-pool-secret:focus-visible,
body[data-year] #pool-return-door:focus-visible { outline:2px dotted #fff; outline-offset:-3px; }
body[data-year] #ascii-blind-button { appearance:none; padding:0; margin:0; border:0; background:none; color:inherit; font:inherit; cursor:pointer; }
.room-blind-layer{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.room-blind-layer>img{display:block;width:100%;height:100%;object-fit:fill;border:0;margin:0;clip-path:inset(0 0 var(--blind-reveal,0%) 0);transition:clip-path .55s ease;pointer-events:none}
.room-stage>.room-blind-layer>img{filter:var(--room-season-filter,saturate(1)) var(--room-time-filter,brightness(1))}
body[data-year] .blind-action-copy{display:inline;margin-left:1em;border:0;background:none;color:inherit;text-decoration:underline;font:inherit;padding:.3em;cursor:pointer}
@media(prefers-reduced-motion:reduce){.room-blind-layer>img{transition:none}}
body[data-year] #pool { width:min(1180px,calc(100% - 2rem)); max-width:1180px; box-sizing:border-box; clip-path:none; }
body[data-year] #pool h3 { font-size:clamp(1.5rem,4vw,2.5rem); line-height:1.2; letter-spacing:normal; margin:1rem 0; }
body[data-year="1992"] #pool { width:auto; max-width:840px; background:#ddd; padding:1rem; margin:0 auto; }
#pool-stage { position:relative; margin:0; overflow:hidden; isolation:isolate; background:#253a42; }
#pool-stage[hidden], #pool-ascii[hidden] { display:none !important; }
#pool-image { display:block; width:100%; height:auto; margin:0; border:0; filter:var(--room-season-filter,saturate(1)) var(--room-time-filter,brightness(1)); transition:filter 1.2s; }
#pool-return-door { position:absolute; display:block; z-index:4; cursor:pointer; }
#pool-stage::before, #pool-stage::after, .pool-light { content:""; position:absolute; inset:0; pointer-events:none; }
#pool-stage::before { z-index:1; transition:background 1.2s; }
body[data-daypart="dawn"] #pool-stage::before { background:linear-gradient(110deg,#ffa06430,transparent 60%); }
body[data-daypart="dusk"] #pool-stage::before { background:linear-gradient(130deg,#f17b5030,#26356740); }
body[data-daypart="night"] #pool-stage::before { background:#06182d50; }
.pool-light { z-index:2; opacity:0; background:radial-gradient(ellipse at 54% 68%,#40dcc350,transparent 28%),radial-gradient(ellipse at 42% 92%,#3ef4d240,transparent 24%); mix-blend-mode:screen; transition:opacity 1.2s; }
body[data-daypart="night"] .pool-light { opacity:1; }
body[data-florida-weather="cloudy"] #pool-stage::before { background:#34445238; }
body[data-florida-weather="rain"] #pool-stage::after { z-index:3; background:repeating-linear-gradient(105deg,transparent 0 29px,#d8e5ec40 30px,transparent 31px 51px); opacity:.3; animation:pool-rain .8s linear infinite; }
body[data-florida-weather="rain"] #pool-stage::before { background:#25364b4d; }
@keyframes pool-rain { from { background-position:0 -80px; } to { background-position:-21px 80px; } }
/* No snow through a Florida window. Closed blinds conceal the weather. */
body:is([data-year="1992"],[data-year="2001"],[data-year="2002"],[data-year="2003"],[data-year="2006"],[data-year="2007"]) { --room-season-filter:saturate(1); }
body:is([data-year="2001"],[data-year="2002"],[data-year="2003"],[data-year="2006"],[data-year="2007"]) .room-illustration::after { background:none; opacity:0; }
body[data-florida-weather="cloudy"] .room-era[data-blinds="open"] .room-illustration::after { opacity:.2; background:#839aa1; }
body[data-florida-weather="rain"] .room-era[data-blinds="open"] .room-illustration::after { opacity:.3; background:repeating-linear-gradient(105deg,transparent 0 29px,#d8e5ec 30px,transparent 31px 51px); animation:pool-rain .8s linear infinite; }
body[data-year="2002"] #pool-stage { border:2px solid #594155; }
body[data-year="2006"] #pool-stage { border:2px solid #ff69b4; }
body[data-year="2007"] #pool-stage { border:4px solid #fff; border-radius:10px; box-shadow:0 3px 12px #32637633; }
@media (prefers-reduced-motion:reduce) { #pool-stage::after, .room-era[data-blinds="open"] .room-illustration::after { animation:none !important; } }
@media (max-width:600px) { body[data-year] #pool { width:calc(100% - 1rem); padding:1rem .5rem; } }

/* Adjacent Florida editions use the same room geometry and working blinds. */
body:is([data-year="2001"],[data-year="2003"]) .room-stage > .room-map-gateway { left:76.9%; right:auto; top:3.2%; width:22.1%; height:38.5%; }
body:is([data-year="2001"],[data-year="2003"]) .room-fax { left:87%; top:51%; }
body:is([data-year="2001"],[data-year="2003"]) .room-illustration::after { clip-path:inset(7% 70% 36% 0); }
body:is([data-year="2001"],[data-year="2003"]) .candle-era--2002 { display:block; }
