#fullModeToggle{white-space:nowrap;min-height:40px;padding:6px 10px;border:1px solid #e3c98370;border-radius:10px;color:#ffe8b9;background:#51435e;font-size:12px}
#fullControls[hidden],#fullPlayers[hidden]{display:none!important}
#fullControls{position:absolute;top:42px;left:12px;z-index:9;max-width:min(780px,calc(100% - 24px));padding:9px 12px;border:1px solid #e6c99180;border-radius:12px;background:#181b30ed;color:#fff0d2;font:12px/1.4 sans-serif}
#fullControls strong{font-size:15px}#fullControls strong small{display:block;font-size:10px;font-weight:400;color:#d4c7b4}.fullButtons{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.fullButtons button,.full-mix-row button{min-height:32px;padding:6px 9px;border:1px solid #e6c37c60;border-radius:7px;background:#50445d;color:#fff2d4;cursor:pointer}.fullButtons button:disabled{opacity:.5;cursor:default}.fullReadout{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px;font-size:10px}#fullControls details{margin-top:6px}#fullControls summary{cursor:pointer}#fullMixer{display:flex;flex-wrap:wrap;gap:6px;max-height:140px;overflow:auto;margin-top:5px}.full-mix-row{display:grid;grid-template-columns:1fr auto auto;gap:4px;align-items:center;padding:5px;border:1px solid #fff2;border-radius:6px}.full-mix-row small{grid-column:1/4;font-size:9px;color:#dcceb7}.full-mix-row label{font-size:9px}.full-mix-row input{max-width:80px;vertical-align:middle}.full-mix-row button{font-size:10px;padding:3px 6px}
#fullPlayers{position:absolute;inset:0;pointer-events:none;z-index:4}.full-player{position:absolute;pointer-events:auto;cursor:pointer}.full-player video{display:block;width:100%;height:100%;object-fit:contain;background:transparent}.full-shadow{position:absolute;height:6px;transform:translate(-50%,-25%);background:radial-gradient(ellipse,#19101eb0,transparent 72%);border-radius:50%;z-index:-1}
.full-active #actorsCanvas,.full-active #floorCanvas,.full-active #effectsCanvas,.full-active #actorLabels{visibility:hidden}.full-active .scene-caption{z-index:9}body:has(.full-active) .beatclock{visibility:hidden}
.fullThumb{display:block;width:100%;height:100%;object-fit:contain}#library canvas[data-full-hidden]{display:none!important}.fullBadge{font-size:8px;line-height:1;color:#e2d7ba;white-space:nowrap}.character-card:has(.fullBadge){gap:2px}.character-card:disabled{opacity:.4}
@media(max-width:650px){#fullModeToggle{font-size:9px;max-width:92px;white-space:normal;line-height:1.1;min-height:34px;padding:4px 6px}#fullControls{top:37px;left:8px;max-width:calc(100% - 16px);padding:6px 8px}#fullControls strong{font-size:12px}.fullButtons{gap:3px;margin-top:4px}.fullButtons button{font-size:10px;padding:5px 7px;min-height:29px}.fullReadout{font-size:9px;gap:5px}#fullControls details{font-size:10px}.fullBadge{font-size:7px}}

/* Dedicated control row; no panel may overlap the independent stage. */
#app:has(.full-active){grid-template-rows:var(--top) auto minmax(240px,1fr) var(--dock);height:auto;min-height:100dvh}
#fullControls{position:relative;top:auto;left:auto;width:100%;max-width:none;border-radius:0;margin:0;box-sizing:border-box;padding:7px 14px}
#fullControls strong small{display:inline;margin-left:10px}.fullButtons{margin-top:4px}.fullReadout{margin-top:3px}
.full-player canvas{display:block;width:100%;height:100%;background:transparent}.full-active .scene-caption{top:5px;left:8px;padding:3px 7px;font-size:9px;pointer-events:none}.full-active .stage-navigation{bottom:0}.full-active #clearStage{display:none}
@media(max-width:650px){#app:has(.full-active){grid-template-rows:var(--top) auto minmax(280px,1fr) var(--dock)}#fullControls{top:auto;left:auto;width:100%;max-width:none;padding:6px 8px}.fullButtons button{min-height:34px}.full-active .scene-caption{display:none}}

body:has(.full-active) .stage-navigation{position:static;transform:none;margin-top:4px;padding:3px 6px;justify-content:center}#fullControls .stage-navigation[hidden]{display:none!important}.full-active #fullPlayers{overflow:hidden}

.full-player video{position:absolute;inset:0}

#fullControls #toast{position:relative;inset:auto;transform:none;display:none;opacity:1;max-width:none;width:auto;margin:4px 0 0;padding:4px 8px;font-size:10px}#fullControls #toast.show{display:block}

#fullRigCanvas{position:absolute;pointer-events:none;z-index:1}.full-player[data-rig-surface]{pointer-events:auto}
.full-player,.full-player[data-rig-surface],.full-player video,.full-player canvas{pointer-events:none}.full-hit{position:absolute;z-index:3;pointer-events:auto;cursor:pointer;-webkit-tap-highlight-color:transparent}

#sprunkiActorMenu{position:fixed;z-index:9999;display:flex;align-items:center;gap:9px;min-width:100px;max-width:calc(100vw - 16px);padding:2px 8px 2px 2px;border:1px solid #e7af68;border-radius:10px;background:#211728;color:#fff;box-shadow:0 8px 24px #0009;white-space:nowrap}#sprunkiActorMenu[hidden]{display:none}#sprunkiActorMenu strong{font-size:13px;font-weight:700}#sprunkiActorMenu button{display:grid;place-items:center;min-width:36px;width:36px;min-height:36px;padding:0;border:1px solid #e7af68;border-radius:7px;background:#5c3c50;color:#fff;font-size:25px;line-height:1;cursor:pointer}.full-player{-webkit-tap-highlight-color:transparent}.full-player:focus-visible{outline:2px solid #ffd485;outline-offset:2px}

.character-card.pilot-still .fullThumb{transform:none}

/* Keep every selected party's volume and mute controls visible, including on touch screens. */
#fullMixer{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:5px;max-height:none;overflow:visible;margin-top:5px}
.full-mix-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:3px;padding:4px;min-width:0}
.full-mix-row b{grid-column:1/4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.full-mix-row small{grid-column:1/4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.full-mix-row label{display:flex;align-items:center;gap:3px;min-width:0;white-space:nowrap}
.full-mix-row input{width:100%;min-width:45px;max-width:none}
.full-mix-row button{min-height:30px;padding:3px 5px}
#fullMixer :is(input,button):focus-visible{outline:2px solid #ffd485;outline-offset:2px}
.full-master{display:flex;align-items:center;gap:5px;white-space:nowrap}.full-master input{width:100px;accent-color:#ffd485}.full-master output{min-width:32px;text-align:right}#fullMaster:focus-visible{outline:2px solid #ffd485;outline-offset:2px}
.full-master-row{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}.full-master-row button{min-height:30px;padding:4px 9px;border:1px solid #e6c37c60;border-radius:7px;background:#50445d;color:#fff2d4;cursor:pointer}.full-master-row button[aria-pressed="true"]{background:#654151;border-color:#ffb99d}.full-master-row button:focus-visible,#fullMixerPanel summary:focus-visible{outline:2px solid #ffd485;outline-offset:2px}#fullMixerPanel{margin-top:3px}#fullMixerPanel summary{font-size:10px;cursor:pointer}
@media(max-width:650px){#fullMixer{grid-template-columns:repeat(2,minmax(0,1fr))}.full-mix-row{font-size:9px}.full-mix-row button{font-size:9px}}

@media(max-width:650px){
 #app:has(.full-active){grid-template-rows:var(--top) auto minmax(380px,1fr) var(--dock)}
 .topbar .tools{gap:3px;flex:0 0 auto}
 .topbar .tools>button{box-sizing:border-box;flex:0 0 34px;width:34px;min-width:34px;height:36px;min-height:36px;padding:0}
 #fullModeToggle{max-width:34px;white-space:nowrap;overflow:hidden;font-size:0;line-height:1}
 #fullModeToggle::before{content:"♫";display:block;font-size:18px;line-height:1}
 body:has(.full-active) #fullModeToggle::before{content:"↩";font-size:22px}
 body:has(.full-active) #loreButton{display:none}
}

/* The selected actor's menu has its own row below the scene, clear of the wooden floor and catalog. */
#app:has(.full-active){grid-template-rows:var(--top) auto minmax(376px,1fr) 44px var(--dock);min-height:calc(100dvh + 44px)}
#fullActorMenuTray[hidden]{display:none!important}
#fullActorMenuTray{position:relative;box-sizing:border-box;height:44px;min-height:44px;border-top:1px solid #88655466;border-bottom:1px solid #88655466;background:#221a2b;color:#d7c4b9;z-index:10}
#fullActorMenuTray::before{content:'Нажмите на героя, чтобы открыть меню';position:absolute;left:12px;top:14px;font:11px/1.2 sans-serif;opacity:.62;pointer-events:none}
#fullActorMenuTray:has(#sprunkiActorMenu:not([hidden]))::before{display:none}
#fullActorMenuTray #sprunkiActorMenu{position:absolute;top:1px;left:8px;box-shadow:0 3px 12px #0006}
#fullPlayers .full-shadow{height:12px;z-index:0;transform:translate(-50%,-25%);background:radial-gradient(ellipse at center,rgba(29,17,26,.52) 0%,rgba(29,17,26,.25) 45%,rgba(29,17,26,0) 72%);filter:blur(1.5px);pointer-events:none}
#fullPlayers .full-shadow-contact{height:9px;transform:translate(-50%,-18%);background:radial-gradient(ellipse at center,rgba(28,17,26,.4),rgba(28,17,26,.13) 48%,transparent 75%);filter:blur(1px)}
#fullPlayers .full-shadow-equipment{height:7px;opacity:.75}
@media(max-width:650px){#app:has(.full-active){grid-template-rows:var(--top) auto minmax(380px,1fr) 44px var(--dock)}}
