.portal-shell{min-height:calc(100vh - 68px);display:grid;place-items:start center;padding:58px 20px}.portal-card{width:min(720px,100%);background:#fff;border:1px solid var(--line);padding:clamp(25px,5vw,48px)}.portal-card.wide{width:min(1040px,100%)}.portal-card h1{font:600 clamp(29px,4vw,44px)/1.3 'Noto Serif KR',serif;letter-spacing:-.05em;margin:10px 0 12px}.portal-intro{color:var(--sub);font-size:14px;line-height:1.8;margin:24px 0}.portal-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.portal-form .full{grid-column:1/-1}.portal-form input,.portal-form select{height:48px;border:1px solid var(--line);padding:0 13px;font:14px inherit;width:100%}.portal-action{display:block;text-align:center;text-decoration:none;border:0;background:var(--ink);color:#fff;padding:15px 20px;font:700 14px inherit;cursor:pointer;margin-top:12px}.portal-action.gold{background:var(--gold);color:var(--ink)}.portal-message{display:none;padding:14px;margin-bottom:20px;font-size:13px;line-height:1.7}.portal-message.show{display:block;background:#e8eee6;color:var(--green)}.portal-message.error{background:#f8e9e5;color:#923d30}.portal-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:28px 0 20px}.portal-tab{border:0;background:none;padding:12px 15px;font:600 13px inherit;color:var(--sub);cursor:pointer}.portal-tab.active{color:var(--ink);border-bottom:2px solid var(--gold)}.portal-panel{display:none}.portal-panel.active{display:block}.portal-table{width:100%;border-collapse:collapse;font-size:13px}.portal-table th,.portal-table td{text-align:left;padding:13px 10px;border-bottom:1px solid var(--line)}.portal-table th{font-size:11px;color:var(--sub)}.mini-btn{border:1px solid var(--line);background:#fff;padding:7px 10px;font:600 12px inherit;cursor:pointer;margin-right:4px}.mini-btn.approve{background:var(--green);color:#fff;border-color:var(--green)}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.metric{background:var(--paper);padding:18px}.metric small{color:var(--sub)}.metric strong{display:block;font-size:24px;margin-top:7px}.payment-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;margin:22px 0}.payment-summary .sum-row{display:flex;justify-content:space-between;gap:20px;padding:11px 0;color:var(--sub);font-size:14px}.payment-summary .sum-row strong{color:var(--ink)}.payment-summary .sum-row.total{border-top:1px solid var(--line);margin-top:6px;padding-top:18px;font-weight:700;color:var(--ink);font-size:18px}@media(max-width:620px){.portal-form,.metric-row{grid-template-columns:1fr}.portal-form .full{grid-column:auto}.portal-table{display:block;overflow:auto}}
