:root{--ink:#0b1f3b;--muted:#5b6b80;--line:#dde3ea;--bg:#f5f7fa;--accent:#0078d4;--ok:#1a7f4b;--warn:#b25b00}
*{box-sizing:border-box}body{margin:0;font:16px/1.55 system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--bg)}
header{display:flex;align-items:center;gap:16px;padding:14px max(16px,4vw);background:#fff;border-bottom:1px solid var(--line)}
header b{font-size:18px}header .sp{flex:1}a{color:var(--accent)}
main{max-width:980px;margin:0 auto;padding:28px max(16px,4vw) 60px}
h1{font-size:28px;margin:0 0 6px}h2{font-size:20px;margin:34px 0 12px}.muted{color:var(--muted)}
.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin:12px 0}
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:13px;font-weight:600;background:#eef2f6}
.pending{background:#fff3e0;color:var(--warn)}.confirmed{background:#e6f4ec;color:var(--ok)}
button,.btn{font:inherit;font-weight:600;border:0;border-radius:10px;padding:10px 16px;background:var(--accent);color:#fff;cursor:pointer;text-decoration:none;display:inline-block}
button.line{background:#fff;color:var(--ink);border:1px solid var(--line)}form.inline{display:inline}
label{display:grid;gap:6px;font-weight:600;font-size:14px;margin:10px 0}
input,textarea{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:10px;width:100%;background:#fff}
textarea{min-height:90px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:4px 16px}
.check{display:flex;gap:10px;align-items:center;font-weight:400}.check input{width:auto}
.note{padding:12px 16px;border-radius:12px;background:#e8f2fc;margin:14px 0}.err{background:#fdecea}
.promo{background:linear-gradient(120deg,#0b1f3b,#0078d4);color:#fff;border:0}.promo a{color:#fff}