@font-face{font-family:Allura;src:url(fonts/allura.ttf) format('truetype');font-display:swap}@font-face{font-family:GreatVibes;src:url(fonts/great-vibes.ttf) format('truetype');font-display:swap}@font-face{font-family:Caveat;src:url(fonts/caveat.ttf) format('truetype');font-display:swap}
:root{--surface:#191b1a;--paper:#101211;--ink:#f5f1e7;--soft:#cecac1;--edge:#494c46;--accent:#137a45;--title-font:Allura,Georgia,serif;--red:#d42c25;--green:#52b575}
[data-theme=cream]{--paper:#f6efdf;--surface:#fffaf0;--ink:#282b24;--soft:#59594c;--edge:#d5c7ad;--accent:#a72d25;--red:#b63027;--green:#17613b}
[data-theme=garden]{--paper:#0e3025;--surface:#174433;--ink:#fff7e5;--soft:#e0ddcd;--edge:#537661;--accent:#b5332b;--red:#dc4438;--green:#57bd75}
[data-theme=burgundy]{--paper:#21171b;--surface:#45222e;--ink:#fff5df;--soft:#ead5cc;--edge:#86515c;--accent:#9c283b;--red:#ed6359;--green:#67bd83}
[data-theme=modern]{--paper:#eef0ef;--surface:#fff;--ink:#202b25;--soft:#4e5b53;--edge:#c2ccc5;--accent:#176640;--red:#b32c29;--green:#17643d}
[data-font=great-vibes]{--title-font:GreatVibes,Georgia,serif}[data-font=caveat]{--title-font:Caveat,Georgia,serif}[data-font=serif]{--title-font:Georgia,'Times New Roman',serif}
body{background:var(--paper)!important;color:var(--ink)!important}h1,h2,.brand-title,.qr-brand,.font-sample{font-family:var(--title-font)!important;font-weight:400;line-height:1.2}[data-font=serif] h1,[data-font=serif] h2{font-style:italic}
.site-header,.bar{background:#0b0e0c!important;color:#fff!important;border-bottom:1px solid #393e37}.brand small{color:#d1d4cf!important}.brand-colors{font-family:var(--title-font);font-size:27px;line-height:1.1}.brand-colors span:nth-child(1){color:#ff5149}.brand-colors span:nth-child(2){color:#62ce7e}.brand-colors span:nth-child(3){color:#fff}
.site-header nav>a:not(:first-child):before,.site-header nav>button:before{content:'|';color:#8a928a;margin-right:16px;pointer-events:none}
.hero-shop{background:var(--paper)!important;min-height:0!important;padding:65px max(5vw,20px)!important}.hero-shop:before,.hero-shop:after{display:none!important}.hero-inner{max-width:1200px!important;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}.hero-copy{min-width:0}.hero-logo{width:100%;max-width:540px;max-height:600px;object-fit:contain;justify-self:center;border-radius:16px}.hero-shop p,.about-section p,.section-heading p{color:var(--soft)!important}.hero-shop h1{font-size:clamp(56px,7vw,108px);margin:12px 0}.hero-red{color:var(--red)!important}.hero-green{color:var(--green)!important}.hero-white{color:var(--ink)!important}.hero-actions{flex-wrap:wrap}
.section,.menu-page,.home-categories,.about-section,footer{background:var(--paper)!important;color:var(--ink)!important}.section h2,.about-section h2{font-size:clamp(36px,4vw,54px);color:var(--ink)!important}.product-card,.category-card,.product-body,dialog,.history-card,.address-card,.suggestion,.notice,.store-badge,.cart-line{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--edge)!important}.product-body p,.muted,.notice,.product-card p{color:var(--soft)!important}.category-card span,.product-card h3,.product-card strong{color:var(--ink)!important}.button.pale{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--edge)!important}.button.red{background:#bd2821!important;color:#fff!important}.button.green{background:#167440!important;color:#fff!important}.button.white{background:#fff!important;color:#19281e!important}.eyebrow{color:var(--green)!important}.remove{color:var(--ink)!important}input,select,textarea{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--edge)!important}input::placeholder,textarea::placeholder{color:var(--soft)!important}dialog h2,dialog h3{color:var(--ink)!important}footer a{color:var(--soft)}.designer{display:block;font-size:12px;margin-top:14px}.story-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.story-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:15px}.story-text{max-width:800px;line-height:1.9;white-space:pre-line}.bundle-children{padding:12px;border-left:3px solid var(--green);margin:10px 0}.bundle-children p{margin:5px 0}.qr-wrap{max-width:550px;margin:40px auto;text-align:center;padding:24px}.qr-wrap>img{width:min(85%,290px);height:auto}.qr-actions{display:grid;gap:15px;margin:25px 0}.qr-actions a{padding:20px;text-decoration:none;border:1px solid var(--edge);background:var(--surface);color:var(--ink);border-radius:12px}.qr-brand{font-size:50px}.theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px}.theme-choice{padding:18px;border:2px solid var(--edge);border-radius:12px;background:var(--surface);color:var(--ink)}.theme-choice .swatches{display:flex;height:45px;margin-bottom:12px}.swatches i{flex:1}.font-sample{font-size:38px}.preview-frame{width:100%;height:620px;border:1px solid var(--edge);background:white}.preview-phone{max-width:390px}.preview-toolbar{display:flex;gap:12px;flex-wrap:wrap;margin:15px 0}
/* Administrative fields deliberately keep a conventional readable face. */
.admin-layout aside{background:var(--surface)!important;border-color:var(--edge)!important}.admin-layout aside a{color:var(--ink)!important}.admin-layout .card,.admin-layout table,.admin-layout th,.admin-layout td,.admin-layout details{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--edge)!important}.admin-layout .muted,.admin-layout .help{color:var(--soft)!important}.admin-layout h1{font-size:46px}.admin-layout .btn.green{background:#146c3c;color:#fff}.admin-layout .err{background:#ffe5e1;color:#8c201b}.admin-layout .ok{background:#deefdf;color:#15452c}.bar button{margin-left:12px;padding:9px 14px;border-radius:8px;cursor:pointer;max-width:280px}.bar{flex-wrap:wrap}.bundle-editor-row{display:grid;grid-template-columns:2fr 1fr 80px auto;gap:12px;align-items:end;margin:12px 0}
@media(max-width:760px){.hero-inner{grid-template-columns:1fr;gap:25px}.hero-logo{grid-row:1;max-width:320px}.hero-shop{padding:25px 20px!important}.hero-shop h1{font-size:65px}.hero-copy{text-align:center}.hero-actions{justify-content:center}.site-header nav>a:before,.site-header nav>button:before{display:none!important}.story-gallery{grid-template-columns:1fr}.bundle-editor-row{grid-template-columns:1fr 1fr}.brand-colors{font-size:23px}.bar b{font-size:14px}.bar button{margin-left:0}.preview-frame{height:560px}}
/* Readability corrections shared by every palette. */
.admin-layout h1,.admin-layout h2,.admin-layout h3,.admin-layout legend{color:var(--ink)!important}.admin-layout .stats h2{font:700 30px Arial,sans-serif!important}.admin-layout .stats small,.admin-layout .category-count,.admin-layout .order li div{color:var(--soft)!important}.admin-layout .category-edit-row{background:var(--surface);border-color:var(--edge)}.admin-layout .category-options summary{color:var(--soft)}.admin-layout .badge{background:var(--paper);color:var(--ink)}
.category-card{display:flex;flex-direction:column;height:auto!important}.category-card img{opacity:1!important;flex:none}.category-card span{position:static!important;display:block;padding:15px;background:var(--surface);font:700 17px Arial,sans-serif!important;color:var(--ink)!important;min-height:50px}.brand .brand-colors,.brand .brand-colors span{font-family:var(--title-font)!important;font-size:27px!important;font-weight:400!important}.product-card img[src$="brand-logo.jpeg"]{object-fit:contain;background:#000}.font-sample{display:block}.theme-choice input[type=radio],.form input[type=radio]{width:auto}.qr-wrap nav{display:grid}.bundle-child{padding:8px 0;border-bottom:1px dashed #999}.admin-layout .preview-toolbar label{max-width:100%}
@media(max-width:600px){.brand .brand-colors,.brand .brand-colors span{font-size:20px!important}.category-card span{font-size:15px!important}.category-card img{height:140px!important;min-height:140px!important}.hero-shop .brand-title{font-size:68px}.product-card .bundle-children{font-size:12px}}

.login{background:var(--surface);color:var(--ink);border-color:var(--edge)}.login h1{color:var(--ink)}.login input{background:var(--paper)!important;color:var(--ink)!important}.login .muted{color:var(--soft)}
[data-font=serif] .font-sample,html[data-font=serif] .brand-colors{font-style:italic}
[data-font=allura]{--title-font:Allura,Georgia,serif}
/* Cart totals follow the selected palette, including light themes. */
.cart-summary{background:var(--paper)!important;color:var(--ink)!important;border:1px solid var(--edge)}
.cart-summary p,.cart-summary span,.cart-summary b,.cart-summary strong,.cart-summary h3{color:var(--ink)!important}
.cart-summary small{color:var(--soft)!important;line-height:1.5}
.cart-summary .total{border-color:var(--edge)!important}
.cart-summary .total span,.cart-summary .total b{color:var(--green)!important}
