.puzzle-header,.puzzle-title,.puzzle-score,.puzzle-state{transition:opacity .25s}:is(#ui,#puzzle-ui):before{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 150px #39233500;transition:box-shadow .4s}:is(#ui,#puzzle-ui).cinematic:before{box-shadow:inset 0 0 150px #39233566}:is(#ui,#puzzle-ui):after{content:"";position:absolute;inset:0;pointer-events:none;background:#fff1c9;opacity:var(--impact-flash,0);mix-blend-mode:screen}.cinematic .puzzle-title,.cinematic .puzzle-score,.cinematic .puzzle-state{opacity:0}.cinematic .puzzle-header{opacity:.45}.cinematic .shot-dock{opacity:.18}.cinematic .puzzle-keybar{opacity:0}.cinema-title{position:absolute;left:50%;top:27%;transform:translate(-50%,-50%) scale(.86) rotate(-3deg);text-align:center;opacity:0;pointer-events:none;color:#fff0c9;text-shadow:2px 3px 0 #50394f,-1px -1px 0 #50394f,0 6px 24px #40273899;white-space:nowrap;transition:opacity .16s,transform .22s cubic-bezier(.16,1.7,.4,1)}.cinema-title.show{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(-3deg)}.cinema-title small{display:block;letter-spacing:5px;font-size:11px;color:#f4d49a;margin-bottom:10px}.cinema-title strong{font-size:clamp(36px,4.8vw,72px);font-weight:850;letter-spacing:-3px}.cinema-result{transition:opacity .25s,transform .25s}.cinema-result.waiting{opacity:0;pointer-events:none;transform:translate(-50%,-35%)}@media(prefers-reduced-motion:reduce){.cinema-title,.cinema-result{transition:none}}.cinematic :is(.chamber-info,.stats,.status-pill,.hint,.chapter-rail){opacity:0}.cinematic .topbar{opacity:.45}:is(#ui,#puzzle-ui) .cinema-toggle{font-size:10px;width:72px;padding:8px 4px;letter-spacing:.4px}:is(#ui,#puzzle-ui) .shot-dock{position:absolute;bottom:40px;left:50%;transform:translate(-50%);display:flex;gap:25px;align-items:center;padding:17px 23px;width:980px;max-width:calc(100% - 56px);color:#453b46;background:linear-gradient(120deg,#f4ead5f5,#eaddc2f5);border:1px solid #8f7a69;box-shadow:0 5px 24px #46354622,inset 0 0 0 4px #fff7e345;border-radius:8px;pointer-events:auto}:is(#ui,#puzzle-ui) .shot-dock label{display:block;font-size:10px;color:#604c47;letter-spacing:1px;font-weight:600}:is(#ui,#puzzle-ui) .shot-dock label span{font-weight:400;letter-spacing:0;color:#8a7863;margin-left:6px}:is(#ui,#puzzle-ui) .shot-dock button{color:#453b46;border:1px solid #97816e;background:#eee1c8;border-radius:5px;padding:10px 14px;box-shadow:0 2px #5e47501a}:is(#ui,#puzzle-ui) .shot-dock button:hover{background:#faf0da;border-color:#644d56}:is(#ui,#puzzle-ui) .shot-dock button:disabled{opacity:.45;cursor:default}:is(#ui,#puzzle-ui) .shot-dock .primary{background:#49776c;border-color:#375f59;color:#fff3dc}:is(#ui,#puzzle-ui) .shot-dock button.primary:hover{background:#3a665b;border-color:#375f59;color:#fff3dc}:is(#ui,#puzzle-ui) .shot-dock .hit-point{display:block;flex:0 0 134px;width:134px;text-align:center;border-right:1px solid #bda78a;padding-right:20px}:is(#ui,#puzzle-ui) .shot-dock #strike-pad{position:relative;display:block;grid-area:auto;border:1px solid #907f74;border-radius:50%;width:80px;height:80px;margin:7px auto 3px;background:radial-gradient(circle at 35% 28%,#fffaf0,#e8ddc6 70%,#c5b9ab);box-shadow:inset -4px -5px 8px #65545a20;touch-action:none;overflow:hidden;cursor:crosshair}:is(#ui,#puzzle-ui) .shot-dock #strike-pad:before,:is(#ui,#puzzle-ui) .shot-dock #strike-pad:after{content:"";position:absolute;background:#83748730;pointer-events:none}:is(#ui,#puzzle-ui) .shot-dock #strike-pad:before{width:1px;height:100%;inset:0 auto auto 50%}:is(#ui,#puzzle-ui) .shot-dock #strike-pad:after{height:1px;width:100%;inset:50% auto auto 0}:is(#ui,#puzzle-ui) .shot-dock .strike-top,:is(#ui,#puzzle-ui) .shot-dock .strike-bottom{position:absolute;left:0;width:100%;font-size:9px;color:#857064;pointer-events:none}:is(#ui,#puzzle-ui) .shot-dock .strike-top{top:5px;bottom:auto}:is(#ui,#puzzle-ui) .shot-dock .strike-bottom{bottom:5px;top:auto}:is(#ui,#puzzle-ui) .shot-dock .strike-dot{position:absolute;width:10px;height:10px;border-radius:50%;background:#705484;border:2px solid #fff3dc;transform:translate(-50%,-50%);box-shadow:0 1px 2px #0005;pointer-events:none}:is(#ui,#puzzle-ui) .shot-dock .strike-region{position:absolute;border:1px dashed #729487;background:#829c7729;border-radius:50%;box-shadow:none;pointer-events:none}:is(#ui,#puzzle-ui) .shot-dock #strike-value{display:block;font-size:9px;height:16px;min-height:0;white-space:nowrap;margin:0;color:#776859}:is(#ui,#puzzle-ui) .shot-dock .hit-point button{padding:3px 10px;font-size:10px;margin-left:5px}:is(#ui,#puzzle-ui) .shot-dock .spell-select{flex:1;min-width:0}:is(#ui,#puzzle-ui) .shot-dock .spell-options{display:flex;gap:8px;margin:13px 0 10px;overflow-x:auto;padding-bottom:4px;max-width:100%}:is(#ui,#puzzle-ui) .shot-dock .spell-options button{position:relative;display:flex;align-items:center;gap:7px;font-size:11px;padding:10px;background:#e6d8be;flex:0 0 auto;min-width:100px;text-align:left}:is(#ui,#puzzle-ui) .shot-dock .spell-options .spell-glyph{font-size:25px;color:#76618d}:is(#ui,#puzzle-ui) .shot-dock .spell-options .active{background:#f9f0d9;border-color:#6f6087;box-shadow:inset 0 -2px #796389}:is(#ui,#puzzle-ui) .shot-dock .spell-caption{display:block;font-size:9px;line-height:1.5;color:#776859;margin:0;max-height:40px;overflow-y:auto}:is(#ui,#puzzle-ui) .shot-dock .spell-options small{display:block;font-size:9px;color:#776859;margin-top:4px}:is(#ui,#puzzle-ui) .shot-dock .shot-sliders{width:200px;flex-shrink:0}:is(#ui,#puzzle-ui) .shot-dock .shot-sliders label{display:flex;justify-content:space-between;letter-spacing:.5px}:is(#ui,#puzzle-ui) .shot-dock .shot-sliders b{font-weight:500;color:#896331}:is(#ui,#puzzle-ui) .shot-dock input[type=range]{appearance:auto;width:100%;accent-color:#608478;height:18px;margin:9px 0 15px;cursor:pointer;background:transparent;border:0;box-shadow:none}:is(#ui,#puzzle-ui) .shot-dock input::-webkit-slider-thumb{appearance:auto;width:auto;height:auto;border:0;box-shadow:none;transform:none;background:initial}:is(#ui,#puzzle-ui) .shot-dock input:disabled{opacity:.4}:is(#ui,#puzzle-ui) .shot-dock .shot-actions{width:168px;flex-shrink:0}:is(#ui,#puzzle-ui) .shot-dock .cast{width:100%;font-size:16px;padding:15px 10px}:is(#ui,#puzzle-ui) .shot-dock .cast small{display:block;font-size:9px;color:#d9e6d2;margin-top:8px}:is(#ui,#puzzle-ui) .shot-dock .shot-actions>div{display:flex;gap:6px;margin-top:9px}:is(#ui,#puzzle-ui) .shot-dock .shot-actions>div button{font-size:10px;padding:7px 10px;flex:1;white-space:nowrap}:is(#ui,#puzzle-ui) .puzzle-keybar{position:absolute;bottom:14px;left:0;width:100%;text-align:center;font-size:10px;color:#4e4650;text-shadow:0 1px #e5d5c4}@media(max-width:1100px){:is(#ui,#puzzle-ui) .shot-dock{gap:17px;padding:13px 18px;width:920px}:is(#ui,#puzzle-ui) .shot-dock .shot-sliders{width:170px}:is(#ui,#puzzle-ui) .shot-dock .shot-actions{width:145px}:is(#ui,#puzzle-ui) .shot-dock .hit-point{flex-basis:120px;width:120px}}@media(max-height:760px){:is(#ui,#puzzle-ui) .shot-dock{bottom:30px;padding-top:10px;padding-bottom:10px}:is(#ui,#puzzle-ui) .shot-dock #strike-pad{height:64px;width:64px}:is(#ui,#puzzle-ui) .puzzle-keybar{bottom:9px}}@media(max-width:800px){:is(#ui,#puzzle-ui) .shot-dock{max-width:calc(100% - 20px);gap:10px;padding:12px}:is(#ui,#puzzle-ui) .shot-dock .hit-point{flex-basis:95px;width:95px;padding-right:10px}:is(#ui,#puzzle-ui) .shot-dock .shot-sliders{width:130px}:is(#ui,#puzzle-ui) .shot-dock .shot-actions{width:110px}:is(#ui,#puzzle-ui) .shot-dock .spell-caption{display:none}:is(#ui,#puzzle-ui) .puzzle-keybar{font-size:8px}}
