:root{--ink:#20191b;--paper:#f5f0e8;--wine:#681f32;--red:#c83e32;--line:#d8cec2;--muted:#766b69}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Helvetica Neue",Arial,"Noto Sans TC",sans-serif}.site-header{height:78px;display:grid;grid-template-columns:1fr minmax(280px,560px) 1fr;align-items:center;gap:32px;padding:0 4vw;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(245,240,232,.95);backdrop-filter:blur(14px);z-index:10}.wordmark{font-weight:700;letter-spacing:.16em;text-decoration:none;color:var(--ink);white-space:nowrap}.wordmark span{color:var(--red)}nav{display:flex;justify-content:flex-end;gap:22px}nav a,.section-heading>a{color:var(--ink);text-decoration:none;font-size:14px}.header-search{display:flex;border-bottom:1px solid var(--ink)}.header-search input{flex:1;background:none;border:0;padding:10px 2px;font-size:15px;outline:none}.header-search button{background:none;border:0;font-weight:700;cursor:pointer}.hero{min-height:680px;display:grid;grid-template-columns:1fr 1fr;padding:5vw 8vw;gap:8vw;background:linear-gradient(115deg,#e8ddd0 0 58%,var(--wine) 58%)}.hero-copy{align-self:center}.eyebrow{font-size:11px;letter-spacing:.22em;font-weight:700;color:var(--red)}h1,h2{font-family:Georgia,"Noto Serif TC",serif;font-weight:400;margin:.2em 0}.hero h1{font-size:clamp(56px,7vw,108px);line-height:.9}.hero h1 em{color:var(--wine)}.hero-copy>p:not(.eyebrow){max-width:480px;line-height:1.8;color:var(--muted)}.button{display:inline-block;background:var(--ink);color:#fff;text-decoration:none;padding:15px 24px;margin-top:22px;font-weight:700;border:0;cursor:pointer}.hero-product{position:relative;display:block;align-self:center;height:540px;color:#fff;overflow:hidden}.hero-product img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.hero-product:hover img{transform:scale(1.025)}.hero-product span{position:absolute;left:0;right:0;bottom:0;padding:26px;background:linear-gradient(transparent,rgba(0,0,0,.75));font-family:Georgia,serif;font-size:22px}.hero-product small{display:block;font:11px Arial;letter-spacing:.16em;margin-bottom:8px}.section-heading{padding:80px 4vw 25px;display:flex;align-items:end;justify-content:space-between}.section-heading h2{font-size:44px}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-block:1px solid var(--line)}.product-card{background:var(--paper);min-width:0}.product-image{height:420px;display:block;position:relative;overflow:hidden;background:#ebe5dc}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.product-card:hover img{transform:scale(1.035)}.stock{position:absolute;top:14px;left:14px;background:var(--paper);color:var(--wine);padding:7px 10px;font-size:11px;font-weight:700}.product-copy{padding:20px 20px 28px}.brand{font-size:11px;letter-spacing:.12em;color:var(--red);font-weight:700;text-transform:uppercase}.product-copy h3{font-family:Georgia,"Noto Serif TC",serif;font-size:17px;font-weight:400;line-height:1.45;min-height:50px}.product-copy a{color:inherit;text-decoration:none}.price{font-weight:700}.listing-hero{padding:90px 8vw 55px;border-bottom:1px solid var(--line)}.listing-hero h1{font-size:clamp(48px,7vw,92px)}.listing-hero>p:not(.eyebrow){color:var(--muted);max-width:640px;line-height:1.7}.listing-hero span{display:block;margin-top:25px;font-size:12px;font-weight:700}.product-detail{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);min-height:calc(100vh - 78px)}.detail-image{background:#e8e1d7;padding:6vw}.detail-image img{width:100%;height:70vh;object-fit:contain}.detail-copy{padding:7vw 8vw 7vw 5vw}.detail-copy h1{font-size:clamp(36px,4vw,62px);line-height:1.1}.detail-price{font-size:28px;font-weight:700}.availability{font-size:13px;color:var(--muted)}.availability.available{color:#397044}.description{line-height:1.9;color:#51494a;margin:35px 0;white-space:pre-line}.variants{display:flex;flex-direction:column;gap:8px;margin:28px 0}.variants a{padding:9px;border-bottom:1px solid var(--line);color:var(--muted);text-decoration:none;font-size:13px}.variants a.active{color:var(--wine);border-color:var(--wine)}.purchase{background:var(--wine)}dl{display:grid;grid-template-columns:100px 1fr;margin-top:45px;padding-top:20px;border-top:1px solid var(--line);font-size:12px}dt,dd{padding:6px 0;margin:0}.admin-wrap{padding:70px 5vw;min-height:80vh}.admin-wrap h1{font-size:64px}.admin-title{display:flex;align-items:end;justify-content:space-between}.text-button{border:0;background:none;color:var(--wine);font-weight:700;cursor:pointer}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:40px 0}.stats div{background:#fff;padding:28px}.stats span{display:block;color:var(--muted);font-size:12px}.stats strong{display:block;font:42px Georgia;margin-top:10px}.stats .run-id{color:var(--wine)}.admin-panel{background:#fff;padding:30px}.admin-panel h2{font-size:28px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:14px;border-bottom:1px solid var(--line)}th{color:var(--muted)}.status{padding:5px 8px;border-radius:20px;background:#eee}.status.completed{background:#dceade;color:#24542d}.status.failed{background:#f4dddd;color:#842d2d}.login-shell{min-height:calc(100vh - 78px);display:grid;place-items:center;padding:50px 20px;background:linear-gradient(135deg,#eadfd1 0 55%,var(--wine) 55%)}.login-panel{width:min(520px,100%);background:var(--paper);padding:55px;box-shadow:0 25px 80px rgba(32,25,27,.2)}.login-panel h1{font-size:48px}.login-panel>p{line-height:1.7;color:var(--muted)}.login-form{display:flex;flex-direction:column;margin-top:30px}.login-form label{font-size:12px;font-weight:700;margin-bottom:8px}.login-form input:not([type=hidden]){background:#fff;border:1px solid var(--line);padding:15px;font-size:16px}.login-form #code{font-size:30px;letter-spacing:12px;text-align:center}.login-message{padding:12px;background:#f0dfc7;color:var(--wine)!important}.text-link{display:inline-block;margin-top:20px;color:var(--wine)}.empty{grid-column:1/-1;padding:80px;text-align:center;background:var(--paper)}footer{display:flex;justify-content:space-between;padding:40px 4vw;background:var(--ink);color:#f4eee5;font-size:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:900px){.site-header{height:auto;grid-template-columns:1fr auto;padding:18px 5vw}.header-search{grid-column:1/-1;grid-row:2}nav a:last-child{display:none}.hero{min-height:auto;grid-template-columns:1fr;background:linear-gradient(160deg,#e8ddd0 0 64%,var(--wine) 64%);padding:70px 6vw}.hero-product{height:440px}.product-grid{grid-template-columns:repeat(2,1fr)}.product-detail{grid-template-columns:1fr}.detail-image img{height:55vh}.stats{grid-template-columns:1fr}.stats strong{font-size:32px}}@media(max-width:520px){.site-header{gap:12px}.site-header nav{display:none}.hero h1{font-size:54px}.hero-product{height:360px}.section-heading{padding-top:55px}.section-heading h2{font-size:35px}.product-image{height:290px}.product-copy{padding:14px}.product-copy h3{font-size:15px}.listing-hero{padding:60px 6vw 35px}.detail-copy{padding:45px 6vw}.detail-image{padding:25px 6vw}.detail-image img{height:48vh}footer{flex-direction:column;gap:12px}.admin-wrap{padding:45px 4vw}.admin-wrap h1{font-size:46px}.login-panel{padding:35px 24px}.login-panel h1{font-size:38px}}
