*{box-sizing:border-box}body{margin:0;background:#f4f8f5;color:#214b49;font-family:system-ui,-apple-system,'PingFang SC',sans-serif}header{display:flex;justify-content:space-between;gap:20px;padding:18px 4%;background:white;border-bottom:1px solid #d9e6dc}a{color:#176d60;text-decoration:none}header>a{display:flex;gap:10px;align-items:center;font-weight:650}nav{display:flex;gap:24px;align-items:center;font-size:14px}main{padding:30px 4%}.page-heading>span{font-size:11px;letter-spacing:2px;color:#6b9580}h1{font-size:32px;font-weight:550;margin:12px 0}p{font-size:15px;line-height:1.85}.map-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:24px;margin-top:25px}aside{background:white;border:1px solid #d2e1d6;border-radius:10px;padding:22px;min-width:0;align-self:start}label{display:block;font-size:14px;margin:16px 0 8px}label:first-child{margin-top:0}input[type=search],select{display:block;min-width:0;width:100%;padding:11px;border:1px solid #a2beb0;border-radius:6px;background:#f8fbf8;color:#264f45;font:inherit;font-size:14px;min-height:44px}input[type=range]{width:100%;accent-color:#238870;min-height:32px}output{color:#127562;display:block;font-size:14px;margin-top:4px}button{font:inherit;font-size:14px;padding:11px 13px;border:1px solid #8bb3a3;border-radius:6px;background:#e2eee5;color:#275d4b;min-height:44px;cursor:pointer}.buttons{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0}.buttons button{flex:1;min-width:0}.secondary{width:100%;background:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #4c9b82;outline-offset:3px}.map-panel{min-width:0}#map{height:570px;min-height:350px;border:1px solid #c3d6cc;border-radius:10px;background:#deebe5}.map-status{padding:10px 4px;color:#648476;font-size:13px}.map-status.error{color:#98552b}.detail{background:white;border:1px solid #d2e1d6;border-radius:9px;padding:22px;margin-top:12px}.detail h2{font-size:22px;font-weight:550;margin-top:0}.detail dl{display:grid;grid-template-columns:110px 1fr;font-size:14px;gap:12px}.detail dt{color:#728a7d}.detail dd{margin:0;overflow-wrap:anywhere}.reactor-list{max-height:400px;overflow:auto;border-top:1px solid #d8e5dc}.reactor-list button{display:block;width:100%;text-align:left;padding:12px 0;border:0;border-bottom:1px solid #dfebe3;border-radius:0;background:transparent;font-size:14px}.reactor-list small{display:block;color:#718d7b;margin-top:6px;font-size:12px;line-height:1.6}.note{font-size:12px;color:#718b7a}.important{font-size:14px;line-height:1.85;color:#855c35;border-left:3px solid #ba9668;padding-left:12px}details{font-size:14px;line-height:1.8;margin-top:20px}summary{cursor:pointer;color:#22745c}.legend{display:flex;align-items:center;gap:14px;padding:15px 0;font-size:13px}.legend i{display:block;width:150px;height:13px;background:linear-gradient(90deg,#19a5b6,#e1ce42,#e24b39)}.map-guidance{font-size:14px;color:#668675}.leaflet-popup-content{font:14px/1.7 system-ui;color:#244c44}.leaflet-control-attribution{font-size:10px!important}.leaflet-tooltip{font:12px system-ui}.map-brand{background:#fffffff0;padding:5px 8px;font-size:12px;color:#375c50;border-radius:4px;pointer-events:none}footer{display:flex;gap:18px;flex-wrap:wrap;padding:24px 4%;border-top:1px solid #d8e5db;font-size:12px;color:#7a8e7f}#moreReactors{width:100%;margin-top:12px}[hidden]{display:none!important}@media(max-width:850px){.map-layout{grid-template-columns:1fr}.map-panel{grid-row:1}#map{height:460px}aside{padding:20px}.reactor-list{max-height:300px}h1{font-size:28px}header{padding:14px 4%}nav{gap:14px;font-size:12px}}@media(max-width:480px){header{flex-wrap:wrap;gap:13px}nav{width:100%;justify-content:space-between;font-size:13px}main{padding-top:25px}h1{font-size:25px;line-height:1.5}.page-heading p{font-size:15px}#map{height:390px;min-height:0}.map-layout{gap:16px;margin-top:20px}.detail{padding:18px}.detail dl{grid-template-columns:90px 1fr;font-size:14px}.legend{gap:10px;font-size:12px}.legend i{width:100px}aside p{font-size:14px}.important{font-size:14px}footer{font-size:11px;line-height:1.8;gap:12px}}

.reactor-list button[aria-pressed="true"]{background:#e1eee9;border-left:4px solid #20765f;padding-left:10px;color:#174e45;font-weight:650}.nearby-units{display:flex;flex-wrap:wrap;gap:8px}.nearby-units p{width:100%;margin-bottom:2px}.nearby-units button{flex:1 1 180px}.check-row{display:flex;align-items:center;gap:10px;min-height:44px}.check-row input{width:20px;height:20px;accent-color:#238870}#playStatus{font-size:14px;line-height:1.7}

/* Fit maps to available viewport; keep controls and full-window exit reachable. */
#map{height:clamp(440px,calc(100dvh - 220px),900px)}.map-expand-button{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:1200;min-height:40px;background:#fffffff2;border:1px solid #89a99b;box-shadow:0 2px 9px #203c3a22;color:#285b4b;font-size:13px;white-space:nowrap;padding:8px 12px}.map-expanded{overflow:hidden}.map-expanded #map{position:fixed!important;inset:0!important;z-index:5000!important;width:100vw!important;height:100dvh!important;min-height:0!important;max-height:none!important;border:0;border-radius:0}.map-expanded .map-expand-button{top:max(12px,env(safe-area-inset-top))}@media(max-width:850px){#map{height:65dvh;min-height:360px}}@media(max-height:500px){#map{height:75dvh;min-height:260px}}
