:root{--green:#244b38;--ink:#17231c;--muted:#6a756d;--line:#e4e8e2;--cream:#f3f5f0;--lime:#dbecc8;--shadow:0 18px 55px #14231a14}
body{background:#fafbf8;color:var(--ink)}
.wrap{width:min(1280px,calc(100% - 56px))}
.announcement{background:#1d3427;padding:10px 16px;font-size:12px}
.topbar{box-shadow:0 3px 16px #17231c08}
.nav{height:78px}
.logo{letter-spacing:-.055em}
.nav-links a{padding:11px 0;position:relative}
.nav-links a:after{content:"";height:2px;width:0;background:#bd7048;position:absolute;left:0;bottom:3px;transition:width .18s}
.nav-links a:hover:after{width:100%}
.btn,.icon-btn,.size-chip{transition:transform .16s,background .16s,border-color .16s,box-shadow .16s}
.btn{border-radius:7px;padding:14px 20px;box-shadow:0 5px 12px #244b3816}
.btn:focus-visible,.icon-btn:focus-visible,.size-chip:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #87aa7b;outline-offset:2px}
.btn:disabled{opacity:.63;cursor:wait;transform:none}
.hero{padding:30px 0 62px}
.hero-card{min-height:445px;border-radius:22px;background:radial-gradient(circle at 78% 48%,#eee8dd 0,#e9e1d5 31%,#e4e9dc 100%);box-shadow:0 22px 70px #29392c12}
.hero-copy{padding-left:10%}
.hero-copy h1{max-width:600px}
.hero-art:before{width:75%;background:#f8f4ed;box-shadow:0 22px 70px #7b604329}
.hero-art img{border-radius:50%;object-fit:cover;mix-blend-mode:multiply}
.category-row{gap:18px}
.category-card{border:1px solid #e7e9e2;min-height:170px;border-radius:14px;transition:transform .2s,box-shadow .2s}
.category-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.section{padding-bottom:74px}
.section-head{margin-bottom:25px}
.grid{gap:24px 20px}
.product-card{padding-bottom:5px}
.product-image{background:linear-gradient(145deg,#f3ede4,#e9e1d5);border-radius:13px;aspect-ratio:1/1.02}
.product-image:after{content:"";position:absolute;inset:0;border:1px solid #63513a0c;border-radius:inherit;pointer-events:none}
.product-card:hover .product-image img{transform:scale(1.055)}
.product-meta{align-items:start;flex-direction:column;gap:7px;margin-top:14px}
.product-meta h3{font-size:15px}
.price{font-size:15px}
.product-category{margin-top:6px}
.product-badge{box-shadow:0 4px 15px #17231c14}
.product-detail{gap:clamp(35px,7vw,90px);padding:38px 0 65px;align-items:center}
.detail-image{border:1px solid #e9e5de;box-shadow:0 18px 50px #2a35281a}
.detail-copy h1{line-height:1.18}
.size-chip{min-width:46px;padding:11px 14px;border-radius:7px}
.size-chip:hover:not(:disabled){border-color:var(--green);transform:translateY(-1px)}
.size-chip:disabled{opacity:.42;cursor:not-allowed}
.detail-actions .btn{min-width:165px}
.content-page{padding-top:34px}
.breadcrumb{padding:14px 0 22px}
.shop-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:5px 0 24px}
.shop-heading h1{font-size:clamp(34px,4.8vw,52px);margin:8px 0 7px}
.shop-heading p{color:var(--muted);margin:0;line-height:1.7}
.shop-heading h1 small{font-size:16px;letter-spacing:0;color:var(--muted);font-weight:500}
.result-count{white-space:nowrap;border:1px solid var(--line);padding:8px 12px;border-radius:30px;background:#fff;color:var(--muted);font-size:12px}
.shop-toolbar{display:flex;align-items:center;gap:12px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:24px;box-shadow:0 4px 14px #17231c05}
.search-field{height:44px;display:flex;align-items:center;gap:10px;flex:1;padding:0 12px;border:1px solid var(--line);border-radius:7px;color:var(--muted)}
.search-field>span{font-size:25px;line-height:1}
.search-field input{border:0!important;outline:none!important;box-shadow:none!important;padding:8px 0!important;min-width:0}
.sort-field{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}
.sort-field select{height:44px;border:1px solid var(--line);border-radius:7px;padding:0 12px;background:#fff;color:var(--ink)}
.search-empty{grid-column:1/-1}
.empty-mark{display:grid;place-items:center;margin:0 auto 15px;width:52px;height:52px;border-radius:50%;background:#edf2e8;color:var(--green);font-size:25px}
.cart-page h1,.checkout-page h1{font-size:clamp(33px,4vw,45px);margin:8px 0}
.checkout-steps{display:flex;align-items:center;gap:10px;margin:10px 0 27px;color:#8a9289;font-size:12px}
.checkout-steps span,.checkout-steps a{padding:9px 13px;border-radius:30px;background:#f0f2ed;white-space:nowrap}
.checkout-steps .current{background:#e6efdf;color:var(--green);font-weight:700}
.checkout-steps i{height:1px;width:30px;background:#d9ded5}
.cart-layout,.checkout-layout{grid-template-columns:minmax(0,1.45fr) minmax(285px,.75fr);align-items:start;gap:24px}
.panel{border-radius:12px;border-color:#e8eae5;padding:24px;box-shadow:0 8px 28px #14231a08}
.cart-items{padding:8px 22px}
.cart-line{padding:18px 0}
.cart-line img{width:78px;height:78px}
.order-summary{position:sticky;top:105px}
.order-summary h2,.checkout-form h2{font-size:18px;margin-bottom:17px}
.order-summary .summary-row{padding:12px 0}
.summary-row small{display:block;color:#899189;font-size:10px;margin-top:4px}
.summary-total{font-size:16px}
.checkout-submit{width:100%;min-height:48px}
.secure-note{margin-top:17px;padding-top:14px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);line-height:1.6}
.field-hint{color:#818a81;font-size:11px;line-height:1.55}
.field label span{font-size:11px;color:#889187;font-weight:400}
.field input,.field textarea,.field select,.inline-input{border-color:#dfe4dc;border-radius:7px;padding:12px 13px}
.field textarea{min-height:90px}
.coupon-entry{display:flex;gap:8px}
.coupon-entry input{min-width:0;flex:1}
.discount-row{color:#39704b}
.shipping-progress{padding:11px 13px;background:#f0f4eb;color:#476448;border-radius:7px;font-size:12px;margin-top:14px}
.checkout-form[aria-busy=true]{opacity:.8}
.checkout-form[aria-busy=true] .checkout-submit{cursor:wait}
.toast{max-width:min(440px,calc(100vw - 32px));line-height:1.5}
.footer{background:#1b2a20}
.footer-grid{padding-bottom:7px}
.admin-shell{background:#f5f7f3}
.admin-top{height:72px;padding:0 clamp(18px,3vw,44px);box-shadow:0 3px 14px #14231a08}
.admin-wrap{grid-template-columns:240px minmax(0,1fr)}
.admin-side{padding:22px 13px}
.admin-side .logo{padding:5px 13px 22px}
.admin-nav{gap:4px}
.admin-nav button{border-radius:7px;padding:12px 13px}
.admin-main{padding:clamp(24px,3vw,42px);max-width:1640px}
.admin-main>h1,.admin-toolbar h1{font-size:30px;letter-spacing:-.035em}
.admin-main>.muted,.admin-toolbar .muted{margin-top:7px}
.stats-grid{gap:16px}
.stat{border-radius:11px;padding:20px;border-color:#e7ebe4;box-shadow:0 5px 18px #14231a06}
.stat strong{font-size:27px}
.admin-card{border-radius:11px;border-color:#e7ebe4;box-shadow:0 6px 20px #14231a06;padding:20px}
.table{font-size:12px}
.table th{font-size:11px;letter-spacing:.025em}
.table th,.table td{padding:14px 12px}
.table tbody tr:hover{background:#fafcf9}
.admin-toolbar{margin-bottom:20px;align-items:center}
.admin-toolbar>.btn{min-height:44px}
.table .btn{border-radius:6px}
.admin-login{background:radial-gradient(circle at 50% 10%,#e9f0e6,#f4f6f1 54%,#edf1e9)}
.login-card{border-radius:15px;padding:38px;border-color:#e6ebe3;box-shadow:0 20px 60px #19291e14}
.login-card h1{margin:11px 0 8px}
.modal-backdrop{padding:16px;background:#15251c9c;backdrop-filter:blur(4px)}
.modal{width:min(920px,100%);max-height:calc(100dvh - 32px);padding:0;border:1px solid #e7ebe4;border-radius:15px;box-shadow:0 30px 100px #0b170f55;overflow:auto}
.modal-head{position:sticky;top:0;z-index:2;background:#fff;border-bottom:1px solid var(--line);padding:19px 26px;margin:0}
.modal-head h2{font-size:20px}
.modal-head .icon-btn{font-size:20px;width:38px;height:38px}
.modal [data-form=product]{padding:0 26px 23px}
.product-stepper{display:flex;align-items:center;gap:10px;padding:22px 0 25px;border-bottom:1px solid var(--line);margin-bottom:22px}
.product-stepper>div{display:flex;align-items:center;gap:10px;min-width:0;color:#929990}
.product-stepper>div>span{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border:1px solid #dfe4dc;border-radius:50%;font-size:12px;font-weight:700}
.product-stepper>div>div{display:grid;gap:3px}
.product-stepper strong{font-size:12px;font-weight:600}
.product-stepper small{font-size:10px;white-space:nowrap}
.product-stepper>i{height:1px;flex:1;min-width:10px;background:#e2e7df}
.product-stepper>div.active{color:var(--green)}
.product-stepper>div.active>span{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 0 0 4px #244b3813}
.product-stepper>div.complete>span{background:#e9f2e2;border-color:#cbdcbe;color:#315c45}
.step-intro{display:grid;gap:5px;margin:0 0 19px}
.step-intro strong{font-size:16px}
.step-intro>span{font-size:12px;color:var(--muted)}
.modal .form-grid{gap:8px 16px}
.modal .field{margin-bottom:10px}
.modal .field label{font-size:12px}
.modal input,.modal textarea,.modal select{font-size:13px}
.modal [data-product-step="2"]{min-height:300px}
.image-upload-panel{display:grid;grid-template-columns:112px 1fr;gap:17px;align-items:center;background:#f7f9f5;border:1px solid #ebeee8;border-radius:9px;padding:14px;margin-bottom:21px}
.image-preview{width:112px;height:112px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
.image-upload-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.image-upload-fields .field{margin:0}
.image-upload-fields input[type=file]{font-size:11px;padding:9px}
.inventory-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:12px}
.inventory-heading h3{font-size:15px;margin:0 0 4px}
.inventory-heading p{margin:0}
.variant-labels,.variant-editor{display:grid;grid-template-columns:minmax(100px,1fr) minmax(90px,.7fr) minmax(130px,1.2fr) 38px;gap:9px;align-items:center}
.variant-labels{padding:8px 0;color:#788277;font-size:10px;font-weight:600}
.variant-editor{margin:0 0 8px}
.variant-editor input{height:40px}
.variant-editor .btn{height:38px;padding:0}
.product-switches{margin-top:17px}
.product-switches .field{margin:0}
.product-switches input[type=checkbox]{accent-color:var(--green);width:16px;height:16px;vertical-align:middle}
.product-review{display:flex;align-items:center;gap:20px;padding:19px;border:1px solid var(--line);background:#f8faf6;border-radius:10px}
.product-review img{width:120px;height:120px;object-fit:cover;border-radius:8px;background:var(--cream)}
.product-review h3{font-size:20px;margin:7px 0 4px}
.product-review p{color:var(--muted);font-size:12px;margin:0 0 10px}
.product-review strong{font-size:18px}
.review-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}
.review-grid>div{display:grid;gap:6px;padding:13px;background:#f7f8f5;border-radius:7px}
.review-grid span{font-size:10px;color:var(--muted)}
.review-grid strong{font-size:12px}
.product-step-error{padding:11px 13px;background:#fff1ed;color:#923c31;border-radius:7px;margin:12px 0}
.product-modal-actions{position:sticky;bottom:0;margin:22px -26px -23px;padding:14px 26px;background:#ffffffed;border-top:1px solid var(--line);backdrop-filter:blur(10px);z-index:2}
.product-modal-actions [data-action=modal-close]{margin-right:auto}
.product-modal-actions .btn{min-width:124px}
@media(max-width:900px){.wrap{width:min(100% - 36px,760px)}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-wrap{grid-template-columns:190px minmax(0,1fr)}.admin-main{padding:22px}.admin-card{padding:16px}.cart-layout,.checkout-layout{grid-template-columns:minmax(0,1fr) 290px;gap:15px}.modal{width:min(800px,100%)}}
@media(max-width:650px){.wrap{width:calc(100% - 30px)}.nav{height:64px}.nav-links.is-open{display:flex;position:absolute;top:64px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:10px 18px 15px;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.nav-links.is-open a{padding:12px 5px;border-bottom:1px solid #f0f1ed}.hero{padding-top:15px}.hero-card{border-radius:15px}.hero-copy{padding:30px 22px 0}.hero-art{height:220px;min-height:220px}.category-row{gap:9px}.category-card{min-height:125px;border-radius:10px;padding:14px}.category-card strong{font-size:14px}.section{padding-bottom:48px}.section-head{align-items:center}.grid{gap:19px 11px}.product-image{border-radius:9px}.product-meta h3{font-size:12px}.price{font-size:13px}.product-detail{padding:12px 0 36px;gap:18px}.detail-copy{padding:2px 0}.detail-copy h1{font-size:32px}.detail-price{font-size:21px;margin:14px 0}.detail-actions .btn{flex:1;min-width:135px}.shop-heading{align-items:start;margin-bottom:17px}.shop-heading h1{font-size:35px}.result-count{font-size:10px;padding:7px 9px}.shop-toolbar{display:grid;grid-template-columns:1fr auto;padding:9px;gap:8px}.search-field{grid-column:1/-1}.sort-field{justify-content:space-between}.sort-field select{max-width:160px}.shop-toolbar>.btn{padding:12px 15px}.checkout-steps{gap:5px;margin:5px 0 19px;font-size:10px}.checkout-steps span,.checkout-steps a{padding:8px 9px}.checkout-steps i{width:12px}.cart-layout,.checkout-layout{grid-template-columns:1fr}.order-summary{position:static}.cart-items{padding:5px 14px}.cart-line{grid-template-columns:58px minmax(0,1fr) auto;gap:10px;padding:13px 0}.cart-line img{width:58px;height:58px}.cart-line h3{font-size:12px}.cart-line small{font-size:10px}.qty{gap:7px}.panel{padding:17px}.checkout-form{padding:18px 15px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-grid{grid-template-columns:1fr 1fr}.admin-top{height:58px;padding:0 12px}.admin-wrap{display:block}.admin-side{top:58px;padding:7px}.admin-nav button{font-size:10px;padding:9px 10px}.admin-main{padding:20px 12px}.admin-main>h1,.admin-toolbar h1{font-size:25px}.admin-toolbar{gap:10px}.admin-toolbar>.btn{padding:11px 12px;font-size:11px}.stats-grid{gap:8px}.stat{padding:13px}.stat strong{font-size:20px}.admin-card{padding:12px}.table th,.table td{padding:10px 8px}.modal-backdrop{padding:8px}.modal{max-height:calc(100dvh - 16px);border-radius:12px}.modal-head{padding:14px 16px}.modal [data-form=product]{padding:0 16px 18px}.product-stepper{gap:5px;padding:16px 0 18px;margin-bottom:17px}.product-stepper>div{gap:6px}.product-stepper>div>span{flex-basis:29px;width:29px;height:29px}.product-stepper strong{font-size:10px}.product-stepper small{display:none}.product-stepper>i{min-width:4px}.modal .form-grid{grid-template-columns:1fr 1fr;gap:5px 9px}.modal .field.full{grid-column:1/-1}.modal .field label{font-size:10px}.modal .field input,.modal .field select,.modal textarea{font-size:11px;padding:9px}.modal .field textarea{min-height:72px}.image-upload-panel{grid-template-columns:72px 1fr;padding:9px;gap:9px}.image-preview{width:72px;height:72px}.image-upload-fields{grid-template-columns:1fr;gap:6px}.image-upload-fields .field{margin:0}.image-upload-fields .field label{font-size:10px}.image-upload-fields input[type=file]{font-size:9px;padding:7px}.variant-labels,.variant-editor{grid-template-columns:minmax(54px,.75fr) minmax(55px,.6fr) minmax(88px,1.2fr) 30px;gap:5px}.variant-labels{font-size:9px}.variant-editor input{height:34px;padding:7px!important;font-size:10px!important}.variant-editor .btn{height:32px;min-width:0;padding:0 7px;font-size:10px}.inventory-heading{align-items:start}.inventory-heading h3{font-size:13px}.inventory-heading .btn{font-size:10px;padding:8px 9px;min-width:0}.product-switches{grid-template-columns:1fr}.product-switches .field{font-size:11px}.product-review{gap:11px;padding:12px}.product-review img{width:76px;height:76px}.product-review h3{font-size:15px}.review-grid{grid-template-columns:1fr 1fr}.product-modal-actions{margin:17px -16px -18px;padding:12px 16px;gap:7px}.product-modal-actions .btn{min-width:0;padding:11px 10px;font-size:10px}.product-modal-actions [data-action=modal-close]{margin-right:auto}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
