*{box-sizing:border-box}body{margin:0;font-family:system-ui,Segoe UI,Arial;background:#f4f1ea;color:#222}
header{background:#2f3d2a;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:14px 28px}
header a{color:#fff;text-decoration:none;margin-left:18px}.logo{font-size:22px;font-weight:700;margin:0!important}
main{max-width:1150px;margin:0 auto;padding:20px}.hero{background:linear-gradient(120deg,#3e5233,#8a6d3b);color:#fff;border-radius:12px;padding:28px}
.hero h1{margin:0 0 6px}.controls{margin:16px 0;display:flex;gap:10px}input,select{padding:10px;border-radius:8px;border:1px solid #bbb;font-size:15px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.card{background:#fff;border-radius:10px;padding:12px;text-decoration:none;color:#222;border:1px solid #ddd;display:block}
.card.live{border:2px solid #4b6b3a}.card small{display:block;color:#777}.badge{font-size:11px;padding:2px 6px;border-radius:6px;background:#4b6b3a;color:#fff}
.badge.soon{background:#aaa}.layout{display:grid;grid-template-columns:1fr 260px;gap:20px}
table{width:100%;border-collapse:collapse;background:#fff;margin:8px 0 18px}td,th{padding:8px;border-bottom:1px solid #eee;text-align:left;font-size:14px}th{background:#e8e3d6}
.ad{background:#fff8e1;border:2px dashed #c9a227;border-radius:10px;padding:14px;margin:10px 0;text-align:center}.ad.banner{margin:10px auto;max-width:1150px}
.tag{display:block;font-size:11px;color:#8a6d00;text-transform:uppercase}.warn{background:#fdecea;border-left:4px solid #c0392b;padding:10px;border-radius:6px}
.sp{background:#fff;border-radius:10px;padding:14px;margin-bottom:12px;border:1px solid #ddd}.src{font-size:12px}footer{text-align:center;padding:24px;color:#666;font-size:13px}

.verified{background:#e8f3e3;border-left:4px solid #3d7a2e;padding:8px 12px;font-size:.9em}
header{flex-wrap:wrap;gap:8px}header nav{display:flex;flex-wrap:wrap;gap:4px 0}header nav a{margin-left:14px;font-size:14px}header nav a.on{text-decoration:underline}
.maph{margin:18px 0 4px}.maptip{font-weight:600;color:#2f3d2a;min-height:1.4em}
.map{background:#fff;border-radius:12px;padding:10px;border:1px solid #ddd}.map svg{width:100%;height:auto;display:block}
.map .st{cursor:pointer;stroke:#fff;stroke-width:1;transition:fill .15s}.map .st.live{fill:#7d9a63}.map .st.soon{fill:#c8c2b4}
.map .st:hover,.map .st:focus{fill:#c9a227;outline:none}.map .st:focus{stroke:#222;stroke-width:2}
.legend{font-size:13px;color:#555}.sw{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:middle;margin:0 4px 0 10px}.sw.live{background:#7d9a63}.sw.soon{background:#c8c2b4}
.tabs{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 16px;border-bottom:2px solid #d8d1c0}.tabs a{padding:8px 12px;border-radius:8px 8px 0 0;text-decoration:none;color:#2f3d2a;background:#e8e3d6}.tabs a.on{background:#2f3d2a;color:#fff}
.ph{background:#eef2f7;border-left:4px solid #5a7aa0;padding:10px;border-radius:6px}.links li{margin:4px 0}.links.small{font-size:13px;columns:2;padding-left:16px}
.meta{color:#555}.leg h3{margin:6px 0}
@media(max-width:760px){.layout{grid-template-columns:1fr}header{padding:10px 14px}header nav a{margin-left:10px}main{padding:12px}.controls{flex-direction:column}}
