:root{
  --om-red:#BC0D0D; --om-black:#111; --om-grey:#f5f5f7; --om-darkgrey:#5b5b5b; --ok:#1f8b24; --warn:#c77d00; --err:#b00020;
  --radius:16px;
}
*{box-sizing:border-box}
.wrap{max-width:980px;margin:24px auto;padding:16px}
.hero{background:#fff;border-radius:var(--radius);padding:20px 24px;border:1px solid #eee;display:flex;gap:16px;align-items:center}
.hero .dot{height:40px;width:40px;border-radius:50%;background:var(--om-red);box-shadow:0 4px 12px rgba(188,13,13,.35)}
.hero h1{margin:0;font-size:1.6rem;line-height:1.25}
.hero p{margin:.25rem 0 0;color:#555}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0 10px}
.step{background:#fff;border:1px solid #eee;border-radius:12px;padding:10px 12px;font-size:.95rem;display:flex;align-items:center;gap:8px}
.step .idx{background:var(--om-red);color:#fff;min-width:26px;height:26px;display:grid;place-items:center;border-radius:8px;font-weight:700}
.step.active{border-color:var(--om-red);box-shadow:0 0 0 2px rgba(188,13,13,.1)}
.card{background:#fff;border:1px solid #eee;border-radius:var(--radius);padding:18px}
.card+.card{margin-top:14px}
.card h2{margin:0 0 12px;font-size:1.15rem}
.grid{display:grid;gap:12px}
.g-2{grid-template-columns:1fr 1fr}
.g-3{grid-template-columns:1fr 1fr 1fr}
@media (max-width:780px){.g-2,.g-3{grid-template-columns:1fr}}
label{font-size:.92rem;color:#333;margin-bottom:6px;display:block}
input,select{width:100%;padding:10px 12px;border:1px solid #d9d9df;border-radius:10px;background:#fff;font-size:1rem;outline:none}
input:focus,select:focus{border-color:var(--om-red);box-shadow:0 0 0 3px rgba(188,13,13,.1)}
.inline-help{font-size:.82rem;color:#666;margin-top:6px}
.articles-head{display:grid;grid-template-columns:2fr 1fr 1fr 40px;gap:8px;padding:10px 12px;border-radius:12px;background:#fafafa;border:1px solid #eee;font-weight:600}
.row{display:grid;grid-template-columns:2fr 1fr 1fr 40px;gap:8px;margin-top:8px}
.row .del{border:1px dashed #ddd;border-radius:10px;display:grid;place-items:center;cursor:pointer}
.row .del:hover{border-color:var(--err);background:#fff2f2}
.btns{display:flex;gap:8px;flex-wrap:wrap}
.btn{appearance:none;border:none;border-radius:12px;padding:10px 14px;font-weight:700;cursor:pointer}
.btn-primary{background:var(--om-red);color:#fff}
.btn-soft{background:#fff;border:1px solid #ddd}
.btn-ghost{background:transparent;border:1px dashed #ddd}
.btn:disabled{opacity:.5;cursor:not-allowed}
.notice{background:#fff;border-left:4px solid var(--warn);padding:12px 14px;border-radius:10px;border:1px solid #eee;color:#333}
.error{color:var(--err);font-size:.85rem;margin-top:6px}
.invalid{border-color:var(--err)!important;box-shadow:0 0 0 3px rgba(176,0,32,.12)!important}
.footer{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(245,245,247,.0),rgba(245,245,247,1) 30%);padding-top:10px;margin-top:16px}
.footer .bar{background:#fff;border:1px solid #eee;border-radius:14px;display:flex;gap:10px;align-items:center;justify-content:space-between;padding:12px 14px}
.footer .total{font-weight:700;color:#333}
.terms{font-size:.85rem;color:#555}
.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.check{display:flex;gap:8px;align-items:flex-start}