/* BUGRAW identity shared by the reusable login and back office. */
:root{
  --admin-ink:#22323d;
  --admin-muted:#71818b;
  --admin-line:#dce4e7;
  --admin-soft:#f3f6f6;
  --admin-blue:#405b6b;
  --admin-aqua:#607d8c;
  --admin-mint:#8da3ac;
  --admin-sun:#a8b0b4;
  --admin-coral:#b1b9bd;
  --admin-radius:12px;
  --admin-shadow:0 14px 36px rgba(24,42,52,.055);
}

.admin-app{color:var(--admin-ink);background:#eef2f3}
.admin-sidebar{padding:19px 13px 15px;color:#edf2f3;background:linear-gradient(160deg,#172630,#233642 72%,#1a2c36);box-shadow:8px 0 35px rgba(17,34,43,.1)}
.admin-brand{display:grid;gap:11px;margin:0 0 17px;padding:4px 8px 23px;border-bottom:1px solid rgba(222,235,239,.14)}
.admin-brand-logo{display:block;width:100%;height:92px;border-radius:11px;object-fit:cover;object-position:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.admin-brand-product strong{color:#f5f7f8;font-size:.81rem;line-height:1.3}.admin-brand-product small{margin-top:3px;color:#aebfc7;font-size:.67rem}
.admin-menu p{color:#91a8b1;font-size:.65rem}
.admin-menu a{color:#c8d5da;border-radius:9px}
.admin-menu a:hover{color:#fff;background:rgba(255,255,255,.075)}
.admin-menu a.is-active{color:#fff;background:rgba(212,229,234,.13);box-shadow:inset 3px 0 #bacbd0}
.admin-menu a.is-active>svg{color:#e4eef0}
.admin-profile>span{color:#233843;background:#dae4e6}
.admin-sidebar-bottom{border-top-color:rgba(255,255,255,.14)}
.admin-topbar{border-bottom-color:#dce4e7;background:rgba(250,251,251,.96);box-shadow:0 7px 24px rgba(29,47,56,.04)}
.topbar-status{color:#536d77}
.topbar-status svg{color:#4d8a75}
.site-preview-link{display:inline-flex;min-height:38px;align-items:center;gap:9px;padding:0 13px;border:1px solid #cdd9dd;border-radius:9px;color:#314b58;background:#fff;font-size:.74rem;font-weight:800;white-space:nowrap;transition:border-color .2s,background .2s}
.site-preview-link:hover{border-color:#7e9aa7;color:#213945;background:#f5f8f8}.site-preview-link svg{width:16px;height:16px}
.admin-surface,.metric-card{border-color:#dce4e7;background:#fff;box-shadow:var(--admin-shadow)}
.page-heading p,.form-page-heading>div>p{color:#607d8c}
.primary-action,.filter-submit{border-color:#344e5d;background:#344e5d}.primary-action:hover,.filter-submit:hover{border-color:#213746;background:#213746}
.dashboard-total-card{background:linear-gradient(135deg,#243a47,#3b5665);box-shadow:0 20px 44px rgba(25,45,55,.16)}
.dashboard-range-tabs>a.is-active,.dashboard-range-tabs>a:hover{color:#263e4a;background:#e8eff1}
.icon-blue,.mini-card-head .blue,.loyalty-icon.blue{color:#405f70;background:#e6eef1}
.icon-aqua{color:#607d8c;background:#edf2f4}
.admin-app .metric-card strong,.admin-app .page-heading h1{color:#22323d}
.admin-app .admin-breadcrumb strong{color:#243b47}
.admin-app .site-preview-link:focus-visible,.admin-app .admin-menu a:focus-visible{outline:3px solid #9aafb8;outline-offset:2px}

/* Login: a quiet, two-tone BUGRAW workspace without decorative grids. */
.access-login-page{min-height:100vh;color:#243642;background:#e9eeef}
.access-login-page:before,.access-login-page:after{display:none}
.access-login-header{min-height:78px;padding:0 clamp(25px,4.5vw,82px);border:0;background:#192a35;backdrop-filter:none}
.access-login-brand{display:flex;align-items:baseline;gap:11px;color:#fff;letter-spacing:.08em}
.access-login-brand strong{font-size:1.04rem;font-weight:900}
.access-login-brand small{color:#a6b7c0;font-size:.65rem;font-weight:600;letter-spacing:.025em}
.access-login-site{gap:9px;color:#d9e3e7;font-size:.78rem;font-weight:750}.access-login-site:hover{color:#fff}.access-login-site svg{width:17px}
.access-login-shell{display:grid;width:100%;min-height:calc(100vh - 132px);grid-template-columns:minmax(0,1.04fr) minmax(450px,.96fr);gap:0;margin:0;padding:0}
.access-login-intro{position:relative;display:flex;max-width:none;min-height:675px;flex-direction:column;align-items:flex-start;padding:clamp(43px,5vw,80px) clamp(40px,6.5vw,125px) 42px;overflow:hidden;color:#fff;background:radial-gradient(circle at 78% 18%,#354b58 0,#223541 38%,#192a35 85%)}
.access-login-intro:after{position:absolute;right:-11%;bottom:-40%;width:70%;height:83%;border:1px solid rgba(221,233,236,.1);border-radius:50%;content:"";pointer-events:none}
.access-login-wordmark{display:block;width:min(100%,470px);height:auto;max-height:230px;object-fit:contain;object-position:left center;mask-image:radial-gradient(ellipse 68% 69% at 50% 50%,#000 53%,transparent 100%)}
.access-login-intro__copy{position:relative;z-index:1;max-width:610px;margin:auto 0 72px}
.access-login-label{padding:0;border:0;border-radius:0;color:#cbd9de;background:transparent;font-size:.71rem;font-weight:800;letter-spacing:.19em}
.access-login-intro h1{margin:18px 0 0;color:#fff;font-size:clamp(3.8rem,5.4vw,6rem);font-weight:590;line-height:.98;letter-spacing:-.065em}
.access-login-intro>div>p{max-width:480px;margin:23px 0 0;color:#c0cdd2;font-size:1rem;line-height:1.65}
.access-login-index{position:relative;z-index:1;display:flex;width:100%;justify-content:space-between;gap:15px;padding-top:20px;border-top:1px solid rgba(255,255,255,.2);color:#a9bcc4;font-size:.63rem;font-weight:750;letter-spacing:.13em}
.access-login-card-wrap{display:grid;place-items:center;min-width:0;padding:56px clamp(28px,5vw,95px);background:linear-gradient(145deg,#f2f5f5,#e9eeef)}
.access-login-card{width:min(495px,100%);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.access-login-card__copy{margin:0 0 36px}
.access-login-card__copy p{color:#657e8a;font-size:.7rem;font-weight:850;letter-spacing:.16em}
.access-login-card__copy h2{margin:15px 0 0;color:#223540;font-size:clamp(2.35rem,3.1vw,3.7rem);font-weight:620;line-height:1.08;letter-spacing:-.06em}
.access-login-card__copy span{margin-top:14px;color:#6a7e87;font-size:.92rem}
.access-login-form{display:grid;gap:19px;margin:0}
.access-login-form>label{display:grid;gap:9px}
.access-login-form>label>span{color:#334b58;font-size:.79rem;font-weight:780}
.access-login-form>label>div{position:relative}
.access-login-form>label>div>svg{left:18px;width:19px;height:19px;color:#718792}
.access-login-form input{width:100%;min-height:60px;padding:0 18px 0 53px;border:1px solid #c9d5da;border-radius:12px;color:#213844;background:#fff;font-size:.94rem;box-shadow:0 8px 20px rgba(24,47,57,.035)}
.access-login-form input:focus{border-color:#537485;box-shadow:0 0 0 4px rgba(74,104,121,.13);outline:none}
.access-login-submit{display:flex;min-height:60px;justify-content:space-between;gap:18px;margin-top:7px;padding:0 21px;border-radius:12px;background:#263e4c;box-shadow:0 15px 27px rgba(34,59,72,.16);font-size:.93rem}
.access-login-submit:hover{background:#162e3b;transform:translateY(-2px)}
.access-login-submit svg{width:19px;height:19px}
.access-login-card .development-login-button{min-height:46px;border:1px solid #cdd8dc;border-radius:10px;color:#465f6c;background:transparent;font-size:.76rem}
.access-login-card .development-login-button:hover{border-color:#8ca3ae;background:#fff}
.development-login-divider{margin:25px 0 15px;color:#8899a0}
.development-login-divider:before,.development-login-divider:after{background:#cfdadd}
.access-login-help{margin-top:22px;color:#82949c;font-size:.68rem}
.access-login-help svg{width:15px;flex-basis:15px}
.access-login-footer{min-height:54px;padding:0 clamp(25px,4.5vw,82px);color:#adc0c8;background:#192a35;font-size:.66rem}
@media(max-width:1050px){
  .access-login-shell{grid-template-columns:1fr 1fr}.access-login-intro{padding:55px 44px 38px}.access-login-card-wrap{padding:48px 40px}.access-login-intro h1{font-size:clamp(3.1rem,5.7vw,4.7rem)}
}
@media(max-width:800px){
  .access-login-shell{grid-template-columns:1fr}.access-login-intro{min-height:430px;padding:35px 30px}.access-login-wordmark{width:min(340px,90%);max-height:160px}.access-login-intro__copy{margin:8px 0 33px}.access-login-intro h1{font-size:clamp(3rem,9vw,4.5rem)}.access-login-index{margin-top:auto}.access-login-card-wrap{padding:56px 30px 65px}.access-login-card{width:min(490px,100%)}
}
@media(max-width:520px){
  .access-login-header{min-height:67px;padding:0 20px}.access-login-brand{display:grid;gap:0}.access-login-brand strong{font-size:.9rem}.access-login-brand small{font-size:.5rem}.access-login-site{font-size:.69rem}.access-login-site svg{width:15px}
  .access-login-intro{min-height:410px;padding:24px 23px 28px}.access-login-wordmark{width:min(300px,96%);max-height:145px}.access-login-intro__copy{margin:7px 0 24px}.access-login-intro h1{font-size:3.05rem}.access-login-intro>div>p{margin-top:13px;font-size:.87rem}.access-login-index{font-size:.53rem}
  .access-login-card-wrap{padding:48px 23px 55px}.access-login-card__copy{margin-bottom:29px}.access-login-card__copy h2{font-size:2.35rem}.access-login-form input{min-height:56px}.access-login-footer{align-items:flex-start;flex-direction:column;justify-content:center;gap:4px;padding:15px 23px}
  .admin-topbar{padding:0 18px}.topbar-status{display:none}.site-preview-link{min-height:35px;padding:0 9px;font-size:.66rem}
}

/* The BUGRAW name is typeset, while the small mark over G is vector decoration. */
.bugraw-wordmark{display:block;width:max-content;max-width:100%;color:#f5f7f8;font-family:Arial,Helvetica,sans-serif;font-size:2.25rem;font-weight:600;line-height:1.18;letter-spacing:-.075em;white-space:nowrap}
.bugraw-g{position:relative;display:inline-block}
.bugraw-g svg{position:absolute;top:-.22em;left:50%;width:.78em;height:.3em;overflow:visible;fill:none;stroke:currentColor;stroke-width:3.6;stroke-linecap:round;stroke-linejoin:round;transform:translateX(-50%)}
.admin-brand{gap:4px;padding:22px 10px 26px}
.admin-brand .bugraw-wordmark{font-size:2.15rem}
.admin-brand-product small{margin-top:0;color:#aebfc7;font-size:.64rem;font-weight:750;letter-spacing:.22em}

/* Full-height login with a soft transition from graphite to porcelain. */
.access-login-page{min-height:100dvh;background:#f4f6f6}
.access-login-shell{min-height:100dvh;grid-template-columns:minmax(0,1.07fr) minmax(450px,.93fr);background:linear-gradient(90deg,#1b2d38 0%,#263b47 43%,#6e828b 49%,#e5eaeb 58%,#f4f6f6 68%)}
.access-login-intro{min-height:100dvh;justify-content:center;padding:clamp(45px,5vw,92px) clamp(38px,6.3vw,120px);background:transparent}
.access-login-intro:after{display:none}
.access-login-intro__copy{max-width:none;margin:0}
.access-login-wordmark{width:max-content;max-width:100%;height:auto;max-height:none;font-size:clamp(5.5rem,8.2vw,10.5rem);font-weight:550;line-height:1.18;mask-image:none;object-fit:unset}
.access-login-wordmark-sub{display:block;margin:0 0 65px 3px;color:#c5d0d5;font-size:clamp(.72rem,1vw,1rem);font-weight:600;letter-spacing:.28em}
.access-login-intro h1{margin:0;max-width:670px;color:#f4f7f8;font-size:clamp(1.8rem,2.7vw,3.5rem);font-weight:450;line-height:1.18;letter-spacing:-.045em}
.access-login-card-wrap{min-height:100dvh;padding:55px clamp(36px,5vw,96px);background:transparent}
.access-login-card{width:min(500px,100%)}
.access-login-card__copy p{color:#526e7c}
.access-login-form input{background:rgba(255,255,255,.94)}
@media(max-width:1000px){
  .access-login-shell{grid-template-columns:1fr 1fr}.access-login-intro{padding:55px 35px}.access-login-wordmark{font-size:clamp(4.7rem,8vw,7.5rem)}.access-login-card-wrap{padding:50px 35px}
}
@media(max-width:800px){
  .access-login-shell{grid-template-columns:1fr;background:#f4f6f6}.access-login-intro{min-height:390px;padding:55px 30px 75px;background:linear-gradient(145deg,#1b2d38,#304552)}.access-login-intro:after{display:block;right:0;bottom:-1px;left:0;width:auto;height:75px;border:0;border-radius:0;background:linear-gradient(transparent,#f4f6f6);content:""}.access-login-wordmark{font-size:clamp(4.3rem,12vw,7rem)}.access-login-wordmark-sub{margin-bottom:38px}.access-login-intro h1{font-size:clamp(1.5rem,4.2vw,2.3rem)}.access-login-card-wrap{min-height:0;padding:45px 30px 75px;background:#f4f6f6}
}
@media(max-width:520px){
  .access-login-intro{min-height:350px;padding:47px 23px 70px}.access-login-wordmark{font-size:clamp(4.25rem,15vw,5.7rem)}.access-login-wordmark-sub{margin-bottom:33px;font-size:.64rem;letter-spacing:.2em}.access-login-intro h1{font-size:1.45rem}.access-login-card-wrap{padding:34px 23px 65px}
}

/* Centered brand composition and a narrow, balanced login transition. */
.bugraw-g svg{top:-.235em;stroke-width:4.5;stroke-linecap:square;stroke-linejoin:miter}
.admin-brand{align-items:center;padding:27px 12px 29px;text-align:center}
.admin-brand .bugraw-wordmark{font-size:2.48rem}
.admin-brand-product{align-self:center}
.access-login-shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:linear-gradient(90deg,#1b2d38 0%,#223643 46%,#647b86 49.5%,#dbe3e6 53%,#f4f6f6 56%,#f4f6f6 100%)}
.access-login-intro{align-items:center;padding:50px clamp(26px,4vw,70px)}
.access-login-intro__copy{width:max-content;max-width:100%;margin:0;transform:translate(22px,20px)}
.access-login-wordmark{font-size:clamp(6rem,9.45vw,11.4rem);line-height:1.14}
.access-login-intro h1{max-width:none;margin-top:23px;font-size:clamp(1.22rem,1.85vw,2.25rem);font-weight:500;line-height:1.2;letter-spacing:-.045em;white-space:nowrap}
@media(max-width:1200px){
  .access-login-intro{padding:45px 25px}.access-login-intro__copy{transform:translate(8px,16px)}.access-login-wordmark{font-size:clamp(5.5rem,9vw,8.2rem)}.access-login-intro h1{font-size:clamp(1.05rem,1.8vw,1.45rem)}
}
@media(max-width:800px){
  .access-login-shell{grid-template-columns:1fr;background:#f4f6f6}.access-login-intro{align-items:center;padding:55px 26px 76px;background:linear-gradient(145deg,#1b2d38,#304552)}.access-login-intro__copy{transform:none}.access-login-wordmark{font-size:clamp(5rem,12vw,7rem)}.access-login-intro h1{font-size:clamp(1.13rem,2.65vw,1.5rem);white-space:normal}
}
@media(max-width:520px){
  .access-login-intro{min-height:330px;padding:46px 22px 65px}.access-login-wordmark{font-size:clamp(3.9rem,15vw,5.7rem)}.access-login-intro h1{margin-top:16px;font-size:clamp(1rem,4vw,1.24rem)}
}

/* Deeper navy control palette and the rounded BUGRAW crown from the reference. */
:root{--admin-ink:#142b3d;--admin-muted:#61798b;--admin-line:#d5e0e7;--admin-soft:#edf3f7;--admin-blue:#214b67;--admin-aqua:#315d75;--admin-mint:#497f94;--admin-sun:#40677e;--admin-coral:#527287}
.admin-app{background:#e8eff4}
.admin-sidebar{background:linear-gradient(160deg,#0c1d2c,#122b3d 64%,#0a2232);box-shadow:8px 0 35px rgba(7,29,45,.2)}
.admin-menu a.is-active{background:rgba(207,232,242,.17);box-shadow:inset 3px 0 #b7d8e5}
.admin-topbar{background:#f8fafc;border-bottom-color:#cbd9e3}
.dashboard-total-card{background:linear-gradient(135deg,#122e43,#22516b);box-shadow:0 20px 44px rgba(10,38,57,.19)}
.primary-action,.filter-submit{border-color:#214b67;background:#214b67}.primary-action:hover,.filter-submit:hover{border-color:#15374f;background:#15374f}
.bugraw-g svg{top:-.41em;width:1em;height:.5em;fill:currentColor;stroke:none}
.admin-brand .bugraw-g svg{top:-.33em;width:.94em;height:.44em}
.admin-brand{justify-items:center}
.admin-brand-product{width:100%;transform:translateX(-4px)}
.access-login-shell{background:linear-gradient(90deg,#142938 0%,#1b3343 48.6%,#81939d 50.3%,#f4f6f6 52.2%,#f4f6f6 100%)}
.access-login-intro__copy{transform:translate(-22px,20px)}
.access-login-intro h1{width:100%;font-size:clamp(1.42rem,2.45vw,3rem);letter-spacing:-.045em}
@media(max-width:1200px){.access-login-intro__copy{transform:translate(-8px,16px)}.access-login-intro h1{font-size:clamp(1.1rem,2vw,1.65rem)}}
@media(max-width:800px){.access-login-intro{background:linear-gradient(145deg,#142938,#1e3a4d)}.access-login-intro__copy{transform:none}.access-login-intro h1{font-size:clamp(1.13rem,2.65vw,1.5rem)}}
@media(max-width:520px){.access-login-intro h1{font-size:clamp(1rem,4vw,1.24rem)}}

/* The split has only a narrow softened seam. */
.access-login-shell{background:linear-gradient(90deg,#142938 0%,#142938 49.25%,#314b5a 49.75%,#dce4e7 50.25%,#f4f6f6 50.75%,#f4f6f6 100%)}
.access-login-wordmark .bugraw-g svg{top:-.31em;width:.73em;height:.365em}

.access-login-wordmark .bugraw-g svg{top:-.27em}
.access-login-intro h1{margin-top:12px}
