*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;font:14px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#e8f0f3;background:#07151e}button,a,select{-webkit-tap-highlight-color:transparent}button,select{font:inherit}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #a9e9be;outline-offset:3px}#world{display:block;position:absolute;inset:0;width:100%;height:100%;touch-action:none}.topbar{position:absolute;top:0;left:0;right:0;height:80px;display:flex;align-items:center;padding:0 32px;gap:24px;background:linear-gradient(#07131ee8,#07131e00);pointer-events:none}.topbar>*{pointer-events:auto}.brand{font-size:18px;letter-spacing:.18em;font-weight:750;color:#fff;text-decoration:none;display:flex;gap:20px;align-items:center}.brand span{font-size:10px;letter-spacing:.16em;font-weight:500;color:#b8cbd3;border-left:1px solid #ffffff40;padding-left:20px}.badge{margin-left:auto;font-size:10px;letter-spacing:.13em;color:#d8e2dd;border:1px solid #ffffff40;padding:5px 9px}.topbar button{display:none}#panel{position:absolute;top:94px;left:28px;width:320px;padding:24px;background:#0b1925e8;border:1px solid #dae8ef24;border-radius:5px;box-shadow:0 10px 50px #0003;max-height:calc(100% - 150px);overflow:auto;backdrop-filter:blur(14px)}.eyebrow,.section-label{font-size:9px;letter-spacing:.18em;color:#a7d8c1;font-weight:650;margin:0 0 12px}h1{font-size:29px;font-weight:550;letter-spacing:-.04em;line-height:1.12;margin:0 0 12px}.description{font-size:12px;color:#c0ced5;margin:0 0 23px}.tests{display:grid;gap:7px;margin-bottom:24px}.tests a{display:flex;align-items:center;gap:12px;padding:12px 10px;border:1px solid #ffffff20;border-radius:3px;color:#dce8ed;text-decoration:none;background:#ffffff03}.tests a.active{background:#b6edc814;border-color:#b6edc888}.tests a:hover{background:#ffffff12}.number{font-size:10px;color:#91b5a6;align-self:flex-start;padding-top:2px}.tests strong{font-size:12px;font-weight:600;display:block}.tests small{display:block;font-size:9px;color:#9fb2bc;margin-top:2px}.tests a>span:last-child{margin-left:auto;color:#9bc7b6}.buttons{display:flex;gap:6px;margin:8px 0}.buttons button{flex:1;white-space:nowrap;border:1px solid #ffffff28;padding:7px 4px;background:#ffffff05;color:#ccd9df;border-radius:3px;font-size:11px;cursor:pointer}.buttons button:hover{background:#ffffff15}.buttons button.active,.buttons button[aria-pressed=true]{background:#b9edca;color:#0d3325;border-color:#b9edca}.quality{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#b2c5cf;margin-top:16px}.quality select{border:1px solid #ffffff30;border-radius:3px;background:#152939;color:#dce7ec;padding:4px 6px;font-size:11px}.help{color:#94aab5;font-size:10px;line-height:1.65;margin:16px 0}details{font-size:10px;color:#9fb5c0;border-top:1px solid #ffffff20;padding-top:12px}summary{cursor:pointer;color:#c3d4dc}details a{color:#b9edca}footer{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:14px 28px;font-size:10px;color:#d0e1e9;background:linear-gradient(transparent,#06111dc9);pointer-events:none}#loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:16px 24px;background:#081623ed;border:1px solid #ffffff30;border-radius:5px;display:flex;gap:14px;align-items:center;max-width:90%;font-size:12px}#loading.hidden{display:none}.spinner{width:18px;height:18px;border:2px solid #90c1b14d;border-top-color:#b9edca;border-radius:50%;animation:spin 1s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.touch-controls{display:none;position:absolute;right:16px;bottom:54px;gap:7px;grid-template-columns:repeat(3,42px)}.touch-controls button{background:#0b1c2cbb;border:1px solid #ffffff45;border-radius:5px;color:#d9efec;font-size:18px;min-height:42px;touch-action:none}body.pilot #world{cursor:grab}body.pilot.dragging #world{cursor:grabbing}@media(max-width:760px){.topbar{padding:0 18px;height:66px;gap:12px}.brand{font-size:14px;gap:10px}.brand span{font-size:8px;padding-left:10px;max-width:95px}.badge{display:none}.topbar button{display:block;margin-left:auto;font-size:10px;padding:6px 9px;border:1px solid #ffffff40;color:#dce8e3;border-radius:3px;background:#0d2131b0}#panel{top:76px;left:14px;width:280px;max-height:calc(100% - 124px);padding:19px}h1{font-size:25px}body.panel-hidden #panel{display:none}footer{font-size:8px;padding:12px 16px}#metrics{max-width:42%;text-align:right}body.pilot .touch-controls{display:grid}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}
/* Five tests fit above the camera controls; preserve the original layout in archive/. */
#panel .tests{gap:4px;margin-bottom:16px}#panel .tests a{padding:7px 9px;gap:9px}#panel .tests strong{font-size:11px}#panel .tests small{font-size:8px;margin-top:1px}#panel .description{font-size:11px;margin-bottom:16px}#panel .eyebrow{margin-bottom:9px}
/* Keep the additional city inspection views inside the sidebar. */
.buttons.presets{flex-wrap:wrap}.buttons.presets button{flex:1 1 28%;min-width:0}
.damage-stages{display:grid;grid-template-columns:1fr 1fr}.damage-stages button{min-height:32px}.damage-stages button:disabled{opacity:.55;cursor:progress}#damage-preview{padding:12px 0 4px;border-top:1px solid #ffffff20}#damage-preview .section-label{margin-bottom:6px}#damage-note{margin:7px 0 12px;min-height:32px;color:#b4c2cb}
.effect-controls{flex-wrap:wrap}.effect-controls button{min-height:34px;flex:1 1 28%;font-size:10px}#effect-note{margin:6px 0 12px;min-height:32px;color:#b9c9ca}
.lab-modes{display:flex;gap:6px;margin:0 0 18px}.lab-modes a{flex:1;text-align:center;color:#bdcdd5;border:1px solid #ffffff28;border-radius:3px;padding:7px;text-decoration:none;font-size:11px}.lab-modes a[aria-current=page]{background:#b9edca;color:#0d3325;border-color:#b9edca}#asset-search{width:100%;margin:5px 0 0;padding:8px 7px;background:#0f2230;color:#e8f0f3;border:1px solid #ffffff30;border-radius:3px;font:inherit;font-size:12px}#asset-count{display:block;margin:2px 0 0;font-size:11px}
#asset-choice{width:100%;margin:5px 0 0;padding:9px 7px;background:#152939;color:#e8f0f3;border:1px solid #ffffff30;border-radius:3px;font:inherit;font-size:12px}#asset-source{color:#b9edca;font-size:11px}#asset-browser{margin-bottom:16px}.brand span{max-width:none}@media(max-width:760px){.brand span{max-width:112px;font-size:7px}}[hidden]{display:none!important}
#world-choices{flex-wrap:wrap}#world-choices a{flex:1 1 30%}
