:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--navy:#0c2340;--navy-2:#153758;--brand:#0f6fab;--brand-hover:#0b5b8f;--brand-button:#0f6fab;--brand-button-hover:#0b5b8f;--on-brand:#fff;--header-text:#d9e8f5;--header-border:#6c8299;--on-navy:#fff;--bg:#f3f6fa;--surface:#fff;--surface-2:#f7f9fc;--surface-hover:#edf4fb;--border:#d9e1ea;--border-strong:#aab8c7;--text:#182338;--text-2:#536176;--text-3:#5f6d80;--success:#157347;--success-bg:#eaf8f0;--warning:#8a5200;--warning-bg:#fff5db;--error:#b42318;--error-bg:#fff0ef;--focus:#007b8f;--shadow:0 16px 40px #0c23401a;--radius:14px;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0f1724;--surface:#172235;--surface-2:#1c2a40;--surface-hover:#223551;--border:#34465f;--border-strong:#536984;--text:#f2f6fb;--text-2:#c0ccda;--text-3:#a9b7c8;--brand:#66c2ff;--brand-hover:#8bd1ff;--brand-button:#12689f;--brand-button-hover:#0f5a89;--on-brand:#fff;--header-text:#d9e8f5;--header-border:#6c8299;--on-navy:#fff;--success:#71d69e;--success-bg:#153729;--warning:#ffd27c;--warning-bg:#3d2e14;--error:#ffaaa3;--error-bg:#401f21;--shadow:0 20px 48px #0000004d}}*{box-sizing:border-box}html{background:var(--bg);min-width:320px}body{background:var(--bg);min-width:320px;min-height:100vh;color:var(--text);margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a{color:var(--brand);text-underline-offset:3px}a:hover{color:var(--brand-hover)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{z-index:100;background:var(--surface);padding:.75rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.portal-frame{grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);min-height:100vh;display:grid}.site-header{background:var(--navy);border-bottom:3px solid var(--brand);color:var(--on-navy)}.site-header__inner{justify-content:space-between;align-items:center;gap:1.5rem;width:min(1180px,100% - 2rem);min-height:82px;margin:0 auto;display:flex}.brand{align-items:center;min-height:44px;display:inline-flex}.brand img{width:210px;height:auto;display:block}.session-actions{align-items:center;gap:1rem;display:flex}.portal-nav{gap:1.25rem;width:min(1180px,100% - 2rem);margin:-.35rem auto .65rem;display:flex}.portal-nav a{min-height:44px;color:var(--header-text);align-items:center;font-weight:700;display:inline-flex}.portal-nav a[aria-disabled=true]{cursor:not-allowed;opacity:.65}.company-name{min-width:0;color:var(--header-text);overflow-wrap:anywhere;font-size:.9rem}.company-switcher{min-width:0;color:var(--header-text);align-items:center;gap:.5rem;font-size:.75rem;display:flex}.company-switcher select{border:1px solid var(--header-border);background:var(--navy-2);min-width:0;max-width:260px;min-height:44px;color:var(--on-navy);border-radius:8px;padding:.5rem 2rem .5rem .75rem}.page-shell{width:min(1180px,100% - 2rem);min-width:0;margin:0 auto;padding:3rem 0 5rem}.page-heading{margin-bottom:2rem}.page-heading h1{letter-spacing:-.025em;overflow-wrap:anywhere;width:fit-content;max-width:100%;margin:0;font-size:clamp(1.75rem,4vw,2.6rem)}.page-heading p{max-width:720px;color:var(--text-2);margin:.65rem 0 0;line-height:1.6}.site-footer{border-top:1px solid var(--border);color:var(--text-3);flex-wrap:wrap;justify-content:center;gap:.5rem 1.25rem;padding:1.5rem 1rem;font-size:.82rem;display:flex}.access-card,.content-card,.invoice-document,.payment-card,.payment-result{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.access-card{width:min(600px,100%);padding:clamp(1.5rem,5vw,3rem)}.access-card h2,.content-card h2,.invoice-document h2,.payment-card h2{margin:.35rem 0 .75rem;font-size:clamp(1.35rem,3vw,1.85rem)}.access-card p,.content-card p,.payment-card p{color:var(--text-2);line-height:1.65}.supporting-copy{font-size:.9rem}.eyebrow{color:var(--brand);letter-spacing:.11em;text-transform:uppercase;font-size:.72rem;font-weight:800}form{margin-top:1.5rem}form>label:not(.checkbox-field),.save-card-fields>label:not(.checkbox-field){gap:.45rem;margin-bottom:1rem;font-weight:650;display:grid}input[type=email],input[type=text],select{border:1px solid var(--border-strong);background:var(--surface);width:100%;min-height:48px;color:var(--text);border-radius:8px;padding:.75rem .85rem}.code-input{letter-spacing:.32em;max-width:220px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.45rem}.button{cursor:pointer;border:1px solid #0000;border-radius:8px;min-height:44px;padding:.68rem 1rem;font-weight:750}.button:disabled{opacity:.6;cursor:wait}.button--primary{background:var(--brand-button);color:var(--on-brand)}.button--primary:hover:not(:disabled){background:var(--brand-button-hover)}.button--secondary{background:var(--surface);border-color:var(--border-strong);color:var(--text)}.button--quiet{border-color:var(--header-border);color:var(--on-navy);background:0 0}.button-row{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.inline-action{margin-inline-start:.75rem}.status-message{border:1px solid var(--border);border-left-width:4px;border-radius:9px;margin:1rem 0;padding:1rem 1.1rem;line-height:1.5}.status-message>strong{margin-bottom:.25rem;display:block}.status-message--info{border-left-color:var(--brand);background:var(--surface-2)}.status-message--success{border-left-color:var(--success);background:var(--success-bg);color:var(--success)}.status-message--warning{border-left-color:var(--warning);background:var(--warning-bg);color:var(--warning)}.status-message--error{border-left-color:var(--error);background:var(--error-bg);color:var(--error)}.content-card{padding:1.5rem}.company-grid{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:1rem;margin-top:1.5rem;display:grid}.company-card{text-align:left;border:1px solid var(--border);background:var(--surface-2);min-height:116px;color:var(--text);cursor:pointer;border-radius:10px;align-content:center;gap:.35rem;padding:1.1rem;display:grid}.company-card:hover{border-color:var(--brand);background:var(--surface-hover)}.company-card span{color:var(--text-2);font-size:.88rem}.section-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.25rem;display:flex}.section-heading h2{margin:.25rem 0 0}.segmented-control{border:1px solid var(--border);background:var(--surface);border-radius:9px;padding:3px;display:inline-flex}.segmented-control button{min-height:44px;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:.5rem 1rem}.segmented-control button[aria-pressed=true]{background:var(--navy);color:var(--on-navy)}.invoice-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.invoice-row{background:var(--surface);border:1px solid var(--border);border-radius:11px;overflow:hidden}.invoice-row>a{min-height:96px;color:var(--text);grid-template-columns:minmax(150px,1.25fr) minmax(360px,2fr) auto;align-items:center;gap:1rem;padding:1rem 1.15rem;text-decoration:none;display:grid}.invoice-row>a:hover{background:var(--surface-hover)}.invoice-row__primary{gap:.35rem;display:grid}.invoice-row__primary span{color:var(--text-2);font-size:.86rem}.invoice-row__facts{grid-template-columns:repeat(4,1fr);gap:.75rem;margin:0;display:grid}.invoice-row__facts div{gap:.25rem;display:grid}.invoice-row__facts dt{color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem}.invoice-row__facts dd{margin:0;font-size:.88rem}.status-pill{background:var(--surface-2);width:fit-content;color:var(--text-2);white-space:nowrap;border-radius:999px;padding:.35rem .65rem;font-size:.75rem;font-weight:750;display:inline-flex}.status-pill--paid{background:var(--success-bg);color:var(--success)}.status-pill--overdue{background:var(--error-bg);color:var(--error)}.status-pill--partially-paid{background:var(--warning-bg);color:var(--warning)}.load-more{margin:1.5rem auto 0;display:block}.empty-state{text-align:center;background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius);padding:3rem 1.5rem}.empty-state h3{margin:0}.empty-state p{color:var(--text-2)}.back-link{align-items:center;min-height:44px;margin-bottom:1rem;display:inline-flex}.invoice-detail,.invoice-document{min-width:0}.invoice-priority{gap:1rem;display:grid}.invoice-priority>.payment-card{margin-top:0}.invoice-summary{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);grid-template-columns:minmax(0,1fr) minmax(320px,1.35fr);align-items:center;gap:1rem 2rem;padding:1.1rem 1.4rem;display:grid}.invoice-summary>div{min-width:0}.invoice-summary h2{overflow-wrap:anywhere;margin:.25rem 0 .55rem;font-size:clamp(1.25rem,3vw,1.65rem)}.invoice-summary__facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;margin:0;display:grid}.invoice-summary__facts div{gap:.2rem;min-width:0;display:grid}.invoice-summary__facts dt{color:var(--text-3);letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;font-weight:750}.invoice-summary__facts dd{overflow-wrap:anywhere;min-width:0;margin:0;font-weight:700}.invoice-disclosure{margin-top:1rem}.invoice-disclosure>summary{width:fit-content;min-height:44px;color:var(--brand);cursor:pointer;align-items:center;padding:.35rem .25rem;font-weight:800;display:flex}.invoice-disclosure[open]>summary{margin-bottom:.5rem}.invoice-document{padding:clamp(1.25rem,4vw,2.5rem)}.invoice-document__header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:start;gap:1rem;padding-bottom:1.5rem;display:flex}.invoice-parties{grid-template-columns:1fr 1fr;gap:2rem;padding:1.5rem 0;display:grid}.invoice-parties--shipping{grid-template-columns:1fr 1fr 1fr}.invoice-parties section,.invoice-parties dl{margin:0}.invoice-parties section{align-content:start;gap:.25rem;display:grid}.invoice-parties h3,.invoice-section h3,.customer-message h3{color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;margin:0 0 .5rem;font-size:.9rem}.invoice-parties section span{color:var(--text-2)}.invoice-parties dl div{grid-template-columns:1fr 1fr;gap:1rem;padding:.32rem 0;display:grid}.invoice-parties dt{color:var(--text-2)}.invoice-parties dd{text-align:right;margin:0;font-weight:650}.table-scroll{border:1px solid var(--border);border-radius:10px;min-width:0;max-width:100%;overflow-x:visible}.line-table{border-collapse:collapse;width:100%;min-width:720px}.line-table th{background:var(--surface-2);color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem}.line-table th,.line-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:.8rem .9rem}.line-table tr:last-child td{border-bottom:0}.line-table .numeric{text-align:right;white-space:nowrap}.line-name{gap:.2rem;display:grid}.line-description{color:var(--text-2);white-space:pre-wrap}.line-name--depth-1{padding-left:1rem}.line-name--depth-2{padding-left:2rem}.line-name--depth-3{padding-left:3rem}.invoice-section{margin-top:1.5rem}.tax-list,.applied-list,.applied-list ul{margin:0;padding:0;list-style:none}.tax-list li{justify-content:space-between;padding:.5rem 0;display:flex}.applied-list>li{border-bottom:1px solid var(--border);grid-template-columns:1fr auto;gap:.5rem 1rem;padding:.8rem 0;display:grid}.applied-list>li>div{gap:.2rem;display:grid}.applied-list span,.applied-list ul{color:var(--text-2);font-size:.86rem}.applied-list ul{grid-column:1/-1;padding-left:1rem}.totals-card{background:var(--surface-2);border-radius:10px;width:min(440px,100%);margin:2rem 0 0 auto;padding:1rem 1.2rem}.totals-card div{justify-content:space-between;gap:1rem;padding:.35rem 0;display:flex}.totals-card dd{font-variant-numeric:tabular-nums;margin:0}.totals-card__context{color:var(--text-2);font-size:.86rem}.totals-card__balance{border-top:1px solid var(--border-strong);margin-top:.5rem;font-size:1.08rem;font-weight:800;padding-top:.9rem!important}.customer-message{border-left:4px solid var(--brand);background:var(--surface-2);margin-top:2rem;padding:1rem 1.15rem}.customer-message p{white-space:pre-wrap;margin:0;line-height:1.6}.payment-card{grid-template-columns:1fr auto;align-items:center;gap:1rem;margin-top:1rem;padding:1.25rem 1.4rem;display:grid}.payment-card>strong{white-space:nowrap;font-size:1.25rem}.payment-card p{margin-bottom:0}.payment-card--enabled{align-items:start}.payment-card--enabled>.status-message,.payment-card--enabled>button,.payment-card--enabled>.stripe-card-form,.payment-card--enabled>.stripe-payment-entry,.payment-card--enabled>.payment-options,.payment-card--enabled>.payment-progress,.payment-card--enabled>div[role=status]{grid-column:1/-1}.payment-progress{width:min(540px,100%);margin:.25rem 0 1rem}.payment-progress ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.payment-progress li{min-width:0;color:var(--text-3);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.4rem;font-size:.82rem;font-weight:700;display:grid}.payment-progress li span{border:1px solid var(--border-strong);background:var(--surface);border-radius:999px;place-items:center;width:1.7rem;height:1.7rem;display:inline-grid}.payment-progress li[aria-current=step]{color:var(--text)}.payment-progress li[aria-current=step] span{border-color:var(--brand);background:var(--brand-button);color:var(--on-brand)}.stripe-payment-entry{min-width:0}.stripe-payment-entry h2{overflow-wrap:anywhere;width:fit-content;max-width:100%}.stripe-card-form{grid-column:1/-1}.stripe-card-form>.button{margin-top:1.25rem}.payment-options{gap:1rem;display:grid}.payment-options fieldset{border:0;gap:.65rem;margin:0;padding:0;display:grid}.payment-options legend{margin-bottom:.5rem;font-size:1rem;font-weight:800}.payment-method-choice{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:10px;grid-template-columns:auto 1fr;align-items:start;gap:.75rem;padding:.9rem 1rem;display:grid}.payment-method-choice:has(input:checked){border-color:var(--brand);background:var(--surface-hover)}.payment-method-choice input{width:20px;height:20px;margin:2px 0 0}.payment-method-choice span{gap:.2rem;display:grid}.payment-method-choice small{color:var(--text-2)}.save-card-fields{margin:1.25rem 0}.checkbox-field{color:var(--text-2);grid-template-columns:auto 1fr;align-items:start;gap:.65rem;line-height:1.5;display:grid}.checkbox-field input{width:20px;height:20px;margin-top:2px}.field-error{color:var(--error);font-weight:650}.saved-card-settings{border-top:1px solid var(--border);padding-top:1rem}.saved-card-settings h2{margin-top:0}.saved-card-settings>p{color:var(--text-2);margin:.75rem 0}.saved-card-settings ul{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.saved-card-settings li{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;padding:1rem}.saved-card-settings li>div:first-child{gap:.2rem;display:grid}.saved-card-settings li span{color:var(--text-2);font-size:.9rem}.saved-card-settings form{margin-top:1rem}.saved-card-settings__confirm{margin-top:.75rem}.payment-result{border-left-width:5px;padding:clamp(1.25rem,4vw,2rem)}.payment-result--info{border-left-color:var(--brand)}.payment-result--success{border-left-color:var(--success)}.payment-result--warning{border-left-color:var(--warning)}.payment-result--error{border-left-color:var(--error)}.payment-result h2{margin:.35rem 0 .5rem}.payment-result>p{color:var(--text-2);line-height:1.6}.payment-result__facts{background:var(--surface-2);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:.75rem 1.5rem;margin:1.25rem 0 0;padding:1rem;display:grid}.payment-result__facts div{gap:.2rem;display:grid}.payment-result__facts dt{color:var(--text-3);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:750}.payment-result__facts dd{overflow-wrap:anywhere;margin:0;font-weight:650}.payment-action{margin-top:1rem}.mono-reference{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}@media (width<=840px){.invoice-row>a{grid-template-columns:1fr auto}.invoice-row__facts{grid-column:1/-1;grid-template-columns:repeat(2,1fr)}.invoice-parties,.invoice-summary{grid-template-columns:1fr}.table-scroll{border:0}.line-table{min-width:0;display:block}.line-table thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.line-table tbody{gap:.75rem;display:grid}.line-table tbody tr{border:1px solid var(--border);background:var(--surface);border-radius:10px;display:grid;overflow:hidden}.line-table td,.line-table .numeric{text-align:left;white-space:normal;overflow-wrap:anywhere;grid-template-columns:minmax(96px,.45fr) minmax(0,1fr);gap:.75rem;padding:.65rem .8rem;display:grid}.line-table td:before{content:attr(data-label);color:var(--text-3);letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;font-weight:750}.line-table .line-name{min-width:0}}@media (width<=620px){.site-header__inner{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.4rem .75rem;width:min(100% - 1rem,1180px);min-height:72px;padding:.65rem 0;display:grid}.brand{width:min(135px,100%);min-width:0}.brand img{width:100%}.session-actions{display:contents}.session-actions>.button{grid-area:1/2}.portal-nav{gap:1rem;width:min(100% - 1rem,1180px);margin-top:0}.company-name,.company-switcher{grid-area:2/1/auto/-1;min-width:0}.company-switcher{grid-template-columns:minmax(0,1fr);gap:.15rem;display:grid}.company-switcher select{width:100%;max-width:100%}.page-shell{width:min(100% - 1rem,1180px);padding:1.25rem 0 3rem}.page-heading{margin-bottom:1.25rem}.page-shell--invoice-detail{padding-top:.65rem}.page-shell--invoice-detail>.page-heading{margin-bottom:.5rem}.page-shell--invoice-detail>.page-heading p{margin-top:.15rem;font-size:.9rem;line-height:1.25}.page-shell--invoice-detail .back-link{margin-bottom:.5rem}.section-heading,.invoice-document__header{flex-direction:column;align-items:stretch}.segmented-control{align-self:start}.invoice-row>a{grid-template-columns:1fr}.invoice-row .status-pill{grid-row:1;justify-self:end}.invoice-row__primary{grid-row:1;padding-right:6rem}.invoice-row__facts{grid-column:1}.payment-card{grid-template-columns:1fr;gap:.5rem;padding:.85rem 1rem}.payment-card>strong{grid-row:1}.payment-card h2{margin:.15rem 0 .4rem;font-size:1.15rem}.payment-card p{margin-top:.4rem;font-size:.92rem;line-height:1.45}.invoice-summary{grid-template-columns:minmax(90px,.65fr) minmax(0,1fr);gap:.5rem;padding:.65rem .8rem}.invoice-summary h2{margin:.1rem 0 .35rem;font-size:1.1rem}.invoice-summary__facts{grid-template-columns:1fr 1fr;gap:.5rem}.button-row .button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (forced-colors:active){.site-header{border-bottom-color:linktext}.button,.company-card,.invoice-row,.status-message{border:1px solid buttontext}.status-pill{border:1px solid}}
