* { box-sizing: border-box; }
body { font-family: "Malgun Gothic","맑은 고딕",sans-serif; background:#f1f5f9; color:#1f2937; margin:0; }
.wrap { max-width: 760px; margin: 0 auto; padding: 28px 18px 80px; }
h1 { font-size: 26px; }
h2 { font-size: 19px; margin-top: 30px; color:#1e3a8a; }
.sub { color:#475569; margin-top:-6px; }
.muted { color:#6b7280; font-size: 12px; }
.banner { padding: 12px 16px; border-radius: 8px; margin: 14px 0; font-size: 14px; }
.banner.warn { background:#fff7ed; border-left:5px solid #f59e0b; }
.banner.ok { background:#ecfdf5; border-left:5px solid #10b981; }
.card { background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:16px 18px; margin:12px 0;
        box-shadow:0 1px 3px rgba(0,0,0,.05); }
.form label { display:block; margin:10px 0; font-size:14px; font-weight:600; }
.form input, .form select { display:block; width:100%; margin-top:4px; padding:9px 10px; font-size:14px;
        border:1px solid #cbd5e1; border-radius:8px; font-weight:400; }
.form .row { display:flex; gap:12px; flex-wrap:wrap; }
.form .row label { flex:1; min-width:120px; }
.form .target input { font-weight:700; color:#b91c1c; }
button { cursor:pointer; border:none; border-radius:8px; padding:11px 18px; font-size:15px; font-weight:700;
        background:#2563eb; color:#fff; margin-top:10px; }
button.ghost { background:#e5e7eb; color:#374151; padding:7px 12px; font-size:13px; margin:0; }
button.del { background:#fee2e2; color:#b91c1c; padding:7px 12px; font-size:13px; margin:0; }
.watch { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.watch.off { opacity:.5; }
.winfo b { font-size:15px; }
.winfo .route { display:block; color:#1e40af; font-size:14px; margin:2px 0; }
.winfo .meta { display:block; color:#64748b; font-size:12.5px; }
.wact { display:flex; gap:8px; flex-shrink:0; }
.wact form { margin:0; }
a { color:#2563eb; }
.top { display:flex; justify-content:space-between; align-items:baseline; flex-wrap:wrap; }
.who { font-size:14px; color:#374151; }
.hero { text-align:center; padding:30px 20px; }
.hero p { color:#374151; line-height:1.7; }
.kakao-btn { display:inline-block; background:#FEE500; color:#191600; font-weight:800; font-size:16px;
        padding:13px 26px; border-radius:10px; text-decoration:none; margin:10px 0; }
.kakao-btn:hover { filter:brightness(0.97); }
