/* Viewport budget: header and actions stay fixed; only item trays scroll. */
.immersive-adventure .adventure-debug { top:7px; bottom:auto; left:190px; right:auto; }
.immersive-adventure .adventure-debug .adv-dev { max-height:calc(100dvh - 70px); overflow:auto; }
.immersive-adventure .screen.classification-screen {
  height:100%; min-height:0; padding:0; margin:0; max-width:none;
  display:grid; grid-template-rows:34px 30px auto auto minmax(0,1fr) auto; gap:6px;
}
.classification-screen .back-button { margin:0; justify-self:start; }
.classification-screen .mission-head { margin:0; padding:0; }
.classification-screen .mission-head h1 { font-size:22px; margin:0; }
.classification-screen .classification-narrative { margin:0; gap:8px; }
.classification-screen .classification-narrative>div { min-height:52px; grid-template-columns:48px 1fr; }
.classification-screen .classification-narrative img { width:48px; height:52px; }
.classification-screen .classification-narrative p { font-size:12px; padding:6px 10px; }
.classification-screen .classification-narrative p span { font-size:10px; margin-bottom:2px; }
.classification-screen .classification-progress { padding:7px 12px; }
.classification-screen .classification-progress small { font-size:13px; }
.classification-screen .classification-layout { margin:0; min-height:0; grid-template-columns:minmax(260px,30%) minmax(0,1fr); align-items:stretch; }
.classification-screen .classification-palette { min-height:0; max-height:none; overflow:auto; align-content:start; scrollbar-gutter:stable; padding:7px; }
.classification-screen .classification-palette header { font-size:11px; padding:4px; }
.classification-screen .classification-card { min-height:76px; padding:8px; gap:6px; }
.classification-screen .classification-card strong { font-size:14px; }
.classification-screen .classification-card small { font-size:12px; color:#bfd1d9; }
.classification-screen .classification-card em { display:none; }
.classification-screen .classification-zones { min-height:0; grid-template-rows:repeat(2,minmax(0,1fr)); }
.classification-screen .classification-zone { min-height:0; min-width:0; padding:8px; display:grid; grid-template-columns:32px minmax(0,1fr); grid-template-rows:auto minmax(0,1fr); gap:6px; }
.classification-screen .classification-zone>span { width:30px; height:30px; padding:4px; }
.classification-screen .classification-zone>div { min-height:0; padding:0 0 5px; }
.classification-screen .classification-zone>div strong { font-size:14px; }
.classification-screen .classification-zone>div small { font-size:11px; margin-top:3px; }
.classification-screen .classification-zone section { grid-column:1/-1; min-height:0; overflow:auto; align-content:start; padding:0; scrollbar-gutter:stable; }
.classification-screen .classification-zone section i { font-size:12px; padding:4px; }
.classification-screen .classification-zone section em { font-size:12px; color:#bfd1d9; }
.classification-screen .classification-controls { display:grid; grid-template-columns:1fr auto; gap:5px 12px; align-items:center; }
.classification-screen .drag-help { margin:0; font-size:12px; }
.classification-screen #validateClassification { margin:0; grid-column:2; grid-row:1/3; min-height:42px; }
.classification-screen .inline-feedback { margin:0; min-height:20px; font-size:12px; }
.classification-screen .mission-actions { margin:0; padding:0; grid-column:2; }
.classification-screen .hint { grid-row:3; grid-column:1; margin:0; max-height:65px; overflow:auto; }
.classification-screen .hint p { margin:0; }
.immersive-adventure button:focus-visible,.immersive-adventure [role=button]:focus-visible { outline:3px solid #f8e78a; outline-offset:2px; }
.immersive-adventure button:disabled { opacity:1; color:#c4d0d8!important; background:#293641!important; border-color:#8798a3!important; border-style:dashed; cursor:not-allowed; filter:none; transform:none; box-shadow:none; }
.immersive-adventure button:disabled :is(strong,small,span) { color:inherit; }
.immersive-adventure .adv-panel button,.immersive-adventure .adv-toolbar>button { padding:8px 12px; }
.immersive-adventure .adv-panel button:hover:not(:disabled),.immersive-adventure .adv-toolbar>button:hover:not(:disabled) { background:#244b5b; color:#fff; }
@media(max-width:750px) {
 .classification-screen .classification-layout { grid-template-columns:minmax(160px,35%) minmax(0,1fr); gap:5px; }
 .classification-screen .classification-zones.four-classes { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .classification-screen .classification-narrative { display:none; }
 .immersive-adventure .screen.classification-screen { grid-template-rows:34px 30px auto minmax(0,1fr) auto; }
 .classification-screen .classification-palette { grid-template-columns:1fr; }
 .classification-screen .classification-zone>span { display:none; }
 .classification-screen .classification-zone { grid-template-columns:1fr; }
 .classification-screen .classification-controls { grid-template-columns:1fr; }
 .classification-screen #validateClassification,.classification-screen .mission-actions { grid-column:1; grid-row:auto; }
}
/* Development restart: always available, without using gameplay space. */
.restart-adventure{flex-shrink:0;padding:8px 10px;border:1px solid #e9b567;background:#34291b;color:#ffe2b0;font:600 11px monospace;cursor:pointer}
.restart-dialog{width:min(520px,90vw);max-height:85dvh;overflow:auto;box-sizing:border-box;background:#10212c;color:#f1f7fa;border:1px solid #e9b567;padding:24px;line-height:1.5}
.restart-dialog::backdrop{background:#000b}
.restart-dialog h2{font-size:22px;margin-top:0}
.restart-dialog>div{display:flex;flex-wrap:wrap;gap:12px}
.restart-dialog button{padding:12px;border:1px solid #9bc9d6;background:#193b4a;color:white;cursor:pointer}
.restart-dialog [data-confirm]{background:#573018;border-color:#e9b567}
.restart-error{color:#ffb5b5}
.restart-adventure:focus-visible,.restart-dialog button:focus-visible{outline:3px solid #72edff;outline-offset:3px}
@media(max-width:700px){.immersive-adventure .topbar:has(.restart-adventure){gap:5px;padding-inline:8px}.topbar:has(.restart-adventure) .operator{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.restart-adventure{font-size:10px;padding:7px 5px}.topbar:has(.restart-adventure) .sound-toggle{margin-left:0;padding:7px 5px}}
