*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Noto Sans KR,Apple SD Gothic Neo,Arial,sans-serif;color:#0f172a;background:#0b1020}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:linear-gradient(90deg,#0b1020,#111936)}
.brand{font-weight:800;color:#e2e8f0;font-size:18px;letter-spacing:.2px}.brand .dot{color:#60a5fa}
.status{color:#94a3b8;font-size:14px}
.content{padding:16px 16px 8px 16px;max-width:1200px;margin:0 auto}
.panel{background:#0f172a;border:1px solid #1f2937;border-radius:14px;padding:16px;margin-bottom:12px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.panel h1{margin:0 0 6px 0;color:#e5e7eb;font-size:20px}
.lead{margin:0;color:#cbd5e1}
.choice-row{margin:10px 0;display:flex;gap:8px}
.btn{appearance:none;border:1px solid #2563eb;background:#2563eb;color:white;padding:8px 12px;border-radius:10px;font-weight:600;cursor:pointer}
.btn:hover{filter:brightness(1.08)}.btn:active{transform:translateY(1px)}
.btn.ghost{border-color:#334155;background:transparent;color:#cbd5e1}
.map-wrap{display:grid;grid-template-columns:2fr 1fr;gap:12px;min-height:60vh}
#map{width:100%;height:60vh;border-radius:14px;overflow:hidden;border:1px solid #1f2937}
.list{border:1px solid #1f2937;border-radius:14px;padding:10px;background:#0f172a;overflow:auto}
.card{border:1px solid #243045;border-radius:12px;padding:10px;margin-bottom:8px;background:#0b1328}
.card h3{margin:0 0 6px 0;color:#e2e8f0;font-size:16px}
.card p{margin:2px 0;color:#94a3b8;font-size:13px}
.card .go{display:inline-block;margin-top:8px;font-size:13px;color:#93c5fd;text-decoration:none}
.mini{color:#64748b;font-size:12px}
.foot{padding:12px 16px;text-align:center;color:#64748b}
@media (max-width: 980px){.map-wrap{grid-template-columns:1fr}.list{order:-1}#map{height:50vh}}
