/* D6 mobile application shell: uses the established black, green, cream, white and lime palette only. */
.mobile-bottom-nav,.mobile-splash{display:none}.product-price-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.product-price-row>span{display:flex;align-items:baseline;gap:6px;min-width:0}.product-add-fab{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:50%;background:var(--blue);color:var(--white);box-shadow:0 8px 18px rgba(15,107,82,.2);transition:transform var(--ease),background var(--ease)}.product-add-fab:hover{background:var(--navy);transform:translateY(-2px)}.product-add-fab .ui-icon{width:19px;height:19px}
@media(max-width:680px){body{padding-bottom:76px}main{padding-bottom:8px}.site-header,.site-header.scrolled{height:62px}.logo img{width:31px;height:31px}.logo span{font-size:.94rem}.mobile-bottom-nav{position:fixed;z-index:2200;inset:auto 0 0;display:grid;grid-template-columns:repeat(5,1fr);min-height:70px;padding:7px max(10px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));border-top:1px solid rgba(15,107,82,.12);background:rgba(255,255,255,.94);box-shadow:0 -10px 28px rgba(11,11,11,.09);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.mobile-bottom-nav a{display:grid;place-items:center;align-content:center;gap:3px;min-width:0;color:var(--muted);font-size:.62rem;font-weight:700}.mobile-bottom-nav a.active{color:var(--blue)}.mobile-nav-icon{position:relative;display:grid;place-items:center;width:29px;height:29px;border-radius:10px}.mobile-bottom-nav a.active .mobile-nav-icon{background:rgba(15,107,82,.1)}.mobile-nav-icon .ui-icon{width:18px;height:18px}.mobile-nav-icon b{position:absolute;top:-5px;right:-8px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 4px;border-radius:9px;background:var(--coral);color:var(--navy);font-size:.55rem}.mobile-splash{position:fixed;z-index:6000;inset:0;display:grid;place-content:center;justify-items:center;gap:10px;background:linear-gradient(145deg,var(--navy),var(--blue));color:var(--white);text-align:center}.mobile-splash-mark{display:grid;place-items:center;width:76px;height:76px;margin-bottom:4px;border:1px solid rgba(255,255,255,.36);border-radius:24px;background:rgba(255,255,255,.1);box-shadow:0 16px 34px rgba(0,0,0,.22)}.mobile-splash-mark img{width:48px;filter:brightness(0) invert(1)}.mobile-splash strong{font-size:1.25rem;letter-spacing:-.04em}.mobile-splash span{font-size:2.6rem;font-weight:900;line-height:1}.mobile-splash i{display:block;width:160px;height:5px;overflow:hidden;border-radius:9px;background:rgba(255,255,255,.18)}.mobile-splash i b{display:block;height:100%;border-radius:inherit;background:var(--coral);transition:width .08s linear}.mobile-splash small{color:rgba(255,255,255,.7);font-size:.7rem}.catalog-market-hero{padding:22px 0 18px}.catalog-hero-grid{display:block}.catalog-market-visual{display:none}.catalog-hero-copy h1{font-size:clamp(2rem,10vw,2.75rem);line-height:.98}.catalog-hero-copy p{font-size:.86rem;line-height:1.5}.catalog-hero-copy .button-row{margin-top:18px}.catalog-hero-copy .btn{min-height:42px;padding:0 14px;font-size:.78rem}.catalog-benefits{display:flex;overflow-x:auto;gap:8px;margin-top:20px;padding-bottom:3px;scroll-snap-type:x proximity}.catalog-benefit{min-width:185px;flex:0 0 185px;scroll-snap-align:start;padding:10px}.catalog-benefit small{font-size:.65rem}.catalog-shop.section{padding:30px 0}.catalog-heading{align-items:end;margin-bottom:14px}.catalog-heading h2{font-size:1.45rem}.catalog-heading p{font-size:.72rem}.catalog-toolbar{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding:2px 0 10px;margin-bottom:12px;scroll-snap-type:x proximity}.catalog-toolbar>*{flex:0 0 140px;scroll-snap-align:start}.catalog-toolbar .catalog-search{flex-basis:205px}.catalog-toolbar .control{width:100%;min-height:40px;padding:8px 10px;font-size:.73rem}.catalog-shop .product-grid{display:flex!important;overflow-x:auto;gap:10px;margin-right:calc((100vw - 100%) / -2);padding:2px 12px 8px 0;scroll-snap-type:x mandatory;scrollbar-width:none}.catalog-shop .product-grid::-webkit-scrollbar{display:none}.catalog-shop .product-card{flex:0 0 min(70vw,238px);min-width:0;scroll-snap-align:start;border-radius:14px}.catalog-shop .product-image{aspect-ratio:1.2}.catalog-shop .product-body{padding:11px}.catalog-shop .product-body>small{font-size:.62rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catalog-shop .product-body h3{min-height:34px;margin:4px 0;font-size:.8rem;line-height:1.18}.catalog-shop .rating{font-size:.62rem}.catalog-shop .rating-score{padding:2px 5px}.catalog-shop .price{font-size:1rem}.catalog-shop .old-price{font-size:.64rem}.catalog-shop .discount{padding:4px 6px;font-size:.58rem}.product-add-fab{width:34px;height:34px}.product-add-fab .ui-icon{width:17px}.wallet-checkout-section{padding-bottom:28px}.wallet-checkout-head h1{font-size:2rem}.checkout-flow-card{padding:16px}.checkout-address-grid .control{min-height:40px}.checkout-method{min-height:66px;padding:10px}.checkout-order-card{display:none}.checkout-side-stack{gap:10px}.wallet-card{min-height:184px;padding:19px}.wallet-card-number{margin-top:48px;font-size:.94rem}.wallet-card-bottom{margin-top:27px}.wallet-card-bottom b{font-size:.68rem}.payment-splash-card{padding:28px 20px}.payment-splash-card h2{font-size:1.3rem}.site-footer{padding-bottom:94px}}

/* Responsive refinement: navigation yields early, drawer search stays within its panel, and image cards share one D6 surface. */
@media(max-width:1160px){.desktop-nav{display:none}.menu-btn{display:grid;place-items:center}.nav-search{margin-left:auto}.overlay{display:block;position:fixed;inset:0;z-index:1100;background:rgba(11,11,11,.42);opacity:0;visibility:hidden;transition:opacity var(--ease)}.overlay.open{opacity:1;visibility:visible}.drawer{display:block;position:fixed;z-index:1200;inset:0 0 0 auto;width:min(90vw,390px);padding:18px;background:var(--cream);transform:translateX(102%);transition:transform var(--ease);box-shadow:var(--shadow);overflow-y:auto;overscroll-behavior:contain}.drawer.open{transform:none}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.drawer .nav-search{display:block!important;max-width:none;margin:0 0 14px}.drawer .nav-search input{width:100%;min-width:0;height:42px;color:var(--white);background:var(--green)}.drawer .suggestions{position:static;max-height:260px;margin-top:7px;overflow-y:auto;border:1px solid var(--line);box-shadow:none}.drawer .suggestions a{align-items:center}.drawer .suggestions img{width:42px;height:42px;flex:none;object-fit:contain;background:var(--cream)}.drawer nav{display:grid;gap:0}.drawer nav>a{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer nav .btn{margin-top:14px}.account-chip{display:none}}
@media(max-width:680px){body{overflow-x:clip}.mobile-splash-mark img{filter:none}.market-products .product-grid{display:flex!important;gap:10px;overflow-x:auto;margin-right:calc((100vw - 100%) / -2);padding:2px 12px 10px 0;scroll-snap-type:x mandatory;scrollbar-width:auto;scrollbar-color:var(--blue) var(--cream)}.market-products .product-grid::-webkit-scrollbar{height:5px}.market-products .product-grid::-webkit-scrollbar-thumb{background:var(--blue);border-radius:99px}.market-products .product-grid::-webkit-scrollbar-track{background:var(--cream)}.market-products .product-card{flex:0 0 min(70vw,238px);scroll-snap-align:start}.market-products .product-image{height:auto;aspect-ratio:1.18}.market-products .product-body{padding:11px}.market-products .product-body h3{font-size:.8rem}.market-promo-section{padding-top:8px}.market-promo.student,.market-promo.fresh{background:var(--cream)}.market-promo.bulk{background:var(--green)}.market-promo img{background:var(--cream)}.account-hero{padding:34px 0 28px;background:var(--cream)}.account-hero h1{margin:5px 0;font-size:clamp(2rem,9vw,2.7rem);line-height:.98}.account-hero p{margin:0;color:var(--muted);font-size:.84rem}.account-section{padding-top:24px}.account-profile-grid{grid-template-columns:1fr;gap:12px}.account-summary-card,.account-form{padding:17px;border:1px solid var(--line);border-radius:18px;background:var(--white);box-shadow:var(--shadow-sm)}.account-summary-card{display:grid;grid-template-columns:48px 1fr;gap:11px;align-items:center}.account-avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:rgba(15,107,82,.12);color:var(--blue);font-weight:900}.account-summary-card>div:nth-child(2) span{color:var(--muted);font-size:.64rem;font-weight:800;text-transform:uppercase}.account-summary-card h2{margin:2px 0;font-size:1.05rem}.account-summary-card p{margin:0;overflow:hidden;color:var(--muted);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.account-detail-grid{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:4px;padding-top:12px;border-top:1px solid var(--line)}.account-detail-grid small,.account-detail-grid strong{display:block}.account-detail-grid small{color:var(--muted);font-size:.6rem;text-transform:uppercase}.account-detail-grid strong{overflow:hidden;color:var(--ink);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.account-summary-card>.btn{grid-column:span 2;margin-top:2px}.account-wallet-column{display:grid;gap:10px}.account-form{display:grid;gap:2px}.account-form h2{margin:3px 0}.account-form>div>p{margin:0 0 10px;color:var(--muted);font-size:.76rem}.account-form .field{margin-bottom:4px}.account-form .btn{margin-top:7px}.profile-wallet-balance{border-radius:16px}.wallet-card--profile{min-height:192px}.wallet-card--profile .wallet-card-number{margin-top:48px}.wallet-card--profile .wallet-card-bottom{margin-top:28px}}
@media(min-width:681px){.account-hero{padding:58px 0 46px;background:var(--cream)}.account-hero h1{margin:6px 0;font-size:clamp(2.4rem,5vw,4.5rem);line-height:.95}.account-hero p{margin:0;color:var(--muted)}.account-profile-grid{display:grid;grid-template-columns:.78fr .9fr 1fr;gap:18px;align-items:start}.account-summary-card,.account-form{padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--white);box-shadow:var(--shadow-sm)}.account-summary-card{display:grid;grid-template-columns:52px 1fr;gap:12px;align-items:center}.account-avatar{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:rgba(15,107,82,.12);color:var(--blue);font-weight:900}.account-summary-card>div:nth-child(2) span{color:var(--muted);font-size:.64rem;font-weight:800;text-transform:uppercase}.account-summary-card h2{margin:2px 0;font-size:1.12rem}.account-summary-card p{margin:0;color:var(--muted);font-size:.72rem}.account-detail-grid{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:5px;padding-top:13px;border-top:1px solid var(--line)}.account-detail-grid small,.account-detail-grid strong{display:block}.account-detail-grid small{color:var(--muted);font-size:.6rem;text-transform:uppercase}.account-detail-grid strong{font-size:.73rem}.account-summary-card>.btn{grid-column:span 2;margin-top:4px}.account-wallet-column{display:grid;gap:12px}.account-form{display:grid;gap:2px}.account-form h2{margin:3px 0}.account-form>div>p{margin:0 0 10px;color:var(--muted);font-size:.76rem}.account-form .field{margin-bottom:5px}.account-form .btn{margin-top:7px}}

/* Compact builder, purpose and shop search refinements. */
.catalog-search>.ui-icon{left:auto!important;right:15px}.catalog-search input{padding-left:14px!important;padding-right:43px!important}.builder-hero-compact{padding:clamp(30px,5vw,52px) 0 20px!important}.builder-hero-compact h1{margin:5px 0;font-size:clamp(2rem,4.6vw,3.4rem)!important;line-height:.98}.builder-hero-compact p{margin:0;color:var(--muted);font-size:.88rem}.builder-section{padding-top:24px}.builder-toolbar{scroll-margin-top:82px}.builder-product-heading{margin-top:24px}.purpose-section{padding:clamp(32px,6vw,70px) 0;background:var(--cream)}.purpose-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(22px,5vw,64px);align-items:center}.purpose-layout>img{width:100%;height:clamp(250px,34vw,440px);object-fit:cover;object-position:center;border-radius:22px;background:var(--cream);box-shadow:var(--shadow-sm);transition:transform .45s var(--ease),box-shadow .45s var(--ease)}.purpose-layout>img:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.purpose-copy h1{margin:7px 0 12px;font-size:clamp(2rem,4.6vw,4rem);line-height:.96}.purpose-copy>p{max-width:560px;margin:0;color:var(--muted);font-size:.92rem}.purpose-points{display:flex;flex-wrap:wrap;gap:7px;margin:19px 0}.purpose-points span{padding:7px 10px;border-radius:999px;background:rgba(15,107,82,.1);color:var(--blue);font-size:.69rem;font-weight:800}.purpose-steps-section{padding:clamp(38px,6vw,72px) 0;background:var(--white)}.purpose-steps-heading{margin-bottom:20px}.purpose-steps-heading h2{margin:4px 0 0;font-size:clamp(1.8rem,3vw,2.7rem)}.purpose-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.purpose-steps article{position:relative;padding:20px;border:1px solid var(--line);border-radius:17px;background:var(--cream);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}.purpose-steps article:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm)}.purpose-step-number{position:absolute;top:16px;right:17px;color:var(--muted);font-size:.68rem;font-weight:900}.purpose-steps .feature-icon{margin-bottom:22px;background:var(--green);color:var(--white)}.purpose-steps h3{margin:0 0 5px;font-size:1rem}.purpose-steps p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.5}@media(max-width:680px){.builder-hero-compact{padding:22px 0 14px!important}.builder-hero-compact h1{font-size:2rem!important}.builder-hero-compact p{font-size:.78rem}.builder-section{padding-top:16px}.builder-toolbar{align-items:flex-start;gap:12px}.builder-toolbar h2{font-size:1.05rem}.budget-options{width:100%}.purpose-layout{grid-template-columns:1fr;gap:19px}.purpose-layout>img{height:260px;order:-1;border-radius:17px}.purpose-copy h1{font-size:2.1rem}.purpose-copy>p{font-size:.82rem}.purpose-steps{grid-template-columns:1fr}.purpose-steps article{display:grid;grid-template-columns:46px 1fr;gap:0 12px;padding:17px}.purpose-steps .feature-icon{width:46px;height:46px;margin:0;grid-row:span 2}.purpose-steps h3{align-self:end}.purpose-steps p{grid-column:2}.purpose-step-number{top:14px;right:15px}}

