/* Public shell. The simulator is a separate, self-contained document. */
@media(max-width:700px){#controls .transport,#controls .engine-only,#controls #reset{display:none!important}.brand-row #browse{font-size:0}.brand-row #browse:after{content:'Machines';font-size:12px}}
:root{color:#23313b;--accent:#bd2d40;--line:#d5dce0}body{grid-template-rows:auto minmax(0,1fr) auto 32px}.masthead{display:block;padding:0;min-width:0}.brand-row{display:flex;gap:12px;align-items:center;padding:8px 20px}.brand{font-size:13px}.brand small{display:block;font-size:9px}.head-actions{margin-left:auto}.local{font-size:10px;letter-spacing:0}button{min-height:38px;font-size:13px}button.primary{color:#fff;background:var(--accent);border-color:var(--accent)}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}nav{display:flex;max-width:none;gap:3px;overflow-x:auto;scrollbar-width:thin;padding:0 20px 3px;min-width:0}nav button{flex:0 0 auto;white-space:nowrap;min-height:38px;padding:8px 11px}nav button span{display:inline;font-size:13px;margin:0 0 0 5px}main{min-width:0;display:grid;grid-template-columns:minmax(0,1fr)}iframe{grid-column:1;grid-row:1;min-width:0}#loading{grid-column:1;grid-row:1;inset:0;gap:14px;padding:24px}#loading strong{font-size:22px}#loading span{font-size:14px;line-height:1.6;max-width:430px}#loading img{width:240px;max-width:70%;border:1px solid var(--line);border-radius:7px}#loading[data-state=error] .loader{display:none}#loading-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}[hidden]{display:none!important}#controls{gap:10px;padding:7px 16px}#controls.custom .transport,#controls.custom #reset{display:none}footer{font-size:11px;gap:10px}#liveState{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gallery-tools{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.gallery-tools button[aria-pressed=true]{background:#23313b;color:#fff}.machine-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.machine-card{text-align:left;padding:0;overflow:hidden;display:flex;flex-direction:column;border-radius:7px;min-width:0}.machine-card img{width:100%;aspect-ratio:16/10;object-fit:cover;background:#dfe6e8}.machine-card div{padding:12px}.machine-card strong{display:block;font-size:16px;margin-bottom:7px}.machine-card span{font-size:12px;color:#566975;display:block;line-height:1.6}.machine-card em{display:block;font-size:12px;font-style:normal;color:#ad2939;margin-top:9px}#gallery{max-width:960px}.preference{display:flex;align-items:center;gap:8px;font-size:14px;line-height:1.6;margin:15px 0}#activity-panel{display:none;min-width:0;background:#fafbf9;border-left:1px solid var(--line);padding:20px;overflow:auto}body.activity-open main{grid-template-columns:minmax(0,1fr) 330px}body.activity-open #activity-panel{display:block;grid-column:2;grid-row:1}#activity-panel header{display:flex;justify-content:space-between;gap:10px;align-items:start}#activity-title{font-size:22px;margin:10px 0}#activity-description,#activity-instruction,#activity-result{font-size:14px;line-height:1.65;color:#415966}#activity-content{margin-top:12px}#activity-content button{margin:4px 5px 4px 0;min-height:42px}#activity-content label{display:block;font-size:13px;line-height:1.6;margin:12px 0}#activity-content select,#activity-content input{width:100%;min-height:42px;padding:8px;border:1px solid var(--line);background:white;border-radius:4px}#activity-progress{width:100%;height:10px;accent-color:var(--accent);margin-top:16px}#activity-live{font-size:22px;font-weight:700;line-height:1.5;font-variant-numeric:tabular-nums;margin:12px 0}#activity-result{min-height:24px;color:#27704c}#activity-map{width:100%;height:auto;background:#eef2f2;border:1px solid var(--line);border-radius:6px}#activity-map text{font:12px system-ui;fill:#334e60}#activity-map path{fill:none;stroke:#5b7e91;stroke-width:2}#activity-map circle{stroke:#a72c3c;stroke-width:2;fill:#fff}#activity-map .visited{fill:#317d58;stroke:#317d58}.activity-measure{padding:12px;background:#edf2f2;border-radius:5px;font-size:13px;line-height:1.7;margin-top:12px}.model-notes{margin-top:22px;border-top:1px solid var(--line);padding-top:12px;font-size:13px;line-height:1.7;color:#536672}#feedback-text{width:100%;height:145px;padding:12px;font:13px/1.6 system-ui;border:1px solid var(--line);resize:vertical}
@media(max-width:1100px){.brand small,.local,#hint{display:none}.brand-row{padding:7px 12px}nav{padding-left:12px;padding-right:12px}.brand>span:last-child{display:block}}
@media(max-width:700px){body{grid-template-rows:auto minmax(0,1fr) auto 32px}.brand{font-size:11px}.brand-row{gap:7px}.brand small{display:none}.mark{font-size:22px}#browse{font-size:12px;padding:8px}.head-actions{gap:4px}.head-actions button{padding:6px;min-width:36px}.head-actions #feedback{display:none}nav{order:initial;width:100%;scroll-snap-type:x proximity;flex-wrap:nowrap}nav button{flex:0 0 auto;min-height:44px;padding:8px 10px}nav button span{display:inline;font-size:12px;margin-left:5px}#controls{gap:6px;padding:6px}#controls button{min-height:42px;padding:7px 10px;font-size:12px}.engine-only.speed{display:none}footer{padding:5px 10px;font-size:10px;gap:6px}.machine-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.machine-card strong{font-size:14px}.machine-card div{padding:9px}body.activity-open main{grid-template-columns:minmax(0,1fr)}body.activity-open #activity-panel{position:absolute;z-index:4;left:0;right:0;bottom:0;height:275px;border-left:0;border-top:1px solid var(--line);padding:12px 16px}#activity-panel header{align-items:center}#activity-title{font-size:18px;margin:4px 0}#activity-description{margin:6px 0}#activity-live{font-size:19px}#activity-content button{min-height:44px}#activity-panel .model-notes{margin-top:12px}}
