:root { --el-color-primary:#2864d7; --el-color-primary-light-3:#668fe3; --el-color-primary-light-5:#96b2ed; --el-color-primary-light-7:#c3d3f5; --el-color-primary-light-8:#dce6fa; --el-color-primary-light-9:#eff4fd; --el-color-primary-dark-2:#1e4eac; --el-color-success:#278068; --el-color-danger:#c84343; --el-border-color:#d9e0e8; --el-border-color-light:#e6eaf0; --el-border-radius-base:6px; --el-text-color-primary:#243247; --el-text-color-regular:#4c5d72; --el-text-color-secondary:#68778b; --el-font-family:"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; }
* { box-sizing:border-box; }
body { margin:0; background:#f3f5f8; color:#243247; font:14px/1.5 "Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; }
button,input { font:inherit; }
button,a,input { -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
button:focus-visible,a:focus-visible { outline:2px solid #2864d7; outline-offset:3px; }
[v-cloak] { display:none; }
.portal-boot { min-height:100vh; display:grid; place-items:center; color:#68778b; }
.portal-gate { min-height:100vh; padding:48px 24px 70px; display:flex; flex-direction:column; justify-content:center; align-items:center; background:#f0f3f7; }
.portal-gate-card { width:min(900px,100%); min-height:530px; display:grid; grid-template-columns:1fr 1fr; border:1px solid #dce2ea; border-radius:8px; background:#fff; overflow:hidden; }
.portal-intro { padding:38px; display:flex; flex-direction:column; justify-content:space-between; background:#1c2e46; color:#fff; }
.portal-brand { display:flex; align-items:center; gap:11px; }
.portal-mark { display:flex; align-items:center; justify-content:center; flex-shrink:0; height:38px; width:38px; background:#2864d7; color:#fff; border-radius:6px; font-weight:650; font-size:19px; }
.portal-brand b { display:block; font-size:15px; letter-spacing:1px; color:#243247; }
.portal-brand small { display:block; font-size:11px; color:#68778b; margin-top:2px; }
.portal-brand.light .portal-mark,.portal-sidebar .portal-mark { background:#344e70; }
.portal-brand.light b,.portal-sidebar .portal-brand b { color:#fff; }
.portal-brand.light small,.portal-sidebar .portal-brand small { color:#b0bfd2; }
.portal-kicker { display:block; color:#64748b; font-size:11px; letter-spacing:1.5px; margin-bottom:9px; }
.portal-intro-copy { margin:44px 0 48px; }
.portal-intro-copy .portal-kicker { color:#acc5eb; }
.portal-intro-copy h1 { font-size:32px; font-weight:600; line-height:1.55; letter-spacing:2px; margin:14px 0 20px; }
.portal-intro-copy p { font-size:13px; color:#b8c7db; line-height:2; margin:0; }
.portal-intro-foot { display:flex; align-items:center; gap:10px; font-size:11px; color:#b8c7db; }
.portal-intro-foot span { width:3px; height:3px; background:#8499b4; border-radius:50%; }
.portal-auth { padding:52px 42px 32px; display:flex; flex-direction:column; justify-content:center; }
.portal-auth-heading { margin-bottom:28px; }
.portal-auth-heading .portal-kicker { color:#2864d7; }
.portal-auth-heading h2 { margin:0 0 9px; font-size:26px; font-weight:650; }
.portal-auth-heading p { color:#68778b; font-size:13px; margin:0; }
.portal-auth-form label,.portal-register-form label { display:block; font-size:13px; color:#45556a; margin:0 0 8px; font-weight:500; }
.portal-auth-form input,.portal-register-form input { display:block; width:100%; min-width:0; height:45px; border:1px solid #d5dde8; border-radius:5px; padding:0 13px; margin-bottom:20px; color:#243247; background:#fff; outline:none; transition:border-color .15s; }
.portal-auth-form input::placeholder,.portal-register-form input::placeholder { color:#8b98aa; font-size:12px; }
.portal-auth-form input:focus,.portal-register-form input:focus { border-color:#2864d7; outline:2px solid #dce6fa; }
.portal-submit { width:100%; display:block; min-height:45px; border:1px solid #2864d7; background:#2864d7; color:#fff; border-radius:5px; font-weight:550; transition:background .15s; margin-top:24px; }
.portal-submit:hover { background:#1e4eac; }
.portal-submit:disabled { background:#98b1d9; border-color:#98b1d9; cursor:not-allowed; }
.portal-auth-note { text-align:center; color:#68778b; font-size:12px; margin:23px 0 0; }
.portal-gate-footer { color:#68778b; font-size:11px; margin:28px 0 -28px; letter-spacing:1px; }
.portal-error { background:#fff4f3; border:1px solid #f0cfc9; color:#b33f36; padding:10px 12px; border-radius:5px; font-size:12px; line-height:1.7; margin:0 0 12px; }
.portal-app { min-height:100vh; display:flex; }
.portal-sidebar { width:222px; flex-shrink:0; background:#1c2e46; color:#b8c7db; display:flex; flex-direction:column; padding:28px 16px 20px; position:sticky; top:0; height:100vh; }
.portal-sidebar .portal-brand { padding:0 10px 36px; }
.portal-menu-label { display:block; font-size:10px; letter-spacing:1.5px; color:#95a8c0; padding:0 16px 12px; }
.portal-sidebar nav { display:flex; flex-direction:column; gap:7px; }
.portal-sidebar nav button { position:relative; display:flex; align-items:center; gap:13px; width:100%; padding:13px 16px; text-align:left; border:0; border-radius:5px; background:transparent; color:#c2cfe0; font-size:13px; }
.portal-sidebar nav button:hover { background:#293f5c; color:#fff; }
.portal-sidebar nav button.active { background:#2864d7; color:#fff; font-weight:600; }
.portal-nav-mark { width:14px; height:14px; border:1.4px solid currentColor; border-radius:2px; opacity:.85; position:relative; }
.portal-nav-mark.overview:after { content:""; width:1px; height:100%; background:currentColor; position:absolute; left:4px; top:0; }
.portal-nav-mark.team { border-radius:50%; }
.portal-nav-mark.finance { height:16px; }
.portal-nav-mark.account { border-radius:50%; }
.portal-nav-dot { position:absolute; right:14px; height:4px; width:4px; background:#fff; border-radius:50%; }
.portal-sidebar-bottom { margin:auto 4px 0; padding:18px 14px; background:#263b56; border:1px solid #354b67; border-radius:6px; }
.portal-sidebar-bottom > span { color:#becbdd; font-size:12px; }
.portal-sidebar-bottom > b { display:block; color:#fff; font-size:30px; font-weight:600; margin-top:5px; }
.portal-sidebar-bottom small { font-size:13px; font-weight:400; padding-left:3px; }
.portal-sidebar-bottom p { font-size:11px; color:#afc1d8; margin:3px 0 0; }
.portal-main { flex:1; min-width:0; }
.portal-topbar { height:66px; background:#fff; border-bottom:1px solid #e1e6ed; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 32px; }
.portal-crumb { color:#68778b; font-size:12px; display:flex; align-items:center; gap:12px; }
.portal-crumb b { color:#243247; font-weight:500; }
.portal-crumb > span { color:#a4afbe; }
.portal-user { display:flex; align-items:center; gap:10px; font-size:12px; }
.portal-user b { font-weight:550; color:#45556a; }
.portal-avatar { display:inline-flex; align-items:center; justify-content:center; background:#edf2fa; border:1px solid #dbe4f3; color:#2a5ba9; height:30px; width:30px; border-radius:5px; font-size:12px; font-weight:600; flex-shrink:0; }
.portal-avatar.large { width:46px; height:46px; font-size:18px; }
.portal-user button { border:0; border-left:1px solid #dce2ea; background:transparent; font-size:12px; color:#68778b; padding:1px 0 1px 15px; margin-left:8px; }
.portal-content { padding:28px 32px 22px; max-width:1580px; margin:0 auto; }
.portal-page-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 0 24px; }
.portal-page-head .portal-kicker { font-size:10px; margin-bottom:7px; }
.portal-page-head h1 { font-size:26px; font-weight:650; margin:0 0 9px; color:#243247; }
.portal-page-head p { font-size:13px; color:#68778b; margin:0; }
.portal-tabs { display:flex; gap:28px; border-bottom:1px solid #d5dde8; margin-bottom:24px; overflow-x:auto; }
.portal-tabs button { position:relative; padding:0 3px 14px; background:transparent; border:0; color:#5d6d82; font-size:13px; flex-shrink:0; }
.portal-tabs button.active { color:#245ac1; font-weight:600; }
.portal-tabs button.active:after { content:""; height:2px; background:#2864d7; width:100%; left:0; bottom:0; position:absolute; }
.portal-alert { margin-bottom:20px; }
.portal-tab-body { min-height:180px; }
.portal-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:22px; }
.portal-metric { min-width:0; background:#fff; border:1px solid #dfe5ed; border-radius:6px; padding:21px; }
.portal-metric > span { display:flex; justify-content:space-between; gap:6px; font-size:12px; color:#5d6d82; }
.portal-metric strong { display:flex; gap:6px; align-items:baseline; color:#243247; font-size:30px; font-weight:600; line-height:1.2; margin-top:17px; font-variant-numeric:tabular-nums; letter-spacing:-.5px; overflow-wrap:anywhere; }
.portal-metric small { color:#68778b; font-size:11px; font-weight:400; letter-spacing:0; }
.portal-metric p { color:#68778b; margin:13px 0 0; font-size:12px; font-variant-numeric:tabular-nums; }
.portal-metric.accent { background:#edf3fe; border-color:#cfdcf5; }
.portal-metric.accent strong { color:#245ac1; }
.portal-metrics.compact .portal-metric { padding:18px 16px; }
.portal-metrics.compact strong { font-size:26px; }
.portal-dashboard-grid { display:grid; grid-template-columns:1.55fr 1fr; gap:20px; }
.portal-panel { background:#fff; border:1px solid #dfe5ed; border-radius:6px; padding:24px; min-width:0; }
.portal-panel-head { display:flex; justify-content:space-between; align-items:center; gap:14px; margin-bottom:23px; }
.portal-panel h2 { font-size:16px; font-weight:600; margin:0 0 6px; color:#243247; }
.portal-panel-head p { margin:0; color:#68778b; font-size:12px; line-height:1.8; }
.portal-soft-tag { background:#f5f7fa; border:1px solid #e2e7ee; border-radius:4px; color:#68778b; font-size:11px; padding:4px 8px; white-space:nowrap; }
.portal-chart { height:210px; display:flex; gap:18px; padding:8px 8px 0; }
.portal-chart-column { flex:1; min-width:0; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; gap:9px; color:#68778b; font-size:11px; }
.portal-chart-track { width:100%; max-width:35px; height:150px; display:flex; align-items:flex-end; border-bottom:1px solid #dce2ea; }
.portal-chart-track i { display:block; width:100%; background:#487bdd; border-radius:3px 3px 0 0; min-height:2px; }
.portal-chart-track i.empty { background:#d2dff6; }
.portal-chart-value { color:#45556a; font-size:11px; }
.portal-quick-actions button { display:block; border:0; border-bottom:1px solid #e6eaf0; background:transparent; text-align:left; width:100%; padding:17px 30px 17px 0; position:relative; }
.portal-quick-actions button:first-child { padding-top:3px; }
.portal-quick-actions button:last-child { border:0; padding-bottom:0; }
.portal-quick-actions b { display:block; font-size:13px; color:#344762; font-weight:600; }
.portal-quick-actions span { display:block; color:#68778b; font-size:12px; margin-top:7px; }
.portal-quick-actions i { font-size:11px; position:absolute; right:0; top:26px; font-style:normal; color:#2864d7; }
.portal-quick-actions button:first-child i { top:13px; }
.portal-quick-actions button:hover b { color:#2864d7; }
.portal-filter-row { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:15px; background:#f7f8fa; border:1px solid #e4e9f0; border-radius:5px; margin-bottom:20px; }
.portal-filter-row .el-date-editor { width:295px; max-width:100%; flex-grow:0; }
.portal-filter-hint { font-size:12px; color:#68778b; margin-left:auto; }
.portal-filter-hint b { color:#2864d7; margin-left:7px; font-weight:600; }
.portal-panel .el-table { --el-table-header-bg-color:#f5f7fa; --el-table-header-text-color:#52647c; --el-table-border-color:#e6eaf0; --el-table-row-hover-bg-color:#f7f9fc; font-size:12px; border:1px solid #e2e7ee; border-radius:4px; }
.portal-panel .el-table th.el-table__cell { font-weight:550; padding:13px 0; }
.portal-panel .el-table td.el-table__cell { padding:14px 0; color:#45556a; }
.portal-panel .el-table .cell { padding:0 13px; }
.portal-panel .el-table__empty-block { min-height:180px; }
.portal-panel .el-pagination { margin-top:20px; justify-content:flex-end; flex-wrap:wrap; }
.portal-table-actions { display:flex; gap:4px 11px; align-items:center; flex-wrap:wrap; }
.portal-table-actions .el-button+.el-button { margin:0; }
.portal-table-actions .el-button { font-size:12px; }
.portal-rate { color:#245ac1; font-variant-numeric:tabular-nums; }
.portal-muted { color:#68778b; font-size:12px; }
.portal-agent-identity { display:inline-flex; flex-direction:column; gap:4px; vertical-align:middle; max-width:calc(100% - 26px); }
.portal-agent-identity strong { color:#30425d; font-weight:600; font-size:13px; }
.portal-agent-identity span { color:#7e8b9e; font-size:12px; line-height:1.5; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.portal-ledger-summary { display:flex; gap:22px; flex-wrap:wrap; align-items:center; font-size:12px; color:#68778b; padding:0 2px 18px; }
.portal-ledger-summary b { color:#245ac1; font-weight:600; margin-left:8px; font-size:18px; }
.portal-report-period { display:flex; justify-content:space-between; gap:12px; color:#45556a; margin:0 0 18px; font-size:12px; }
.portal-report-period span { color:#68778b; }
.portal-currency-bar { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; padding:0 0 22px; margin:0 0 20px; border-bottom:1px solid #e6eaf0; }
.portal-currency-bar p { font-size:12px; color:#68778b; margin:0; text-align:right; }
.portal-currency-bar b { color:#45556a; font-weight:550; margin-left:6px; font-variant-numeric:tabular-nums; }
.portal-currency-bar p > span { display:block; margin-top:5px; font-size:11px; }
.portal-callout { padding:13px 16px; background:#f7f8fa; border-left:3px solid #cbd7eb; color:#607188; font-size:12px; line-height:1.9; margin-top:20px; }
.portal-narrow { max-width:820px; }
.portal-status { padding:5px 8px; border-radius:4px; background:#edf7f2; color:#287a5f; font-size:11px; white-space:nowrap; }
.portal-invite-owner { display:flex; align-items:center; gap:14px; margin:28px 0; padding:18px; background:#f7f9fc; border:1px solid #e2e7ee; border-radius:5px; }
.portal-invite-owner div > span { display:block; font-size:12px; color:#68778b; margin-bottom:4px; }
.portal-invite-owner b { font-weight:600; font-size:16px; color:#344762; }
.portal-field-label { display:block; color:#68778b; font-size:12px; margin-bottom:9px; }
.portal-link-row { display:flex; gap:12px; }
.portal-workspace-footer { color:#7c899b; font-size:11px; margin-top:26px; display:flex; justify-content:space-between; }
.portal-dialog { max-width:calc(100vw - 32px); padding:24px; border-radius:8px; }
.portal-dialog .el-dialog__title { font-size:18px; font-weight:600; color:#243247; }
.portal-dialog-note { color:#68778b; font-size:12px; margin:0 0 20px; line-height:1.8; }
.portal-dialog-account { display:flex; justify-content:space-between; background:#f5f7fa; border-radius:5px; padding:14px; margin:0 0 22px; font-size:12px; color:#68778b; }
.portal-dialog-account b { color:#344762; font-weight:600; }
.portal-field-note { color:#68778b; font-size:12px; margin:7px 0 0; line-height:1.8; }
.portal-dialog .el-form-item__label,.portal-narrow .el-form-item__label { color:#45556a; font-size:13px; }
.portal-register-card { width:min(450px,100%); padding:32px 36px; background:#fff; border:1px solid #dce2ea; border-radius:8px; }
.portal-register-card .portal-brand { margin-bottom:30px; }
.portal-register-card h1 { font-size:24px; font-weight:650; color:#243247; margin:0 0 9px; }
.portal-register-caption { font-size:13px; color:#68778b; margin:0 0 22px; line-height:1.8; }
.portal-register-state { padding:22px 18px; background:#f5f7fa; border:1px solid #e2e7ee; border-radius:5px; font-size:13px; color:#607188; line-height:1.9; margin:24px 0 12px; }
.portal-register-state.bad { color:#9b4935; background:#fff7f4; border-color:#f1dcd5; }
.portal-register-state.good { color:#287a5f; background:#f0f8f3; border-color:#d5e9de; }
.portal-invite-tag { display:flex; justify-content:space-between; align-items:center; gap:10px; margin:0 0 22px; padding:11px 13px; background:#eff4fd; border:1px solid #dce6fa; border-radius:5px; color:#52647c; font-size:12px; }
.portal-invite-tag b { color:#245ac1; }
.portal-register-form input { height:43px; margin-bottom:16px; }
.portal-register-form .portal-submit { margin-top:22px; }
.portal-register-card [hidden] { display:none !important; }
@media (max-width:1200px) {
  .portal-sidebar { width:194px; }
  .portal-content { padding:25px 22px 20px; }
  .portal-topbar { padding:0 24px; }
  .portal-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .portal-dashboard-grid { grid-template-columns:1fr; }
  .portal-panel-head { flex-wrap:wrap; }
}
@media (max-width:820px) {
  .portal-app { display:block; }
  .portal-sidebar { width:100%; height:auto; position:static; padding:16px 18px 12px; }
  .portal-sidebar .portal-brand { padding:0 3px 17px; }
  .portal-sidebar nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; }
  .portal-sidebar nav button { justify-content:center; padding:11px 5px; gap:7px; font-size:12px; }
  .portal-menu-label,.portal-sidebar-bottom,.portal-nav-dot { display:none; }
  .portal-topbar { height:55px; padding:0 21px; }
  .portal-content { padding:22px 18px; }
  .portal-gate-card { max-width:430px; grid-template-columns:1fr; min-height:0; }
  .portal-intro { padding:22px 28px; }
  .portal-intro-copy,.portal-intro-foot { display:none; }
  .portal-auth { padding:32px 28px; }
  .portal-gate { padding:30px 18px 55px; }
}
@media (max-width:540px) {
  .portal-sidebar nav button { font-size:12px; gap:0; }
  .portal-nav-mark { display:none; }
  .portal-topbar { padding:0 17px; gap:9px; }
  .portal-crumb { font-size:11px; gap:8px; }
  .portal-crumb b { max-width:72px; white-space:nowrap; }
  .portal-user { gap:6px; }
  .portal-user b { max-width:80px; overflow:hidden; text-overflow:ellipsis; }
  .portal-user button { margin-left:3px; padding-left:9px; }
  .portal-content { padding:22px 14px 18px; }
  .portal-page-head { gap:12px; }
  .portal-page-head h1 { font-size:23px; }
  .portal-page-head p { max-width:230px; font-size:12px; line-height:1.8; }
  .portal-page-head > .el-button { font-size:11px; padding:8px 10px; }
  .portal-panel { padding:18px 14px; }
  .portal-metrics { gap:10px; }
  .portal-metric { padding:16px 12px; }
  .portal-metric strong { font-size:25px; margin-top:13px; }
  .portal-metric p,.portal-metric > span { font-size:11px; }
  .portal-metrics.compact .portal-metric { padding:15px 12px; }
  .portal-metrics.compact strong { font-size:22px; }
  .portal-chart { gap:12px; padding-left:0; padding-right:0; }
  .portal-filter-row { gap:10px; padding:12px; }
  .portal-filter-row > .el-input,.portal-filter-row > .el-select,.portal-filter-row > .el-date-editor { width:100% !important; max-width:100%; }
  .portal-filter-row > .el-date-editor { min-width:0; }
  .portal-filter-hint { margin:0; }
  .portal-report-period,.portal-currency-bar { flex-direction:column; align-items:flex-start; }
  .portal-currency-bar p { text-align:left; }
  .portal-link-row { flex-direction:column; }
  .portal-register-card { padding:27px 24px; }
  .portal-workspace-footer > span { display:none; }
}
@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto !important; transition:none !important; } }

.portal-register-page .portal-gate {
  min-height:100vh;
  min-height:100svh;
  padding:34px 24px 58px;
  background:
    linear-gradient(105deg,rgba(15,33,51,.78),rgba(17,38,57,.48)),
    url("/assets/wjdr-winter-scene.png") center 57% / cover,
    #152a40;
}
.portal-register-page .portal-register-card {
  width:min(970px,100%);
  max-width:none;
  min-height:590px;
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(390px,.97fr);
  padding:0;
  overflow:hidden;
  border:1px solid rgba(234,240,245,.75);
  border-radius:8px;
  box-shadow:0 24px 70px rgba(4,15,26,.42);
}
.portal-register-art {
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-width:0;
  overflow:hidden;
  padding:34px 34px 25px;
  color:#fff;
  background:
    linear-gradient(180deg,rgba(18,40,60,.14) 0%,rgba(18,40,60,.18) 38%,rgba(13,30,47,.82) 100%),
    url("/assets/wjdr-winter-scene.png") center 55% / cover,
    #25435d;
}
.portal-register-art .portal-brand { position:relative; z-index:2; }
.portal-register-art .portal-mark { border:1px solid rgba(211,178,111,.82); color:#f3d48f; background:rgba(255,255,255,.1); border-radius:4px; }
.portal-register-art-copy { position:relative; z-index:2; max-width:285px; margin-top:auto; padding:0 0 10px; text-shadow:0 2px 14px rgba(0,0,0,.4); }
.portal-register-art-copy .portal-kicker { color:#e6c982; }
.portal-register-art-copy h2 { margin:0 0 12px; font-size:29px; font-weight:600; line-height:1.55; }
.portal-register-art-copy p { margin:0; color:#e2e8ee; font-size:13px; }
.portal-register-hero { position:absolute; z-index:1; right:-4px; bottom:-20px; width:min(57%,330px); max-height:75%; object-fit:contain; object-position:right bottom; filter:drop-shadow(0 9px 18px rgba(0,0,0,.34)); }
.portal-register-content { min-width:0; display:flex; flex-direction:column; justify-content:center; padding:40px clamp(28px,4vw,48px); background:rgba(255,255,255,.98); }
.portal-register-content .portal-brand { margin-bottom:32px; }
.portal-register-heading .portal-kicker { color:#a77d35; margin-bottom:7px; }
.portal-register-heading h1 { margin:0 0 8px; color:#243247; font-size:27px; font-weight:650; }
.portal-register-caption { margin:0 0 20px; color:#68778b; font-size:13px; line-height:1.8; }
.portal-register-state { margin:6px 0 0; padding:16px; border-color:#dbe4ea; border-radius:4px; color:#566778; background:#f5f7f8; }
.portal-register-state.bad { color:#9b4935; background:#fff7f4; border-color:#f1dcd5; }
.portal-register-state.good { color:#287a5f; background:#f0f8f3; border-color:#d5e9de; }
.portal-invite-tag { background:#faf7ee; border-color:#e8dcc0; border-radius:4px; }
.portal-invite-tag b { color:#98712e; overflow-wrap:anywhere; }
.portal-register-content .portal-register-form input { border-radius:4px; }
.portal-register-content .portal-register-form input:focus { border-color:#56a1c8; outline-color:#d8e9f0; }
.portal-register-content .portal-submit { min-height:47px; border-color:#318fbd; border-radius:4px; background:#318fbd; }
.portal-register-content .portal-submit:hover { background:#26769f; }
.portal-register-content .portal-submit:disabled { background:#9eb8c7; border-color:#9eb8c7; }
.portal-register-page .portal-gate-footer { color:#e1e7ed; text-shadow:0 1px 6px rgba(0,0,0,.55); }
@media (max-width:760px) {
  .portal-register-page .portal-gate { justify-content:flex-start; padding:14px 12px 48px; }
  .portal-register-page .portal-register-card { width:min(480px,100%); min-height:0; grid-template-columns:minmax(0,1fr); }
  .portal-register-art { min-height:182px; padding:16px 20px; }
  .portal-register-art .portal-brand { gap:9px; }
  .portal-register-art .portal-mark { width:34px; height:34px; font-size:17px; }
  .portal-register-art-copy { max-width:225px; padding:0; }
  .portal-register-art-copy .portal-kicker { margin:9px 0 3px; font-size:9px; }
  .portal-register-art-copy h2 { margin:0 0 3px; font-size:20px; line-height:1.45; }
  .portal-register-art-copy p { font-size:11px; }
  .portal-register-hero { right:-8px; bottom:-13px; width:39%; max-height:105%; }
  .portal-register-content { padding:24px 22px 27px; }
  .portal-register-content .portal-brand { display:none; }
  .portal-register-heading h1 { font-size:24px; }
  .portal-register-page .portal-gate-footer { margin:15px 0 0; }
}
@media (max-width:380px) {
  .portal-register-art { min-height:168px; }
  .portal-register-art-copy { max-width:205px; }
  .portal-register-hero { width:36%; }
  .portal-register-content { padding:22px 17px 24px; }
}
