/* Warm espresso surfaces: readable in dark mode without dimming product photography. */
.dark-theme .featured-menu-section { background:radial-gradient(ellipse at 100% 0,#584030 0,transparent 65%),#2e241e; color:#f8edda; border-color:#65513f; box-shadow:0 18px 50px #0e090b26 }
.dark-theme .featured-menu-section.tone-sage { background:linear-gradient(135deg,#31392e,#242820);color:#edf0e1 }
.dark-theme .featured-menu-product { background:#382c24;color:#fff1dc;border-color:#6b5440 }
.dark-theme .featured-menu-price strong { color:#fff1dc }
.dark-theme .featured-menu-price del { color:#c6ad94 }
.dark-theme .featured-menu-product>i { background:#f3d8b2;color:#302219 }
.dark-theme .featured-menu-copy small { opacity:1 }
.dark-theme .order-mode-badge { color:#b9e4c9;border-color:#55745c;background:#223529 }
.dark-theme .account-panel .account-hero { background:linear-gradient(120deg,#3c2e23,#504032);color:#fff0d8;border:1px solid #6b5744 }
.dark-theme .account-panel .account-hero p,.dark-theme .account-panel .account-hero small { color:#dec5a8 }
.dark-theme .account-panel .account-hero h3 { color:#fff0d8 }
.dark-theme .account-panel::after,.dark-theme .checkout-panel::after,.dark-theme .feedback-panel::after { opacity:.12 }
.dark-theme .account-panel::before,.dark-theme .checkout-panel::before,.dark-theme .feedback-panel::before { opacity:.22 }
.dark-theme .account-orders-section>header span { color:#b5dcc0 }
.brand-logo-refined .splash-title,.brand-logo-refined .splash-subtitle,.brand-logo-refined .splash-ring { display:none }
.brand-logo-refined .splash-logo-wrap::before { display:none }
.brand-logo-refined .splash-content { max-width:530px;padding:54px 38px 38px;border-radius:30px;background:linear-gradient(150deg,#fff4dfed,#f5dfbde8);box-shadow:0 28px 90px #51331320 }
.brand-logo-refined .splash-logo-wrap { width:min(320px,72vw);padding:0;border:0;background:none;box-shadow:none;margin:28px auto 40px }
.brand-logo-refined #splash-logo-img { border-radius:12px;box-shadow:0 12px 36px #56391e0a }
.brand-logo-refined .splash-btn { min-height:56px;box-shadow:0 12px 28px #4029101a }
.brand-logo-refined .splash-eyebrow { color:#80634b;letter-spacing:.24em }
.brand-logo-refined.dark-theme .splash-screen { background:radial-gradient(ellipse at 80% 15%,#5c3b26 0,transparent 55%),radial-gradient(ellipse at 0 100%,#332f28 0,transparent 60%),#181512 }
.brand-logo-refined.dark-theme .splash-content { background:linear-gradient(150deg,#352b24ed,#231e19f5);border-color:#69523b;box-shadow:0 30px 90px #0004 }
.brand-logo-refined.dark-theme .splash-eyebrow { color:#ddc4a5 }
.brand-logo-refined.dark-theme .splash-btn { background:#f9e7c9;color:#34251b }
.brand-logo-refined.dark-theme .splash-details,.brand-logo-refined.dark-theme .splash-socials { color:#e5ceb2 }
.rewards-card,.rewards-checkout,.customer-admin-panel { box-sizing:border-box;border:1px solid var(--truth-border,#d6c4ac);border-radius:20px;padding:22px;margin:16px 0;background:var(--truth-surface,#fffaf0);color:var(--truth-text,#30251e) }
.rewards-card { position:relative;overflow:hidden;background:radial-gradient(ellipse at 100% 0,#846041 0,transparent 65%),#30251f;color:#fff1dc;border-color:#987653 }
.credit-heading { display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.14em;text-transform:uppercase }
.credit-heading>span:last-child { font-size:32px;color:#edc18c }
.credit-balance { display:block;font-size:clamp(28px,6vw,40px);letter-spacing:-.04em;margin:12px 0 }
.rewards-card p,.rewards-card small { color:#e5cfb5;line-height:1.7;font-size:12px }
.rewards-card details { border-top:1px solid #92765966;margin-top:18px;padding-top:14px }
.rewards-card summary,.customer-admin-panel summary { cursor:pointer;min-height:32px;font-weight:600;font-size:14px }
.credit-ledger>div { display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #92765944 }
.credit-ledger small,.credit-ledger b { display:block;font-size:12px }
.credit-ledger strong { font-size:13px;white-space:nowrap }
.gift-envelope { display:grid;grid-template-columns:40px 1fr;gap:4px 12px;width:100%;text-align:start;margin:22px 0;padding:18px;border:1px solid #d0a779;border-radius:16px;color:#372719;background:linear-gradient(110deg,#fbeaca,#dab383);cursor:pointer;transition:transform .2s,box-shadow .2s }
.gift-envelope:hover { transform:translateY(-3px);box-shadow:0 12px 30px #0002 }
.gift-envelope>span { grid-row:span 2;font-size:36px;align-self:center }.gift-envelope small { color:#553d2a }
.rewards-text-btn,.legal-check button { background:none;border:0;color:inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer;padding:4px 0;font:inherit }
.rewards-text-btn { margin-top:14px;font-size:12px }
.rewards-notice { border:1px solid #b99865;background:#634730;color:#fff0d6;padding:14px;border-radius:12px;margin-bottom:18px;font-size:13px }
.credit-choice,.legal-check { display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.6;cursor:pointer }
.credit-choice input,.legal-check input { width:20px;height:20px;flex:0 0 20px;accent-color:#795137;margin-top:3px }
.credit-choice small { display:block;opacity:.8 }.legal-check { margin:18px 0 }
.credit-due { display:grid;grid-template-columns:1fr auto;gap:12px;margin:18px 0;font-size:13px }.credit-due strong { font-size:17px }
.cashback-preview{display:grid;grid-template-columns:34px 1fr;gap:11px;margin:16px 0;padding:14px;border:1px solid var(--truth-border);border-radius:13px;background:var(--truth-surface-2)}.cashback-preview>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#8c765a18;color:#806747}.cashback-preview.eligible{border-color:#aa8a5d}.cashback-preview small,.cashback-preview b,.cashback-preview p{display:block}.cashback-preview small{font-size:.57rem;letter-spacing:.12em;color:var(--truth-text-muted)}.cashback-preview b{margin-top:4px;font-size:.82rem}.cashback-preview p{margin:5px 0 0;font-size:.68rem;line-height:1.55;color:var(--truth-text-muted)}
.rewards-signin { display:block;width:calc(100% - 40px);margin:0 20px 24px }
.rewards-dialog { width:min(520px,calc(100% - 28px));max-height:85dvh;overflow:auto;box-sizing:border-box;border:1px solid #ba9e7b;border-radius:24px;padding:26px;background:var(--truth-surface,#fff8eb);color:var(--truth-text,#30251f);box-shadow:0 32px 100px #0005 }
.rewards-dialog::backdrop { background:#17110ed0;backdrop-filter:blur(6px) }.rewards-dialog>header { display:flex;gap:20px;justify-content:space-between;align-items:center }.rewards-dialog h2 { font:600 25px/1.2 var(--font-display,serif);margin:0 }.rewards-dialog>header button { border:1px solid #bba183;background:transparent;color:inherit;border-radius:50%;width:40px;height:40px;font-size:24px;flex:0 0 40px;cursor:pointer }
.rewards-dialog { margin:auto;inset:0 }.gift-reveal { color:var(--truth-text,#382719) }
.rewards-dialog label:not(.legal-check) { display:grid;gap:8px;margin:18px 0 }.rewards-dialog input:not([type=checkbox]),.customer-admin-panel input:not([type=checkbox]),.customer-admin-panel textarea,.customer-admin-panel select { box-sizing:border-box;width:100%;min-height:44px;border:1px solid var(--truth-border,#cbb89e);background:var(--truth-surface-2,#fff);color:inherit;border-radius:10px;padding:10px;font:inherit }
.terms-copy { font-size:13px;line-height:1.8 }.terms-copy h3 { font-size:16px;margin-top:24px }.gift-reveal { padding:34px 0;text-align:center;animation:gift-open .55s ease-out }.gift-reveal>span { display:block;font-size:70px;color:#bc8550 }.gift-reveal strong { font-size:38px;display:block }.gift-reveal p { font-size:18px }.gift-reveal small { opacity:.8 }
@keyframes gift-open { from { opacity:0;transform:translateY(18px) scale(.96) } to { opacity:1;transform:none } }
.customer-admin-grid { display:grid;grid-template-columns:minmax(260px,.85fr) minmax(300px,1.15fr);gap:20px }.customer-fields { display:grid;grid-template-columns:1fr 1fr;gap:16px }.customer-fields label,.customer-settings-form>label,.customer-admin-panel form>label { display:grid;gap:8px;margin:14px 0;font-size:13px }.customer-settings-form>label { display:flex;align-items:center }.customer-admin-panel p { font-size:13px;line-height:1.7;color:var(--truth-text-muted,#795f49) }.customer-search-row { display:flex;gap:8px;margin:12px 0 }.customer-directory-row { display:flex;justify-content:space-between;gap:14px;width:100%;text-align:start;padding:16px 0;border:0;border-bottom:1px solid var(--truth-border);background:none;color:inherit;cursor:pointer }.customer-directory-row small,.customer-order-row small { display:block;font-size:11px;margin-top:5px;color:var(--truth-text-muted) }.customer-directory-row span:last-child { text-align:end }.customer-metrics { display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0 }.customer-metrics small { display:block;font-size:11px;margin-bottom:8px }.customer-metrics b { font-size:17px }.customer-order-row { padding:14px 0;border-bottom:1px solid var(--truth-border) }.customer-admin-panel details { margin:18px 0;padding-top:14px;border-top:1px solid var(--truth-border) }
.customer-admin-panel .btn { display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 18px;border:1px solid #98724e;border-radius:12px;background:#795137;color:#fff3df;font:600 13px var(--font-body,sans-serif);cursor:pointer;white-space:normal;text-decoration:none }
.customer-admin-panel .btn-secondary { background:transparent;color:var(--truth-text,#493323) }.customer-admin-panel .btn:disabled { opacity:.55;cursor:wait }.customer-admin-panel button:focus-visible,.rewards-card button:focus-visible { outline:3px solid #be996d;outline-offset:3px }
.reward-plan-preview { padding:20px;border-radius:16px;background:linear-gradient(120deg,#34271f,#64492f);color:#ffedcd;font-size:15px;line-height:1.7;margin:16px 0 }
.reward-presets,.gift-amounts,.gift-notes { display:flex;flex-wrap:wrap;gap:8px;margin:14px 0;align-items:center }
.reward-presets button,.gift-amounts button,.gift-notes button { min-height:44px;padding:9px 14px;border-radius:24px;border:1px solid #ad895f;background:transparent;color:inherit;font:inherit;cursor:pointer }
.reward-presets button:hover,.gift-amounts button:hover { background:#ad895f22 }
.form-result:not(:empty) { padding:14px;border:1px solid #ad895f;border-radius:12px;line-height:1.6;font-size:14px;scroll-margin:100px }
.form-result[data-state=error] { color:#ffdfd1;background:#632d22;border-color:#c97955 }
.form-result[data-state=success] { color:#dcf9eb;background:#244637 }
.rewards-dialog textarea { width:100%;box-sizing:border-box;border:1px solid #ad895f;border-radius:12px;background:var(--truth-surface-2,#fff8eb);color:inherit;padding:14px;font:inherit;resize:vertical }
.rewards-dialog .primary-order-btn { margin-top:16px;width:100%;min-height:48px }.rewards-dialog .rewards-text-btn { margin-inline:12px }
.rewards-dialog small { line-height:1.6 }.sent-gift { padding:14px 0;border-bottom:1px solid #92765955 }.sent-gift small { display:block;margin-top:6px }
.gift-envelope:disabled { opacity:.5;cursor:not-allowed;transform:none }.fulfillment-badge { display:inline-block;border:1px solid currentColor;border-radius:6px;padding:4px 7px;font-size:12px }
[data-credit-panel][hidden] { display:none!important }
.credit-workspace-nav { display:flex;gap:6px;padding:5px;background:var(--truth-surface-2,#ede5da);border:1px solid var(--truth-border,#b6a38c);border-radius:16px;width:fit-content;max-width:100%;margin:12px 0 20px }
.credit-workspace-nav button { min-height:44px;border:0;border-radius:11px;padding:10px 22px;background:transparent;color:inherit;font:600 14px var(--font-body,sans-serif);cursor:pointer }
.credit-workspace-nav button[aria-pressed=true] { background:#795137;color:#fff4e4;box-shadow:0 3px 12px #0002 }
#customer-directory { max-height:440px;overflow:auto;overscroll-behavior:contain;padding-inline-end:6px }
.customer-admin-grid { align-items:start } .customer-directory-row[aria-current=true] { background:#98724e22;border-radius:10px;padding-inline:10px }
#section-customers { scroll-margin-top:90px }#section-customers code { overflow-wrap:anywhere }
#discard-reward-draft { margin-inline-start:10px }.customer-admin-panel>summary { font-size:20px;list-style:none;cursor:default }
.rewards-dialog .gift-reveal { color:var(--truth-text,#382719) }.rewards-dialog .gift-reveal p { color:inherit }
#rewards-settings>label { display:flex;align-items:flex-start;gap:12px;padding:12px 0;line-height:1.6 }
#rewards-settings input[type=checkbox] { width:20px;height:20px;min-height:20px;flex:0 0 20px;display:inline-block;margin:1px 0 0;accent-color:#b58b5c }
.reward-control-group { border:1px solid var(--truth-border,#b6a38c);border-radius:16px;padding:14px 20px;margin:24px 0;min-width:0 }
.reward-control-group legend { font-size:12px;letter-spacing:.06em;padding:0 8px;color:var(--truth-text-muted,#826345) }
#rewards-settings .reward-toggle { display:flex;align-items:flex-start;gap:12px;padding:10px 0;font-size:14px;line-height:1.7 }
.reward-control-group .customer-fields:empty { display:none }
@media(max-width:600px) { .credit-workspace-nav { width:100%;box-sizing:border-box }.credit-workspace-nav button { flex:1;min-width:0;padding:10px 8px;font-size:12px } #customer-directory { max-height:300px } }
@media(max-width:700px) { .customer-admin-grid,.customer-fields { grid-template-columns:1fr }.customer-metrics { grid-template-columns:1fr 1fr }.brand-logo-refined .splash-content { padding:38px 22px 26px;border-radius:24px }.rewards-card,.rewards-checkout { padding:18px }.rewards-dialog { padding:20px } }
@media(prefers-reduced-motion:reduce) { .gift-reveal,.gift-envelope { animation:none;transition:none }.gift-envelope:hover { transform:none } }

.otp-premium{padding:0 22px 24px}.otp-mark{display:grid;place-items:center;width:48px;height:48px;margin:4px auto 12px;border-radius:16px;background:#24201d;color:#f5d7a3;font:600 1.2rem var(--font-display)}.otp-premium>p{text-align:center;color:var(--truth-text-muted);font-size:.78rem;line-height:1.6}.otp-premium form{display:grid;gap:14px}.otp-phone,.otp-code-stage>label{display:grid;gap:7px;font-size:.72rem;font-weight:700}.otp-phone>div{display:flex;border:1px solid var(--truth-border);border-radius:12px;overflow:hidden;background:var(--truth-surface-2)}.otp-phone b{display:grid;place-items:center;padding:0 13px;border-inline-end:1px solid var(--truth-border);font-size:.8rem}.otp-phone input,.otp-code-stage input{width:100%;padding:13px;border:0;background:transparent;color:inherit;font:600 .9rem var(--font-body);outline:none}.otp-phone small{color:var(--truth-text-muted);font-weight:400}.otp-code-stage{display:grid;gap:12px;padding:16px;border:1px solid var(--truth-border);border-radius:14px;background:var(--truth-surface-2)}.otp-code-stage[hidden],.otp-send[hidden]{display:none!important}.otp-code-stage input{text-align:center;letter-spacing:.45em;font-size:1.15rem;border:1px solid var(--truth-border);border-radius:10px;background:var(--truth-surface)}.otp-sent{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px}.otp-sent>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e4f1e7;color:#28643d}.otp-sent b,.otp-sent small{display:block}.otp-sent small{margin-top:2px;color:var(--truth-text-muted);font-size:.62rem}.otp-sent button,.otp-resend{border:0;background:transparent;color:#806542;font:700 .68rem var(--font-body);cursor:pointer}.otp-resend:disabled{color:var(--truth-text-muted);cursor:default}.otp-status{min-height:20px;margin:0;color:#8a473e;font-size:.72rem;line-height:1.5}.wallet-topup{display:grid;gap:10px;margin:16px 0;padding:15px;border:1px solid var(--truth-border);border-radius:14px;background:var(--truth-surface-2)}.wallet-topup p{margin:4px 0 0!important}.wallet-topup form{display:grid;grid-template-columns:1fr auto;gap:8px}.wallet-topup input{min-width:0;padding:11px;border:1px solid var(--truth-border);border-radius:9px;background:var(--truth-surface);color:inherit}.wallet-topup button{padding:0 13px;border:0;border-radius:9px;background:#29241f;color:#fff;font:700 .7rem var(--font-body)}.wallet-topup>small{color:#8d7149}@media(max-width:390px){.wallet-topup form{grid-template-columns:1fr}.wallet-topup button{min-height:42px}}
.checkout-total-card .credit-due[hidden]{display:none!important}
.gs-checkout-gifts{margin:0 0 20px;padding:18px;border:1px solid #cdb897;border-radius:18px;background:linear-gradient(145deg,#fff9ed,#f7eddd);color:#3e2c20}
.gs-checkout-gifts>header{display:flex;gap:12px;align-items:flex-start;padding-bottom:14px;border-bottom:1px solid #d8c4a6}
.gs-checkout-gifts>header>span{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;background:#593d2b;color:#f8e9cc}
.gs-checkout-gifts>header b,.gs-gift-quantity b{display:block;font-size:14px;line-height:1.4}
.gs-checkout-gifts small{display:block;color:#725d4b;font-size:11px;line-height:1.55;margin-top:3px}
.gs-gift-quantity{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 0;border-bottom:1px solid #e0d2bd}
.gs-gift-quantity>div:first-child{min-width:0}
.gs-gift-stepper{display:flex;align-items:center;flex:none;border:1px solid #b99b76;border-radius:12px;background:#fffaf1;overflow:hidden}
.gs-gift-stepper button{display:grid;place-items:center;width:43px;height:42px;border:0;background:none;color:#4b3526;font-size:21px;cursor:pointer}
.gs-gift-stepper button:disabled{color:#baa994;cursor:not-allowed}
.gs-gift-stepper button:not(:disabled):hover,.gs-gift-stepper button:not(:disabled):focus-visible{background:#e9d8bd}
.gs-gift-stepper output{min-width:31px;text-align:center;font-size:15px;font-weight:700}
.gs-gift-selection-note{margin:12px 0 0;font-size:12px;line-height:1.5;color:#5e4936}
.otp-phone>div,.otp-code-stage input{direction:ltr}.otp-phone input{text-align:start}

#rewards-settings .reward-toggle[hidden] { display:none }

.otp-status:not(:empty){padding:12px;border:1px solid #c08565;border-radius:10px;background:#fff0df;color:#742a17;font-size:13px;font-weight:600;line-height:1.6;overflow-wrap:anywhere}
.otp-premium form[aria-busy="true"]{cursor:progress}
.otp-premium button[aria-busy="true"]{position:relative;padding-inline-end:44px;opacity:.84;cursor:progress}
.otp-premium button[aria-busy="true"]::after{content:"";position:absolute;inset-inline-end:16px;top:calc(50% - 8px);width:16px;height:16px;border:2px solid currentColor;border-inline-start-color:transparent;border-radius:50%;animation:truth-otp-spin .7s linear infinite}
.otp-status[data-kind="progress"]{border-color:#cbbd9e;background:#f5f0e5;color:#544635}
@keyframes truth-otp-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.otp-premium button[aria-busy="true"]::after{animation:none;border-style:dotted}}
