:root{--blue:#2874bd;--ink:#203348;--bg:#f2f5f9;--line:#dbe3ec;--ok:#1b8a4b;--alert:#c0392b}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
.wrap{max-width:720px;margin:0 auto;padding:0 16px}
.topbar{background:#1d2732;padding:8px 0}
.topbar img{display:block;height:44px;width:auto;border-radius:3px}
main.wrap{padding-top:20px;padding-bottom:12px}
.card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px;margin-bottom:16px;box-shadow:0 1px 3px #1223310d}
h1{margin:0 0 6px;font-size:24px}h2{margin:0;font-size:20px;word-break:break-all}h3{margin:22px 0 10px;font-size:15px}
.muted{color:#5d6f82;margin:0 0 14px}
label{display:block;font-weight:600;margin-bottom:6px}
.row{display:flex;gap:8px}
input[type=text]{flex:1;min-width:0;padding:12px;border:1px solid #b9c6d4;border-radius:6px;font-size:16px}
input[type=text]:focus,button:focus-visible,a:focus-visible{outline:3px solid #65b5ff;outline-offset:2px}
button{padding:12px 22px;border:0;border-radius:6px;background:var(--blue);color:#fff;font-size:16px;font-weight:600;cursor:pointer}
button:hover{background:#1f609d}
.head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.eyebrow{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#5d6f82}
.badge{padding:5px 12px;border-radius:999px;font-size:13px;font-weight:600;color:#fff;background:var(--blue)}
.badge.ok{background:var(--ok)}.badge.alert{background:var(--alert)}
.meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0 4px}
.meta dt{font-size:12px;color:#5d6f82}.meta dd{margin:0;font-weight:600}
.notice{padding:12px 14px;border-radius:6px;margin:14px 0;background:#e8f1fb}
.notice.alert{background:#fdecea;color:#8e2b20}
.progress{list-style:none;display:flex;margin:22px 0 4px;padding:0}
.progress li{flex:1;text-align:center;position:relative;font-size:11px;color:#7a8a9b}
.progress li::before{content:"";position:absolute;top:7px;left:-50%;width:100%;height:3px;background:var(--line)}
.progress li:first-child::before{display:none}
.progress .dot{position:relative;z-index:1;display:block;width:17px;height:17px;margin:0 auto 6px;border-radius:50%;background:#fff;border:3px solid var(--line)}
.progress li.done::before,.progress li.current::before{background:var(--blue)}
.progress li.done .dot{background:var(--blue);border-color:var(--blue)}
.progress li.current .dot{border-color:var(--blue)}
.progress li.done,.progress li.current{color:var(--ink);font-weight:600}
.timeline{list-style:none;margin:0;padding:0 0 0 18px;border-left:2px solid var(--line)}
.timeline li{position:relative;padding:0 0 14px 14px}
.timeline li::before{content:"";position:absolute;left:-25px;top:6px;width:10px;height:10px;border-radius:50%;background:var(--blue)}
.timeline time{display:block;font-size:13px;color:#5d6f82}
.foot{text-align:center;color:#5d6f82;font-size:13px;padding-bottom:28px}
@media(max-width:480px){.meta{grid-template-columns:1fr}.progress li{font-size:10px}.row{flex-direction:column}}
