.portal-page{background:var(--paper-3);justify-content:center;align-items:flex-start;min-height:100vh;padding:40px 16px;display:flex}.portal-card{flex-direction:column;gap:14px;width:480px;max-width:100%;padding:28px;display:flex}.portal-brand{letter-spacing:-.01em;align-items:center;gap:9px;font-size:15px;font-weight:600;display:flex}.portal-brand .mark{background:var(--brand);width:18px;height:18px;box-shadow:inset 0 0 0 2px var(--brand-soft), inset 0 0 0 4px var(--brand);border-radius:50%;flex:none;display:inline-block}.portal-tagline{color:var(--ink-mute);margin:-8px 0 0;font-size:12.5px}.portal-title{margin:4px 0 0;font-size:20px}.portal-sub{color:var(--ink-soft);margin:8px 0 0;font-size:13px;font-weight:600}.portal-text{color:var(--ink-soft);margin:0;font-size:14px}.portal-hint{color:var(--ink-mute);font-size:12px}.portal-mono{font-family:var(--mono);overflow-wrap:anywhere;font-size:13px}.portal-form{flex-direction:column;gap:12px;display:flex}.portal-row{gap:10px;display:flex}.portal-plz{flex:none;width:110px}.portal-grow{flex:auto;min-width:0}.portal-actions{flex-wrap:wrap;gap:8px;display:flex}.portal-subdomain{align-items:stretch;display:flex}.portal-subdomain .inp{min-width:0;font-family:var(--mono);border-top-right-radius:0;border-bottom-right-radius:0;flex:auto}.portal-suffix{border:1px solid var(--line-mid);background:var(--paper-3);font-family:var(--mono);color:var(--ink-mute);white-space:nowrap;border-radius:0 var(--r) var(--r) 0;border-left:0;align-items:center;padding:0 10px;font-size:13px;display:flex}.portal-avail{color:var(--ink-mute);min-height:16px;font-size:12px}.portal-avail.ok{color:var(--ok)}.portal-avail.bad{color:var(--danger-ink)}.portal-error{background:var(--danger-wash);color:var(--danger-ink);border:1px solid var(--danger-line);border-radius:var(--r);padding:8px 10px;font-size:13px}.portal-warn{background:var(--hi-wash);border:1px solid var(--hi-line);border-radius:var(--r);padding:8px 10px;font-size:13px}.portal-ok{border:1px solid var(--ok-line);background:var(--ok-wash);border-radius:var(--r);padding:10px 12px;font-size:13.5px}.portal-fakecard{font-family:var(--mono);border:1px dashed var(--line-mid);border-radius:var(--r);padding:10px 12px;font-size:14px}.portal-steps{color:var(--ink-mute);gap:6px;margin:4px 0 0;padding:0;font-size:12px;list-style:none;display:flex}.portal-steps li{border-top:3px solid var(--line);flex:1;align-items:center;gap:6px;padding-top:6px;display:flex}.portal-steps li.done{border-top-color:var(--brand);color:var(--ink-soft)}.portal-steps li.active{border-top-color:var(--brand-deep);color:var(--brand-ink);font-weight:600}.portal-steps .n{font-family:var(--mono)}.portal-langs{justify-content:center;gap:4px;margin-top:4px;display:flex}.lang-btn{border:1px solid var(--line-mid);background:var(--paper);cursor:pointer;border-radius:var(--r-pill);color:var(--ink-mute);padding:3px 8px;font-size:11px}.lang-btn.active{background:var(--brand);color:#fff;border-color:var(--brand)}.portal-spinner{border:3px solid var(--line);border-top-color:var(--brand);border-radius:50%;width:28px;height:28px;margin:8px auto;animation:.9s linear infinite portal-spin}@keyframes portal-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.portal-spinner{animation:none}}@media (width<=520px){.portal-card{padding:20px 16px}.portal-row{flex-direction:column}.portal-plz{width:auto}.portal-steps{font-size:11px}}.portal-card-wide{width:880px}.portal-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.portal-nav{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:2px;display:flex}.portal-nav a{color:var(--ink-soft);border-bottom:2px solid #0000;margin-bottom:-1px;padding:7px 10px;font-size:13px;text-decoration:none}.portal-nav a.active{color:var(--brand-ink);border-bottom-color:var(--brand);font-weight:600}.portal-kv{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;font-size:13.5px;display:grid}.portal-kv dt{color:var(--ink-mute)}.portal-kv dd{margin:0}.portal-section{border:1px solid var(--line);border-radius:var(--r-lg);flex-direction:column;gap:10px;padding:14px;display:flex}.portal-section h2{margin:0;font-size:15px}.portal-table-wrap{overflow-x:auto}.portal-card .tbl tbody tr{cursor:default}.portal-card .tbl tbody tr:hover{background:0 0}.portal-total td{font-weight:600}.portal-check{align-items:flex-start;gap:8px;font-size:13.5px;display:flex}@media (width<=600px){.portal-kv{grid-template-columns:1fr}.portal-row{flex-wrap:wrap}}
