/* Greenshinebee's open, editorial presentation, using Denuino blue/navy.
   Only the customer claims flow is affected; admin and other account pages retain their styles. */
/* The footer opens a CMS content page, separate from the account forms below.
   Preserve its saved HTML and translations, normalize only this page's host. */
body.store-page-shop-page:has(.dn-claim-page):not(.admin-root) { --store-page-bg:#f7faff !important; background:#f7faff !important; }
body.store-page-shop-page:not(.admin-root) .dn-claim-page,
body.store-page-shop-page:not(.admin-root) .dn-claim-page :is(.page-designer-content,.content-page) {
 border:0 !important; border-radius:0 !important; box-shadow:none !important;
 background:transparent !important; backdrop-filter:none !important;
 min-height:0 !important; min-block-size:0 !important; padding:0 !important;
}
body.store-page-shop-page:not(.admin-root) .dn-claim-page { width:100% !important; max-width:none !important; margin:24px auto 48px !important; color:#233b56 !important; }
body.store-page-shop-page:not(.admin-root) .dn-claim-page .content-page { width:100% !important; max-width:none !important; inline-size:100% !important; max-inline-size:none !important; margin:0 !important; }
body.store-page-shop-page:not(.admin-root) .dn-claim-page .dn-claim-landing {
 position:relative; isolation:isolate; overflow:hidden; width:calc(100% - 32px) !important;
 max-width:1180px !important; margin:0 auto !important; min-height:184px !important;
 padding:36px 300px 36px 124px !important; border:0 !important; border-radius:26px !important;
 background:linear-gradient(115deg,#f7fbff,#e8f2ff) !important; color:#233b56 !important;
 box-shadow:none !important; backdrop-filter:none !important;
}
.dn-claim-landing::after { content:""; position:absolute; z-index:-1; pointer-events:none; width:280px; height:280px; border:1px solid #d9e7fa; border-radius:50%; right:-90px; top:-140px; }
.dn-claim-landing-icon { position:absolute; left:38px; top:50%; transform:translateY(-50%); width:60px; height:60px; display:grid; place-items:center; border-radius:20px; background:#deecff; color:#086bdc; }
.dn-claim-landing-icon svg { width:28px; height:28px; }
body.store-page-shop-page:not(.admin-root) .dn-claim-landing .dn-claim-landing-eyebrow { margin:0 0 8px; color:#45688f !important; font:800 11px/1.4 system-ui; letter-spacing:.1em; text-transform:uppercase; }
body.store-page-shop-page:not(.admin-root) .dn-claim-landing h1 { margin:0 0 10px !important; color:#142b49 !important; font:700 clamp(24px,2.2vw,30px)/1.2 system-ui !important; letter-spacing:-.025em; }
body.store-page-shop-page:not(.admin-root) .dn-claim-landing p { color:#61748d; font-size:14px; line-height:1.7; margin:0; }
body.store-page-shop-page:not(.admin-root) .dn-claim-landing a.btn-primary {
 position:absolute; right:38px; top:50%; transform:translateY(-50%); display:inline-flex; align-items:center; gap:16px;
 min-height:46px; padding:12px 24px; border:0 !important; border-radius:999px !important;
 background:#142b49 !important; color:#fff !important; box-shadow:none !important; text-decoration:none;
 transition:background-color 180ms ease,box-shadow 180ms ease;
}
.dn-claim-landing a.btn-primary::after { content:"→"; font-size:20px; line-height:1; }
body.store-page-shop-page:not(.admin-root) .dn-claim-landing a.btn-primary:hover { background:#086bdc !important; box-shadow:0 8px 20px #086bdc20 !important; }
.dn-claim-landing a:focus-visible { outline:3px solid #086bdc; outline-offset:4px; }
@media(max-width:999px) {
 body.store-page-shop-page:not(.admin-root) .dn-claim-page .dn-claim-landing { padding:28px !important; }
 .dn-claim-landing-icon { position:static; transform:none; margin-bottom:18px; }
 body.store-page-shop-page:not(.admin-root) .dn-claim-landing a.btn-primary { position:static; transform:none; margin-top:20px; }
}
@media(prefers-reduced-motion:reduce) { .dn-claim-landing a.btn-primary { transition:none !important; } }
body:is(.store-page-account-claim,.store-page-account-guestclaims):not(.admin-root) {
 --ui-heading:#142b49; --ui-text:#233b56; --ui-muted:#61748d;
 --ui-accent:#086bdc; --ui-link:#086bdc; --store-page-bg:#f7faff !important;
 background:#f7faff !important; color:#233b56;
}
body:is(.store-page-account-claim,.store-page-account-guestclaims):not(.admin-root) :is(.theme-universal-main,.claim-page,.claim-page-shell,.auth-page,.auth-card,.claim-form,.claim-product-summary,.claim-type-picker,.claim-question,.claim-customer-strip,.claim-submit) {
 border:0 !important; border-radius:0 !important; box-shadow:none !important;
 background:transparent !important; backdrop-filter:none !important;
}
body:is(.store-page-account-claim,.store-page-account-guestclaims):not(.admin-root) .theme-universal-main { min-width:0; }
body.store-page-account-guestclaims:not(.admin-root) .auth-page { padding:clamp(28px,5vw,64px) 0 !important; }
body.store-page-account-guestclaims:not(.admin-root) .auth-card { padding:clamp(16px,3vw,32px) !important; }
body:is(.store-page-account-claim,.store-page-account-guestclaims):not(.admin-root) h1 {
 font-family:Georgia,"Times New Roman",serif !important; font-size:clamp(28px,3vw,42px) !important;
 font-weight:500 !important; line-height:1.18; letter-spacing:-.025em; color:#142b49 !important;
}
body.store-page-account-claim:not(.admin-root) .claim-page-shell { width:min(1180px,100%); padding:32px clamp(16px,2vw,28px) 64px !important; }
body.store-page-account-claim:not(.admin-root) .claim-submit { padding:16px 0; }
body.store-page-account-claim:not(.admin-root) .claim-submit p { color:#61748d !important; }
body.store-page-account-claim:not(.admin-root) .claim-layout { grid-template-columns:minmax(220px,.75fr) minmax(0,2fr); gap:clamp(24px,4vw,64px); }
body.store-page-account-claim:not(.admin-root) .claim-product-summary { padding:0; }
body.store-page-account-claim:not(.admin-root) .claim-form { padding:0 !important; gap:28px; }
body.store-page-account-claim:not(.admin-root) :is(.claim-type-picker,.claim-question) { padding:0; min-width:0; }
body.store-page-account-claim:not(.admin-root) .claim-customer-strip { padding:12px 0; gap:16px; }
body.store-page-account-claim:not(.admin-root) .claim-customer-strip div { border:0; padding:0; min-width:0; }
body.store-page-account-claim:not(.admin-root) .claim-customer-strip strong { overflow:visible; overflow-wrap:anywhere; }
body.store-page-account-claim:not(.admin-root) :is(.claim-type-picker label > span,.claim-option-grid > label,.claim-option-grid span) {
 border:0 !important; box-shadow:none !important; border-radius:12px !important;
 background:#f0f5fc !important; color:#233b56 !important;
 transition:background-color 180ms ease,transform 180ms ease;
}
body.store-page-account-claim:not(.admin-root) .claim-type-picker input:checked + span,
body.store-page-account-claim:not(.admin-root) .claim-option-grid input:checked + span { background:#e8f2ff !important; color:#086bdc !important; }
body.store-page-account-claim:not(.admin-root) :is(.claim-type-picker,.claim-option-grid) label:hover > span { background:#e8f2ff !important; transform:translateY(-2px); }
body.store-page-account-claim:not(.admin-root) :is(.claim-type-picker,.claim-option-grid) input:focus-visible + span { outline:2px solid #086bdc; outline-offset:3px; }
body:is(.store-page-account-claim,.store-page-account-guestclaims):not(.admin-root) :is(.form-control,.form-select) {
 min-height:46px; background:#fff !important; color:#233b56 !important;
 border:1px solid #d9e5f4 !important; border-radius:12px !important;
 transition:border-color 180ms ease,box-shadow 180ms ease;
}
body:is(.store-page-account-claim,.store-page-account-guestclaims):not(.admin-root) :is(.form-control,.form-select):focus {
 border-color:#086bdc !important; box-shadow:0 0 0 3px #086bdc24 !important;
}
body:is(.store-page-account-claim,.store-page-account-guestclaims):not(.admin-root) .btn-primary {
 min-height:46px; border:0 !important; border-radius:999px !important;
 background:#142b49 !important; color:#fff !important; box-shadow:none !important;
 transition:background-color 180ms ease,transform 180ms ease;
}
body:is(.store-page-account-claim,.store-page-account-guestclaims):not(.admin-root) .btn-primary:hover { background:#086bdc !important; transform:translateY(-1px); }
body.store-page-account-guestclaims:not(.admin-root) .auth-card > div.border { border:0 !important; background:transparent !important; padding:16px 0 !important; }
@media(max-width:820px) {
 body.store-page-account-claim:not(.admin-root) .claim-layout { grid-template-columns:minmax(0,1fr); }
 body.store-page-account-claim:not(.admin-root) .claim-product-summary { position:static; }
}
@media(max-width:600px) {
 body.store-page-account-claim:not(.admin-root) .claim-page-shell { width:100%; padding:24px 16px 48px !important; }
 body.store-page-account-claim:not(.admin-root) .claim-page-head { grid-template-columns:1fr; }
 body.store-page-account-claim:not(.admin-root) .claim-submit { align-items:stretch; flex-direction:column; }
 body.store-page-account-claim:not(.admin-root) .claim-submit button { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
 body:is(.store-page-account-claim,.store-page-account-guestclaims):not(.admin-root) * { transition:none !important; animation:none !important; transform:none !important; }
}
