/* Vast Audio portal experience v3 — readability, action hierarchy, responsive records */
body.portal-experience-v3{--va-focus-ring:0 0 0 4px rgba(22,139,255,.12);--va-card-hover:0 18px 42px rgba(8,24,51,.1)}
body.portal-experience-v3 .portal-card{transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
body.portal-experience-v3 .portal-button{transition:transform .14s ease,filter .14s ease,box-shadow .14s ease}
body.portal-experience-v3 .portal-button:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(8,45,86,.1)}
body.portal-experience-v3 .portal-button:active{transform:translateY(0)}
body.portal-experience-v3 .field input:focus,body.portal-experience-v3 .field select:focus,body.portal-experience-v3 .field textarea:focus{box-shadow:var(--va-focus-ring)}
body.portal-experience-v3 .portal-section-head h2,body.portal-experience-v3 .case-section-head h2{letter-spacing:-.018em}
body.portal-experience-v3 .notice{box-shadow:0 7px 22px rgba(8,24,51,.045)}
body.portal-experience-v3 .status-badge{gap:6px}
body.portal-experience-v3 .status-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.65}
body.portal-experience-v3 .type-badge:before,body.portal-experience-v3 .priority-badge:before{content:none}

/* Stronger action hierarchy on long forms */
body.portal-experience-v3 .form-actions{align-items:center}
body.portal-experience-v3 form.is-submitting .portal-button[type="submit"]{cursor:wait;opacity:.72}
body.portal-experience-v3 form.is-submitting{pointer-events:none}
body.portal-experience-v3 form.is-submitting [data-submit-feedback]{display:inline-flex}

/* Queue summary inserted by experience JS */
.portal-queue-glance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}
.portal-queue-glance>a,.portal-queue-glance>.portal-queue-glance-static{display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0;padding:13px 15px;border:1px solid var(--va-line);border-radius:14px;background:#fff;color:var(--va-text);text-decoration:none;box-shadow:0 8px 20px rgba(8,24,51,.045)}
.portal-queue-glance>.portal-queue-glance-static{cursor:default;background:#fbfcfe}
.portal-queue-glance a:hover{border-color:#bcd9ee;background:#fbfdff}
.portal-queue-glance span{min-width:0;color:var(--va-muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.portal-queue-glance strong{font:800 20px Manrope,Inter,sans-serif;color:var(--va-navy)}

/* Case-workspace navigation becomes an active scroll-spy */
body.portal-experience-v3 .case-anchor-nav a{transition:background .14s ease,color .14s ease,box-shadow .14s ease}
body.portal-experience-v3 .case-anchor-nav a.active{background:#e8f3ff;color:#0769c1;box-shadow:inset 0 0 0 1px #c7e2f7}
body.portal-experience-v3 .case-next-action{box-shadow:0 8px 24px rgba(22,139,255,.06)}
body.portal-experience-v3 .case-next-action .case-next-cta{justify-self:end;white-space:nowrap}

/* Payment summary rows */
.customer-payment-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:13px 14px;border:1px solid #dce8f2;border-radius:13px;background:#f8fbfe}
.customer-payment-summary>div{min-width:0}.customer-payment-summary strong,.customer-payment-summary span,.customer-payment-summary small{display:block}.customer-payment-summary strong{color:#6f8497;font-size:10px;letter-spacing:.07em;text-transform:uppercase}.customer-payment-summary span{margin-top:4px;font-weight:800;color:#17324a}.customer-payment-summary small{margin-top:4px;color:#71869a;line-height:1.45}.customer-payment-summary .payment-status{flex:0 0 auto;padding:6px 9px;border-radius:999px;background:#edf4fb;color:#34546d;font-size:10px;font-weight:800}.customer-payment-summary .payment-status.authorized{background:#eaf8ef;color:#17683a}.customer-payment-summary .payment-status.failed{background:#fff0f0;color:#9d2525}

/* Mobile table conversion. JS supplies data-label attributes from the table headers. */
@media(max-width:720px){
  body.portal-experience-v3 .portal-table-wrap.portal-responsive-table{overflow:visible}
  body.portal-experience-v3 .portal-responsive-table .portal-table{display:block;min-width:0;width:100%;border-collapse:separate}
  body.portal-experience-v3 .portal-responsive-table .portal-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
  body.portal-experience-v3 .portal-responsive-table .portal-table tbody{display:grid;gap:12px}
  body.portal-experience-v3 .portal-responsive-table .portal-table tr{display:grid;gap:0;padding:5px 14px;border:1px solid var(--va-line);border-radius:16px;background:#fff;box-shadow:0 9px 24px rgba(8,24,51,.055)}
  body.portal-experience-v3 .portal-responsive-table .portal-table td{display:grid;grid-template-columns:minmax(105px,.38fr) minmax(0,.62fr);gap:12px;align-items:start;padding:10px 0;border-bottom:1px solid #edf2f6;text-align:right;font-size:13px;overflow-wrap:anywhere}
  body.portal-experience-v3 .portal-responsive-table .portal-table td:last-child{border-bottom:0}
  body.portal-experience-v3 .portal-responsive-table .portal-table td:before{content:attr(data-label);color:var(--va-muted);font-size:10px;font-weight:800;letter-spacing:.06em;text-align:left;text-transform:uppercase}
  body.portal-experience-v3 .portal-responsive-table .portal-table td>*{justify-self:end;max-width:100%}
  body.portal-experience-v3 .portal-responsive-table .portal-table td>a,body.portal-experience-v3 .portal-responsive-table .portal-table td>strong{display:inline-block}
  body.portal-experience-v3 .portal-responsive-table .portal-table td small{display:block;margin-top:3px}
  .portal-queue-glance{grid-template-columns:1fr 1fr}
  body.portal-experience-v3 .case-next-action{grid-template-columns:1fr}
  body.portal-experience-v3 .case-next-action .case-next-cta{justify-self:stretch;width:100%;margin-top:6px}
}

@media(max-width:520px){
  .portal-queue-glance{grid-template-columns:1fr 1fr;gap:8px}
  .portal-queue-glance>a,.portal-queue-glance>.portal-queue-glance-static{padding:11px 12px}
  .portal-queue-glance strong{font-size:18px}
  body.portal-experience-v3 .portal-responsive-table .portal-table td{grid-template-columns:minmax(92px,.34fr) minmax(0,.66fr)}
  .customer-payment-summary{display:grid}
  .customer-payment-summary .payment-status{justify-self:start}
}

.portal-back-to-top{position:fixed;z-index:36;right:22px;bottom:22px;display:grid;place-items:center;width:42px;height:42px;border:1px solid #cbddea;border-radius:13px;background:rgba(255,255,255,.96);box-shadow:0 12px 30px rgba(8,24,51,.14);color:#17324a;font:800 19px/1 Inter,Arial,sans-serif;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(8px);transition:.18s ease}.portal-back-to-top.visible{opacity:1;pointer-events:auto;transform:none}.portal-back-to-top:hover{background:#eef7ff;color:#0878d5}
@media(max-width:860px){.portal-back-to-top{display:none}}
