html,body{margin:0}*{box-sizing:border-box}.portal{--paper:#f6f4ef;--ink:#1b1d20;--muted:#5c6168;--line:#e2ded5;--accent:#b4530f;--good:#2b7a4b;--bad:#b3261e;background:var(--paper);min-height:100vh;color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.45}.portal a{color:var(--accent)}.portal button,.portal input,.portal textarea{font:inherit}.portal .portal-brand{height:5px}.portal .wrap{flex-direction:column;gap:16px;max-width:720px;margin:0 auto;padding:20px 16px 48px;display:flex}.portal .card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:16px}.portal .notice-good{background:#f1fbf4;border-color:#9fd8b4}.portal .row{justify-content:space-between;gap:12px;display:flex}.portal .muted{color:var(--muted)}.portal .num{font-variant-numeric:tabular-nums;white-space:nowrap}.portal .btn{border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;min-height:48px;padding:0 18px;font-weight:700;text-decoration:none;display:inline-flex}.portal .btn.secondary{color:var(--ink);background:0 0}.portal .btn:disabled{opacity:.5;cursor:not-allowed}.portal .pill{text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;background:#ecebe6;border-radius:6px;padding:3px 8px;font-size:12px;font-weight:700;display:inline-block}.portal .pill.good{color:var(--good);background:#dcf2e4}.portal .pill.bad{color:var(--bad);background:#fbe1df}.portal label{color:var(--muted);flex-direction:column;gap:6px;font-size:13px;display:flex}.portal input[type=text],.portal input[type=email],.portal textarea{min-height:44px;color:var(--ink);background:#fff;border:1px solid #c9c4ba;border-radius:8px;padding:8px 10px}.portal table{border-collapse:collapse;width:100%}.portal td,.portal th{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 4px}.portal th{color:var(--muted);text-transform:uppercase;letter-spacing:.6px;font-size:12px;font-weight:600}.portal .r{text-align:right}.portal .error{color:var(--bad);font-size:14px}.portal :focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:900px),(pointer:coarse){.portal input,.portal textarea,.portal select{font-size:16px}}
