:root{color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:#000;color:#fff;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.splash{position:relative;width:100vw;height:100vh;height:100dvh;overflow:hidden;background:#000}.intro-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;background:#000}.intro-video.hidden{visibility:hidden}.splash-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:36px;padding:24px;background:#000}.splash-title{width:min(82vw,460px);max-height:52vh;object-fit:contain}.audio-button,.start-button{min-height:52px;padding:14px 30px;border:0;border-radius:10px;font:inherit;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#000;background:#f1c45d;cursor:pointer}.start-overlay{position:absolute;left:0;right:0;bottom:calc(28px + env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;gap:16px;padding:0 24px}.start-hint{margin:0;font-weight:900;letter-spacing:.04em;text-transform:uppercase;text-align:center;text-shadow:0 2px 12px rgba(0,0,0,.85)}.associa-button{min-height:52px;padding:14px 30px;border:1px solid rgba(255,255,255,.55);border-radius:10px;font:inherit;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:#0006;cursor:pointer}.master-code{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 28px;border-radius:12px;background:#0000009e;border:1px solid rgba(241,196,93,.6)}.master-code span{font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#f1c45d}.master-code strong{font-size:clamp(2.4rem,12vw,3.4rem);font-weight:900;letter-spacing:.18em;line-height:1}.start-error{margin:0;color:#ffb4a8;text-align:center;font-weight:700}.associa-form{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:min(100%,320px)}.associa-input{width:100%;min-height:56px;border:1px solid rgba(255,255,255,.55);border-radius:10px;background:#0000008c;color:#fff;text-align:center;font:inherit;font-weight:900;font-size:1.6rem;letter-spacing:.4em;text-transform:uppercase;padding:10px 12px 10px 18px}.associa-input::placeholder{letter-spacing:.2em;color:#ffffff73;font-size:1rem}.nick-input{width:100%;min-height:56px;border:1px solid rgba(255,255,255,.55);border-radius:10px;background:#0000008c;color:#fff;text-align:center;font:inherit;font-weight:800;font-size:1.25rem;padding:10px 14px}.nick-input::placeholder{color:#ffffff73;font-weight:600}.players-box{display:flex;flex-direction:column;gap:6px;align-items:center}.players-title{font-size:.8rem!important;letter-spacing:.06em}.players-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 10px;justify-content:center}.players-list li{font-weight:800;font-size:.95rem}.building-screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px;text-align:center;background:#000000b8}.building-screen h2{font-size:clamp(1.6rem,7vw,2.6rem);font-weight:900;letter-spacing:.04em;text-transform:uppercase;animation:buildingPulse 1.4s ease-in-out infinite}.build-step{margin:0;min-height:1.4em;font-size:clamp(1rem,4.5vw,1.3rem);font-weight:800;color:#f1c45d;letter-spacing:.02em;animation:buildStepIn .35s ease both}@keyframes buildStepIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.build-dots{display:flex;gap:10px}.build-dots span{width:12px;height:12px;border-radius:50%;background:#ffffff38;transition:background .3s ease,transform .3s ease}.build-dots span.on{background:#f1c45d;transform:scale(1.15)}.ready-screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:24px;text-align:center;background:#000000b8}.ready-screen h2{font-size:clamp(2rem,9vw,3.2rem);font-weight:900;letter-spacing:.04em;text-transform:uppercase}.ready-screen .start-button{min-width:200px}.character-video-stage{position:absolute;top:0;right:0;bottom:0;left:0;background:#000;overflow:hidden}.level-background{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;background:#000}.level-rejoin-message{position:absolute;top:0;right:0;bottom:0;left:0;z-index:12;display:flex;align-items:center;justify-content:center;padding:24px;pointer-events:none;text-align:center;background:#00000047}.level-rejoin-message h2{margin:0;max-width:min(88vw,680px);color:#fff;font-size:clamp(2.2rem,10vw,4rem);font-weight:900;letter-spacing:.04em;line-height:.96;text-transform:uppercase;text-shadow:0 4px 24px rgba(0,0,0,.9)}.turn-order-backdrop{position:fixed;z-index:35;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:18px;background:#0000008f}.turn-order-sheet{position:relative;width:min(100%,480px);max-height:min(82vh,720px);border-radius:8px;padding:20px;overflow-y:auto;background:#050507f0;border:1px solid rgba(241,196,93,.34);box-shadow:0 24px 72px #000000bd}.turn-order-sheet>span{display:block;color:#f1c45d;font-size:.74rem;font-weight:900;text-transform:uppercase}.turn-order-sheet h2{margin-top:4px;padding-right:46px;font-size:clamp(2rem,10vw,3.4rem);line-height:.96;text-transform:uppercase}.turn-order-intro{margin:12px 0 0;color:#d7dce5;font-size:clamp(.95rem,3.8vw,1.08rem);font-weight:750;line-height:1.34}.turn-order-list{display:flex;flex-direction:column;gap:10px;margin:18px 0 0;padding:0;list-style:none}.turn-order-list li{min-height:54px;border-radius:8px;padding:10px 12px;display:flex;align-items:center;gap:12px;background:#ffffff14}.turn-order-list strong{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#050507;background:#f1c45d;font-size:.9rem;font-weight:900}.turn-order-list span{overflow-wrap:anywhere;color:#f4efe7;font-size:1.05rem;font-weight:900;text-transform:uppercase}.turn-order-start{margin-top:18px}.turn-order-wait{margin:16px 0 0;color:#f1c45d;font-size:.9rem;font-weight:900;line-height:1.28;text-align:center;text-transform:uppercase}.turn-banner{position:fixed;z-index:36;top:calc(104px + env(safe-area-inset-top));left:50%;min-width:min(42vw,190px);max-width:min(58vw,260px);transform:translate(-50%);border:1px solid rgba(241,196,93,.32);border-radius:8px;padding:7px 12px;text-align:center;color:#f4efe7;background:#050507c2;box-shadow:0 14px 42px #0000007a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none}.turn-banner.turn-transition{animation:turnTransitionNotice 2.5s ease-in-out both}.turn-banner.card-open{top:calc(72px + env(safe-area-inset-top));min-width:min(36vw,160px);max-width:min(50vw,220px);padding:6px 10px}.turn-banner.card-open span,.turn-banner.card-open small{font-size:.58rem}.turn-banner.card-open strong{font-size:clamp(.82rem,3.2vw,.98rem)}.turn-banner.current{border-color:#f1c45d94;background:#1e180cd1}.turn-banner span,.turn-banner small{display:block;color:#f1c45d;font-size:.68rem;font-weight:950;letter-spacing:.06em;line-height:1.1;text-transform:uppercase}.turn-banner strong{display:block;margin-top:3px;overflow-wrap:anywhere;font-size:clamp(.9rem,3.8vw,1.08rem);font-weight:950;line-height:1.08;text-transform:uppercase}.turn-banner small{margin-top:5px;color:#f4efe7c2}@keyframes turnTransitionNotice{0%{opacity:0;transform:translate(-50%,-8px) scale(.96)}18%,78%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-6px) scale(.98)}}.turn-phase-dot{position:fixed;z-index:14;top:calc(36px + env(safe-area-inset-top));left:50%;width:22px;height:22px;border-radius:50%;transform:translate(-50%);background:#f1c45d;border:2px solid rgba(255,255,255,.82);box-shadow:0 0 0 7px #0505076b,0 0 24px #f1c45dbf;animation:turnPhasePulse 1.9s ease-in-out infinite;pointer-events:none}.turn-phase-dot.phase-card{background:#f1c45d;box-shadow:0 0 0 7px #0505076b,0 0 24px #f1c45dbf}.turn-phase-dot.phase-action{background:#ff4040;box-shadow:0 0 0 7px #0505076b,0 0 26px #ff4040d1}.turn-phase-dot.phase-power{background:#4ba3ff;box-shadow:0 0 0 7px #0505076b,0 0 26px #4ba3ffd1}@keyframes turnPhasePulse{0%,to{opacity:.54;transform:translate(-50%) scale(.82)}50%{opacity:1;transform:translate(-50%) scale(1.08)}}.master-start-fights-button{position:fixed;z-index:13;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translate(-50%);min-height:52px;min-width:min(82vw,260px);border:0;border-radius:10px;padding:14px 24px;color:#000;background:#f1c45d;box-shadow:0 10px 30px #00000073;font:inherit;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.master-control-strip{position:fixed;z-index:14;left:max(14px,env(safe-area-inset-left));top:calc(184px + env(safe-area-inset-top));display:flex;width:min(38vw,156px);gap:8px;flex-direction:column;align-items:stretch;justify-content:flex-start;pointer-events:none}.master-control-strip>button{pointer-events:auto}.master-recover-flow-button{min-height:40px;width:100%;border:1px solid rgba(241,196,93,.58);border-radius:8px;padding:9px 12px;color:#f4efe7;background:#601212d1;box-shadow:0 10px 26px #0000006b;font:inherit;font-size:.76rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.turn-phase-timeout-countdown{position:fixed;z-index:14;top:calc(64px + env(safe-area-inset-top));right:16px;min-width:136px;border:1px solid rgba(241,196,93,.5);border-radius:8px;padding:9px 12px;color:#f4efe7;background:#111216db;box-shadow:0 10px 26px #00000061;font-size:.76rem;font-weight:850}.turn-phase-timeout-countdown span,.turn-phase-timeout-countdown b{display:block}.turn-phase-timeout-countdown span{color:#f4efe7c2}.turn-phase-timeout-countdown b{margin-top:2px;color:#f1c45d;font-size:1rem}.dungeon-card-view{position:fixed;z-index:12;left:max(16px,env(safe-area-inset-left));right:calc(78px + env(safe-area-inset-right));top:calc(120px + env(safe-area-inset-top));bottom:calc(96px + env(safe-area-inset-bottom));max-width:520px;margin:auto;display:flex;align-items:center;justify-content:center;pointer-events:none}.dungeon-card-view img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 18px 42px rgba(0,0,0,.72))}.dungeon-card-copy{position:relative;z-index:1;width:min(58%,260px);max-height:66%;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;gap:8px;text-align:center;color:#1b1010}.dungeon-card-text{min-height:0;overflow-y:auto;scrollbar-width:none}.dungeon-card-text::-webkit-scrollbar{display:none}.dungeon-card-text span{display:block;margin-bottom:8px;color:#5b1616;font-size:clamp(.68rem,2.3vw,.86rem);font-weight:900;letter-spacing:.02em;text-transform:uppercase}.dungeon-card-text p{margin:0;overflow-wrap:anywhere;font-size:clamp(.82rem,3.25vw,1.08rem);font-weight:900;line-height:1.13}.dungeon-card-copy.negative .dungeon-card-text p{color:#a11218}.dungeon-card-copy small{color:#5b1616;font-size:clamp(.62rem,2.2vw,.74rem);font-weight:900;text-transform:uppercase}.dungeon-card-target{flex:0 0 auto;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;pointer-events:auto}.dungeon-card-target select,.dungeon-card-target button{min-height:32px;border-radius:8px;border:1px solid rgba(91,22,22,.28);font:inherit;font-size:clamp(.66rem,2.5vw,.78rem);font-weight:900;line-height:1.05}.dungeon-card-target select{min-width:0;color:#1b1010;background:#fff5dcdb;padding:0 8px}.dungeon-card-target button{color:#f6ead0;background:#5b1616e6;padding:5px 10px;white-space:normal}.dungeon-card-close{position:absolute;z-index:2;top:max(12px,6%);right:max(14px,7%);width:40px;height:40px;border:1px solid rgba(91,22,22,.28);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#f6ead0;background:#5b1616db;box-shadow:0 8px 20px #0000005c;pointer-events:auto}.dungeon-card-close:disabled{opacity:.45}.dungeon-card-close.waiting{opacity:.62;filter:grayscale(.3)}.dungeon-notice{position:fixed;z-index:14;left:max(16px,env(safe-area-inset-left));right:calc(78px + env(safe-area-inset-right));bottom:calc(28px + env(safe-area-inset-bottom));max-width:520px;margin:0 auto;border-radius:8px;padding:16px 48px 16px 16px;color:#f4efe7;background:#050507e0;border:1px solid rgba(241,196,93,.34);box-shadow:0 18px 48px #0000009e}.dungeon-notice-stack{position:fixed;z-index:24;left:max(16px,env(safe-area-inset-left));right:calc(78px + env(safe-area-inset-right));bottom:calc(28px + env(safe-area-inset-bottom));max-width:520px;margin:0 auto;display:flex;flex-direction:column;gap:8px;pointer-events:none}.dungeon-notice.persisted{position:relative;left:auto;right:auto;bottom:auto;max-width:none;width:100%;margin:0;pointer-events:auto;animation:noticeIn .22s ease both}.dungeon-notice.persisted>span{display:block;margin-bottom:4px;color:#f1c45d;font-size:.72rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.dungeon-notice p{margin:0;overflow-wrap:anywhere;font-size:clamp(.95rem,3.8vw,1.15rem);font-weight:850;line-height:1.28}.dungeon-notice strong{color:#f1c45d;font-weight:950}.dungeon-notice.negative strong{color:#ff6a63}.dungeon-notice.private-question span{display:block;margin-bottom:4px;color:#f1c45d;font-size:.74rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.dungeon-notice-close{position:absolute;top:8px;right:8px;width:34px;height:34px;border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#f4efe7;background:#ffffff1a}@keyframes noticeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pre-turn-event-scene{position:fixed;z-index:36;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:calc(24px + env(safe-area-inset-top)) 24px calc(24px + env(safe-area-inset-bottom));overflow:auto;background:radial-gradient(circle at center,rgba(241,196,93,.08),transparent 32%),radial-gradient(circle at center,#0000001f,#000000c7 78%);animation:caveSceneIn .75s ease both}.pre-turn-event-scene:before,.pre-turn-event-scene:after{content:"";position:absolute;top:-18%;right:-18%;bottom:-18%;left:-18%;pointer-events:none}.pre-turn-event-scene:before{background:linear-gradient(115deg,transparent 0 42%,rgba(255,255,255,.07) 48%,transparent 56%),linear-gradient(245deg,transparent 0 44%,rgba(241,196,93,.06) 50%,transparent 58%);opacity:.5;animation:caveLightDrift 5.8s ease-in-out infinite alternate}.pre-turn-event-scene:after{border:1px solid rgba(241,196,93,.12);box-shadow:inset 0 0 140px #000000db}.pre-turn-event-copy{position:relative;z-index:1;width:min(88vw,620px);max-height:calc(100dvh - 48px);color:#f4efe7;text-align:center;text-shadow:0 5px 28px rgba(0,0,0,.96);display:flex;flex-direction:column;align-items:center}.pre-turn-event-copy span{display:block;color:#f1c45d;font-size:.78rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase;opacity:0;animation:caveTextIn .75s ease .2s forwards}.pre-turn-event-copy p{margin:12px 0 24px;max-width:100%;overflow:auto;font-size:clamp(1.35rem,5.5vw,2.65rem);font-weight:900;line-height:1.08;white-space:pre-line;opacity:0;animation:caveTextIn .9s ease .45s forwards}.pre-turn-event-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:14px;opacity:0;animation:caveTextIn .55s ease 1s forwards}.pre-turn-event-copy .primary{width:min(100%,260px);margin:0 auto;opacity:0;animation:caveTextIn .55s ease 1.15s forwards}.pre-turn-event-copy small{display:block;color:#f4efe7c7;font-size:.82rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;opacity:0;animation:caveTextIn .55s ease 1.15s forwards}@keyframes caveSceneIn{0%{opacity:0}to{opacity:1}}@keyframes caveTextIn{0%{opacity:0;transform:translateY(8px) scale(.98);filter:blur(5px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes caveLightDrift{0%{transform:translate(-3%) rotate(-1deg)}to{transform:translate(3%) rotate(1deg)}}.pre-turn-wait{position:fixed;z-index:12;left:50%;bottom:calc(28px + env(safe-area-inset-bottom));width:min(86vw,420px);transform:translate(-50%);border:1px solid rgba(241,196,93,.3);border-radius:8px;padding:14px 16px;color:#f4efe7;background:#050507c2;box-shadow:0 14px 42px #0000007a;font-weight:850;line-height:1.28;text-align:center}.character-name{position:absolute;left:18px;right:18px;bottom:calc(24px + env(safe-area-inset-bottom));text-align:center;text-shadow:0 2px 12px rgba(0,0,0,.9)}.character-name span{display:block;color:#f1c45d;font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.character-name strong{display:block;font-size:clamp(2.2rem,11vw,3.6rem);font-weight:900;text-transform:uppercase;line-height:1}.character-play{position:absolute;left:50%;bottom:calc(110px + env(safe-area-inset-bottom));transform:translate(-50%);min-width:200px}.stat-header{position:fixed;z-index:13;top:calc(14px + env(safe-area-inset-top));width:min(38vw,156px);border-radius:8px;padding:9px 10px 10px;background:#050507ad;border:1px solid rgba(255,255,255,.16);box-shadow:0 8px 24px #00000059}.stat-header.changed{animation:statHeaderPulse .7s ease-out}.stat-header.left{left:14px}.stat-header.right{right:14px}.stat-header-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.stat-header-top span{color:#f4efe7;font-size:.72rem;font-weight:900;text-transform:uppercase}.stat-header-top strong{font-size:1.1rem;line-height:1}.stat-value-stack{display:flex;min-width:38px;flex-direction:column;align-items:flex-end;gap:2px}.stat-delta{font-style:normal;font-size:.64rem;font-weight:900;line-height:1;opacity:0;animation:statDeltaFade 2.8s ease-out forwards}.stat-delta.negative{color:#ffd0c8}.stat-delta.positive{color:#d7ffd6}.stat-header.red .stat-header-top strong{color:#ff3f3f}.stat-header.green .stat-header-top strong{color:#45e071}.stat-track{height:7px;margin-top:7px;overflow:hidden;border-radius:999px;background:#ffffff29}.stat-track span{display:block;height:100%;border-radius:inherit}.stat-header.red .stat-track span{background:linear-gradient(90deg,#b70d20,#ff4545);box-shadow:0 0 14px #ff3f3f8c}.stat-header.green .stat-track span{background:linear-gradient(90deg,#168a42,#45e071);box-shadow:0 0 14px #45e0718c}@keyframes statHeaderPulse{0%{transform:scale(1);border-color:#ffffff29}34%{transform:scale(1.04);border-color:#f6ca5feb}to{transform:scale(1);border-color:#ffffff29}}@keyframes statDeltaFade{0%{opacity:0;transform:translateY(3px)}18%,72%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-3px)}}.destroy-game-button{min-height:42px;width:100%;border:1px solid rgba(255,90,80,.66);border-radius:8px;padding:9px 10px;color:#ffb4a8;background:#3c0c0ab8;box-shadow:0 8px 24px #00000059;font:inherit;font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.session-leave-button{position:fixed;z-index:16;top:calc(16px + env(safe-area-inset-top));left:14px;min-height:38px;border:1px solid rgba(244,239,231,.28);border-radius:8px;padding:8px 12px;color:#f4efe7;background:#050507b8;box-shadow:0 10px 24px #0000005c;font:inherit;font-size:.76rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.debug-card-button{position:fixed;z-index:13;top:calc(130px + env(safe-area-inset-top));left:14px;min-height:42px;width:min(38vw,156px);border:1px solid rgba(241,196,93,.54);border-radius:8px;padding:9px 10px;color:#f1c45d;background:#050507b8;box-shadow:0 8px 24px #00000059;font:inherit;font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.debug-card-backdrop{position:fixed;z-index:36;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:18px;background:#0000009e}.debug-card-panel{position:relative;width:min(100%,520px);max-height:min(82vh,720px);overflow-y:auto;border-radius:8px;padding:18px;color:#f4efe7;background:#050507f0;border:1px solid rgba(241,196,93,.34);box-shadow:0 24px 72px #000000b8}.debug-card-panel>span{display:block;color:#f1c45d;font-size:.74rem;font-weight:900;text-transform:uppercase}.debug-card-panel h2{margin-top:4px;padding-right:46px;font-size:clamp(2rem,10vw,3.2rem);line-height:.96;text-transform:uppercase}.debug-card-list{display:flex;flex-direction:column;gap:9px;margin-top:16px}.debug-card-list button{border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:11px 12px;display:flex;flex-direction:column;gap:4px;text-align:left;color:#f4efe7;background:#ffffff14;font:inherit}.debug-card-list button.negative span{color:#ff8b84}.debug-card-list strong{color:#f1c45d;font-size:.76rem;font-weight:950;text-transform:uppercase}.debug-card-list span{overflow-wrap:anywhere;font-size:.94rem;font-weight:750;line-height:1.3}.character-sheet-backdrop{position:fixed;z-index:120;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:calc(18px + env(safe-area-inset-top)) 18px calc(18px + env(safe-area-inset-bottom));background:#0000007a}.character-sheet{position:relative;width:min(100%,440px);border-radius:8px;padding:18px;background:#050507e6;border:1px solid rgba(255,255,255,.18);box-shadow:0 20px 60px #000000a6}.character-sheet-close{position:absolute;top:10px;right:10px;width:40px;height:40px;border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#f4efe7;background:#ffffff17}.character-sheet>span{display:block;color:#f1c45d;font-size:.78rem;font-weight:900;text-transform:uppercase}.character-sheet h2{margin-top:2px;padding-right:46px;overflow-wrap:anywhere;font-size:clamp(2.2rem,11vw,3.6rem);line-height:.95;text-transform:uppercase}.sheet-stats{display:flex;flex-direction:column;gap:9px;margin-top:16px}.sheet-clue-counter{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;border:1px solid rgba(241,196,93,.34);border-radius:8px;padding:10px;color:#f4efe7;background:#f1c45d1f}.sheet-clue-counter span,.sheet-clue-counter strong{font-size:.82rem;font-weight:950;text-transform:uppercase}.sheet-clue-counter strong{color:#f1c45d;font-size:1rem}.sheet-mimetic-hint{margin:8px 0 0;border:1px solid rgba(196,132,252,.26);border-radius:8px;padding:10px;color:#efe7ff;background:#c484fc1a;font-size:.86rem;line-height:1.35}.sheet-mimetic-signs{display:flex;flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none}.sheet-mimetic-signs li{border-radius:8px;padding:8px 10px;color:#f4efe7;background:#ffffff14;font-size:.82rem;font-weight:850}.sheet-stat{border-radius:8px;padding:10px;background:#ffffff14}.sheet-stat div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.sheet-stat strong,.sheet-stat span{font-size:.78rem;font-weight:900;text-transform:uppercase}.sheet-stat-track{height:7px;margin-top:8px;overflow:hidden;border-radius:999px;background:#ffffff24}.sheet-stat-track i{display:block;height:100%;border-radius:inherit}.sheet-stat.red .sheet-stat-track i{background:#ff4545}.sheet-stat.green .sheet-stat-track i{background:#45e071}.sheet-stat.blue .sheet-stat-track i{background:#6aa8ff}.sheet-stat.gold .sheet-stat-track i{background:#f1c45d}.sheet-stat.violet .sheet-stat-track i{background:#b68cff}.sheet-stat.cyan .sheet-stat-track i{background:#5eead4}.sheet-stat.amber .sheet-stat-track i{background:#f59e0b}.action-video-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:grid;place-items:center;padding:calc(18px + env(safe-area-inset-top)) 18px calc(18px + env(safe-area-inset-bottom));background:#000000d1}.action-video-sheet{position:relative;width:min(92vw,820px);border:1px solid rgba(241,196,93,.4);border-radius:8px;padding:14px;color:#f4efe7;background:#050507eb;box-shadow:0 22px 70px #000000b8}.action-video-sheet>span{display:block;margin:0 58px 12px 0;color:#f1c45d;font-size:.78rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.action-video-sheet video{display:block;width:100%;max-height:min(72vh,560px);border-radius:6px;background:#000}.sage-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:grid;place-items:stretch;background:#000}.sage-panel{position:relative;min-height:100vh;overflow:hidden;background:#000}.sage-panel video{width:100%;height:100%;min-height:100vh;object-fit:cover;background:#000}.sage-message{position:absolute;left:50%;bottom:calc(28px + env(safe-area-inset-bottom));width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 56px - env(safe-area-inset-bottom));overflow:auto;transform:translate(-50%);border:1px solid rgba(241,196,93,.46);border-radius:8px;padding:18px;color:#f4efe7;text-align:center;background:linear-gradient(180deg,#08080a8f,#050507db);box-shadow:0 24px 80px #000000b8;opacity:0;transition:opacity .36s ease}.sage-message.visible{opacity:1}.sage-message span{display:block;color:#f1c45d;font-size:.78rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.sage-message h2{margin:8px 0 12px;font-size:clamp(1.45rem,5vw,2.5rem);font-weight:950;line-height:1.08}.sage-details{display:grid;gap:8px;margin:0 0 14px;padding:0;list-style:none;text-align:left}.sage-details li{border:1px solid rgba(244,239,231,.12);border-radius:6px;padding:9px 10px;color:#f4efe7e6;background:#00000038;font-size:.94rem;font-weight:750;line-height:1.28}.sage-private-message{margin:12px 0;border:1px solid rgba(241,196,93,.35);border-radius:6px;padding:10px 12px;text-align:left;background:#f1c45d1a}.sage-private-message strong,.sage-next-round strong{display:block;color:#f1c45d;font-size:.78rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.sage-private-message p{margin:5px 0 0;color:#f4efe7;font-size:.94rem;font-weight:800;line-height:1.3}.sage-next-round{margin:12px 0 16px;text-align:center}.sage-next-round small{display:block;margin-top:4px;color:#f4efe7d1;font-size:.9rem;font-weight:850}.sage-message button{width:min(320px,100%);min-height:54px;border:0;border-radius:8px;color:#120d0e;background:#f1c45d;font:inherit;font-weight:950;letter-spacing:.03em}.character-sheet-button{position:fixed;z-index:13;top:calc(80px + env(safe-area-inset-top));right:14px;width:48px;height:48px;border:1px solid rgba(255,255,255,.18);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#f4efe7;background:#050507ad;box-shadow:0 8px 24px #00000059}.character-lore-button{position:fixed;z-index:13;top:calc(136px + env(safe-area-inset-top));right:14px;width:48px;height:48px;border:1px solid rgba(255,255,255,.18);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#f4efe7;background:#050507ad;box-shadow:0 8px 24px #00000059}.lore-sheet{max-height:min(78vh,680px);overflow-y:auto}.lore-sheet h2{margin-top:2px;padding-right:46px;font-size:clamp(2rem,10vw,3rem)}.lore-sheet h3{margin:18px 0 8px;color:#f1c45d;font-size:1rem;text-transform:uppercase}.lore-sheet p,.lore-sheet li{color:#f4efe7;font-size:.94rem;line-height:1.45}.lore-sheet ul{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.lore-sheet li{border-radius:8px;padding:10px;background:#ffffff14}.character-map-button{position:fixed;z-index:13;top:calc(192px + env(safe-area-inset-top));right:14px;width:48px;height:48px;border:1px solid rgba(255,255,255,.18);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#f4efe7;background:#050507ad;box-shadow:0 8px 24px #00000059}.players-map-button{position:fixed;z-index:13;top:calc(248px + env(safe-area-inset-top));right:14px;width:48px;height:48px;border:1px solid rgba(241,196,93,.28);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#f1c45d;background:#050507b8;box-shadow:0 8px 24px #00000059}.character-inventory-button{position:fixed;z-index:13;top:calc(304px + env(safe-area-inset-top));right:14px;width:48px;height:48px;border:1px solid rgba(255,255,255,.18);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#f4efe7;background:#050507ad;box-shadow:0 8px 24px #00000059}.character-inventory-button.full{border-color:#ff6652c7;color:#ffd0c7;background:#460d0ad1}.inventory-badge{position:absolute;right:-8px;bottom:-8px;min-width:34px;border:1px solid rgba(18,13,14,.42);border-radius:999px;padding:3px 5px;color:#120d0e;background:#f1c45d;box-shadow:0 6px 16px #00000061;font-size:.64rem;font-weight:1000;line-height:1}.character-inventory-button.full .inventory-badge{color:#fff7e8;background:#b72b22}.clue-counter-hud{position:fixed;z-index:13;top:calc(88px + env(safe-area-inset-top));left:14px;min-width:112px;height:38px;border:1px solid rgba(241,196,93,.34);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 10px;color:#f1c45d;background:#050507b8;box-shadow:0 8px 24px #00000059;font-size:.68rem;font-weight:950;text-transform:uppercase}.clue-counter-hud strong{color:#fff7e8;font-size:.98rem;line-height:1}.prank-button{position:fixed;z-index:13;top:calc(360px + env(safe-area-inset-top));left:14px;min-width:94px;height:48px;border:1px solid rgba(241,196,93,.34);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;color:#f1c45d;background:#050507b8;box-shadow:0 8px 24px #00000059;font:inherit;font-size:.76rem;font-weight:950;letter-spacing:.03em}.prank-button:disabled{opacity:.5}.prank-button.empty{color:#f4efe7b8}.prank-badge{position:absolute;right:-8px;bottom:-8px;min-width:30px;border:1px solid rgba(18,13,14,.42);border-radius:999px;padding:3px 5px;color:#120d0e;background:#f1c45d;box-shadow:0 6px 16px #00000061;font-size:.64rem;font-weight:1000;line-height:1}.character-instructions-button{position:fixed;z-index:13;top:calc(360px + env(safe-area-inset-top));right:14px;width:48px;height:48px;border:1px solid rgba(255,255,255,.18);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#f4efe7;background:#050507ad;box-shadow:0 8px 24px #00000059}.prank-backdrop{position:fixed;z-index:160;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:18px;background:#000000b8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.prank-panel{position:relative;width:min(92vw,430px);border:1px solid rgba(241,196,93,.34);border-radius:8px;padding:18px;color:#f4efe7;background:#07070af5;box-shadow:0 22px 70px #000000a6}.prank-panel>span{color:#f1c45d;font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.prank-panel h2{margin:4px 0 8px;font-size:1.45rem}.prank-panel p{margin:0 0 14px;color:#f4efe7c7;font-size:.88rem;line-height:1.35}.prank-options{display:grid;gap:9px}.prank-options button{min-height:62px;border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:10px 12px;color:#f4efe7;text-align:left;background:#ffffff14;font:inherit}.prank-options strong,.prank-options span{display:block}.prank-options strong{color:#f1c45d;font-size:.82rem;letter-spacing:.03em}.prank-options span{margin-top:3px;color:#f4efe7c2;font-size:.78rem;line-height:1.25}.primary,.secondary{min-height:48px;border:0;border-radius:8px;padding:13px 16px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font:inherit;font-weight:800;cursor:pointer}.primary{width:100%;color:#120d0e;background:#f1c45d}.secondary{width:100%;color:#f4efe7;background:#ffffff1a;border:1px solid rgba(255,255,255,.14)}button:disabled{opacity:.58;cursor:not-allowed}.manual-sheet-backdrop{position:fixed;z-index:34;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:max(14px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 12%,rgba(241,196,93,.1),transparent 34%),#000000b3}.manual-sheet{position:relative;width:min(100%,500px);max-height:min(88vh,720px);border-radius:8px;padding:20px 18px 18px;overflow-x:hidden;overflow-y:auto;background:linear-gradient(180deg,#1d1812f5,#060608f5 44%),#050507f0;border:1px solid rgba(241,196,93,.38);box-shadow:0 26px 78px #000000c7}.manual-sheet>span{display:block;color:#f1c45d;font-size:.74rem;font-weight:900;text-transform:uppercase}.manual-sheet h2{margin:6px 0 0;padding-right:46px;color:#fff7e8;font-size:clamp(1.9rem,9vw,3rem);line-height:1;text-transform:uppercase}.manual-progress{height:5px;margin-top:16px;overflow:hidden;border-radius:999px;background:#ffffff1f}.manual-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#9b1c1c,#f1c45d)}.manual-rules{display:flex;flex-direction:column;gap:8px;margin-top:18px}.manual-rules p{margin:0;border-radius:8px;padding:11px 12px;color:#f4efe7;background:#ffffff13;border:1px solid rgba(255,255,255,.08);font-size:clamp(.94rem,3.7vw,1rem);line-height:1.38}.manual-rules strong{display:block;margin-bottom:4px;color:#f1c45d;font-size:.76rem;text-transform:uppercase}.manual-actions{position:sticky;bottom:-18px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin:18px -18px -18px;padding:14px 18px 18px;background:linear-gradient(180deg,#0606082e,#060608fa 34%);border-top:1px solid rgba(241,196,93,.18)}@media(max-width:560px){.manual-sheet-backdrop{padding:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom))}.manual-sheet{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:16px 14px 14px}.manual-sheet>span{padding-right:58px;font-size:.72rem;line-height:1.15}.manual-sheet h2{padding-right:58px;font-size:clamp(2.35rem,14vw,3.45rem)}.manual-sheet .character-sheet-close{width:58px;height:58px}.manual-progress{margin-top:14px}.manual-rules{gap:8px;margin-top:16px}.manual-rules p{padding:10px 11px;font-size:clamp(1.06rem,4.8vw,1.28rem);line-height:1.32}.manual-rules strong{font-size:.82rem}.manual-actions{grid-template-columns:minmax(0,1fr) minmax(0,.72fr) minmax(0,1fr);gap:8px;margin:14px -14px -14px;padding:12px 14px 14px}.manual-actions .primary,.manual-actions .secondary{min-width:0;min-height:52px;padding:10px 8px;font-size:.98rem;overflow:hidden;white-space:nowrap}}.pregame-ready-panel{position:fixed;z-index:12;left:50%;top:50%;width:min(82vw,340px);transform:translate(-50%,-50%);display:flex;flex-direction:column;gap:10px;align-items:stretch;padding:16px;text-align:center;background:#050507c7;border:1px solid rgba(241,196,93,.36);border-radius:8px;box-shadow:0 18px 54px #00000094;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.pregame-ready-panel p{margin:0;color:#f4efe7;font-size:.86rem;font-weight:900;text-transform:uppercase}.inventory-sheet h2{margin-top:2px;padding-right:46px;font-size:clamp(2.5rem,13vw,4rem);line-height:.95}.inventory-sheet{max-height:min(82vh,680px);overflow-y:auto}.inventory-slots{display:grid;grid-template-columns:1fr;gap:10px;margin-top:16px}.inventory-slot{min-height:64px;border-radius:8px;border:1px dashed rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 10px;background:#ffffff12}.inventory-slot img{flex:0 0 auto;width:46px;height:46px;max-width:46px;max-height:46px;object-fit:contain;filter:drop-shadow(0 8px 12px rgba(0,0,0,.45))}.inventory-slot span,.inventory-slot strong{font-size:.82rem;font-weight:900;text-transform:uppercase}.inventory-slot span{color:#9da7b7}.inventory-item-card{width:100%;min-height:56px;border:0;display:flex;align-items:center;justify-content:center;gap:10px;padding:0;color:inherit;background:transparent;font:inherit}.confused-item-thumb{flex:0 0 auto;width:34px;height:34px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#120d0e;background:#f1c45d;font-size:1.05rem;font-weight:1000;box-shadow:0 8px 18px #00000059}.inventory-item-card .confused-item-thumb{width:52px;height:52px}.item-fullscreen-backdrop{z-index:125;align-items:stretch}.item-fullscreen-sheet{width:min(100%,560px);max-height:calc(100vh - 36px - env(safe-area-inset-top) - env(safe-area-inset-bottom));display:flex;flex-direction:column;overflow-y:auto}.item-fullscreen-image{width:min(100%,260px);height:min(32vh,240px);margin:14px auto;object-fit:contain;filter:drop-shadow(0 18px 30px rgba(0,0,0,.55))}.item-fullscreen-copy{display:grid;gap:10px}.item-fullscreen-copy p{margin:0;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#f4efe7e6;background:#ffffff0f;line-height:1.35}.item-fullscreen-copy strong{display:block;margin-bottom:5px;color:#f1c45d;font-size:.72rem;font-weight:950}.item-fullscreen-actions{display:grid;gap:10px;margin-top:14px}.item-fullscreen-actions button{min-height:48px;border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:10px 12px;color:#f4efe7;background:#ffffff1a;font:inherit;font-weight:950}.item-fullscreen-actions button:first-of-type{color:#120d0e;background:#f1c45d}.inventory-outside{display:grid;gap:8px;margin-top:14px}.inventory-outside>span{color:#f2c85d;font-size:.78rem;font-weight:900;text-transform:uppercase}.inventory-sheet p{margin-top:14px;color:#d7dce5;font-weight:800}.map-sheet{max-height:min(82vh,720px);overflow-y:auto}.players-map-sheet{width:min(100%,620px)}.map-sheet h2{margin-top:2px;padding-right:46px;font-size:clamp(1.65rem,8vw,2.6rem);line-height:1}.map-grid{display:flex;flex-direction:column;gap:9px;margin-top:16px}.player-map-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(136px,1fr));gap:7px;margin-top:12px}.player-map-legend-item{min-width:0;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:8px;display:grid;grid-template-columns:14px minmax(0,1fr);gap:3px 7px;align-items:center;background:#ffffff12}.player-map-legend-item i{width:12px;height:12px;border-radius:50%;box-shadow:0 0 10px currentColor}.player-map-legend-item strong,.player-map-legend-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-map-legend-item strong{color:#f4efe7;font-size:.78rem;font-weight:950}.player-map-legend-item span{grid-column:2;color:#aeb7c7;font-size:.68rem;font-weight:850}.map-level{border-radius:8px;padding:9px;background:#ffffff12;border:1px solid rgba(255,255,255,.08)}.map-level.current{border-color:#f1c45d7a;background:#f1c45d1a}.map-level>strong{display:block;margin-bottom:7px;color:#f1c45d;font-size:.72rem;text-transform:uppercase}.map-cells{display:flex;flex-wrap:wrap;align-items:center;gap:3px}.map-cell{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#d7dce5;background:#ffffff1a;font-size:.55rem;font-weight:900}.map-player-marker{position:absolute;right:-3px;bottom:-3px;width:11px;height:11px;border:1px solid rgba(5,5,7,.92);border-radius:50%;box-shadow:0 0 10px #ffffff52}.map-player-marker.split{width:14px;height:14px;border-width:2px}.map-cell.entry{width:18px;height:18px}.map-cell.lateral{width:9px;height:9px;background:#ffffff0d}.map-cell.current{color:#050507;background:#f1c45d;box-shadow:0 0 18px #f1c45dbf}.map-cell.fire-wall{color:#fff7e8;background:#d14b1f;box-shadow:0 0 14px #ff5c23d9}.map-cell.current.fire-wall{color:#050507;background:linear-gradient(135deg,#f1c45d 0,#f1c45d 48%,#d14b1f 52%,#d14b1f)}.map-position-box{margin-top:14px;border-radius:8px;padding:12px;background:#ffffff14}.map-position-box strong{display:block;color:#f1c45d;font-size:.75rem;text-transform:uppercase}.map-position-box p{margin-top:4px;font-size:1.25rem;font-weight:900}.map-position-box small{display:block;margin-top:8px;color:#d7dce5;line-height:1.35}.fire-wall-hud{position:fixed;z-index:21;left:50%;bottom:calc(86px + env(safe-area-inset-bottom));transform:translate(-50%);border-radius:8px;border:1px solid rgba(255,92,35,.65);padding:9px 14px;color:#fff7e8;background:#58150ce0;box-shadow:0 12px 34px #0000007a,0 0 24px #ff5c2347;font-size:.78rem;font-weight:1000;letter-spacing:0;text-transform:uppercase}@keyframes buildingPulse{0%,to{opacity:.55}50%{opacity:1}}.danger-button{min-height:48px;padding:12px 24px;border:1px solid rgba(255,90,80,.6);border-radius:10px;font:inherit;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#ffb4a8;background:#3c0c0a80;cursor:pointer}.phase2-action-button{position:fixed;left:50%;bottom:28px;transform:translate(-50%);z-index:70;border:1px solid rgb(255 255 255 / 28%);background:#7d1212eb;color:#fff;font-weight:800;letter-spacing:0;padding:12px 18px;border-radius:6px;box-shadow:0 10px 28px #00000073;cursor:pointer}.phase2-choice-panel{position:fixed;z-index:70;left:50%;bottom:calc(26px + env(safe-area-inset-bottom));width:min(88vw,420px);transform:translate(-50%);border:1px solid rgba(241,196,93,.36);border-radius:8px;padding:14px;color:#f4efe7;text-align:center;background:#050507d1;box-shadow:0 18px 54px #0000009e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.phase2-choice-panel>span{display:block;color:#f1c45d;font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.phase2-choice-panel p{margin:4px 0 12px;color:#f4efe7d1;font-size:.86rem;font-weight:850}.phase2-choice-panel div{display:grid;grid-template-columns:1fr 1fr;gap:10px}.phase2-choice-panel button{min-width:0;min-height:52px;border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:12px 10px;color:#f4efe7;background:#ffffff1a;font:inherit;font-size:.9rem;font-weight:950;letter-spacing:.03em;text-transform:uppercase}.phase2-choice-panel button:last-child{color:#120d0e;background:#f1c45d}.action-panel{position:fixed;z-index:70;left:50%;bottom:calc(26px + env(safe-area-inset-bottom));width:min(90vw,460px);transform:translate(-50%);border:1px solid rgba(241,196,93,.36);border-radius:8px;padding:14px;color:#f4efe7;text-align:center;background:#050507d6;box-shadow:0 18px 54px #0000009e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.action-panel.combat-ready{border-color:#ff3a3ad1;background:linear-gradient(180deg,#5f060cc7,#050507e0),#050507e0;box-shadow:0 0 0 1px #ff3a3a47,0 0 34px #f006,0 18px 54px #000000ad}.action-panel.combat-ready>span,.action-panel.combat-ready p{color:#ffebeb;text-shadow:0 0 16px rgba(255,0,0,.48)}.action-panel>span{display:block;color:#f1c45d;font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.action-panel p{margin:5px 0 12px;color:#f4efe7;font-size:.95rem;font-weight:900;line-height:1.24}.action-panel small{display:block;margin:-2px 0 12px;color:#f4efe7c2;font-size:.78rem;font-weight:800;line-height:1.3}.action-panel .observe-hint{grid-column:1 / -1;margin:-3px 0 2px;color:#f1c45dc7;font-size:.68rem;font-weight:850;text-align:center}.action-item-preview{display:block;width:82px;height:82px;margin:-2px auto 10px;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(0,0,0,.52))}.place-action-card{display:grid;grid-template-columns:70px 1fr;gap:8px 12px;align-items:start;margin:10px 0 12px;border:1px solid rgba(241,196,93,.22);border-radius:8px;padding:10px;text-align:left;background:#ffffff0f}.place-action-card img{grid-row:span 4;width:70px;height:70px;object-fit:contain}.place-action-card strong{color:#f1c45d;font-size:.9rem}.place-action-card p{margin:0;color:#f4efe7d6;font-size:.72rem;font-weight:750}.place-action-card b{display:block;color:#f1c45dd1;font-size:.62rem}.action-panel div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.action-panel button{min-width:0;min-height:48px;border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:10px 8px;color:#f4efe7;background:#ffffff1a;font:inherit;font-size:.78rem;font-weight:950;letter-spacing:.02em;text-transform:uppercase}.action-panel button:disabled{opacity:.36}.action-panel.combat-ready .combat-action-button:not(:disabled){border-color:#ff5c5ce6;color:#fff;background:linear-gradient(180deg,#a91822,#5f070d);box-shadow:0 0 22px #ff00006b}.action-skip-button{width:100%;margin-top:10px;color:#120d0e!important;background:#f1c45d!important}.action-secondary-button{width:100%;margin-top:10px}.action-item-list{display:grid!important;grid-template-columns:1fr;gap:8px!important}.action-item-list button{color:#120d0e;background:#f1c45d}.knowledge-question-list{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;max-height:min(52vh,430px);overflow:auto;padding:2px}.knowledge-question{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;border:1px solid rgba(241,196,93,.26);border-radius:8px;padding:10px;background:#ffffff0f}.knowledge-question.disabled{opacity:.48}.knowledge-question strong{color:#f4efe7;font-size:.84rem;font-weight:950;line-height:1.18}.knowledge-level-grid,.knowledge-target-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important}.knowledge-target-grid{grid-template-columns:repeat(auto-fit,minmax(64px,1fr))!important}.knowledge-level-grid button,.knowledge-target-grid button{min-height:38px;padding:7px 5px;font-size:.68rem}.action-item-list .action-item-option{display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:center;min-height:58px;padding:7px 10px;text-align:left}.action-item-option img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 6px 10px rgba(0,0,0,.28))}.action-item-option span{min-width:0;overflow-wrap:anywhere}.action-vision-list{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;margin:-2px 0 12px}.action-vision-list span{border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:8px 10px;color:#f4efe7e6;background:#ffffff14;font-size:.78rem;font-weight:850;line-height:1.25}.cell-item-swap-list{display:grid!important;grid-template-columns:1fr;gap:8px!important;margin-bottom:10px}.cell-item-swap-list button{min-height:42px;color:#120d0e;background:#f1c45d}.cell-item-continue-button{color:#120d0e!important;background:#f1c45d!important}.phase2-wait-panel{position:fixed;z-index:12;left:50%;bottom:calc(28px + env(safe-area-inset-bottom));width:min(86vw,420px);transform:translate(-50%);border:1px solid rgba(241,196,93,.3);border-radius:8px;padding:14px 16px;color:#f4efe7;background:#050507c2;box-shadow:0 14px 42px #0000007a;text-align:center}.phase2-wait-panel span{display:block;margin-bottom:4px;color:#f1c45d;font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.phase2-wait-panel p{margin:0;font-size:.95rem;font-weight:850;line-height:1.28}.narrator-wait-panel p{animation:narratorBeatFade .28s ease-out both}.narrator-rhythm{height:3px;margin-top:12px;overflow:hidden;border-radius:999px;background:#f4efe724;transform:translateZ(0)}.narrator-rhythm i{display:block;width:100%;height:100%;transform-origin:left center;background:linear-gradient(90deg,#f1c45d,#f4efe7);transition:transform .24s linear}@keyframes narratorBeatFade{0%{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.combat-panel{position:fixed;z-index:31;left:max(18px,env(safe-area-inset-left));right:calc(78px + env(safe-area-inset-right));top:calc(126px + env(safe-area-inset-top));max-width:560px;margin:0 auto;border:1px solid rgba(255,64,64,.52);border-radius:10px;padding:14px;color:#f4efe7;background:#160405e6;box-shadow:0 18px 48px #0000009e}.combat-panel span{color:#ff6a63;font-size:.74rem;font-weight:950;letter-spacing:.08em}.combat-panel p{margin:4px 0;font-size:clamp(1rem,4vw,1.28rem);font-weight:950}.combat-panel small{color:#f4efe7c2;font-weight:850}.combat-matchup{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin-top:10px}.combat-panel strong{min-width:0;overflow-wrap:anywhere;border-radius:7px;padding:8px;background:#ffffff14;font-size:.78rem}.combat-panel em{color:#f1c45d;font-size:.7rem;font-style:normal;font-weight:950;text-transform:uppercase}.combat-flow{display:grid;gap:8px;margin-top:12px}.combat-flow b{justify-self:start;min-width:42px;border-radius:999px;padding:5px 10px;color:#120d0e;background:#f1c45d;font-size:.8rem;font-weight:950}.combat-result-list{display:grid;gap:5px;border-radius:8px;padding:8px;background:#ffffff14}.combat-result-list span{color:#f4efe7;font-size:.74rem;line-height:1.22;letter-spacing:0}.combat-damage-summary{display:block;color:#f1c45d;font-size:.92rem;font-weight:1000;line-height:1.12;text-transform:uppercase}.combat-flow button,.combat-choice-row button{min-height:38px;border:0;border-radius:8px;color:#120d0e;background:#f1c45d;font:inherit;font-size:.76rem;font-weight:950}.combat-choice-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.combat-isolation-panel{position:fixed;z-index:38;left:max(18px,env(safe-area-inset-left));right:calc(78px + env(safe-area-inset-right));bottom:calc(28px + env(safe-area-inset-bottom));max-width:520px;margin:0 auto;border:1px solid rgba(255,64,64,.58);border-radius:10px;padding:16px;color:#f4efe7;background:#0c0204f0;box-shadow:0 20px 54px #000000b8}.combat-isolation-panel span{color:#ff6a63;font-size:.76rem;font-weight:950;letter-spacing:.08em}.combat-isolation-panel p{margin:6px 0;font-size:clamp(1.1rem,4.8vw,1.45rem);font-weight:950;line-height:1.12}.combat-isolation-panel small{display:block;color:#f4efe7c2;font-weight:850;line-height:1.25}.combat-isolation-panel button{width:100%;min-height:48px;margin-top:14px;border:0;border-radius:8px;color:#120d0e;background:#f1c45d;font:inherit;font-weight:950}.monster-combat-panel{border-color:#4691ff94;background:#040912eb}.monster-combat-panel>span,.monster-combat-panel .combat-flow>span{color:#78b7ff}.monster-combat-video{width:100%;max-height:170px;margin-top:10px;border-radius:8px;object-fit:cover;background:#00000073}.monster-life-meter{display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:8px;padding:8px 10px;background:#78b7ff1f}.monster-life-meter span{color:#78b7ff;font-size:.74rem;font-weight:950;text-transform:uppercase}.monster-life-meter strong{color:#fff;background:transparent;padding:0;font-size:1rem}.superboss-combat-panel{border-color:#f1c45db8;background:#120704f0}.superboss-combat-panel>span,.superboss-combat-panel .combat-flow>span,.superboss-combat-panel .monster-life-meter span{color:#f1c45d}.superboss-combat-panel .monster-life-meter{background:#f1c45d24}.superboss-sheet{display:grid;gap:6px;margin-top:10px;border:1px solid rgba(241,196,93,.24);border-radius:8px;padding:10px;background:#ffffff12}.superboss-sheet strong{padding:0;color:#f4efe7;background:transparent;font-size:.82rem;line-height:1.24}.superboss-sheet small{color:#f4efe7d1;font-size:.74rem;line-height:1.25}.movement-panel{position:fixed;z-index:95;top:0;right:0;bottom:0;left:0;width:auto;min-height:100dvh;border:0;border-radius:0;padding:calc(28px + env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));color:#f4efe7;text-align:center;background:linear-gradient(180deg,#050507eb,#050507db),url(/caverna.png) center / cover;box-shadow:0 18px 54px #0000009e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;overflow:hidden}.movement-panel>span{display:block;color:#f1c45d;font-size:.82rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.movement-panel p{margin:8px 0 12px;color:#f4efe7;font-size:1.24rem;font-weight:900;line-height:1.24}.movement-panel small{display:block;margin:0 auto 16px;max-width:560px;color:#f4efe7c2;font-size:.88rem;font-weight:800;line-height:1.32}.movement-panel>div{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.movement-panel .movement-destination-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:min(100%,620px);max-height:none;min-height:0;overflow:auto;margin:0 auto 14px;padding:2px 2px 16px;flex:1;scrollbar-width:thin}.movement-panel .movement-destination-grid button{min-height:64px;padding:9px 7px;font-size:.78rem;line-height:1.05;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.movement-panel .movement-destination-grid button.selected{color:#120d0e;border-color:#f1c45d;background:#f1c45d}.movement-panel .movement-destination-grid button strong{font-size:1.08rem;font-weight:950}.movement-panel .movement-destination-grid button span{font-size:.66rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.movement-preview{display:block!important;width:min(100%,620px);margin:0 auto 12px;border:1px solid rgba(241,196,93,.38);border-radius:8px;padding:10px;background:#f1c45d14;flex:0 0 auto}.movement-preview.danger{border-color:#ff4040b8;background:#ff40401f}.movement-preview strong{display:block;margin-bottom:6px;color:#f4efe7}.movement-preview div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.movement-panel button{min-width:0;min-height:52px;border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:10px 8px;color:#f4efe7;background:#ffffff1a;font:inherit;font-size:.8rem;font-weight:950;letter-spacing:.02em;text-transform:uppercase}.movement-panel button:disabled{opacity:.36}.movement-continue-button{width:100%;margin-top:2px;color:#120d0e!important;background:#f1c45d!important}.ability-panel{border-color:#5096ff6b}.phase2-perception-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;pointer-events:none;background:radial-gradient(circle at center,#ff000014,#a0000038 55%,#5000005c);box-shadow:inset 0 0 120px #ff00006b;animation:phase2Pulse 1.35s ease-in-out infinite alternate}.phase2-perception-overlay:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid rgb(255 35 35 / 38%)}.phase2-perception-message{position:fixed;left:50%;top:88px;transform:translate(-50%);z-index:71;pointer-events:none;max-width:min(520px,calc(100vw - 32px));border:1px solid rgb(255 60 60 / 48%);border-radius:6px;background:#120a0ac7;color:#fff;font-weight:900;letter-spacing:0;text-align:center;text-transform:uppercase;padding:10px 16px;box-shadow:0 10px 30px #0000006b}.monster-perception-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;pointer-events:none;background:radial-gradient(circle at center,#2378ff14,#0052b438 55%,#00225c61);box-shadow:inset 0 0 125px #2378ff73;animation:phase2Pulse 1.8s ease-in-out infinite alternate}.monster-perception-overlay:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid rgb(70 145 255 / 40%)}.monster-phase-panel{position:fixed;z-index:72;left:50%;bottom:calc(34px + env(safe-area-inset-bottom));width:min(88vw,430px);transform:translate(-50%);border:1px solid rgba(70,145,255,.5);border-radius:8px;padding:15px;color:#f4efe7;text-align:center;background:#040912e0;box-shadow:0 18px 54px #000000a3,0 0 28px #2378ff2e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.monster-phase-panel span{display:block;color:#78b7ff;font-size:.74rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.monster-phase-panel strong{display:block;margin-top:3px;color:#fff;font-size:clamp(1.45rem,7vw,2.2rem);font-weight:1000;line-height:1;text-transform:uppercase}.monster-phase-panel p{margin:10px 0 0;color:#f4efe7;font-size:clamp(1rem,4.5vw,1.24rem);font-weight:900;line-height:1.2}.monster-phase-panel small{display:block;margin-top:8px;color:#f4efe7c2;font-size:.82rem;font-weight:850}.monster-phase-panel button{width:100%;min-height:50px;margin-top:14px;border:0;border-radius:8px;color:#06101d;background:#78b7ff;font:inherit;font-size:.9rem;font-weight:950;letter-spacing:.03em;text-transform:uppercase}@keyframes phase2Pulse{0%{opacity:.62}to{opacity:.92}}
