
:root{
  --maroon:#6d1025;--maroon-dark:#430916;--maroon-light:#f8edf0;
  --cream:#fffaf7;--ink:#24171a;--muted:#6e6265;--white:#fff;--border:#eadde0;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}
a{text-decoration:none;color:inherit}
.container{width:min(1120px,92%);margin:auto}
.topbar{background:var(--maroon-dark);color:#fff;text-align:center;padding:8px;font-size:.82rem;letter-spacing:.08em}
nav{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:30}
.nav-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{display:flex;align-items:center;gap:12px;font-weight:900;font-size:1.2rem;color:var(--maroon-dark)}
.logo{width:54px;height:40px;display:block;object-fit:contain;background:#fff;border-radius:6px}
.inline-logo{width:42px;height:28px;display:inline-block;object-fit:contain;vertical-align:middle;background:#fff;border-radius:4px;margin-right:7px}
.admin-logo{width:46px;height:31px;display:inline-block;object-fit:contain;vertical-align:middle;background:#fff;border-radius:4px;margin-right:8px}
.nav-links{display:flex;gap:24px;align-items:center;font-weight:700}
.nav-links a:hover,.nav-links .active{color:var(--maroon)}
.btn{display:inline-block;background:var(--maroon);color:#fff;padding:12px 20px;border-radius:7px;font-weight:800;border:2px solid var(--maroon);cursor:pointer}
.btn:hover{background:var(--maroon-dark);border-color:var(--maroon-dark)}
.btn.alt{background:#fff;color:var(--maroon)}
.hero{background:linear-gradient(120deg,var(--maroon-dark),var(--maroon));color:#fff;padding:80px 0}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}
.hero h1{font-size:clamp(2.7rem,6vw,5rem);line-height:1;margin:0 0 14px}
.hero h2{font-size:1.8rem;letter-spacing:.13em}
.hero p{font-size:1.1rem;max-width:610px;color:#f7e9ec}
.hero-card{background:#fff1f3;color:var(--maroon-dark);border-radius:20px;padding:35px;min-height:300px;display:grid;place-items:center;text-align:center;box-shadow:0 20px 50px #22030b55}
.wolf{display:grid;place-items:center}
.hero-logo{width:min(300px,85%);height:auto;display:block}
.section{padding:70px 0}
.section-head{text-align:center;margin-bottom:38px}
.section-head h2{font-size:2.2rem;margin:0 0 8px;color:var(--maroon-dark)}
.section-head p{color:var(--muted);margin:0}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 8px 25px #3210180c}
.product-img{height:220px;aspect-ratio:1/1;background:#fff;display:grid;place-items:center;font-size:5rem;overflow:hidden;padding:10px}
.product-img>img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}
.product-logo{width:70%;height:70%;object-fit:contain;background:#fff;border-radius:10px}
.card-body{padding:20px}.card h3{margin:0 0 6px}.price{font-size:1.2rem;font-weight:900;color:var(--maroon)}
.card p{color:var(--muted);font-size:.95rem}
.product-purchase{display:grid;gap:12px;margin-top:18px}
.product-purchase label,.size-option label{display:grid;gap:5px;font-size:.9rem}
.product-purchase input,.product-purchase select,.size-option input{width:100%;min-width:0;min-height:44px;padding:10px;border:1px solid var(--border);border-radius:7px;background:var(--cream);color:var(--ink);font:inherit}
.product-purchase input:focus-visible,.product-purchase select:focus-visible,.size-option input:focus-visible{outline:2px solid var(--maroon);outline-offset:2px}
.product-purchase .small,.size-editor .small{color:var(--muted)}
.product-total{font-weight:700}
.purchase-status:empty{display:none}
.product-purchase .btn{width:100%}
.btn:disabled{opacity:.55;cursor:not-allowed}
.product-row>.size-editor{grid-column:1/-1;min-width:0;margin:8px 0;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--cream)}
.size-editor legend{padding:0 6px;font-weight:700;color:var(--maroon-dark)}
.size-editor p{margin:0 0 12px}
.size-group{margin-bottom:12px;border:1px solid var(--border);border-radius:8px;background:#fff;overflow:hidden}
.size-group summary{padding:14px;cursor:pointer;font-weight:700;color:var(--maroon-dark)}
.size-group summary:focus-visible{outline:2px solid var(--maroon);outline-offset:-3px}
.size-group-options{padding:0 14px 2px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
.size-option.preset-size{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}
.size-option .size-choice{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}
.size-choice input.size-enabled{width:20px;min-height:20px;height:20px;margin:0;flex-shrink:0;accent-color:var(--maroon)}
.size-price:disabled{opacity:.5;cursor:not-allowed}
.custom-size-options:empty{display:none}
.size-option{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:end;margin-bottom:12px}
.size-actions{display:flex;gap:10px;flex-wrap:wrap}
.size-status{margin-top:10px}
@media(max-width:600px){.size-group-options{grid-template-columns:1fr}.size-option{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.size-option .remove-size{grid-column:1/-1;justify-self:start}.product-row>.size-editor{grid-column:1/-1}}
.features{background:var(--maroon-light)}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;text-align:center}
.feature-icon{font-size:2rem;color:var(--maroon)}
.page-hero{background:var(--maroon-light);padding:55px 0;text-align:center}
.page-hero h1{font-size:3rem;color:var(--maroon-dark);margin:0}
.notice{background:#fff3cd;border:1px solid #ead28a;padding:14px;border-radius:8px;margin:20px 0}
footer{background:var(--maroon-dark);color:#fff;padding:45px 0;margin-top:40px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
footer a{color:#f7dfe5}
.small{font-size:.9rem;color:#ead5da}
.status{min-height:24px;padding:8px 0;font-weight:700}.status.ok{color:#16733a}.status.error{color:#b21f3c}
.hidden{display:none!important}
.form{display:grid;gap:14px;max-width:760px}
label{font-weight:700}.form input,.form textarea,.form select{
 width:100%;padding:12px;border:1px solid #d9cbd0;border-radius:7px;font:inherit;background:#fff
}
.form textarea{min-height:110px}
.admin-shell{min-height:100vh;background:#f5eff1}
.admin-top{background:var(--maroon-dark);color:#fff;padding:18px 0}
.admin-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end}
.panel{background:#fff;border:1px solid var(--border);border-radius:14px;padding:24px;margin:24px 0;box-shadow:0 8px 25px #3210180c}
.toolbar{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.product-row{display:grid;grid-template-columns:70px 1.4fr .8fr .9fr .8fr auto;gap:10px;align-items:center;padding:14px 0;border-top:1px solid var(--border)}
.product-row:first-child{border-top:0}
.thumb{width:65px;height:65px;background:var(--maroon-light);display:grid;place-items:center;border-radius:9px;font-size:2rem;overflow:hidden}
.thumb img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}
.product-upload{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.product-upload input[type=file]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.upload-label{padding:8px 12px;font-size:.85rem}
.reorder{display:flex;gap:5px}
.reorder .btn{padding:7px 10px}
.btn:disabled{opacity:.5;cursor:not-allowed}
.order-card img{width:110px;height:110px;object-fit:contain;object-position:center;background:var(--maroon-light);border-radius:8px;padding:5px}
.product-row input{width:100%;padding:9px;border:1px solid #d9cbd0;border-radius:6px}
.login-wrap{min-height:100vh;display:grid;place-items:center;padding:30px}
.login-card{width:min(440px,100%);background:#fff;border:1px solid var(--border);border-radius:16px;padding:30px;box-shadow:0 15px 50px #32101815}
.empty{padding:35px;text-align:center;color:var(--muted);border:1px dashed #d9cbd0;border-radius:12px}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1fr}.feature-grid{grid-template-columns:repeat(2,1fr)}.product-row{grid-template-columns:65px 1fr 1fr}.product-row .optional{grid-column:2/-1}.product-row .actions{grid-column:2/-1}}
@media(max-width:600px){.nav-inner{align-items:flex-start;padding:12px 0}.nav-links{display:flex;gap:8px 14px;flex-wrap:wrap;font-size:.82rem;justify-content:flex-end}.brand{font-size:0;width:54px;flex:0 0 54px}.grid,.feature-grid{grid-template-columns:1fr}.hero{padding:60px 0}.page-hero h1{font-size:2.3rem}.footer-grid{grid-template-columns:1fr}.product-row{grid-template-columns:60px 1fr}.product-row>*{grid-column:2}.product-row>.thumb{grid-column:1;grid-row:1/3}.product-img{height:auto}.admin-actions{justify-content:flex-start;flex-wrap:wrap}}
.editor-shell{min-height:100vh;background:#f3ecee}.editor-top{background:#430916;color:#fff;padding:14px 0;position:sticky;top:0;z-index:50}.editor-layout{display:grid;grid-template-columns:230px 1fr 350px;min-height:calc(100vh - 70px)}.editor-sidebar,.editor-inspector{background:#fff;padding:16px;overflow:auto}.editor-inspector{border-left:1px solid #eadde0}.editor-canvas{padding:28px;background:#ece4e7;overflow:auto}.page-item,.block-item{border:1px solid #eadde0;border-radius:8px;padding:10px;margin:6px 0;background:#fff;cursor:pointer}.page-item.active,.block-item.active{border-color:#6d1025;box-shadow:0 0 0 2px #6d102522}.preview-site{width:min(920px,100%);margin:auto;background:#fff;min-height:700px;box-shadow:0 10px 35px #32101818}.preview-nav{padding:18px 24px;border-bottom:1px solid #ddd;display:flex;justify-content:space-between}.preview-section{padding:35px;text-align:center}.preview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.preview-card{border:1px solid #eee;border-radius:10px;padding:18px;background:#fff}.editor-field{margin:0 0 12px}.editor-field label{display:block;font-weight:700;font-size:.85rem;margin-bottom:5px}.editor-field input,.editor-field textarea,.editor-field select{width:100%;box-sizing:border-box;padding:9px;border:1px solid #d7c9ce;border-radius:7px;font:inherit}.editor-field textarea{min-height:90px}@media(max-width:1050px){.editor-layout{grid-template-columns:200px 1fr}.editor-inspector{grid-column:1/-1;border-left:0;border-top:1px solid #eadde0}}@media(max-width:650px){.editor-layout{grid-template-columns:1fr}.preview-grid{grid-template-columns:1fr}}
