:root{--ink:#19392f;--muted:#60736a;--cream:#f4f1e8;--gold:#dbb77c;--line:#d6dcd1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.5 'Segoe UI',Arial,sans-serif}header{padding:25px 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:25px}.brand{font-size:22px;font-weight:900;letter-spacing:2px;text-decoration:none;line-height:1.15}.brand span{display:block;font-size:10px;letter-spacing:4px}a{color:inherit}nav{display:flex;gap:25px;font-size:13px}nav a{text-decoration:none}.edition,.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px}.edition{border:1px solid var(--line);padding:8px}main{max-width:1600px;margin:auto;padding:0 4%}.intro{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:45px 0 32px}h1{font:clamp(38px,4.5vw,70px)/1.05 Georgia,serif;letter-spacing:-2px;margin:12px 0 20px}h1 em{color:#71806a;font-weight:400}.intro p:not(.eyebrow){color:var(--muted);max-width:520px}.intro-aside{font-size:10px;letter-spacing:1px;line-height:2.2}.intro-aside small{font-size:13px;letter-spacing:0;color:var(--muted)}.live-dot{display:inline-block;width:7px;height:7px;background:#7a9764;border-radius:50%;margin-right:5px}.lab{display:grid;grid-template-columns:265px minmax(0,1fr);gap:20px;scroll-margin-top:15px}.panel{background:#e8ece3;border:1px solid var(--line);padding:20px;border-radius:10px;align-self:start}.panel-title{display:flex;justify-content:space-between;align-items:center;margin:2px 0 18px}.panel-title:not(:first-child){margin-top:25px;padding-top:20px;border-top:1px solid #cbd4c5}.panel-title span{font-size:11px;color:var(--muted)}h2{font:36px/1.1 Georgia,serif;margin:10px 0 20px}.panel h2{font:600 16px 'Segoe UI',sans-serif;margin:0}label{display:block;font-size:11px;font-weight:650;letter-spacing:.3px;margin:12px 0}select,input[type=number]{width:100%;border:1px solid #bbc9bc;border-radius:5px;padding:10px 7px;background:#f8f9f4;color:var(--ink);font:13px 'Segoe UI',sans-serif;margin-top:5px;min-width:0}.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.range-label output{float:right;color:var(--muted)}input[type=range]{width:100%;accent-color:var(--ink);display:block;margin-top:12px}.muted{font-size:12px;color:var(--muted);line-height:1.6}button,.file-button{font:600 12px 'Segoe UI',sans-serif;border:1px solid #b9c6b9;border-radius:5px;padding:11px 13px;background:transparent;color:var(--ink);cursor:pointer;transition:background .15s}button:hover,.file-button:hover{background:#dce4d7}button.primary,button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}button.primary:hover{background:#315545}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,canvas:focus-visible,summary:focus-visible{outline:3px solid #b88640;outline-offset:3px}.add-row{align-items:end;grid-template-columns:65px 1fr}.add-row label{margin:0}.add-row button{height:39px}.mode-row{display:flex;gap:5px;margin-top:15px}.mode-row button{flex:1;padding:9px 4px}#layout{width:100%}.field{min-width:0}.field-bar{display:flex;justify-content:space-between;align-items:center;font-size:11px;padding:13px 18px;background:var(--ink);color:#e5eddf;border-radius:9px 9px 0 0;gap:12px}.field-bar b{letter-spacing:2px}.field-bar small{margin-left:13px;color:#b6c8b8}.canvas-wrap{position:relative;background:#648b88;overflow:hidden}canvas{width:100%;aspect-ratio:1000/760;display:block;touch-action:none;cursor:grab}.map-label{position:absolute;top:16px;left:20px;font-size:12px;font-weight:700;pointer-events:none;color:#e7eee0;text-shadow:0 1px 3px #233}.map-label span{display:block;font-size:9px;margin-top:12px}.map-label i{display:block;width:8vw;max-width:80px;border-bottom:2px solid #dfebdc}.wind-badge{position:absolute;right:14px;top:15px;color:#f5f5df;background:#19392fbc;padding:8px 12px;border-radius:5px;font-size:11px;pointer-events:none}.map-bottom{position:absolute;bottom:15px;left:20px;right:20px;display:flex;justify-content:space-between;color:#e9ebd9;font-size:9px;letter-spacing:1.4px;pointer-events:none}.flight-bar{display:flex;align-items:center;gap:8px;padding:12px;background:#e6ebe2;border:1px solid var(--line);flex-wrap:wrap}.flight-bar span{font-size:11px;color:var(--muted);margin-left:auto}.readout{display:grid;grid-template-columns:1.7fr 1fr;gap:30px;padding:22px;background:#fffdf6;border:1px solid var(--line);border-top:0;border-radius:0 0 9px 9px}.eyebrow{color:var(--muted);margin:0 0 8px}h3{font:25px Georgia,serif;margin:0 0 12px}#findings{padding-left:18px;font-size:13px;color:var(--muted);margin:0}#findings li{margin:6px 0}.inventory{border-left:1px solid var(--line);padding-left:20px}.inventory div div{display:flex;justify-content:space-between;font-size:12px;padding:4px 0}.keyboard{font-size:12px;padding:14px 0}.keyboard .pair{max-width:350px}.keyboard select{max-width:350px;display:block}summary{cursor:pointer;font-size:13px;font-weight:600;padding:9px 0}.save-bar{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.file-button{margin:0}.file-button input{display:none}#notice{font-size:12px;width:100%;color:var(--muted)}.product{margin-top:70px;padding:40px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.5fr;gap:50px;align-items:center}.product img{width:100%;border-radius:9px}.product p{max-width:440px;color:var(--muted)}video{width:100%;border-radius:7px}.about{padding:45px 0 60px;display:grid;grid-template-columns:1fr 1.5fr;gap:50px;border-top:1px solid var(--line)}.about p,.about li{font-size:13px;color:var(--muted);line-height:1.8}footer{padding:25px 4%;background:var(--ink);color:#d9e4d4;font-size:11px;letter-spacing:1px;display:flex;justify-content:space-between;gap:20px}footer span{color:#a9bfac}@media(min-width:1300px){.lab{grid-template-columns:280px minmax(0,1fr)}canvas{height:auto}}@media(max-width:850px){.edition,.intro-aside{display:none}.lab{grid-template-columns:220px minmax(0,1fr);gap:12px}.panel{padding:13px}.pair{grid-template-columns:1fr}.add-row{grid-template-columns:60px 1fr}.field-bar small{display:none}.readout{grid-template-columns:1fr;gap:20px}.inventory{border-left:0;padding:0}.flight-bar span{margin:0}.product,.about{gap:25px}.intro{padding-top:30px}}@media(max-width:620px){header{padding:20px 5%;gap:12px}nav{gap:12px;font-size:11px}.brand{font-size:17px}.brand span{font-size:8px;letter-spacing:3px}.intro{padding:28px 0 15px}h1{font-size:43px}.lab{display:flex;flex-direction:column}.panel{display:grid;grid-template-columns:1fr 1fr;gap:5px 15px}.panel-title,.panel>.pair,.panel>.mode-row,.panel>#typeHelp,.panel>.muted{grid-column:1/-1}.panel-title:not(:first-child){margin-top:10px;padding-top:15px}.panel-title{margin-bottom:0}.pair{grid-template-columns:1fr 1fr}.panel>#layout{align-self:center}.panel label{margin:7px 0}.product,.about{grid-template-columns:1fr;gap:15px;margin-top:35px}.readout{padding:17px}.field-bar{padding:12px}.wind-badge{font-size:9px;padding:5px;right:8px;top:8px}.map-bottom{font-size:7px;left:10px;right:10px}.product h2,.about h2{font-size:32px}footer{flex-direction:column}.flight-bar button{padding:10px}.map-label{left:10px;top:10px}}

/* Version 2: the 3D scene is the main view. */
[hidden]{display:none!important}.view-tools{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:10px;background:#243b33}.view-tools>div{display:flex;gap:5px}.view-tools button{color:#e3e8d9;border-color:#64756b;padding:8px 10px;font-size:11px}.view-tools button[aria-pressed=true]{background:#d0b788;color:#182d24;border-color:#d0b788}#scene3d{width:100%;height:clamp(430px,52vw,720px);background:#7a9397}#scene3d canvas{width:100%;height:100%;aspect-ratio:auto;touch-action:none}.scene-info{background:#233a32;color:#c8d2bd;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:10px 15px;font-size:9px;letter-spacing:1px}.environment-panel{margin-top:20px;border-top:1px solid #bdcabb;border-bottom:1px solid #bdcabb;padding:8px 0}.environment-panel summary{font-size:13px}.preset-row{display:flex;gap:8px}.environment-panel .muted{font-size:11px}.environment-panel label{font-size:11px}.environment-panel output{font-size:10px} .field-bar small{font-size:10px}.map-bottom{background:#19392f99;padding:7px;border-radius:4px;bottom:10px} @media(max-width:620px){.environment-panel{grid-column:1/-1}#environmentControls{display:grid;grid-template-columns:1fr 1fr;gap:5px 18px}#scene3d{height:430px}.view-tools{gap:10px}.map-bottom{font-size:7px}} 

.lab.wide{grid-template-columns:1fr}.lab.wide .field{grid-row:1}.lab.wide .panel{grid-row:2;width:100%;max-width:750px}.lab.wide #scene3d{height:clamp(450px,65vw,800px)}@media(max-width:620px){.lab.wide .field{order:-1}}

.view-tools button:hover{background:#536b5e;color:#fff}.preset-row{margin:8px 0}

.habitat-panel{border-bottom:1px solid #b8c6b8;padding-bottom:18px;margin-bottom:22px}.habitat-panel select{font-size:15px;font-weight:650}.habitat-panel input:disabled{opacity:.35}@media(max-width:620px){.habitat-panel{grid-column:1/-1}}

.blind-panel{border-bottom:1px solid #b8c6b8;margin-bottom:20px;padding-bottom:15px}.blind-panel>button{margin:3px 0}.blind-panel .pair{grid-template-columns:1fr 1fr}@media(max-width:620px){.blind-panel{grid-column:1/-1}}

.flock-control{padding:14px 20px 0;border-top:1px solid #d8d7cb}.flock-control .range-label{max-width:460px;margin:0}.save-bar{flex-wrap:wrap}
