:root{--hac-stone-950:#101214;--hac-stone-900:#141619;--hac-stone-800:#1c2024;--hac-stone-700:#252a2f;--hac-brass-700:#8a6a32;--hac-brass-600:#aa8240;--hac-brass-500:#c49a52;--hac-brass-link:#715020;--hac-walnut-800:#4a3325;--hac-walnut-700:#654735;--hac-ink:#181a1d;--hac-muted:#5a6168;--hac-surface:#fbfaf7;--hac-canvas:#f7f5f0;--hac-input:#fff;--hac-border:#858c93;--hac-border-soft:#d9dcdf;--hac-danger:#b42318;--hac-danger-bg:#fff5f3;--hac-success:#18794e;--hac-focus:#8a6a32;--hac-radius:12px;--hac-shadow:0 24px 64px rgba(16,18,20,.16);--hac-space-1:.5rem;--hac-space-2:.75rem;--hac-space-3:1rem;--hac-space-4:1.5rem;--hac-space-5:2rem;--hac-space-6:3rem}
*{box-sizing:border-box}.hac-auth-page{margin:0;background:var(--hac-canvas);color:var(--hac-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.5}.hac-auth-page a{color:var(--hac-brass-link);text-decoration-color:var(--hac-brass-600);text-decoration-thickness:1px;text-underline-offset:3px}.hac-auth-page a:hover{color:#523814;text-decoration-thickness:2px}.hac-auth-page a:focus-visible,.hac-auth-page button:focus-visible,.hac-auth-page input:focus-visible,.hac-auth-page select:focus-visible{outline:3px solid var(--hac-focus);outline-offset:3px}.hac-skip-link{position:fixed;left:1rem;top:1rem;z-index:10;padding:.75rem 1rem;background:#fff;border:1px solid var(--hac-brass-700);border-radius:8px;transform:translateY(-180%)}.hac-skip-link:focus{transform:none}.hac-auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(300px,42%) minmax(0,1fr)}.hac-auth-brand{position:relative;display:flex;flex-direction:column;padding:clamp(2rem,5vw,5rem);overflow:hidden;background:radial-gradient(ellipse at 12% 16%,rgba(255,255,255,.045),transparent 34%),linear-gradient(118deg,transparent 0 29%,rgba(196,154,82,.055) 29.15%,transparent 29.55%),linear-gradient(64deg,transparent 0 67%,rgba(101,71,53,.085) 67.1%,transparent 68.2%),linear-gradient(148deg,var(--hac-stone-950),var(--hac-stone-900) 48%,var(--hac-stone-800));color:#fff}.hac-auth-brand:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(196,154,82,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(196,154,82,.025) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),rgba(0,0,0,.25));pointer-events:none}.hac-auth-brand:after{content:"";position:absolute;width:30rem;height:30rem;border:1px solid rgba(196,154,82,.075);border-radius:50%;right:-14rem;bottom:-16rem;box-shadow:0 0 0 5rem rgba(138,106,50,.022),0 0 0 10rem rgba(255,255,255,.009);pointer-events:none}.hac-wordmark{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.75rem;width:max-content;color:inherit!important;text-decoration:none!important;font-weight:750;letter-spacing:.01em;font-size:1.18rem}.hac-wordmark span{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid var(--hac-brass-500);border-radius:9px;background:var(--hac-brass-600);color:var(--hac-stone-950);font-weight:850;box-shadow:inset 0 1px rgba(255,255,255,.14)}.hac-auth-brand__message{position:relative;z-index:1;margin:auto 0;max-width:31rem}.hac-auth-brand h2{font-size:clamp(2.25rem,4.3vw,4.25rem);line-height:1.03;letter-spacing:-.045em;margin:.65rem 0 1rem;color:#fff}.hac-auth-brand__message>p:last-child{max-width:30rem;color:rgba(255,255,255,.78);font-size:1.08rem}.hac-auth-brand__support{position:relative;z-index:1;margin:0;color:rgba(255,255,255,.66);font-size:.875rem}.hac-eyebrow{margin:0;color:var(--hac-brass-link);font-size:.78rem;font-weight:780;letter-spacing:.11em;text-transform:uppercase}.hac-auth-brand .hac-eyebrow{color:var(--hac-brass-500)}.hac-auth-panel{display:grid;place-items:center;padding:clamp(1.25rem,5vw,5rem);background:var(--hac-surface)}.hac-auth-panel__inner{width:min(100%,31rem)}.hac-wordmark--mobile{display:none;color:var(--hac-ink)!important;margin-bottom:2.5rem}.hac-auth-heading{margin-bottom:1.75rem}.hac-auth-heading h1{font-size:clamp(2rem,3.2vw,3rem);line-height:1.1;letter-spacing:-.035em;margin:.45rem 0 .75rem;color:var(--hac-stone-900)}.hac-auth-heading>p:not(.hac-eyebrow){margin:.5rem 0;color:var(--hac-muted)}.hac-reassurance{padding:.75rem 1rem;border-left:3px solid var(--hac-brass-600);background:#f3ecde;color:#3a3329!important;font-size:.92rem}.hac-form{display:grid;gap:1.15rem}.hac-form__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.hac-field{display:grid;gap:.45rem}.hac-field label,.hac-field__label-row{font-weight:680;font-size:.93rem}.hac-field__label-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.hac-field__label-row a{font-weight:560;font-size:.88rem}.hac-field input,.hac-field select{display:block;width:100%;min-width:0;height:48px;padding:0 .9rem;border:1px solid var(--hac-border);border-radius:var(--hac-radius);background:var(--hac-input);color:var(--hac-ink);font:inherit;transition:border-color .15s,box-shadow .15s}.hac-field input:hover,.hac-field select:hover{border-color:#666d73}.hac-field input:focus,.hac-field select:focus{border-color:var(--hac-focus);box-shadow:0 0 0 1px var(--hac-focus)}.hac-password{position:relative}.hac-password input{padding-right:5rem}.hac-password__toggle{position:absolute;right:.35rem;top:50%;translate:0 -50%;min-width:4rem;min-height:38px;border:0;border-radius:9px;background:transparent;color:var(--hac-brass-link);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.hac-password__toggle:hover{background:#eee7da;color:#523814}.hac-field__hint{margin:0;color:var(--hac-muted);font-size:.84rem}.hac-check{display:grid;grid-template-columns:1.5rem 1fr;align-items:start;gap:.55rem;min-height:44px;padding:.55rem 0;cursor:pointer}.hac-check input{appearance:auto;width:18px;height:18px;margin:.16rem 0 0;accent-color:var(--hac-brass-700)}.hac-button{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:.75rem 1.25rem;border:1px solid transparent;border-radius:var(--hac-radius);font:inherit;font-weight:760;cursor:pointer;transition:background .15s,border-color .15s,transform .15s,box-shadow .15s}.hac-button--primary{border-color:var(--hac-brass-700);background:var(--hac-stone-800);color:#fbfaf7}.hac-button--primary:hover{border-color:var(--hac-brass-500);background:var(--hac-stone-700);box-shadow:0 8px 20px rgba(74,51,37,.16),inset 0 -2px var(--hac-brass-700)}.hac-button--primary:active{transform:translateY(1px)}.hac-button:disabled{cursor:wait;opacity:.68}.hac-account-links{margin-top:1.4rem;text-align:center;color:var(--hac-muted);font-size:.92rem}.hac-account-links p{margin:.65rem 0}.hac-account-links__switch{padding-top:.65rem;border-top:1px solid var(--hac-border-soft)}.hac-error-summary,.hac-status{margin:0 0 1.25rem;padding:1rem;border-radius:var(--hac-radius)}.hac-error-summary{border:1px solid #e3aaa4;background:var(--hac-danger-bg);color:#7a1d16}.hac-error-summary p{margin:.25rem 0 0}.hac-status{border-left:3px solid var(--hac-brass-600);background:#f1eee8;color:var(--hac-stone-700)}.hac-field--invalid input{border-color:var(--hac-danger)}.hac-field__error{margin:0;color:var(--hac-danger);font-size:.88rem;font-weight:650}.hac-supplier-entry{max-width:44rem;margin:2rem auto;padding:clamp(1.5rem,4vw,2.5rem);border:1px solid var(--hac-border-soft);border-radius:var(--hac-radius);background:#fff;text-align:center}.hac-supplier-entry__action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.3rem;border:1px solid var(--hac-brass-700);border-radius:var(--hac-radius);background:var(--hac-stone-800);color:#fbfaf7!important;font-weight:750;text-decoration:none!important}.hac-supplier-entry__action:hover{border-color:var(--hac-brass-500);background:var(--hac-stone-700)}.hac-supplier-entry__signin{margin-bottom:0}
@media (max-width:767px){.hac-auth-shell{display:block;min-height:100svh}.hac-auth-brand{display:none}.hac-auth-panel{display:block;min-height:100svh;padding:1.25rem}.hac-auth-panel__inner{margin:0 auto}.hac-wordmark--mobile{display:inline-flex;margin-bottom:2.2rem}.hac-auth-heading h1{font-size:2rem}.hac-form__row{grid-template-columns:1fr}.hac-account-links{padding-bottom:1rem}}
@media (min-width:768px) and (max-width:1023px){.hac-auth-shell{grid-template-columns:34% 66%}.hac-auth-brand{padding:2rem}.hac-auth-brand h2{font-size:2.35rem}.hac-auth-panel{padding:2.5rem}}
@media (min-width:1600px){.hac-auth-panel__inner{width:33rem}.hac-auth-brand{padding-left:max(5rem,calc((100vw - 1600px)/2 + 5rem))}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
.hac-wordmark img{display:block;width:min(100%,17.2rem);height:auto}.hac-wordmark--mobile img{width:5.4rem}
.hac-error-summary ul{margin:.65rem 0 0;padding-left:1.25rem}.hac-error-summary li+li{margin-top:.35rem}.hac-consent{display:grid;gap:.1rem}.hac-consent--invalid{padding:.25rem .75rem;border-left:3px solid var(--hac-danger);background:var(--hac-danger-bg)}.hac-auth-page--buyer-register .hac-password__toggle{min-height:48px}.hac-auth-page--buyer-register .hac-auth-panel__inner{width:min(100%,30rem)}
@media (max-width:767px){.hac-auth-page--buyer-register .hac-wordmark--mobile{margin-bottom:1.5rem}.hac-auth-page--buyer-register .hac-auth-heading{margin-bottom:1.35rem}.hac-auth-page--buyer-register .hac-form{gap:1rem}}
.hac-onboarding-shell{grid-template-columns:minmax(18rem,32%) minmax(0,68%);min-height:100vh}.hac-onboarding-panel{align-items:start;overflow:visible;padding-block:clamp(2rem,5vw,4.5rem)}.hac-onboarding-inner{width:min(100%,50rem)}.hac-onboarding-progress{margin-bottom:2rem}.hac-onboarding-progress ol{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;list-style:none;margin:0 0 .75rem;padding:0}.hac-onboarding-progress li{color:var(--hac-muted);font-size:.72rem;line-height:1.25;text-align:center}.hac-onboarding-progress li span{align-items:center;background:#eee7da;border:1px solid #d6c8ad;border-radius:50%;display:flex;height:2rem;justify-content:center;margin:0 auto .45rem;width:2rem}.hac-onboarding-progress li.is-current{color:var(--hac-stone-900);font-weight:700}.hac-onboarding-progress li.is-current span,.hac-onboarding-progress li.is-complete span{background:var(--hac-stone-800);border-color:var(--hac-stone-800);color:var(--hac-surface)}.hac-onboarding-progress__mobile{display:none;font-weight:700}.hac-onboarding-progress__bar{background:#e0d5c2;border-radius:99px;height:.3rem;overflow:hidden}.hac-onboarding-progress__bar span{background:var(--hac-brass-600);display:block;height:100%}.hac-onboarding-form{max-width:46rem}.hac-onboarding-form select,.hac-onboarding-form input[type=search]{min-height:48px;width:100%}.hac-onboarding-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}.hac-onboarding-actions .hac-button{width:auto}.hac-onboarding-actions .hac-button--primary{margin-left:auto}.hac-choice-group{border:0;margin:0;padding:0}.hac-choice-group legend{color:var(--hac-stone-900);font-size:1.25rem;font-weight:700;margin-bottom:.35rem}.hac-category-grid{display:grid;gap:.65rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1rem}.hac-choice{align-items:center;background:#fffaf0;border:1px solid #d8ccb7;border-radius:8px;display:flex;gap:.75rem;min-height:48px;padding:.65rem .8rem}.hac-choice input{flex:0 0 auto}.hac-boundary,.hac-onboarding-status,.hac-review section{background:#fffaf0;border:1px solid #d8ccb7;border-left:4px solid var(--hac-brass-600);padding:1rem 1.1rem}.hac-boundary h2,.hac-review h2{font-size:1.05rem;margin:0 0 .5rem}.hac-review{display:grid;gap:.75rem}.hac-review section header{align-items:center;display:flex;justify-content:space-between}.hac-review section p{margin-bottom:0}.hac-onboarding-status dl div{border-top:1px solid #ded1ba;display:flex;justify-content:space-between;padding:.7rem 0}.hac-onboarding-status dt{font-weight:700}
@media (max-width:767px){.hac-auth-page--supplier-onboarding{background:var(--hac-surface)}.hac-onboarding-shell{display:block;min-height:100svh}.hac-onboarding-shell .hac-auth-brand{display:none}.hac-onboarding-panel{padding:1.1rem 1rem 2rem}.hac-onboarding-inner{width:100%}.hac-onboarding-progress{margin:1rem 0 1.5rem}.hac-onboarding-progress ol{display:none}.hac-onboarding-progress__mobile{display:block;margin:0 0 .6rem}.hac-category-grid{grid-template-columns:1fr}.hac-onboarding-actions{display:grid;grid-template-columns:1fr}.hac-onboarding-actions .hac-button{margin-left:0;min-height:48px;width:100%}.hac-onboarding-actions .hac-button--primary{order:-1}}

/* Supplier onboarding uses one stable workspace grid on every step. */
.hac-auth-page--supplier-onboarding{--hac-onboarding-content-width:50rem}
.hac-onboarding-panel{justify-items:center}
.hac-onboarding-inner{min-width:0;width:100%;max-width:var(--hac-onboarding-content-width)}
.hac-onboarding-progress,.hac-auth-page--supplier-onboarding .hac-auth-heading,.hac-onboarding-form{min-width:0;width:100%;max-width:none}
.hac-onboarding-actions{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;width:100%}
.hac-onboarding-actions .hac-button{margin-left:0;width:auto}
.hac-onboarding-actions [value=back]{grid-column:1;justify-self:start}
.hac-onboarding-actions [value=save_exit]{grid-column:2;justify-self:center}
.hac-onboarding-actions [value=continue],.hac-onboarding-actions [value=submit]{grid-column:3;justify-self:end}
.hac-category-grid{max-height:30rem;overflow-y:auto;overscroll-behavior:contain;padding:.25rem .4rem .25rem .25rem;scrollbar-gutter:stable}
.hac-review,.hac-review section{min-width:0;width:100%}
.hac-review section{padding:1.15rem 1.25rem}
.hac-review section header{gap:1rem}
.hac-review dl{display:grid;grid-template-columns:minmax(9rem,1fr) minmax(0,2fr);gap:.35rem 1rem;margin-bottom:0}
.hac-review dt{font-weight:700}.hac-review dd{margin:0;overflow-wrap:anywhere}
@media (max-width:767px){.hac-onboarding-actions{grid-template-columns:1fr;gap:.75rem}.hac-onboarding-actions .hac-button{min-height:48px;width:100%}.hac-onboarding-actions [value=continue],.hac-onboarding-actions [value=submit]{grid-column:1;grid-row:1;justify-self:stretch}.hac-onboarding-actions [value=save_exit]{grid-column:1;grid-row:2;justify-self:stretch}.hac-onboarding-actions [value=back]{grid-column:1;grid-row:3;justify-self:stretch}.hac-category-grid{max-height:26rem;padding-right:.25rem}.hac-review dl{grid-template-columns:1fr;gap:.15rem}.hac-review dd+dt{margin-top:.55rem}}

/* One centred brand axis for every desktop authentication shell. */
.hac-auth-brand{--hac-brand-content-width:31rem;align-items:center;padding-inline:clamp(2rem,5vw,5rem)}
.hac-auth-brand>.hac-wordmark,.hac-auth-brand__message,.hac-auth-brand__support{width:min(100%,var(--hac-brand-content-width))}
.hac-auth-brand>.hac-wordmark{justify-content:center}
.hac-auth-brand__message{text-align:center}
.hac-auth-brand__message>p:last-child{margin-inline:auto}
.hac-auth-brand__support{text-align:center}

.hac-field input[aria-invalid="true"],.hac-consent input[aria-invalid="true"]{border-color:#b42318;box-shadow:0 0 0 1px #b42318}.hac-field__hint,.hac-field__error,.hac-error-summary{overflow-wrap:anywhere}.hac-form,.hac-field,.hac-consent{min-width:0}.hac-form input{max-width:100%;box-sizing:border-box}
