.brand-home{display:flex;align-items:center;padding:8px}.consent{display:flex;gap:12px;align-items:center;padding:18px 0;font-weight:700}.consent input{width:22px;height:22px}.schedule-note{font-size:12px;margin-top:18px;color:#c4c2c8}.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.points{display:flex;gap:12px;align-items:center}.points>b{font-size:48px;color:var(--accent);line-height:1}.points span{display:flex;flex-direction:column}.points small{color:var(--muted)}.branch-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:24px}.branch-rail button{min-height:110px;text-align:left;padding:18px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius)}.branch-rail b,.branch-rail span{display:block}.branch-rail span{color:var(--muted);font-size:12px;margin-top:8px}.social-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.social-row .btn{margin:0}.locked-panel{max-width:650px;margin:28px 0}.locked-panel:before{content:'◌';display:block;font-size:48px;color:var(--accent);margin-bottom:16px}.local-photo{max-height:280px;width:100%;object-fit:contain;background:#090b0e;border:1px solid var(--line);margin:12px 0}.journal-list{display:grid;gap:8px;margin:24px 0}.journal-list>div{display:flex;justify-content:space-between;padding:16px;border:1px solid var(--line);background:var(--surface)}.journal-list span{color:var(--muted)}.reward-row b,.reward-row small{display:block}.reward-row small{color:var(--muted);margin-bottom:4px}.reward-row>span{font-size:26px;color:var(--accent)}.result-status{margin-top:28px}.draw-wheel{position:relative;display:grid;place-items:center;width:min(72vw,252px);aspect-ratio:1;margin:20px auto;border:8px solid #ececf2;border-radius:50%;background:conic-gradient(var(--accent) 0 25%,#342a60 25% 50%,#fff1b8 50% 75%,#553149 75% 100%);box-shadow:0 12px 30px #0005}.draw-wheel:before{content:'';position:absolute;top:-23px;left:50%;transform:translateX(-50%);border-left:13px solid transparent;border-right:13px solid transparent;border-top:0;border-bottom:25px solid #fff;filter:drop-shadow(0 2px 2px #0008)}.draw-wheel:after{content:'';position:absolute;inset:22%;border-radius:50%;background:#11131a;border:1px solid #ffffff44}.draw-wheel i{position:absolute;width:2px;height:42%;top:8%;background:#fff;transform:rotate(38deg);transform-origin:50% 100%;z-index:1}.draw-wheel>div{position:relative;z-index:2;width:55%;text-align:center;color:#fff;line-height:1.2}.draw-wheel b,.draw-wheel small{display:block}.draw-wheel b{font-size:13px}.draw-wheel small{margin-top:5px;font-size:10px;color:#d2d4dc}.draw-wheel.waiting{filter:grayscale(.7);opacity:.75}.state-page{min-height:65svh;display:grid;place-content:center;max-width:620px;text-align:center;margin:auto}.state-page h1{font-size:clamp(38px,7vw,72px);margin:14px 0}.state-page .btn{max-width:340px;margin:18px auto 0}body[data-brand=GB] .page-head{background:#08070df5}body[data-brand=GB] .branch-rail button{background:linear-gradient(135deg,#221325,#111a28)}body[data-brand=GB] .points>b{background:linear-gradient(90deg,#f32eff,#56caff);background-clip:text;color:transparent}.flat-screen .branch-rail{grid-template-columns:1fr}.flat-screen .page-intro{display:block}.flat-screen .points{margin-top:15px}.flat-screen .social-row{grid-template-columns:1fr}.flat-screen .state-page{min-height:620px}.flat-screen .schedule-note{display:none}
.shell-feedback,.save-retry{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 18px;background:#f2eee7;color:#111;border-bottom:1px solid #222;font-weight:700}.shell-feedback .text-button{color:#111}.save-retry{position:fixed;left:50%;bottom:20px;top:auto;transform:translateX(-50%);max-width:620px;width:calc(100% - 32px);border:1px solid #fff;border-radius:var(--radius);box-shadow:0 16px 48px #0009}.save-retry p{margin:0}.story-preview{max-width:720px}.story-preview>p{font-size:18px;white-space:pre-wrap;margin:22px 0}.product-focus{display:grid;grid-template-columns:minmax(240px,1fr) minmax(260px,1fr);gap:36px;align-items:center;margin-top:28px;padding:28px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius)}.product-focus>img{width:100%;height:420px;object-fit:contain}.flat-game .game-shell{display:block}.flat-game .game-sidebar{display:block}.flat-game .scene{aspect-ratio:2/3}.flat-game .page-head{height:64px;padding:12px}.resend button{min-height:44px;padding:8px;color:var(--ink);text-decoration:underline}
.modal-feedback{margin:12px 0 18px;padding:12px 14px;border-left:4px solid var(--accent);background:#2d1717;color:#fff;font-weight:700}
@media(max-width:760px){.page-intro{display:block}.points{margin-top:20px}.branch-rail{grid-template-columns:1fr 1fr}.social-row{grid-template-columns:1fr}.schedule-note{max-width:280px}.points>b{font-size:42px}.product-focus{grid-template-columns:1fr;padding:18px}.product-focus>img{height:280px}.shell-feedback{position:relative;text-align:center;flex-wrap:wrap}}

.symbol-sequence{display:inline-flex;align-items:center;gap:6px}.symbol-sequence svg{width:20px;height:20px}.symbol-sequence i{font-style:normal;opacity:.55}
.event-calendar{display:grid;gap:4px;margin:18px 0;padding:14px 16px;border:1px solid #ffffff2a;border-radius:12px;background:#090b0ebd}.event-calendar span,.event-calendar small{color:#d1d4da}.schedule-banner{display:flex;justify-content:space-between;gap:18px;margin-bottom:20px;padding:14px 18px;border:1px solid var(--accent);border-radius:12px;background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.schedule-banner span{color:var(--muted)}.fragment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.fragment{min-height:130px;display:grid;place-content:center;text-align:center;border:1px solid var(--line);border-radius:12px;background:linear-gradient(145deg,var(--surface),#090b0e)}.fragment span{font-size:34px;color:var(--accent)}.fragment.sealed{filter:saturate(0);opacity:.55}.compact{padding:18px}.ghost-cover{position:relative;min-height:300px;overflow:hidden;border-radius:18px}.ghost-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.45)}.ghost-cover>div{position:absolute;left:28px;right:28px;bottom:26px}.friend-progress{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:center;margin:20px 0;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.friend-progress strong{grid-row:span 2;font-size:40px;color:var(--accent)}.friend-lights{display:flex;gap:9px}.friend-lights i{width:22px;height:22px;border-radius:50%;background:#252b32;border:1px solid var(--line);box-shadow:inset 0 0 0 5px #111}.friend-lights i.on{background:var(--accent);box-shadow:0 0 16px var(--accent)}.decoration-lock,.review-state{display:flex;justify-content:space-between;gap:16px;margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.decoration-lock span,.review-state span{color:var(--muted)}.review-state.verified{border-color:var(--accent)}.points-ledger{margin:20px 0;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.points-ledger>div{display:flex;justify-content:space-between;padding:8px 0;border-top:1px solid var(--line)}

.daily-product-card{max-width:450px;margin:28px auto;padding:28px;border:1px solid var(--accent);border-radius:var(--radius);text-align:center;background:radial-gradient(ellipse at top,#263240,#11151c)}.daily-product-card img{height:180px;display:block;margin:18px auto}.daily-product-card h2{margin:12px 0}.collection-history{display:flex;gap:12px;flex-wrap:wrap}.collection-history .fragment{min-width:110px;display:grid;text-align:center}.fragment small{font-size:11px;color:var(--muted)}

.share-card.friend-edition{border:3px solid var(--accent);box-shadow:0 0 28px color-mix(in srgb,var(--accent) 28%,transparent),inset 0 0 0 7px #10141a}.share-card.friend-edition .friend-lights{justify-content:center;margin-top:18px}.share-card.friend-edition .friend-lights span{font-size:11px}
.share-products{display:flex;justify-content:center;align-items:center;gap:16px;min-width:0}.share-products .product{min-width:0;max-width:calc(50% - 8px);object-fit:contain}.share-products .product:only-child{max-width:100%}.share-card.mode-turbo{background:linear-gradient(155deg,#402012 0%,#0b0d10 65%)}.share-mode{display:block;width:max-content;margin:12px auto}
.share-products{height:230px;margin:16px 0}.share-products .product{height:200px;width:calc(50% - 8px)}.share-products .product:only-child{width:auto;max-width:100%}
.field input.story-file-selected{font-size:0;}
.field input.story-file-selected::file-selector-button{font-size:14px;color:#fff;}
.story-file-name{display:block;font-size:13px;overflow-wrap:anywhere;margin-top:6px;color:#d2d4dc;}
.product-fact{padding:12px 0;border-bottom:1px solid var(--line)}

.game-shell.game-shell--focused{display:block;max-width:1050px;min-height:0}
.room-tools{display:flex;gap:8px;flex-shrink:0;align-items:center}
.game-help-trigger{min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);background:#171a22;color:var(--ink);font-size:12px;font-weight:700;white-space:nowrap}
.game-help-trigger:hover{border-color:var(--accent)}
.first-room-guide{display:flex;align-items:flex-start;gap:10px;padding:11px 18px;background:#11141bea;border-block:1px solid #ffffff24;color:#fff}
.first-room-guide>span{flex:0 0 auto;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding-top:2px}
.first-room-guide p{font-size:13px;line-height:1.45;margin:0}
.first-room-guide--modal{display:block;margin:8px 0 14px;padding:10px 12px;border:1px solid #ffffff26;border-left:3px solid var(--accent);border-radius:8px;background:#0c0e13;color:#fff;font-size:13px;line-height:1.5}
.instructions-overlay{position:fixed;inset:0;z-index:45;display:grid;place-items:center;padding:16px;background:#03040ae8;backdrop-filter:blur(4px)}
.instructions-panel{position:relative;width:min(100%,660px);max-height:min(90svh,820px);overflow:auto;padding:clamp(22px,5vw,40px);border:1px solid #ffffff35;border-radius:var(--radius);background:linear-gradient(145deg,#18151d,#101319 62%,#161a20);box-shadow:0 28px 90px #000b}
.instructions-panel>.eyebrow{margin-bottom:12px}
.instructions-panel h2{max-width:520px;padding-right:36px;font-size:clamp(26px,5vw,38px);line-height:1.13;letter-spacing:-.025em;margin:0 0 12px}
.instructions-panel h3{font-size:14px;color:var(--accent);margin:24px 0 7px}
.instructions-panel p{max-width:570px;margin:0;color:#e1e1e6;font-size:15px;line-height:1.6}
.instructions-first-room,.instructions-current-room{margin-top:24px;padding-top:4px;border-top:1px solid #ffffff20}
.instructions-actions{display:grid;gap:8px;margin-top:26px}
.instructions-actions .btn{margin:0}
.instructions-actions .text-button{justify-self:center}
.instructions-close{position:absolute;right:16px;top:16px;z-index:2}
.inventory-trigger{position:relative}.inventory-count{position:absolute;right:-4px;top:-4px;min-width:17px;padding:0 3px;border-radius:12px;background:var(--accent);color:#090b0e;font-size:10px;font-weight:700}
.inventory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:12px;margin:22px 0}
.inventory-grid .bag-item{min-height:115px;font-size:12px;padding:12px;overflow-wrap:anywhere}
.inventory-grid .bag-item>img{height:58px}.inventory-grid .metal-token svg{width:44px;height:44px}
.selected-tool{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;border-block:1px solid var(--line);background:var(--surface)}
.selected-tool>button:first-child{display:flex;align-items:center;gap:12px;text-align:left;min-height:44px;font-size:13px;color:var(--accent)}
.selected-tool img,.selected-tool svg,.selected-tool .prop-sprite{width:32px;height:36px;object-fit:contain;flex-shrink:0}
.room-exit{padding:18px 24px}.room-exit .btn{max-width:420px;margin:auto}
.map-progress{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;border-block:1px solid var(--line);padding:14px 0;margin:0 0 24px;font-size:13px;color:var(--muted)}
.map-discoveries{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.map-discoveries .btn{flex:1;min-width:180px;margin:0}
@media(min-width:761px){.game-shell--focused .game-main .scene{max-width:760px}.game-shell--focused .room-top,.game-shell--focused .selected-tool,.game-shell--focused .feedback{max-width:760px;margin-inline:auto}}
@media(max-width:430px){.room-tools{gap:6px}.room-tools .icon-btn{min-width:40px;min-height:44px;padding:7px}.room-top h1{font-size:18px}.room-top{position:relative;padding-bottom:52px}.game-help-trigger{position:absolute;left:16px;bottom:4px}.room-exit{padding:14px 16px}.first-room-guide{padding:10px 16px;gap:8px}.first-room-guide>span{font-size:10px}.first-room-guide p{font-size:12px}.instructions-overlay{padding:10px}.instructions-panel{max-height:92svh;border-radius:14px}.instructions-panel p{font-size:14px}}

.inventory-image-status{font-size:12px;color:var(--muted)}
[data-inventory-image-status][hidden],[data-retry-inventory-images][hidden]{display:none}
.inventory-grid img[data-image-state=failed]{visibility:hidden}

/* Keep room interaction unavailable until its background is visible. */
.scene-image-notice{position:absolute;z-index:30;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;background:#10151d;color:#fff;text-align:center}
.scene-image-notice p{margin:0;font-size:14px;color:#c9d0dc}
.scene-image-notice [hidden]{display:none}
.scene[data-scene-image-state=ready] .scene-image-notice{display:none}
.scene:not([data-scene-image-state=ready])>.spot,.scene:not([data-scene-image-state=ready])>.scene-caption{visibility:hidden;pointer-events:none}

[data-cabinet-status]{min-height:3.1em;overflow-anchor:none}
.modal-box{overflow-anchor:none}

.closeup{position:relative}
.product-image-notice{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px;background:#10151ded;color:#fff;text-align:center;font-size:13px}
.product-image-notice[hidden],.product-image-notice [hidden]{display:none}

/* GB bedroom completion and explicit product interest. */
.gb-interest{max-width:650px;margin:auto}.gb-interest h1{font-size:clamp(25px,5vw,38px);line-height:1.15;margin:9px 0 12px}.gb-interest>p{color:var(--muted);font-size:14px}
.gb-interest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}
.gb-interest-option{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-width:0;padding:20px 12px 15px;border:1px solid #ffffff26;border-radius:16px;background:radial-gradient(ellipse at center,#293340,#11161e 75%)}
.gb-interest-option img{height:130px;width:100%;object-fit:contain;filter:drop-shadow(0 8px 10px #0007)}.gb-interest-option b{font-size:13px}.gb-interest-option.selected{border-color:#56caff;background:radial-gradient(ellipse at center,#243e4e,#11161e 75%);box-shadow:inset 0 0 0 1px #56caff}.choice-check{position:absolute;right:11px;top:7px;color:#8c949f;font-size:18px}.selected .choice-check{color:#56caff}.interest-actions{text-align:center}.interest-actions>.text-button{margin:10px auto}.interest-saved{color:#b8e5d0;margin:10px 0 20px}.seal-collected{margin:16px 0}
.hagimi-box-reveal{position:relative;min-height:0;aspect-ratio:3/2;overflow:hidden;isolation:isolate;padding:0;background:#0b0b10}
.hagimi-box-reveal .reveal-box{max-width:none;max-height:none;position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hagimi-box-reveal .reveal-product{max-width:none;max-height:none;position:absolute;z-index:1;left:42%;bottom:40%;width:16%;height:54%;object-fit:contain;filter:drop-shadow(3px 5px 4px #000b);animation:hagimi-arrive .75s ease-out both}
.hagimi-intro{margin:20px 0 24px}.hagimi-intro h3{font-size:28px;margin:5px 0}.hagimi-intro p{color:var(--muted);font-size:14px}
@keyframes hagimi-arrive{from{opacity:0;transform:translateY(38%)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.hagimi-box-reveal .reveal-product{animation:none}}

.hagimi-box-reveal .reveal-product-well{position:absolute;inset:0;z-index:1;clip-path:inset(0 0 40% 0);pointer-events:none}

/* GB attic: objects are part of the room image; buttons retain interaction only. */
body[data-brand=GB] .scene[data-scene=attic] .attic-native{background:transparent;border:0;box-shadow:none;filter:none;min-width:44px;min-height:44px}
body[data-brand=GB] .scene[data-scene=attic] .attic-native .glint{display:block;opacity:.3;width:2px;height:2px;box-shadow:0 0 3px #ded1b480}
body[data-brand=GB] .scene[data-scene=attic] .archive-state-pending .archive-frame{opacity:.66;filter:brightness(.72) saturate(.72);border-color:#71808c;background:#0b1118c7;box-shadow:inset 0 0 18px #0009;transition:opacity .24s ease,filter .24s ease,border-color .24s ease,box-shadow .24s ease}
body[data-brand=GB] .scene[data-scene=attic] .archive-state-matched .archive-frame{opacity:1;filter:none;border-color:#9ce8ff;background:#101b23e8;box-shadow:0 0 0 1px #f32eff42,0 0 14px 3px #56caff70,inset 0 0 14px #56caff1f;transition:opacity .24s ease,filter .24s ease,border-color .24s ease,box-shadow .24s ease}
body[data-brand=GB] .scene[data-scene=attic] .archive-state-complete .archive-frame{opacity:1;filter:brightness(1.08) saturate(1.04);border-color:#e8fbff;background:#12202be8;box-shadow:0 0 0 1px #f32eff70,-3px 0 13px 2px #f32eff4f,3px 0 15px 3px #56caff7a,inset 0 0 16px #ffffff1f;transition:opacity .24s ease,filter .24s ease,border-color .24s ease,box-shadow .24s ease}
.attic-closeup{min-height:0;padding:0;display:block}
.attic-detail{position:relative;width:100%;overflow:hidden}
.attic-detail img{position:absolute;max-width:none;height:auto;object-fit:initial}
@media(prefers-reduced-motion:reduce){body[data-brand=GB] .scene[data-scene=attic] .archive-state-pending .archive-frame,body[data-brand=GB] .scene[data-scene=attic] .archive-state-matched .archive-frame,body[data-brand=GB] .scene[data-scene=attic] .archive-state-complete .archive-frame{transition:none}}

/* GB daily discoveries: keep the hit area, reveal only a subtle white hint. */
body[data-brand=GB] .scene .gem-spot .gem,
body[data-brand=GB] .scene .gem-spot .gem-clue{display:none}
body[data-brand=GB] .scene .gem-spot{background:transparent;filter:none}
body[data-brand=GB] .scene .gem-spot .glint{display:block;left:50%;top:50%;width:4px;height:4px;transform:translate(-50%,-50%);background:white;box-shadow:0 0 7px white;animation:gvDiscoveryHint 3.6s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){body[data-brand=GB] .scene .gem-spot .glint{animation:none;opacity:.7}}

.gem-receipt-modal{max-width:440px;padding:24px;text-align:center}
.gem-receipt-modal h2{font-size:24px;line-height:1.25;padding:0 32px;margin-bottom:4px}
.gem-receipt-art{height:184px;display:grid;place-items:center;background:radial-gradient(ellipse,#56caff20,transparent 67%);margin:4px 0 12px}
.gem-receipt-art svg{width:106px;height:138px;filter:drop-shadow(0 10px 18px #0007);animation:gem-receipt-arrive .45s ease-out both}
.gem-receipt-count{margin:8px 0;color:var(--muted);font-size:14px}
.gem-receipt-count strong{font-size:24px;color:var(--ink);margin-right:8px}

/* GB mobile hall fuse-box discovery hint. */
body[data-brand=GB][data-device=mobile] .scene[data-scene=lobby] .spot.fuse-hint .glint{left:50%;top:50%;width:6px;height:6px;transform:translate(-50%,-50%) scale(.88);background:#fff;border-radius:50%;box-shadow:0 0 0 3px #ffffff14,0 0 12px 5px #ffffff47;opacity:.32;animation:gbFuseHint 3.2s ease-in-out infinite}
@keyframes gbFuseHint{0%,100%{opacity:.32;transform:translate(-50%,-50%) scale(.88)}48%,58%{opacity:.88;transform:translate(-50%,-50%) scale(1.12)}}
@media(prefers-reduced-motion:reduce){body[data-brand=GB][data-device=mobile] .scene[data-scene=lobby] .spot.fuse-hint .glint{animation:none;opacity:.72;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #ffffff14,0 0 10px 4px #ffffff3d}}

/* Cross-device exploration cues: keep hit areas and reveal order, but let the live objective lead in every room. */
body[data-device] .scene .spot:not(.explore-cue):not(.gem-spot) .glint{animation:none;opacity:.12;box-shadow:0 0 5px #ffffff78}
body[data-brand][data-device] .scene .spot.explore-cue .glint{left:50%;top:50%;width:6px;height:6px;transform:translate(-50%,-50%) scale(.86);background:#fff;border-radius:50%;opacity:.24;box-shadow:0 0 0 3px #ffffff12,0 0 13px 5px #ffffff52;animation:explorationBreath 6s ease-in-out infinite;animation-delay:var(--cue-delay,0s)}
body[data-device] .scene .cue-delay-0{--cue-delay:0s}
body[data-device] .scene .cue-delay-1{--cue-delay:-2s}
body[data-device] .scene .cue-delay-2{--cue-delay:-4s}
body[data-brand][data-device] .scene .spot.explore-cue.cue-secondary .glint{width:4px;height:4px;opacity:.28;box-shadow:0 0 8px 2px #ffffff36;animation:explorationUndertone 8.4s ease-in-out infinite;animation-delay:var(--cue-delay,0s)}
body[data-device] .scene .gem-spot .glint{width:3px;height:3px;opacity:.2;box-shadow:0 0 6px #ffffffa6;animation:explorationUndertone 8.4s ease-in-out infinite;animation-delay:-5.4s}
body[data-brand][data-device] .scene .spot.explore-cue .glint:before{content:'';position:absolute;left:50%;top:50%;width:20px;height:2px;transform:translate(-50%,-50%) rotate(-18deg);background:linear-gradient(90deg,transparent,#fff9,transparent);opacity:.28;filter:blur(.35px);pointer-events:none}
body[data-device] .scene .cue-water .glint:before{width:25px;height:2px;transform:translate(-50%,-50%) rotate(4deg);opacity:.42}
body[data-device] .scene .cue-dust .glint:before{width:3px;height:3px;border-radius:50%;background:#fff;box-shadow:-9px 4px 0 #ffffff70,8px -5px 0 #ffffff78,13px 4px 0 #ffffff52;opacity:.46}
body[data-device] .scene .cue-impact .glint:before{width:23px;height:2px;transform:translate(-50%,-50%) rotate(-48deg);opacity:.46}
body[data-brand][data-device] .scene .spot.explore-cue:active .glint{animation:none;opacity:1;transform:translate(-50%,-50%) scale(.72);box-shadow:0 0 0 5px #ffffff24,0 0 18px 8px #ffffff80;transition:transform .12s ease,opacity .12s ease,box-shadow .12s ease}
body[data-brand][data-device] .scene .spot.explore-cue:active .glint:after{content:'';position:absolute;left:50%;top:50%;width:8px;height:8px;border:1px solid #ffffffb8;border-radius:50%;animation:explorationTap .34s ease-out both;pointer-events:none}
body[data-brand=GB][data-device=mobile] .scene[data-scene=lobby] .spot.fuse-hint.explore-cue .glint{animation:explorationBreath 6s ease-in-out infinite;animation-delay:var(--cue-delay,0s)}
@keyframes explorationBreath{0%,100%{opacity:.22;transform:translate(-50%,-50%) scale(.86);box-shadow:0 0 0 3px #ffffff10,0 0 10px 4px #ffffff36}12%,28%{opacity:.9;transform:translate(-50%,-50%) scale(1.12);box-shadow:0 0 0 4px #ffffff1f,0 0 16px 7px #ffffff70}44%{opacity:.34;transform:translate(-50%,-50%) scale(.94)}}
@keyframes explorationUndertone{0%,100%{opacity:.16}48%,60%{opacity:.42}}
body[data-brand=GB][data-device] .scene[data-scene=attic] .attic-native:not(.explore-cue) .glint{left:50%;top:50%;width:4px;height:4px;background:#fff;transform:translate(-50%,-50%);box-shadow:0 0 8px 2px #ffffff50;animation:explorationUndertone 6s ease-in-out infinite;}
@media(prefers-reduced-motion:reduce){body[data-brand=GB][data-device] .scene[data-scene=attic] .attic-native:not(.explore-cue) .glint{animation:none;opacity:.5;}}
@keyframes explorationTap{from{opacity:.9;transform:translate(-50%,-50%) scale(.7)}to{opacity:0;transform:translate(-50%,-50%) scale(3.2)}}
@media(prefers-reduced-motion:reduce){body[data-brand][data-device] .scene .spot.explore-cue .glint,body[data-device] .scene .gem-spot .glint{animation:none;opacity:.72;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #ffffff16,0 0 11px 4px #ffffff47}body[data-brand][data-device] .scene .spot.explore-cue.cue-secondary .glint,body[data-device] .scene .gem-spot .glint{opacity:.32;box-shadow:0 0 7px #ffffffa6}}
.gem-receipt-track{display:flex;justify-content:center;gap:12px;margin:12px 0}
.gem-receipt-track span{display:grid;place-items:center;width:32px;height:32px;color:#686e79;border:1px solid #424752;border-radius:50%}
.gem-receipt-track .collected{color:#b2eeff;border-color:#56caff88;background:#56caff18}
.gem-receipt-copy{font-size:13px;color:var(--muted);margin:12px 0 22px;line-height:1.5}
.gem-receipt .text-button{margin-top:8px}
@keyframes gem-receipt-arrive{from{opacity:0;transform:translateY(12px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.gem-receipt-art svg{animation:none}}
@media(max-height:650px){.gem-receipt-art{height:130px}.gem-receipt-art svg{height:112px}}

/* Story editor actions share one compact action row on every entry point. */
.story-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
.story-actions .btn{width:auto;margin:0}
@media (max-width:640px){.story-actions .btn{flex:1 1 calc(50% - 6px)}}
