/* EVOLVE 032 — responsive topology synthesis laboratory */
.structure-lab{margin:20px 0;border:1px solid #31485b;border-radius:14px;background:linear-gradient(160deg,#112131,#0b1725);padding:clamp(12px,2vw,22px);color:#cbdbe7}
.structure-lab h2,.structure-lab h3{color:#f0f6fc;margin:.3rem 0 .6rem}
.structure-lab p{line-height:1.55;margin:.5rem 0}
.structure-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.structure-head p{max-width:780px}
#structure-badge{font:600 11px ui-monospace,monospace;letter-spacing:.08em;color:#83ead9;border:1px solid #416c70;padding:7px 10px;border-radius:6px;white-space:nowrap}
.structure-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:9px;margin:16px 0}
.structure-controls label,.structure-editor label{display:flex;flex-direction:column;gap:5px;font:500 11px ui-monospace,monospace;letter-spacing:.02em;color:#a6c1d4}
.structure-controls input:not([type=checkbox]),.structure-controls select,.structure-editor input,.structure-editor select{width:100%;min-width:0;padding:8px 9px;border-radius:6px;background:#0a1624;color:#e2f3fa;border:1px solid #395367;font:inherit}
.structure-controls input[type=range]{padding:0}
.structure-controls .structure-check{display:flex;flex-direction:row;align-items:center;gap:8px;min-height:42px}
.structure-workspace{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(210px,1fr);gap:14px;align-items:stretch}
.structure-stage{min-width:0;overflow:hidden;border:1px solid #344d62;border-radius:10px;background:#0c1927}
#structure-map{display:block;width:100%;height:auto;aspect-ratio:900/520;touch-action:none;cursor:crosshair}
#structure-map:focus-visible{outline:2px solid #89e7db;outline-offset:-3px}
.structure-legend{display:flex;flex-wrap:wrap;gap:12px;padding:8px 12px;border-top:1px solid #2b4556;font:10px ui-monospace,monospace;color:#b5cad9}
.structure-legend span:nth-child(2){color:#74e8d9}.structure-legend span:nth-child(3){color:#f5d4a3}
.structure-editor{border:1px solid #344d62;border-radius:10px;padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:9px;align-content:start}
.structure-editor-head{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:10px}
.structure-editor-head h3{font-size:14px}
.structure-editor label:first-of-type,.structure-editor .quiet{grid-column:1/-1}
.structure-editor .quiet{font-size:11px;color:#9cb7c8}
.structure-lab button{background:#203a4d;color:#d6eaf5;border:1px solid #446176;border-radius:7px;padding:9px 11px;font:600 11px ui-monospace,monospace;cursor:pointer;min-height:38px}
.structure-lab button.primary{background:#245767;border-color:#54b7c2;color:#efffff}
.structure-lab button:disabled{opacity:.4;cursor:not-allowed}
.structure-lab button:focus-visible{outline:2px solid #9cf5e8;outline-offset:2px}
.structure-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.structure-progress{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font:11px ui-monospace,monospace}
.structure-progress progress{flex:1;min-width:130px;height:10px;accent-color:#78e5d4}
.structure-progress label{display:flex;align-items:center;gap:8px}
.structure-progress input{accent-color:#78e5d4;max-width:120px}
.structure-readout{padding:12px;margin-top:12px;border:1px solid #365468;border-radius:7px;background:#0a1825;font:12px/1.7 ui-monospace,monospace;overflow-wrap:anywhere}
.structure-lab .quiet{color:#a9c1d0;font-size:12px}
@media(max-width:780px){.structure-workspace{grid-template-columns:1fr}.structure-editor{grid-template-columns:repeat(2,minmax(0,1fr))}.structure-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.structure-head{flex-wrap:wrap}.structure-actions button{flex:1 1 140px}.structure-progress label{width:100%;justify-content:space-between}.structure-progress input{flex:1;max-width:none}}
@media(max-width:390px){.structure-controls{grid-template-columns:1fr 1fr}.structure-editor{padding:9px;gap:7px}.structure-lab{padding:10px}.structure-controls label,.structure-editor label{font-size:10px}}
@media(prefers-reduced-motion:reduce){.structure-lab *{scroll-behavior:auto;transition:none!important;animation:none!important}}
