:root{--bg:#f8f5f3;--surface:#ffffff;--ink:#2b1418;--muted:#76606a;--line:#eadfe0;--red:#b3122e;--red-ink:#ffffff;--gold:#a8782a;--soft:#f6e7e9;--ok:#2f7a4f;--display:"Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif;--body:"Figtree",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1b1214;--surface:#261a1d;--ink:#f5ecee;--muted:#b59fa6;--line:#3b2a2f;--red:#e0405b;--red-ink:#ffffff;--gold:#d9ad5c;--soft:#3a2227;--ok:#5cbf84;color-scheme:dark}}:root[data-theme=dark]{--bg:#1b1214;--surface:#261a1d;--ink:#f5ecee;--muted:#b59fa6;--line:#3b2a2f;--red:#e0405b;--red-ink:#ffffff;--gold:#d9ad5c;--soft:#3a2227;--ok:#5cbf84;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 var(--body);padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:0 120px}.wrap{max-width:1120px;margin:0 auto}header.hero{padding-block:32px 20px;display:grid;gap:10px}.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:700}h1{font-family:var(--display);font-weight:800;font-size:clamp(30px,5vw,48px);line-height:1.05;margin:0;text-wrap:balance}h1 em{font-style:normal;color:var(--red)}.lede{max-width:62ch;color:var(--muted);margin:0}.tabs{display:flex;gap:6px;margin-block:8px 4px}.tab{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:7px 14px;font:600 14px var(--body);cursor:pointer}.tab[aria-selected=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chips{display:flex;gap:6px;flex-wrap:wrap;padding-block:14px;position:sticky;top:env(safe-area-inset-top,0px);background:var(--bg);z-index:5}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg)}.chip{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:999px;padding:6px 12px;font:500 13px var(--body);cursor:pointer}.chip[aria-pressed=true]{background:var(--red);border-color:var(--red);color:var(--red-ink)}.chip:focus-visible,.tab:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}.card.on{border-color:var(--red);box-shadow:0 0 0 1px var(--red)}.ph{background:#fff;aspect-ratio:488/424;max-width:100%;position:relative}.ph img{width:100%;height:100%;object-fit:contain;display:block}.new{position:absolute;right:8px;top:8px;background:var(--red);color:#fff;font:700 11px var(--body);letter-spacing:.08em;padding:3px 8px;border-radius:4px}.info{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.num{font:600 12px var(--body);color:var(--muted);letter-spacing:.04em}.name{font:700 16px/1.25 var(--display);margin:0}.desc{font-size:13px;color:var(--muted);margin:0;flex:1}.row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px}.price{font:800 19px var(--display);font-variant-numeric:tabular-nums}.step{display:flex;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden}.step button{width:36px;height:34px;border:0;background:transparent;color:var(--ink);font:600 18px var(--body);cursor:pointer}.step button:disabled{opacity:.3;cursor:default}.step output{min-width:26px;text-align:center;font:700 15px var(--body);font-variant-numeric:tabular-nums}.card.on .step{border-color:var(--red)}.bar{position:fixed;left:0;right:0;bottom:0;background:var(--ink);color:var(--bg);padding:12px max(16px,env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));z-index:20}.bar .in{max-width:1120px;margin:0 auto;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.bar .sum{flex:1;min-width:0}.bar .big{font:800 22px var(--display);font-variant-numeric:tabular-nums}.btn{border:0;border-radius:999px;padding:11px 20px;font:700 15px var(--body);cursor:pointer;background:var(--red);color:var(--red-ink)}.btn.ghost{background:transparent;color:inherit;border:1px solid currentColor}.btn:disabled{opacity:.5;cursor:default}.sheet{position:fixed;top:0;right:0;bottom:0;left:0;background:#14080a8c;z-index:30;display:flex;justify-content:center;align-items:flex-end;padding-top:env(safe-area-inset-top,0px)}.panel{background:var(--surface);color:var(--ink);width:min(560px,100%);max-height:92vh;overflow:auto;border-radius:18px 18px 0 0;padding:22px max(18px,env(safe-area-inset-left,0px)) calc(22px + env(safe-area-inset-bottom,0px))}.panel h2{font:800 24px var(--display);margin:0 0 12px}.lines{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:6px}.lines li{display:flex;justify-content:space-between;gap:10px;font-variant-numeric:tabular-nums;border-bottom:1px dashed var(--line);padding-bottom:6px}.total{display:flex;justify-content:space-between;font:800 20px var(--display);margin-bottom:16px}label{display:grid;gap:4px;font-weight:600;font-size:13px;margin-bottom:12px}input,select,textarea{font:15px var(--body);padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);width:100%}.actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.note{font-size:13px;color:var(--muted)}.err{color:var(--red);font-weight:600;font-size:14px}.banner{background:var(--soft);border-radius:12px;padding:12px 14px;margin-block:6px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.banner b{color:var(--ok)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-block:16px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.kpi span{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.kpi b{font:800 26px var(--display);font-variant-numeric:tabular-nums}h3{font:800 19px var(--display);margin:22px 0 8px}.tw{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:12px}table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums;font-size:14px}th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}td.r,th.r{text-align:right}.pill{display:inline-block;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}.pill.paid{background:var(--ok);border-color:var(--ok);color:#fff}.empty{padding:28px;text-align:center;color:var(--muted)}@media(prefers-reduced-motion:no-preference){.card{transition:border-color .15s,box-shadow .15s}}.banner .link{font:600 13px var(--body);word-break:break-all}.copy{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:5px 12px;font:600 13px var(--body);cursor:pointer}.closed{background:var(--soft);border-radius:12px;padding:12px 14px;font-weight:600}.login{max-width:360px;margin:60px auto;display:grid;gap:12px}.adminhead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-block:24px 0}.del{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:12px;text-decoration:underline}.product-no-photo{width:100%;height:100%;min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:20px;box-sizing:border-box;background:var(--soft);color:var(--ink)}.product-no-photo span{font-size:13px;color:var(--muted)}.catalog-download{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:4px 0}.catalog-download a{display:inline-block;color:var(--ink);font-weight:700;text-underline-offset:4px}.catalog-download a:focus-visible{outline:2px solid currentColor;outline-offset:5px}.catalog-download span{color:var(--muted);font-size:13px}.admin-closure{margin:20px 0;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.admin-closure h2{margin-top:0}.payment-review{margin-top:10px;padding:12px;border:1px solid var(--gold);border-radius:8px;background:var(--soft);font-size:13px}.product-image-trigger{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in;color:var(--ink)}.product-image-trigger:focus-visible{outline:3px solid var(--red);outline-offset:-3px}.product-image-hint{position:absolute;bottom:8px;right:8px;padding:4px 8px;background:#ffffffed;color:#2b1418;border-radius:999px;font:600 11px var(--body);pointer-events:none}.product-image-dialog{padding:0;border:0;border-radius:14px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);background:var(--surface);color:var(--ink);overflow:auto}.product-image-dialog::backdrop{background:#000c}.product-image-panel{position:relative;padding:12px;max-width:960px}.product-image-panel img{display:block;max-width:100%;max-height:calc(100dvh - 130px);width:auto;height:auto;object-fit:contain;margin:0 auto;background:#fff}.product-image-panel p{margin:12px 36px 0 0;font:600 14px var(--body)}.product-image-close{position:absolute;top:18px;right:18px;width:40px;height:40px;border:1px solid #eadfe0;border-radius:50%;background:#fff;color:#2b1418;font-size:20px;cursor:pointer}.product-image-close:focus-visible{outline:3px solid var(--red);outline-offset:2px}.order-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin:16px 0}@media(max-width:640px){.order-filters{grid-template-columns:1fr}}
