
:root{
  --cream:#f1e4c8;--paper:#fff8e8;--tan:#e5d2a9;--orange:#a83512;--red:#8f2b11;
  --green:#252c1d;--olive:#566046;--brown:#2a180e;--ink:#261d16;--line:#c5ad7d;
  --shadow:0 10px 28px rgba(38,25,15,.14)
}
*{box-sizing:border-box}
html,body{margin:0;background:#1c2119;color:var(--ink);font-family:Arial,Helvetica,sans-serif}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
.screen{max-width:520px;min-height:100vh;margin:auto;background:var(--paper);padding-bottom:82px}
.logo-splash{padding:28px 22px 18px;background:
linear-gradient(rgba(255,248,232,.90),rgba(255,248,232,.90)),
repeating-linear-gradient(0deg,#c9b98f 0 1px,transparent 1px 5px)}
.logo-splash img{display:block;width:78%;max-width:360px;margin:auto;mix-blend-mode:multiply}
.tagline{text-align:center;font:900 22px Georgia,serif;margin-top:2px}
.tagline strong{display:block;color:var(--orange);font-size:33px}
.topbar{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:45px 1fr 45px;align-items:center;padding:11px;background:var(--green);color:#f5e7c8;border-bottom:3px solid #b59d6d}
.brand{text-align:center;font:900 20px Georgia,serif}.brand span{display:block;font:700 10px Arial;letter-spacing:4px}
.icon-btn{border:0;background:none;color:inherit;font-size:22px;text-decoration:none;text-align:center}
.hero{margin:14px;padding:22px;position:relative;background:#ecdcba;border:1px solid #a58b5c;box-shadow:var(--shadow)}
.hero:before{content:"";position:absolute;inset:5px;border:1px solid #c5aa73}
.hero h1{position:relative;margin:0;font:900 30px Georgia,serif;line-height:1;text-transform:uppercase}
.hero h1 span{color:var(--red)}
.hero p{position:relative;font-weight:800}
.under50{position:absolute;right:18px;top:18px;width:84px;height:84px;border-radius:50%;display:grid;place-items:center;text-align:center;background:var(--red);color:#fff;font-weight:900;border:3px solid #ead8b2}
.categories{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:6px 12px 14px}
.categories button{border:0;background:none;font-size:26px}.categories span{display:block;margin-top:4px;font-size:9px;font-weight:900;text-transform:uppercase}
.section{padding:0 12px 16px}.section-head{display:flex;align-items:center;justify-content:space-between}
.section h2{font:900 21px Georgia,serif;text-transform:uppercase}.link-btn{border:0;background:none;color:var(--red);font-weight:900;text-transform:uppercase}
.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.product-card{position:relative;background:#fffaf0;border:1px solid var(--line);box-shadow:0 4px 10px rgba(0,0,0,.08)}
.product-image{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#e7d6b2}
.placeholder{display:grid;place-items:center;width:100%;aspect-ratio:1/1;background:#e7d6b2;font-size:58px}
.product-body{padding:9px}.product-title{font-weight:900;min-height:37px}.price{margin:5px 0 8px;color:var(--red);font-weight:900;font-size:22px}
.buy-btn,.cta{width:100%;border:0;background:var(--green);color:#fff;padding:13px;font-weight:900;text-transform:uppercase}
.sold-overlay{position:absolute;inset:0;z-index:3;display:grid;place-items:center;background:rgba(33,25,17,.68);color:#fff;font:900 30px Georgia;letter-spacing:3px}
.pickup-card{display:flex;align-items:center;gap:11px;margin:0 12px 18px;padding:13px;background:#ede0c2;border:1px solid var(--line)}
.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(520px,100%);display:grid;grid-template-columns:repeat(5,1fr);background:var(--green);padding:8px 4px calc(8px + env(safe-area-inset-bottom))}
.bottom-nav button{border:0;background:none;color:#f1e5c6;font-size:20px}.bottom-nav span{display:block;font-size:8px;text-transform:uppercase}.bottom-nav .active{color:#dd5429}
.product-hero{position:relative;margin:15px;border:1px solid var(--line);background:#efdebb}.product-hero img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.product-copy{padding:0 18px 28px}.product-copy h1{margin:5px 0;text-align:center;font:900 30px Georgia,serif}.era{text-align:center;font-weight:700}.big-price{text-align:center;color:var(--red);font-size:38px;font-weight:900;margin:7px}
.meta-strip{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;font-size:11px;font-weight:900}.desc{line-height:1.5}
.specs{margin:16px 0;border-block:1px solid var(--line)}.spec-row{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #e3d2b1}.spec-row:last-child{border:0}
.notice{margin-top:12px;padding:11px;background:#eee0bf;border:1px solid var(--line);font-size:13px}
.loading{padding:40px 20px;text-align:center}
.admin-body{background:#eee2c8}.admin-shell{max-width:980px;margin:auto;padding:20px}
.admin-head{display:grid;grid-template-columns:100px 1fr auto;gap:16px;align-items:center;margin-bottom:18px}.admin-head img{width:100px;mix-blend-mode:multiply}.admin-head h1{margin:0;font:900 34px Georgia,serif}.admin-head p{margin:5px 0}
.admin-link{padding:12px 16px;background:var(--green);color:#fff;text-decoration:none;font-weight:900}
.editor-card{margin-bottom:18px;padding:18px;background:#fffaf0;border:1px solid var(--line);box-shadow:var(--shadow)}.editor-card h2{margin-top:0;font-family:Georgia,serif}
.editor-card label{display:block;margin:12px 0;font-weight:800}.editor-card input,.editor-card textarea,.editor-card select{display:block;width:100%;margin-top:5px;padding:12px;background:#fff;border:1px solid #aa946c}
.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.photo-preview{min-height:120px;display:grid;place-items:center;background:#f1e5ca;border:1px dashed #9f875d}.photo-preview img{max-width:260px;max-height:260px}
.check{display:flex!important;gap:8px;align-items:center}.check input{width:auto!important;margin:0!important}
.actions{display:flex;gap:10px;margin-top:14px}.actions>*{flex:1}.secondary{width:100%;padding:12px;background:#fff8e9;border:1px solid var(--line);font-weight:900}.small{width:auto}
.admin-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.admin-note{color:#625344}
.inventory-item{display:grid;grid-template-columns:85px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #dfcdab}.inventory-item img{width:85px;height:85px;object-fit:cover}.inventory-thumb{width:85px;height:85px;display:grid;place-items:center;background:#e7d6b2;font-size:35px}.inventory-item h3{margin:0 0 4px}
.inventory-actions{display:flex;gap:6px;flex-wrap:wrap}.inventory-actions button{padding:8px 10px;background:#fff;border:1px solid var(--line);font-weight:800}.danger{color:#a42812}
@media(max-width:650px){.admin-shell{padding:10px}.admin-head{grid-template-columns:72px 1fr}.admin-head img{width:72px}.admin-link{grid-column:1/-1;text-align:center}.two{grid-template-columns:1fr}.actions{flex-direction:column}.inventory-item{grid-template-columns:70px 1fr}.inventory-item img,.inventory-thumb{width:70px;height:70px}.inventory-actions{grid-column:1/-1}}


.photo-heading{margin-bottom:4px;font-family:Georgia,serif}
.photo-upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:10px 0 16px}
.photo-upload-box{margin:0!important;padding:10px;border:1px solid var(--line);background:#f7ecd3}
.photo-upload-box input{margin-top:8px}
.photo-preview.compact{min-height:150px;margin-top:8px;text-align:center;padding:8px}
.photo-preview.compact img{width:100%;height:150px;object-fit:cover;max-width:none;max-height:none}
.gallery{margin:15px}
.gallery-main{position:relative;border:1px solid var(--line);background:#efdebb}
.gallery-main img,.gallery-main .placeholder{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.gallery-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}
.gallery-thumbs button{padding:0;border:2px solid transparent;background:none}
.gallery-thumbs button.active{border-color:var(--red)}
.gallery-thumbs img,.gallery-thumbs .placeholder{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#e7d6b2}
.product-card .photo-count{position:absolute;right:8px;top:8px;z-index:4;background:rgba(37,44,29,.88);color:#fff;padding:5px 8px;font-size:11px;font-weight:900;border-radius:12px}
@media(max-width:650px){
  .photo-upload-grid{grid-template-columns:1fr}
  .photo-preview.compact{min-height:180px}
  .photo-preview.compact img{height:180px}
}


body.menu-open{overflow:hidden}
.side-overlay{
  position:fixed;inset:0;z-index:90;background:rgba(20,15,10,.55);
  opacity:0;pointer-events:none;transition:opacity .22s ease
}
.side-overlay.open{opacity:1;pointer-events:auto}
.sidebar{
  position:fixed;left:0;top:0;bottom:0;z-index:100;width:min(330px,86vw);
  background:#f5ead2;border-right:3px solid #8f2b11;
  transform:translateX(-105%);transition:transform .24s ease;
  box-shadow:14px 0 35px rgba(0,0,0,.28);overflow-y:auto
}
.sidebar.open{transform:translateX(0)}
.sidebar-head{
  position:relative;padding:22px 18px 15px;background:#efe1c3;
  border-bottom:1px solid var(--line)
}
.sidebar-head img{display:block;width:72%;max-width:210px;margin:auto;mix-blend-mode:multiply}
.sidebar-close{
  position:absolute;right:10px;top:8px;border:0;background:none;
  color:var(--brown);font-size:34px;line-height:1
}
.sidebar-nav{display:flex;flex-direction:column;padding:10px}
.sidebar-nav button,.sidebar-link{
  display:flex;align-items:center;gap:12px;width:100%;padding:14px 12px;
  border:0;border-bottom:1px solid #d8c5a0;background:transparent;
  color:var(--brown);text-align:left;text-decoration:none;font-weight:900;font-size:16px
}
.sidebar-nav button:hover,.sidebar-link:hover{background:#ead8b4}
.sidebar-nav span{flex:1}
.sidebar-foot{
  padding:18px;text-align:center;font:900 14px Georgia,serif;
  color:var(--red);text-transform:uppercase;letter-spacing:1px
}

.store-info-logo{padding-top:20px;padding-bottom:12px}
.store-info-logo img{max-width:290px}
.store-info-wrap{padding:10px 15px 35px}
.store-info-title{text-align:center;padding:7px 8px 17px}
.vintage-kicker{color:var(--red);font-weight:900;font-size:12px;letter-spacing:2px}
.store-info-title h1{margin:5px 0;font:900 34px Georgia,serif;color:var(--brown)}
.store-info-title p{margin:5px 0;font-weight:700}
.info-card{display:grid;grid-template-columns:48px 1fr;gap:12px;margin-bottom:12px;padding:17px;background:#f1e2c3;border:1px solid var(--line);box-shadow:0 5px 12px rgba(0,0,0,.07)}
.info-icon{font-size:30px;color:var(--red);text-align:center}
.info-card h2{margin:2px 0 9px;font:900 18px Georgia,serif;color:var(--brown)}
.info-card p{margin:0 0 12px;line-height:1.55}
.hours-row{display:flex;justify-content:space-between;gap:20px;padding:8px 0;border-bottom:1px solid #d5c29d}
.hours-row:last-child{border-bottom:0}
.info-action{display:inline-block;padding:10px 13px;background:var(--green);color:#fff;text-decoration:none;font-size:12px;font-weight:900}
.info-action.light{background:#fff8e9;color:var(--brown);border:1px solid var(--line)}
.store-contact-actions{display:flex;gap:8px;flex-wrap:wrap}
.store-home-btn{display:block;text-align:center;text-decoration:none;margin-top:17px}

.share-btn{display:block;margin:0 auto 12px;padding:10px 15px;border:1px solid var(--line);background:#f0e1c2;color:var(--brown);font-size:12px;font-weight:900}

.sneak-peek-banner{
  display:block;
  margin:0;
  background:#111;
  text-decoration:none;
  line-height:0;
}
.sneak-peek-banner img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1/1;
  object-fit:cover;
}

.shop-page-head{text-align:center;padding:22px 15px 14px;background:#f0e2c5;border-bottom:1px solid var(--line)}
.shop-page-head h1{margin:5px 0;font:900 34px Georgia,serif;color:var(--brown)}
.shop-page-head p{margin:5px 0;color:#5e4d3d;font-weight:700}
.shop-empty{grid-column:1/-1;padding:35px 18px;text-align:center;border:1px solid var(--line);background:#f4e8ce}
.shop-empty strong{display:block;font:900 20px Georgia,serif;margin-bottom:8px}
.shop-empty span{display:block;line-height:1.4}

.backup-tools{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}
.restore-label{display:flex!important;align-items:center;justify-content:center;margin:0!important;cursor:pointer;text-align:center}
@media(max-width:650px){.backup-tools{grid-template-columns:1fr}}

.inventory-loading{grid-column:1/-1;padding:24px;text-align:center;font-weight:800;color:#655441}
.shop-empty .secondary{margin-top:14px}

.product-image{background:#e7d6b2}
.inventory-loading{min-height:140px;display:grid;place-items:center}