/* Account security/activity and admin audit trail. */
.account-secondary-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:14px;margin-top:16px}.account-security-card,.account-activity-card,.account-danger-card{padding:20px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.72);box-shadow:var(--shadow-sm);backdrop-filter:blur(16px)}.account-security-card h2,.account-activity-card h2,.account-danger-card h2{margin:4px 0}.account-security-card>p,.account-danger-card p{margin:0 0 11px;color:var(--muted);font-size:.75rem}.account-security-card .field{margin-bottom:4px}.account-security-card .btn{margin-top:8px}.account-activity-head{display:flex;justify-content:space-between;gap:10px;align-items:start}.account-notice-list{display:grid;gap:7px;margin-top:12px}.account-notice{display:grid;grid-template-columns:1fr auto;gap:10px;padding:10px;border:1px solid rgba(15,107,82,.12);border-radius:11px;background:var(--white);text-align:left}.account-notice:not(.read){border-color:rgba(15,107,82,.38);background:rgba(15,107,82,.06)}.account-notice strong,.account-notice small{display:block}.account-notice strong{font-size:.75rem}.account-notice small{margin-top:2px;color:var(--muted);font-size:.66rem;line-height:1.35}.account-notice time{color:var(--muted);font-size:.6rem;white-space:nowrap}.account-empty{margin:14px 0 0;color:var(--muted);font-size:.75rem}.account-danger-card{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:16px;border-color:rgba(195,60,70,.22)}.deactivate-confirm{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.deactivate-confirm input{height:42px;min-width:180px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:var(--white)}.admin-user-action{grid-column:span 3;min-height:36px;padding:0 10px;border:1px solid rgba(15,107,82,.22);border-radius:10px;background:var(--cream);color:var(--blue);font-size:.7rem;font-weight:800}.admin-activity-list{display:grid;gap:9px;margin-top:14px}.admin-activity-item{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:start;padding:14px;border:1px solid rgba(15,107,82,.12);border-radius:15px;background:rgba(255,255,255,.7);box-shadow:var(--shadow-sm);backdrop-filter:blur(14px)}.admin-activity-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(15,107,82,.1);color:var(--blue)}.admin-activity-item strong{font-size:.8rem}.admin-activity-item p{margin:3px 0;color:var(--muted);font-size:.72rem}.admin-activity-item small,.admin-activity-item time{color:var(--muted);font-size:.62rem}@media(max-width:680px){.account-secondary-grid{grid-template-columns:1fr}.account-danger-card{align-items:stretch;flex-direction:column}.deactivate-confirm{display:grid;grid-template-columns:1fr}.deactivate-confirm input{min-width:0}.admin-activity-item{grid-template-columns:38px 1fr}.admin-activity-item time{grid-column:2}.admin-activity-icon{width:38px;height:38px}}

