/* Single toolbar, explicit panels, and an unobstructed model viewport. */
html[data-jambo-shell=parent],html[data-jambo-shell=parent] body{height:100dvh;min-height:0;margin:0;overflow:hidden;background:#10242b;color:#edf5f3}
html[data-jambo-shell=parent] body{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
html[data-jambo-shell=parent] body>header:not(.jambo-shell-bar),html[data-jambo-shell=parent] .entry-tools,
html[data-jambo-shell=parent] .go3d-help-launch,html[data-jambo-shell=parent] .go3d-map-launch,
html[data-jambo-shell=parent] .go3d-vt-toolbar,html[data-jambo-shell=parent] .go3d-mb-launch{display:none!important}
html[data-jambo-shell=parent] body>main{position:relative!important;inset:auto!important;grid-row:2;min-height:0!important;height:100%!important;max-height:none!important;max-width:none;width:100%;margin:0;padding:0;overflow:hidden}
html[data-jambo-shell=parent] body>main>iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
html[data-jambo-shell=parent] body>footer{grid-row:3;display:block;min-height:0;padding:4px max(10px,env(safe-area-inset-right)) calc(4px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));font:10px/1.3 system-ui;color:#b8ccc8}
html[data-jambo-shell=parent] body>footer a{display:none}
html[data-jambo-shell=parent] .jambo-shell-bar{position:relative;inset:auto;z-index:80;display:flex;align-items:center;justify-content:flex-end;gap:6px;width:100%;max-width:none;min-height:52px;box-sizing:border-box;margin:0;padding:calc(4px + env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) 4px max(10px,env(safe-area-inset-left));background:#10242b;border-bottom:1px solid #476169;pointer-events:auto}
.jambo-shell-title{min-width:0;flex:1;font:650 14px/1.2 system-ui;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jambo-shell-bar button,.jambo-shell-dialog button,.jambo-shell-dialog a{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:9px 12px;border:1px solid #66878a;border-radius:8px;background:#19383f;color:#edf5f3;font:600 13px/1.3 system-ui;text-decoration:none;touch-action:manipulation;cursor:pointer}
.jambo-shell-bar button{flex:none}
.jambo-shell-bar button:focus-visible,.jambo-shell-dialog :focus-visible{outline:3px solid #a2ecdd;outline-offset:2px}
.jambo-shell-status{position:absolute;left:8px;right:8px;top:100%;margin:5px 0 0;padding:7px 10px;background:#142c34f2;border-radius:7px;font:12px/1.4 system-ui;pointer-events:none}.jambo-shell-status:empty{display:none}
.jambo-shell-dialog{box-sizing:border-box;width:min(460px,calc(100vw - 16px));max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:14px;margin:auto;border:1px solid #78928d;border-radius:14px;background:#142c34;color:#edf5f3;font:14px/1.5 system-ui;overflow:auto;overscroll-behavior:contain;scroll-padding-top:70px}
.jambo-shell-dialog::backdrop{background:#06161980}
.jambo-shell-heading{position:sticky;top:-14px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;background:#142c34}
.jambo-shell-heading h2{margin:0;font:650 18px/1.25 system-ui}.jambo-shell-dialog h3{font-size:14px;margin:16px 0 4px}.jambo-shell-dialog p{font-size:13px;margin:4px 0 12px}
.jambo-shell-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0 14px}.jambo-shell-actions button{white-space:normal}
.jambo-shell-links{display:grid;gap:6px;border-top:1px solid #476169;padding-top:12px}.jambo-shell-links a{justify-content:flex-start}
html[data-jambo-shell=parent] .frame-status{max-width:calc(100% - 16px);left:8px;right:8px;bottom:8px;max-height:30dvh;overflow:auto;overscroll-behavior:contain}
html[data-jambo-shell=parent] main:has(iframe[data-twin-state=loading]) .frame-status{width:max-content;font-size:11px;padding:6px 9px;pointer-events:none}
html[data-jambo-shell=parent] main:has(iframe[data-twin-state=loading]) .frame-status-actions{display:none}
@media(max-width:600px){.jambo-shell-dialog{margin:auto auto max(8px,env(safe-area-inset-bottom));max-height:min(70dvh,calc(100dvh - 80px - env(safe-area-inset-top) - env(safe-area-inset-bottom)))}.jambo-shell-dialog input,.jambo-shell-dialog select{font-size:16px}}
@media(orientation:landscape) and (max-height:500px){.jambo-shell-bar{min-height:48px}.jambo-shell-dialog{max-height:calc(100dvh - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom));margin:auto}.jambo-shell-actions{grid-template-columns:repeat(3,minmax(0,1fr))}html[data-jambo-shell=parent] body>footer{display:none}}
