:root{--bg-page:#f5f7fb;--bg-surface:#fff;--bg-subtle:#eef4ff;--text-primary:#0f172a;--text-secondary:#334155;--text-muted:#64748b;--border-default:#bbd4ff;--border-strong:#7b8da8;--primary:#0d6efd;--primary-hover:#2f8bff;--primary-active:#084dd6;--primary-soft:#eaf2ff;--accent:#ffc107;--danger:#a74235;--danger-soft:#fff0ed;--success:#217a57;--success-soft:#e5f5eb;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--focus-ring:#0d6efd3d;--font-ui:Tahoma, Arial, sans-serif}*{box-sizing:border-box}.sr-only{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}html{background:var(--bg-page);color:var(--text-primary)}body{background:linear-gradient(150deg, var(--primary-soft), transparent 38rem), var(--bg-page);min-block-size:100dvh;color:var(--text-primary);font-family:var(--font-ui);margin:0;line-height:1.65}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.skip-link{z-index:100;border-radius:var(--radius-sm);background:var(--text-primary);color:#fff;padding:.5rem .75rem;position:fixed;inset-block-start:.5rem;inset-inline-start:.5rem;translate:0 -200%}.skip-link:focus{translate:0}.portal-layout{grid-template-rows:auto 1fr auto;min-block-size:100dvh;display:grid}.portal-header,.portal-footer{inline-size:min(100% - 2rem,68rem);margin-inline:auto;padding-block:1rem}.portal-nav{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);grid-template-columns:repeat(5,minmax(0,1fr));inline-size:min(100% - 2rem,68rem);margin-inline:auto;display:grid;overflow:hidden}.portal-nav a{min-block-size:2.75rem;color:var(--text-secondary);text-align:center;place-items:center;padding:.45rem;font-size:.88rem;font-weight:700;text-decoration:none;display:grid}.portal-nav a:hover{background:var(--primary-soft);color:var(--primary-active)}.portal-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand{color:var(--text-primary);align-items:center;gap:.65rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{border-radius:var(--radius-md);background:var(--primary);color:#fff;letter-spacing:-.03em;direction:ltr;place-items:center;block-size:2.45rem;inline-size:2.45rem;font-size:1rem;display:grid}.portal-main{place-items:center;inline-size:min(100% - 2rem,68rem);margin-inline:auto;padding-block:1rem 2.5rem;display:grid}.portal-content{align-self:start;gap:1.25rem;inline-size:100%;display:grid}.page-heading{justify-content:space-between;align-items:end;gap:1rem;display:flex}.page-heading h1{margin:0;font-size:clamp(1.65rem,5vw,2.2rem)}.page-heading p{color:var(--text-secondary);margin:0}.eyebrow{font-size:.8rem;font-weight:800;color:var(--primary-active)!important}.content-section{gap:.8rem;display:grid}.content-section h2{margin:0;font-size:1.2rem}.section-heading,.card-heading{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.section-heading a,.text-link,.back-link{color:var(--primary-active);font-weight:700}.summary-card,.data-card,.detail-card{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);padding:1rem;box-shadow:0 1px 2px #0f172a0f}.summary-card{justify-content:space-between;align-items:center;gap:1rem;display:flex}.summary-card p,.data-card p{margin-block:.25rem}.summary-number{color:var(--primary-active);font-size:2rem;line-height:1.2;display:block}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.card-grid>div,.card-grid>div>.data-card{block-size:100%}.data-card{align-content:start;gap:.55rem;display:grid}.data-card h3,.detail-card h1{margin:0;font-size:1.05rem}.detail-card h1{font-size:1.55rem}.compact-facts,.detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:.25rem 0;display:grid}.compact-facts div,.detail-facts div{border-block-start:1px solid var(--border-default);padding-block-start:.45rem}.compact-facts dt,.detail-facts dt{color:var(--text-muted);font-size:.76rem}.compact-facts dd,.detail-facts dd{margin:.1rem 0 0;font-weight:700}.status-badge{background:var(--bg-subtle);inline-size:fit-content;color:var(--text-secondary);border-radius:999px;padding:.16rem .55rem;font-size:.74rem;font-weight:750;display:inline-flex}.status-active,.status-paid,.status-completed,.status-resolved{background:var(--success-soft);color:var(--success)}.status-expiringSoon,.status-needsReview,.status-waitingForYou,.status-partiallyPaid{color:#725500;background:#fff5cf}.status-expired,.status-cancelled,.status-closed{background:var(--danger-soft);color:var(--danger)}.data-boundary-notice{border:1px solid var(--border-default);border-inline-start:.25rem solid var(--primary);border-radius:var(--radius-md);background:var(--primary-soft);color:var(--text-secondary);gap:.35rem;padding:.85rem 1rem;display:grid}.data-boundary-notice h2{color:var(--text-primary);margin:0;font-size:1rem}.data-boundary-notice p{margin:0}.data-boundary-notice .text-link{inline-size:fit-content}.empty-state{border:1px dashed var(--border-strong);border-radius:var(--radius-md);color:var(--text-secondary);background:#ffffffa6;margin:0;padding:.9rem}.post-cutoff-empty-state{gap:.45rem;display:grid}.post-cutoff-empty-state p{margin:0}.post-cutoff-empty-state .text-link{inline-size:fit-content}.request-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.plain-list{gap:.55rem;margin:.4rem 0 0;padding:0;list-style:none;display:grid}.plain-list li{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.load-more{justify-self:center}.timeline{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.timeline li{border-inline-start:3px solid var(--border-default);justify-content:space-between;align-items:center;gap:1rem;padding:.4rem .75rem;display:flex}.timeline time{color:var(--text-muted);font-size:.8rem}.customer-resolution{border-block-start:1px solid var(--border-default);margin-block-start:1rem;padding-block-start:1rem}.customer-resolution h2{margin:0;font-size:1.05rem}.credential-card{border:1px solid var(--border-default);border-inline-start:.25rem solid var(--primary);border-radius:var(--radius-lg);background:var(--bg-surface);padding:1rem}.secure-label{background:var(--success-soft);color:var(--success);border-radius:999px;padding:.2rem .6rem;font-size:.72rem;font-weight:750}.credential-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:0;display:grid}.credential-facts div{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-subtle);padding:.7rem}.credential-facts dt{color:var(--text-muted);font-size:.76rem}.credential-facts dd{overflow-wrap:anywhere;margin:.2rem 0 0;font-weight:750}.credential-value{-webkit-user-select:text;user-select:text}.credential-actions{flex-wrap:wrap;gap:.6rem;display:flex}.button-quiet{color:var(--primary-active);background:0 0;border-color:#0000}.credential-message{color:var(--text-secondary);margin:0}.notification-list{gap:.65rem;display:grid}.notification-card{border:1px solid var(--border-default);border-inline-start:.25rem solid var(--primary);border-radius:var(--radius-md);background:var(--primary-soft);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem;display:flex}.notification-card.is-read{border-inline-start-color:var(--border-strong);background:var(--bg-surface)}.notification-card p{color:var(--text-secondary);margin:.25rem 0 0}.notification-action{cursor:pointer;white-space:nowrap;background:0 0;border:0}.auth-card,.account-card{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);inline-size:min(100%,29rem);padding:clamp(1.25rem,5vw,2rem);box-shadow:0 1px 2px #0f172a12}.auth-card h1,.account-card h1{margin:0;font-size:clamp(1.4rem,6vw,1.85rem)}.auth-card>p,.account-card>p{color:var(--text-secondary);margin-block:.55rem 1.35rem}.field{gap:.4rem;margin-block:1rem;display:grid}.field label{font-weight:700}.field small{color:var(--text-muted)}.input{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);min-block-size:2.75rem;inline-size:100%;color:var(--text-primary);padding:.6rem .75rem}.input:hover{border-color:var(--primary)}.input:focus{border-color:var(--primary);outline:3px solid var(--focus-ring)}.input[aria-invalid=true]{border-color:var(--danger)}.ltr-value{text-align:left;direction:ltr;unicode-bidi:isolate}.button{border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.45rem;min-block-size:2.75rem;padding:.55rem 1rem;font-weight:750;text-decoration:none;display:inline-flex}.button-primary{background:var(--primary);color:#fff}.button-primary:hover{background:var(--primary-hover);color:var(--text-primary)}.button-primary:active{background:var(--primary-active);color:#fff}.button-secondary{border-color:var(--border-default);color:var(--primary-active);background:#fff}.button-danger{background:var(--danger-soft);color:var(--danger);border-color:#dfa99e}.button:disabled{cursor:not-allowed;opacity:.62}.button-block{inline-size:100%}.status{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--text-secondary);margin-block:1rem;padding:.75rem}.status-error{background:var(--danger-soft);color:var(--danger);border-color:#dfa99e}.status-success{background:var(--success-soft);color:var(--success);border-color:#8fc9aa}.auth-actions{gap:.75rem;margin-block-start:1.25rem;display:grid}.text-button{color:var(--primary-active);cursor:pointer;background:0 0;border:0;padding:.35rem}.account-shell{gap:1rem;inline-size:min(100%,48rem);display:grid}.account-card{inline-size:100%}.account-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.fact{border-block-start:1px solid var(--border-default);padding-block:.75rem}.fact dt{color:var(--text-muted);font-size:.8rem}.fact dd{margin:.15rem 0 0;font-weight:700}.session-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.session-item{border:1px solid var(--border-default);border-radius:var(--radius-md);gap:.5rem;padding:.85rem;display:grid}.session-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.current-badge{background:var(--success-soft);color:var(--success);border-radius:999px;padding:.1rem .5rem;font-size:.72rem}.muted{color:var(--text-muted);font-size:.8rem}.portal-footer{color:var(--text-muted);text-align:center;font-size:.78rem}@media (max-width:36rem){.portal-header,.portal-footer,.portal-main{inline-size:min(100% - 1rem,68rem)}.portal-header{padding-block:.75rem}.auth-card,.account-card{padding:1.1rem}.account-grid{grid-template-columns:1fr}.session-heading{flex-direction:column;align-items:start}.session-item .button{inline-size:100%}.portal-nav{z-index:10;border-inline:0;border-radius:0;inline-size:100%;position:sticky;inset-block-start:0}.portal-nav a{padding-inline:.15rem;font-size:.72rem}.page-heading{flex-direction:column;align-items:start}.card-grid,.request-grid,.compact-facts,.detail-facts{grid-template-columns:1fr}.summary-card{flex-direction:column;align-items:stretch}.summary-card .button{inline-size:100%}.credential-facts{grid-template-columns:1fr}.credential-actions .button{inline-size:100%}.notification-card{flex-direction:column;align-items:stretch}.notification-action{align-self:start;padding:.45rem 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