.reset-demo-code{display:grid;gap:4px;margin:12px 0;padding:10px;border:1px solid rgba(15,107,82,.2);border-radius:10px;background:rgba(15,107,82,.07)}.reset-demo-code small{color:var(--muted);font-size:.65rem;font-weight:800;text-transform:uppercase}.reset-demo-code strong{overflow-wrap:anywhere;color:var(--blue);font-size:.75rem}

/* Backend cold-start gate: keeps startup requests behind an automatic Render wake-up probe. */
.backend-wake{min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 15%,rgba(255,255,255,.12),transparent 35%),linear-gradient(145deg,var(--navy),var(--blue));color:var(--white);text-align:center}.backend-wake-card{display:grid;justify-items:center;width:min(100%,420px);padding:36px 30px;border:1px solid rgba(255,255,255,.2);border-radius:24px;background:rgba(255,255,255,.09);box-shadow:0 24px 60px rgba(0,0,0,.24);backdrop-filter:blur(16px)}.backend-wake-card img{width:68px;height:68px;margin-bottom:22px}.backend-wake-spinner{width:34px;height:34px;border:3px solid rgba(255,255,255,.25);border-top-color:var(--coral);border-radius:50%;animation:backend-wake-spin .9s linear infinite}.backend-wake-card h1{margin:18px 0 8px;color:var(--white);font-size:clamp(1.45rem,5vw,2rem)}.backend-wake-card p{max-width:340px;margin:0;color:rgba(255,255,255,.84);font-size:.9rem;line-height:1.55}.backend-wake-card small{margin-top:14px;color:rgba(255,255,255,.62);font-size:.7rem}@keyframes backend-wake-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.backend-wake-spinner{animation-duration:1.8s}}
