@import url("/assets/noot-account-icons.css?v=20260912-sign-in-entry-1");
/* Customer sign-in screens share the v4 landing and checkout visual language. */
body.account-auth-body { margin:0; min-height:100vh; background:var(--noot-canvas); color:var(--noot-forest); font-family:var(--noot-font); }
.account-auth-body .account-auth-skip { position:fixed; top:8px; left:16px; z-index:100; padding:12px 16px; border-radius:8px; background:#fff; color:var(--noot-forest); transform:translateY(-160%); }
.account-auth-body .account-auth-skip:focus { transform:translateY(0); }
.account-auth-body .account-auth-nav { position:sticky; top:0; z-index:40; border-bottom:1px solid #e1e5df; background:var(--noot-paper); }
.account-auth-body .account-auth-nav-inner { display:flex; align-items:center; justify-content:space-between; gap:28px; max-width:none; height:76px; margin:0; padding:0 24px; }
.account-auth-body .account-auth-logo { display:flex; align-items:center; min-height:44px; width:auto; }
.account-auth-body .account-auth-logo img { display:block; width:112px; height:44px; object-fit:contain; object-position:left center; }
.account-auth-body svg { width:20px; height:20px; flex:none; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.account-auth-body .account-auth-nav a { color:var(--noot-forest); text-decoration:none; }
.account-auth-body .account-auth-nav a:hover { color:var(--noot-green-dark); }
.account-auth-body .account-auth-shell { display:grid; grid-template-columns:minmax(0,1fr); align-content:start; gap:0; width:min(580px,100%); min-height:0; margin:0 auto; padding:64px 24px 48px; }
.account-auth-body .account-auth-panel { gap:26px; padding:32px; border:1px solid #078d48; border-radius:8px; background:#fff; box-shadow:0 8px 28px #063f2d06; }
.account-auth-body .account-auth-panel-head { display:block; }
.account-auth-body .account-auth-panel-head > div { display:block; }
.account-auth-body .account-auth-panel-head span { display:block; font-size:11px; line-height:1.4; font-weight:800; letter-spacing:0; color:var(--noot-forest); text-transform:uppercase; }
.account-auth-body .account-auth-panel-head h1 { margin:8px 0 10px; color:var(--noot-forest); font-family:var(--noot-font); font-size:40px; font-weight:800; line-height:1.08; letter-spacing:0; }
.account-auth-body .account-auth-panel-head p { margin:0; max-width:34ch; color:var(--noot-muted); font-size:16px; font-weight:400; line-height:1.5; }
.account-auth-body .account-auth-form { gap:18px; }
.account-auth-body .account-auth-tabs { gap:4px; padding:4px; border:1px solid #319569; border-radius:999px; background:#fff; }
.account-auth-body .account-auth-tabs button { min-height:46px; padding:8px 6px; border-radius:999px; color:var(--noot-muted); font-size:15px; font-weight:650; line-height:1.2; }
.account-auth-body .account-auth-tabs button:hover { background:#f4f6f2; color:var(--noot-forest); }
.account-auth-body .account-auth-tabs button.active { background:var(--noot-green); color:#fff; font-weight:750; }
.account-auth-body .account-auth-form label { gap:7px; color:var(--noot-forest); font-size:14px; font-weight:650; letter-spacing:0; text-transform:none; }
.account-auth-body .account-auth-form input { box-sizing:border-box; width:100%; min-width:0; min-height:52px; padding:12px 14px; border:1px solid #cdd8d0; border-radius:8px; background:#fff; color:var(--noot-forest); font:400 16px/1.4 var(--noot-font); }
.account-auth-body .account-auth-form input:is(:autofill, :-webkit-autofill) { -webkit-text-fill-color:var(--noot-forest); caret-color:var(--noot-forest); box-shadow:0 0 0 1000px #f2f7ef inset; }
.account-auth-body .account-auth-submit { display:flex; justify-content:space-between; gap:16px; min-height:72px; width:100%; padding:12px 14px 12px 20px; border:1px solid var(--noot-green); border-radius:10px; background:var(--noot-green); color:#fff; font-size:19px; font-weight:750; text-align:left; white-space:normal; line-height:1.2; }
.account-auth-body .account-auth-submit:hover { background:var(--noot-green-dark); border-color:var(--noot-green-dark); }
.account-auth-body .account-auth-submit:disabled { cursor:wait; opacity:.65; }
.account-auth-body .account-auth-arrow { display:grid; place-items:center; width:44px; height:44px; flex:none; border-radius:50%; background:var(--noot-paper); color:var(--noot-green); }
.account-auth-body .account-auth-arrow svg { width:26px; height:26px; stroke-width:2.2; }
.account-auth-body .account-auth-secondary { min-height:44px; margin:-6px 0 -8px; border:0; background:transparent; color:var(--noot-muted); font-size:14px; font-weight:600; text-decoration:underline; text-underline-offset:3px; }
.account-auth-body .account-auth-secondary:hover { background:transparent; color:var(--noot-green-dark); }
.account-auth-body .account-auth-security { display:flex; align-items:center; justify-content:center; gap:7px; margin:-8px 0 0; color:var(--noot-muted); font-size:12px; font-weight:400; line-height:1.4; }
.account-auth-body .account-auth-security svg { width:14px; height:14px; }
.account-auth-body .account-auth-notice .alert { margin:0; padding:12px 14px; border-radius:8px; font-size:14px; font-weight:400; line-height:1.45; overflow-wrap:anywhere; }
.account-auth-body .account-auth-notice .alert.error { border-color:#e7bdb5; background:#fff2ee; color:#903e31; }
.account-auth-body .account-auth-notice .alert.success { border-color:#bbd8c3; background:#eff7ee; color:var(--noot-forest); }
.account-auth-body :is(a,button,input,summary):focus-visible { outline:2px solid var(--noot-green-dark); outline-offset:3px; box-shadow:none; }
@media (max-width:760px) {
  .account-auth-body .account-auth-nav-inner { height:76px; padding:0 16px; }
  .account-auth-body .account-auth-logo img { width:112px; height:44px; }
  .account-auth-body .account-auth-shell { padding:28px 16px 36px; }
  .account-auth-body .account-auth-panel { gap:24px; padding:24px 20px; }
  .account-auth-body .account-auth-panel-head h1 { font-size:34px; }
  .account-auth-body .account-auth-panel-head p { font-size:15px; }
  .account-auth-body .account-auth-submit { font-size:18px; }
}
@media (max-width:360px) {
  .account-auth-body .account-auth-panel { padding:22px 16px; }
  .account-auth-body .account-auth-tabs button { font-size:14px; }
  .account-auth-body .account-auth-submit { gap:10px; padding-left:14px; font-size:16px; }
}
.account-auth-body [hidden] { display:none !important; }

/* Login and an unavailable customer session open the same tabbed sign-in card. */
.account-auth-body .account-sign-in-shell { width:min(580px,100%); padding-top:40px; }
.account-v2-body.account-session-unverified .account-main-v2 { padding:40px 24px 48px; }
.account-v2-body.account-session-unverified .account-workspace { background:var(--noot-canvas); }
.account-session-unverified :is(.account-content-breadcrumbs,.account-notice):empty { display:none; }
.account-sign-in { box-sizing:border-box; display:grid; gap:24px; width:min(100%,532px); margin:0 auto; padding:32px; border:1px solid var(--noot-green); border-radius:8px; background:#fff; color:var(--noot-forest); box-shadow:0 8px 28px #063f2d06; scroll-margin-top:96px; }
.account-sign-in .account-sign-in-eyebrow { display:block; color:var(--noot-forest); font:800 11px/1.4 var(--noot-font); letter-spacing:0; text-transform:uppercase; }
.account-sign-in h1 { margin:8px 0 10px; color:var(--noot-forest); font:800 40px/1.08 var(--noot-font); letter-spacing:0; overflow-wrap:break-word; }
.account-sign-in .account-sign-in-head p { margin:0; color:var(--noot-muted); font:400 16px/1.5 var(--noot-font); }
.account-sign-in .account-auth-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; margin:0; padding:4px; border:1px solid var(--noot-green); border-radius:999px; background:#fff; }
.account-sign-in .account-auth-tabs button { min-width:0; min-height:46px; padding:8px 6px; border:0; border-radius:999px; background:transparent; color:var(--noot-muted); font:650 15px/1.2 var(--noot-font); letter-spacing:0; box-shadow:none; }
.account-sign-in .account-auth-tabs button:hover { background:#f2f3f2; color:var(--noot-forest); }
.account-sign-in .account-auth-tabs button.active { background:var(--noot-green); color:#fff; font-weight:750; }
.account-sign-in .account-auth-form { display:grid; gap:20px; margin:0; }
.account-sign-in .account-auth-form label { display:grid; gap:8px; color:var(--noot-forest); font:650 15px/1.4 var(--noot-font); letter-spacing:0; text-transform:none; }
.account-sign-in .account-auth-form input { box-sizing:border-box; width:100%; min-width:0; min-height:52px; padding:12px 14px; border:1px solid var(--noot-line); border-radius:8px; background:#fff; color:var(--noot-forest); font:400 16px/1.4 var(--noot-font); }
.account-sign-in .account-auth-submit { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:72px; width:100%; padding:12px 14px 12px 20px; border:1px solid var(--noot-green); border-radius:8px; background:var(--noot-green); color:#fff; font:750 18px/1.3 var(--noot-font); text-align:left; white-space:normal; }
.account-sign-in .account-auth-submit:hover { background:var(--noot-forest); border-color:var(--noot-forest); }
.account-sign-in button:disabled { opacity:.65; cursor:wait; }
.account-sign-in .account-auth-arrow { display:grid; place-items:center; width:44px; height:44px; flex:none; border-radius:50%; background:#fff; color:var(--noot-green); font-size:24px; }
.account-sign-in .account-sign-in-footer { display:grid; gap:4px; margin:0; padding:0; border:0; background:transparent; }
.account-sign-in .account-auth-secondary { display:flex; align-items:center; justify-content:center; min-height:44px; margin:0; padding:8px; border:0; background:transparent; color:var(--noot-muted); font:600 14px/1.4 var(--noot-font); text-decoration:underline; text-underline-offset:3px; }
.account-sign-in .account-auth-security { display:flex; align-items:center; justify-content:center; gap:8px; margin:0; color:var(--noot-muted); font:400 13px/1.4 var(--noot-font); }
.account-sign-in .account-auth-notice:empty { display:none; }
.account-sign-in .account-auth-notice .alert { margin:0; padding:14px 16px; border-radius:8px; font:400 15px/1.5 var(--noot-font); overflow-wrap:anywhere; }
.account-sign-in .account-auth-notice .alert.success { background:#eff7ee; border-color:#bbd8c3; color:var(--noot-forest); }
.account-sign-in .account-auth-notice .alert.error { background:#fff2ee; border-color:#e7bdb5; color:#903e31; }
.account-sign-in [hidden] { display:none !important; }
.account-sign-in :is(a,button,input):focus-visible { outline:2px solid var(--noot-green-dark); outline-offset:3px; box-shadow:none; }
.account-auth-body .account-auth-menu-button { display:grid; place-items:center; flex:none; width:44px; height:44px; min-height:44px; padding:0; border:1px solid var(--noot-line); border-radius:50%; background:transparent; color:var(--noot-forest); font-size:22px; box-shadow:none; }
.account-auth-body .account-auth-menu-button:is(:hover,:focus-visible,[aria-expanded="true"]), .account-auth-body [data-auth-menu-close] { background:var(--noot-forest); color:#fff; border-color:var(--noot-forest); }
.account-auth-body.auth-navigation-open { overflow:hidden; }
.account-auth-body .account-auth-navigation { position:fixed; inset:82px 24px auto auto; width:min(360px,calc(100vw - 24px)); max-width:none; max-height:calc(100dvh - 106px); margin:0; padding:0; border:1px solid var(--noot-line); border-radius:8px; overflow:hidden; background:var(--noot-paper); color:var(--noot-forest); box-shadow:var(--noot-shadow-pop); }
.account-auth-body .account-auth-navigation::backdrop { background:rgb(16 33 22 / 28%); }
.account-auth-body .account-auth-navigation-panel { display:grid; grid-template-rows:auto minmax(0,1fr); gap:12px; padding:16px; max-height:inherit; overflow:hidden; box-sizing:border-box; }
.account-auth-body .account-auth-navigation-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-bottom:12px; border-bottom:1px solid var(--noot-line); }
.account-auth-body .account-auth-navigation-head img { display:block; width:100px; height:44px; object-fit:contain; object-position:left center; }
.account-auth-body .account-auth-navigation nav { display:grid; gap:4px; min-height:0; padding:3px; overflow-y:auto; overscroll-behavior:contain; }
.account-auth-body .account-auth-navigation nav a { display:flex; align-items:center; gap:12px; min-height:48px; padding:12px 14px; border-radius:6px; color:var(--noot-forest); text-decoration:none; font:700 16px/1.3 var(--noot-font); }
.account-auth-body .account-auth-navigation nav a i { flex:none; width:22px; color:var(--noot-green); text-align:center; font-size:20px; }
.account-auth-body .account-auth-navigation nav a:is(:hover,:focus-visible) { background:var(--noot-forest); color:#fff; }
.account-auth-body .account-auth-navigation nav a:is(:hover,:focus-visible) i { color:#fff; }
@media (max-width:760px) {
  .account-auth-body .account-sign-in-shell { padding-top:28px; }
  .account-v2-body.account-session-unverified .account-main-v2 { padding:28px 16px 36px; }
  .account-sign-in { padding:24px 20px; }
  .account-sign-in h1 { font-size:34px; }
  .account-sign-in .account-sign-in-head p { font-size:15px; }
  .account-auth-body .account-auth-navigation { inset:84px 12px auto auto; max-height:calc(100dvh - 100px); }
}
@media (max-width:360px) {
  .account-sign-in { padding:22px 16px; gap:20px; }
  .account-sign-in h1 { font-size:32px; }
  .account-sign-in .account-auth-tabs button { font-size:14px; }
  .account-sign-in .account-auth-submit { gap:10px; padding-left:14px; font-size:16px; }
}
