/* Independent template 3: editorial storefront, no stylesheet from template 1/2. */
:root { --ink:#24251f; --muted:#777970; --line:#d5d3c9; --canvas:#f4f1e9; --paper:#fffefa; --accent:#e6c84d; --accent-dark:#b99b22; --price:#af4d31; --primary:#75621d; --primary-dark:#3b351e; --primary-soft:#f5edc8; --navy:#24251f; --danger:#b34232; --success:#37654a; --radius:2px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--canvas); font:15px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
button,a,input,select,textarea { -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
button:disabled,input:disabled { cursor:not-allowed; opacity:.55; }
button:disabled:hover { transform:none; }
img,svg { max-width:100%; }
img { height:auto; }
figure { max-width:100%; }
h1,h2 { font-family:"Songti SC",SimSun,"Noto Serif CJK SC",serif; font-weight:700; line-height:1.35; }
h1,h2,h3,h4,p { overflow-wrap:anywhere; }
input,select,textarea { max-width:100%; min-width:0; }
input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),select,textarea { border:1px solid var(--line); border-radius:1px; background:var(--paper); color:var(--ink); padding:10px 12px; min-height:46px; }
input:focus,select:focus,textarea:focus { border-color:var(--ink); outline:2px solid #e6c84d88; outline-offset:2px; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid var(--accent-dark); outline-offset:4px; }
textarea { resize:vertical; line-height:1.8; }
fieldset { min-width:0; }
.table-wrap table { width:100%; border-collapse:collapse; }
.table-wrap :is(th,td) { padding:14px 16px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
.table-wrap th { font-size:12px; color:var(--muted); font-weight:500; background:#eeece4; }
.table-wrap td { font-size:14px; }
[hidden] { display:none !important; }
.t3-shell,.shell { width:min(calc(100% - 72px),1280px); margin-inline:auto; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position:absolute; top:-100px; left:20px; z-index:100; padding:12px 18px; color:var(--ink); background:var(--accent); }
.skip-link:focus { top:10px; }
.t3-kicker,.eyebrow { color:var(--muted); font-size:11px; letter-spacing:.1em; font-weight:600; text-transform:uppercase; }
.t3-button,.btn { display:inline-flex; justify-content:center; align-items:center; gap:16px; min-height:46px; padding:10px 20px; border:1px solid var(--ink); border-radius:1px; color:var(--ink); background:var(--accent); font-weight:650; text-decoration:none; line-height:1.5; transition:background .16s,color .16s; }
.t3-button:hover,.btn:hover { background:var(--ink); color:var(--paper); }
.btn-secondary,.btn-ghost { background:transparent; }
.btn-small { min-height:40px; padding:8px 14px; font-size:13px; }
.btn-block { width:100%; }
.text-link { color:var(--ink); text-decoration:underline; text-underline-offset:5px; font-weight:600; }
.flash { margin-block:18px; border:1px solid #d8cd95; padding:14px 18px; background:#faf4d9; color:#514619; font-size:14px; }
.flash-success { background:#eff5ed; border-color:#bad0b6; color:#355b37; }
.flash-error,.flash-danger { background:#fcf0ed; border-color:#dfb1a6; color:#8f3d2b; }
.status { display:inline-flex; padding:3px 8px; border:1px solid var(--line); background:#eeece3; font-size:12px; line-height:1.6; }
.status-paid,.status-delivered { color:#356145; border-color:#b9cbbd; background:#eff4ed; }
.status-cancelled,.status-refunded { color:#8d5b46; background:#f5eae2; }
.in-stock { color:var(--success); }
.out-of-stock { color:#9a6c5b; }
.empty-state { padding:50px 25px; border:1px dashed var(--line); text-align:center; background:var(--paper); }
.empty-state strong { display:block; font-size:20px; }
.empty-state p { color:var(--muted); }
.page-section { padding-block:35px 60px; }
.narrow-section { max-width:960px; }
.page-hero,.account-hero { padding:30px 0; border-bottom:1px solid var(--line); background:#ebe7da; }
.page-hero h1,.account-hero h1 { margin:8px 0; font-size:36px; }
.page-hero p,.account-hero p { margin:0; color:var(--muted); }
#main { min-height:48vh; }
.t3-header { background:var(--ink); color:var(--paper); }
.t3-masthead { display:grid; grid-template-columns:minmax(260px,1fr) auto minmax(180px,1fr); align-items:center; min-height:101px; gap:28px; }
.t3-brand { display:inline-flex; align-items:center; gap:14px; width:fit-content; }
.t3-brand-symbol { display:grid; place-items:center; flex:0 0 46px; width:46px; height:46px; border:1px solid var(--accent); background:var(--accent); color:var(--ink); font-size:26px; font-weight:900; letter-spacing:-2px; line-height:1; }
.t3-brand strong { display:block; font-size:21px; font-weight:700; letter-spacing:.02em; }
.t3-brand small { display:block; color:#a6a79d; font-size:10px; margin-top:4px; letter-spacing:.08em; }
.t3-primary-nav { display:flex; align-items:stretch; gap:30px; height:101px; }
.t3-primary-nav a { position:relative; display:flex; align-items:center; color:#b2b3a9; font-size:13px; white-space:nowrap; }
.t3-primary-nav a.is-active,.t3-primary-nav a:hover { color:var(--accent); }
.t3-primary-nav a.is-active::after { content:""; position:absolute; bottom:0; height:4px; width:100%; background:var(--accent); }
.t3-account-actions { display:flex; justify-content:flex-end; align-items:center; gap:24px; font-size:13px; }
.t3-account-actions a { display:inline-flex; align-items:center; min-height:44px; gap:12px; }
.t3-account-actions .t3-register-link { padding:4px 15px; border:1px solid #737667; }
.t3-account-actions a:hover { color:var(--accent); }
.t3-searchband { border-top:1px solid #4a4d41; background:#303229; }
.t3-search-row { display:grid; grid-template-columns:180px minmax(0,1fr) 160px; gap:30px; align-items:center; padding-block:14px; }
.t3-search-caption { color:#b8baad; font-size:12px; }
.t3-search-caption > span { padding-right:10px; color:var(--accent); font-size:21px; }
.t3-header-search { display:flex; height:44px; border:1px solid #65685a; background:#393c31; }
.t3-header-search input[type="search"] { flex:1; width:100%; height:42px; min-height:42px; border:0; padding:8px 14px; background:transparent; color:var(--paper); font-size:13px; outline-offset:-3px; }
.t3-header-search input::placeholder { color:#a4a798; }
.t3-header-search button { display:flex; align-items:center; justify-content:center; gap:18px; min-width:130px; border:0; border-left:1px solid #65685a; background:var(--accent); color:var(--ink); font-size:12px; font-weight:700; }
.t3-header-search button:hover { background:#f5d75a; }
.t3-support-link { justify-self:end; font-size:12px; color:#bec0b2; }
.t3-footer { margin-top:48px; border-top:2px solid var(--ink); background:#e9dfb9; }
.t3-footer-main { display:grid; grid-template-columns:2fr 1fr 1fr; gap:70px; padding-block:44px; }
.t3-footer-main.has-scan { grid-template-columns:1.6fr 1fr 1fr 130px; gap:45px; }
.t3-footer-scan .current-page-qr { width:128px; }
.t3-footer-scan small { display:block; margin-top:8px; color:#7b7356; font-size:10px; }
.t3-footer .t3-brand-symbol { border-color:var(--ink); background:transparent; }
.t3-footer .t3-brand small { color:#7b775e; }
.t3-footer-brand p { margin:17px 0 10px; color:#76715a; font-size:13px; }
.t3-footer-query { display:inline-flex; gap:40px; font-size:13px; border-bottom:1px solid var(--ink); padding-bottom:4px; }
.t3-footer-links h2 { margin:0 0 12px; font-size:17px; }
.t3-footer-links a { display:flex; align-items:center; width:fit-content; padding:5px 0; font-size:13px; color:#68634d; }
.t3-footer-links a:hover { color:var(--ink); text-decoration:underline; text-underline-offset:4px; }
.t3-footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-block:20px; border-top:1px solid #bdb28b; color:#7b7356; font-size:11px; }
.current-page-qr { display:grid; place-items:center; width:134px; padding:6px; border:1px solid var(--line); background:#fff; }
.current-page-qr :is(canvas,img) { display:block; width:100% !important; height:auto !important; }
.rich-text .rt-weight-bold { font-weight:800; }
.rich-text .rt-weight-regular { font-weight:400; }
@media(max-width:1080px) {
 .t3-masthead { grid-template-columns:minmax(200px,1fr) auto auto; gap:22px; }
 .t3-primary-nav { gap:20px; }
 .t3-brand strong { font-size:18px; }
 .t3-search-row { grid-template-columns:150px minmax(0,1fr) auto; gap:24px; }
 .t3-footer-main { gap:30px; }
}
@media(max-width:760px) {
 body { font-size:14px; }
 .t3-shell,.shell { width:calc(100% - 32px); }
 .t3-masthead { grid-template-columns:minmax(0,1fr) auto; gap:0 15px; min-height:0; padding-top:16px; }
 .t3-brand { gap:10px; }
 .t3-brand-symbol { width:36px; height:36px; flex-basis:36px; font-size:22px; }
 .t3-brand strong { font-size:16px; }
 .t3-brand small { font-size:9px; letter-spacing:0; }
 .t3-account-actions { gap:12px; font-size:12px; }
 .t3-account-actions .t3-register-link { padding-inline:11px; min-height:36px; }
 .t3-primary-nav { grid-column:1/-1; grid-row:2; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:100%; height:48px; gap:10px; margin-top:14px; }
 .t3-primary-nav a { justify-content:center; font-size:12px; }
 .t3-primary-nav a.is-active::after { height:3px; }
 .t3-search-row { display:block; padding-block:12px; }
 .t3-search-caption,.t3-support-link { display:none; }
 .t3-header-search { height:44px; }
 .t3-header-search input[type="search"] { font-size:16px; padding-inline:10px; }
 .t3-header-search button { min-width:92px; gap:9px; font-size:12px; }
 .page-section { padding-block:24px 36px; }
 .page-hero,.account-hero { padding-block:23px; }
 .page-hero h1,.account-hero h1 { font-size:28px; }
 .page-hero p,.account-hero p { font-size:12px; }
 input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),select,textarea { font-size:16px; }
 .t3-footer { margin-top:30px; }
 .t3-footer-main { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 32px; padding-block:30px; }
 .t3-footer-main.has-scan { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 32px; }
 .t3-footer-scan { display:none !important; }
 .t3-footer-brand { grid-column:1/-1; padding-bottom:25px; border-bottom:1px solid #bdb28b; }
 .t3-footer-links h2 { font-size:16px; margin-bottom:6px; }
 .t3-footer-links a { min-height:40px; }
 .t3-footer-bottom { display:grid; gap:5px; font-size:10px; padding-block:17px; }
 .table-wrap :is(th,td) { padding:12px; }
}
@media(prefers-reduced-motion:reduce) { html {scroll-behavior:auto;} *,*::before,*::after { transition:none !important; animation:none !important; } }
