CAST SKY felt: fix invisible form — (0,2,0) chain + drop the modal-era aperture-fill

Two live-only stacking/layout bugs in the in-room felt (caught via Claudezilla
DOM inspection — neither is reachable by IT/Jasmine):

- .sky-page--room (0,1,0) lost the source-order tie to the LATER base
  `.sky-page { position: relative }` (also 0,1,0), so the felt stayed
  position:relative + flex:1 and collapsed to width 0 as a flex child of the
  hex-pane — the form vanished onto a 0-wide column. Chained to
  `.sky-page.sky-page--room` (0,2,0) so it wins regardless of order.
  [[feedback-scss-import-order-specificity]]
- Dropped `html.sky-open { #id_aperture_fill { opacity: 1 } }` — that modal-era
  backdrop is a full-cover --duoUser div at z-90; the old dark modal sat above
  it (z-120), but the felt sits at z-5, so the fill painted an opaque green
  sheet OVER the felt + form. Its opacity transition is why the form "flashed
  then vanished after <0.5s". The felt is its own --duoUser surface + covers the
  hex on its own, so the fill stays transparent now.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Disco DeDisco
2026-06-07 17:29:04 -04:00
parent 1f874de459
commit 94cd9db3a4

View File

@@ -9,8 +9,12 @@
html.sky-open { html.sky-open {
overflow: hidden; overflow: hidden;
// NB: the modal-era `#id_aperture_fill { opacity: 1 }` backdrop is GONE here.
#id_aperture_fill { opacity: 1; } // It's a full-cover --duoUser div at z-90; the old dark modal sat above it
// (z-120), but the inline felt sits at z-5, so lighting the fill painted an
// opaque green sheet OVER the felt + form (the fill's opacity transition is
// why the form "flashed then vanished"). The felt is its own --duoUser
// surface + covers the hex on its own, so the fill stays transparent now.
} }
// ── In-room CAST SKY felt (unified with my_sky / sky.html) ──────────────────── // ── In-room CAST SKY felt (unified with my_sky / sky.html) ────────────────────
@@ -24,7 +28,12 @@ html.sky-open {
position: relative; position: relative;
} }
.sky-page--room { // NB: chained to (0,2,0) — the base `.sky-page { position: relative }` block
// lives LATER in this file, so a bare `.sky-page--room` (0,1,0) loses the tie on
// source order and the felt stays position:relative → it collapses to width 0 as
// a flex child of the hex-pane (the form vanishes onto a 0-wide column). The
// chain wins regardless of order. [[feedback-scss-import-order-specificity]]
.sky-page.sky-page--room {
position: absolute; position: absolute;
inset: 0; inset: 0;
// Within the hex-pane stacking context (matches .sig-overlay's z:5), above // Within the hex-pane stacking context (matches .sig-overlay's z:5), above
@@ -36,7 +45,7 @@ html.sky-open {
pointer-events: none; pointer-events: none;
} }
html.sky-open .sky-page--room { html.sky-open .sky-page.sky-page--room {
visibility: visible; visibility: visible;
pointer-events: auto; pointer-events: auto;
} }