/* A reversible viewport mode: the original scene stays mounted in place. */
html.minimalist-mode,body.minimalist-mode{width:100%;height:100%;overflow:hidden!important;overscroll-behavior:none;scrollbar-gutter:auto!important}
.minimalist-mode .minimalist-hidden{display:none!important}
body.minimalist-mode .minimalist-path{
  display:block!important;position:static!important;width:100%!important;height:100%!important;
  min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  overflow:visible!important;transform:none!important;filter:none!important;contain:none!important;
}
body.minimalist-mode .minimalist-stage{
  position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;
  min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  aspect-ratio:auto!important;overflow:hidden!important;z-index:1000;touch-action:none;
}
body.minimalist-mode :is(.sn-view,.cb-view,.rw-view){width:100%!important;height:100%!important;max-height:none!important}
body.minimalist-mode :is(.sn-stage-label,.sn-stage-help,.sn-camera,.cb-stage-heading,.cb-pause,.cb-stick,.rw-stage-label,.rw-stage-bottom,.qz-table-toolbar,.qz-caption){display:none!important}
body.minimalist-mode .qz-table.minimalist-stage{display:flex!important;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#294355,#111e2c)}
body.minimalist-mode #qz-stage{flex:none!important;width:min(calc(100vw - 36px),calc(100dvh - 130px))!important;max-width:850px!important;margin:0!important;container-type:inline-size}
body.minimalist-mode .qz-tile>span{font-size:clamp(24px,6.8cqw,76px)}
.minimalist-back{
  position:fixed;top:max(16px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));z-index:1100;
  display:inline-flex;align-items:center;justify-content:center;min-height:46px;min-width:100px;
  padding:11px 22px;border:1px solid #71839a80;border-radius:999px;color:#edf3ff;
  background:#111d2eee;box-shadow:0 4px 22px #0003;font-family:inherit;font-size:14px;font-weight:500;line-height:1.3;cursor:pointer;
  touch-action:manipulation;-webkit-tap-highlight-color:transparent;
}
.minimalist-back::before{content:'←';font-size:19px;margin-right:9px}
.minimalist-back:hover{background:#253951;border-color:#b5d1ff}
.minimalist-back:focus-visible{outline:3px solid #b5d1ff;outline-offset:3px}
.minimalist-back[hidden]{display:none!important}
@media(max-width:480px){.session-bar-actions{flex-wrap:wrap;justify-content:flex-end}.session-bar-actions .minimalist-enter{min-height:42px}}

/* Soma keeps its original palette and confirmation; fine placement is optional. */
.soma-compact-toggle{display:none}
body.minimalist-mode .soma-layout.minimalist-stage{
  display:grid!important;grid-template-rows:minmax(0,1fr) auto auto;gap:0!important;align-items:stretch!important;
  padding:calc(68px + env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))!important;
  background:radial-gradient(ellipse at 50% 35%,#263446,#0d1522 75%);
}
.minimalist-mode [data-session=soma] .soma-play{display:contents!important}
.minimalist-mode [data-session=soma] :is(.soma-stage-heading,.soma-hints,.soma-caption,.soma-panel-heading,.soma-step,.soma-validity,.soma-direct-place){display:none!important}
.minimalist-mode [data-session=soma] .soma-stage-wrap{grid-row:1;order:0;display:flex;flex-direction:column;min-height:0;border:0;background:none;border-radius:0;overflow:hidden}
.minimalist-mode [data-session=soma] .soma-interaction{flex:none;padding:0 0 5px}
.minimalist-mode [data-session=soma] .soma-mode-options{width:100%}
.minimalist-mode [data-session=soma] .soma-mode-options button{flex:1;min-height:44px}
.minimalist-mode [data-session=soma] .soma-scene-viewport{flex:1;min-height:0;display:flex;flex-direction:column}
body.minimalist-mode [data-session=soma] .soma-stage-wrap #soma-stage{flex:1;height:0;min-height:0}
.minimalist-mode [data-session=soma] .soma-preview-footer{flex:none;padding:2px 0 6px}
.minimalist-mode [data-session=soma] .soma-preview-status{min-height:28px;font-size:11px}
.minimalist-mode [data-session=soma] .soma-visual-key{top:7px;left:5px;right:5px;justify-content:center;font-size:9px}
.minimalist-mode [data-session=soma] .soma-side{grid-row:2;order:1;min-height:0;max-height:48dvh;overflow:auto;scroll-padding-bottom:55px}
.minimalist-mode [data-session=soma] .soma-panel:first-child{display:flex;flex-direction:column;gap:4px;padding:7px 9px;background:#101b2de8;border-radius:14px}
.minimalist-mode [data-session=soma] .soma-pieces{display:flex;gap:5px;overflow-x:auto;flex-shrink:0;margin:0;padding:0 0 3px}
.minimalist-mode [data-session=soma] .soma-pieces button{flex:1 0 44px;min-height:48px;max-width:86px}
.minimalist-mode [data-session=soma] .soma-pieces svg{height:27px}
.minimalist-mode [data-session=soma] .soma-selected{min-height:44px;flex-shrink:0;padding:0;margin:0;border:0;gap:6px}
.minimalist-mode [data-session=soma] .soma-selected strong{font-size:11px}
.minimalist-mode [data-session=soma] #soma-remove{min-height:44px;min-width:44px}
.minimalist-mode [data-session=soma] .soma-compact-toggle{display:inline-flex;font-size:11px;min-height:44px;margin:0;padding:6px 10px}
.minimalist-mode [data-session=soma] .soma-place{flex:none;min-height:44px;position:sticky;bottom:0;z-index:2}
.minimalist-mode [data-session=soma] .soma-place:disabled{opacity:1;background:#514b6d!important;border-color:#514b6d!important;color:#c3bed8!important}
.minimalist-mode [data-session=soma] .soma-grid button{scroll-margin-bottom:55px;scroll-margin-top:8px}
.minimalist-mode [data-session=soma] :is(.soma-grid,.soma-rotations){display:none}
.minimalist-mode [data-session=soma] .soma-fine-controls :is(.soma-grid,.soma-rotations){display:grid;margin:4px 0}
.minimalist-mode [data-session=soma] .soma-fine-controls .soma-grid{width:100%;flex-shrink:0}
.minimalist-mode [data-session=soma] .soma-fine-controls .soma-rotations{grid-template-columns:repeat(3,1fr)}
.minimalist-mode [data-session=soma] .soma-fine-controls .soma-panel-heading.soma-step{display:flex!important;justify-content:flex-end;margin:0!important}
.minimalist-mode [data-session=soma] .soma-fine-controls .soma-panel-heading.soma-step h2{display:none}
.minimalist-mode [data-session=soma] :is(.soma-grid button,.soma-layer-label select,.soma-rotations button){min-height:44px}
.minimalist-mode [data-session=soma] .soma-toolbar{grid-row:3;order:2;padding:6px 0 0;justify-content:center}
.minimalist-mode [data-session=soma] .soma-toolbar .button{min-height:44px}
.minimalist-mode [data-session=soma] #soma-reset{display:none}
@media(min-width:850px), (orientation:landscape) and (max-height:600px){
 body.minimalist-mode .soma-layout.minimalist-stage{grid-template-columns:minmax(0,1fr) 290px;grid-template-rows:minmax(0,1fr) auto;gap:10px!important}
 .minimalist-mode [data-session=soma] .soma-stage-wrap{grid-column:1;grid-row:1/3}
 .minimalist-mode [data-session=soma] .soma-side{grid-column:2;grid-row:1;max-height:none;align-self:start;height:100%}
 .minimalist-mode [data-session=soma] .soma-toolbar{grid-column:2;grid-row:2}
}
