:root{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color:#213d34;background:#edf2ee;font-size:15px}*{box-sizing:border-box}body{margin:0}header{background:#203e33;color:white;padding:20px 3vw;display:flex;justify-content:space-between;align-items:center}header div{display:flex;align-items:center;gap:13px}a{color:inherit;text-decoration:none}nav{display:flex;gap:22px;font-size:14px}.mark{background:#d8e3bc;color:#203e33;border-radius:10px;padding:8px;font-weight:800}.intro{padding:32px 3vw 15px;display:flex;align-items:center;justify-content:space-between;gap:20px}h1{font-size:clamp(24px,2.3vw,36px);letter-spacing:-1px;margin:10px 0}h2{font-size:18px}p{line-height:1.7}small{color:#738779;line-height:1.6}button{font:inherit;color:inherit;border:1px solid #bbcabc;background:white;border-radius:12px;padding:12px 16px;cursor:pointer}button:hover,button.active{background:#dbe9d6;border-color:#568769}button:focus-visible,a:focus-visible{outline:3px solid #c09c52;outline-offset:3px}.layout{display:grid;grid-template-columns:175px minmax(420px,1fr) 340px;gap:20px;margin:15px 3vw 28px}.layout>aside,.scene{min-width:0}.layout>aside{background:#f8faf6;padding:18px;border-radius:18px}#nav{display:grid;gap:8px}#nav button{text-align:left;font-size:14px}.note{margin-top:28px;border-top:1px solid #dce5da;padding-top:22px;font-size:13px}.note i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:9px}.green{background:#498b5b}.amber{background:#ba934a}.gray{background:#a3ada5}.scene-title{display:flex;justify-content:space-between;padding:15px 2px;gap:15px}.map{background:linear-gradient(145deg,#f9fbf5,#dce7d8);border:1px solid #cad9c5;border-radius:23px;padding:25px;min-height:480px;position:relative;overflow:hidden}.lanes{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;color:#8b9a8b;text-transform:uppercase;border-bottom:1px solid #d2decf;padding-bottom:18px}#zones{display:grid;grid-template-columns:repeat(3,1fr);gap:22px 17px;padding:30px 5px}#zones button{min-height:130px;position:relative;background:#fffef5;box-shadow:0 9px 0 #bdcbb7,0 13px 18px #45603513;border:1px solid #b9cab4;text-align:left;padding:20px;transition:transform .15s}#zones button:hover,#zones button.active{transform:translateY(-5px);border-color:#457653;background:#e5f0dd}#zones button.unknown{background:repeating-linear-gradient(135deg,#eef0e9,#eef0e9 10px,#e7ebe2 10px,#e7ebe2 11px);box-shadow:0 9px 0 #c3cbbf}#zones b{display:block;font-size:17px}#zones strong{display:block;font-size:26px;margin-top:9px}#zones small{display:block;font-size:11px;margin-top:6px}.route{font-size:13px;line-height:1.8;border-top:1px solid #cbd9c6;padding-top:20px}.coverage{padding:15px 0}#gaps{display:grid;grid-template-columns:1fr 1fr;gap:10px}#gaps article{background:#f8faf5;border-radius:12px;padding:14px;font-size:12px}#gaps p{margin:6px 0;color:#758370}.detail input{width:100%;font:inherit;padding:12px;border:1px solid #c7d4c2;border-radius:9px;background:white}.detail #areaScope{font-size:13px;color:#7e795c}#count{font-size:12px;padding:14px 0;color:#7d8b7b}#rows{max-height:650px;overflow:auto}#rows article{padding:15px 0;border-top:1px solid #dce4d6}#rows h3{font-size:14px;margin:0 0 8px;overflow-wrap:anywhere}#rows p{font-size:12px;margin:4px 0;color:#677b6c;overflow-wrap:anywhere}#more{width:100%;margin-top:15px}footer{padding:20px 3vw;font-size:12px;color:#778778}#error{margin:0 3vw;color:#9b603c} [hidden]{display:none!important}@media(max-width:1100px){.layout{grid-template-columns:145px 1fr}.detail{grid-column:1/-1}#rows{max-height:420px}}@media(max-width:650px){header{padding:16px}header b{font-size:15px}nav{gap:10px;font-size:11px}.intro{display:block;padding:25px 18px 10px}.intro button{margin:10px 0}.layout{display:block;margin:10px 15px}.layout>aside{margin:12px 0}#nav{display:flex;overflow:auto}#nav button{white-space:nowrap}.note{display:none}.map{padding:15px}#zones{grid-template-columns:repeat(2,1fr);gap:22px 14px}#zones button{padding:15px;min-height:120px}.lanes{gap:10px}.scene-title{display:block}#gaps{grid-template-columns:1fr}.detail{margin-top:20px!important}}

#locations{font-size:12px;color:#7a8069;border-bottom:1px solid #dce5da;margin-bottom:12px}#locations p{line-height:1.55}
