:root{--bg: #0f0f10;--surface: #17171a;--surface-2: #1f1f23;--border: #2a2a2f;--text: #f3f1ea;--muted: #a4a4ad;--gold: #d4af37;--gold-2: #e3c766;--gold-dim: rgba(212,175,55,.14);--danger: #e5484d;--ok: #3ecf8e;--info: #4f8cff;--on-gold: #141414;--img-bg: #0b0b0c;--prose: #d9d7cf;--bar-bg: rgba(15,15,16,.86);--tabbar-bg: var(--tabbar-bg);--toast-bg: #f3f1ea;--toast-fg: #111;--tag-processing: #9bbcff;--tag-completed: #7fe3b4;--tag-out-bg: #2a2a2f;--focus: #ffd966;--radius: 14px;--nav-h: 64px;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);--font: "Roboto", system-ui, -apple-system, Segoe UI, sans-serif;--display: "Roboto Slab", Georgia, serif;color-scheme:dark}:root[data-theme=light]{--bg: #f6f4ee;--surface: #ffffff;--surface-2: #f0ede4;--border: #ddd8cb;--text: #1b1b1f;--muted: #5c5c66;--gold: #8a6d1d;--gold-2: #6f5614;--gold-dim: rgba(138,109,29,.12);--danger: #b3261e;--ok: #1f7a4d;--info: #2457c5;--on-gold: #ffffff;--img-bg: #f3f1ea;--prose: #2a2a30;--bar-bg: rgba(246,244,238,.9);--tabbar-bg: rgba(255,255,255,.96);--toast-bg: #1b1b1f;--toast-fg: #f3f1ea;--tag-processing: #1d4ed8;--tag-completed: #15803d;--tag-out-bg: #e6e2d6;--focus: #8a6d1d;--tag-web-bg: #dbe6ff;--tag-web: #1d3a8a;--tag-bad: #9f1d22;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}body{min-height:100dvh}a{color:var(--gold-2);text-decoration:none}button{font:inherit}img{max-width:100%;display:block}h1,h2,h3{font-family:var(--display);margin:0 0 .5rem;letter-spacing:.2px}h1{font-size:1.6rem}h2{font-size:1.25rem}h3{font-size:1.05rem}p{line-height:1.5}.muted{color:var(--muted)}.small{font-size:.85rem}.gold{color:var(--gold)}.row{display:flex;align-items:center;gap:.6rem}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:.75rem}.grow{flex:1}.hide{display:none!important}.shell{min-height:100dvh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;padding:calc(.6rem + var(--safe-t)) 1rem .6rem;background:var(--bar-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:.75rem}.brand{font-family:var(--display);font-weight:700;letter-spacing:3px;color:var(--gold);font-size:1.1rem}.brand small{display:block;letter-spacing:1px;font-size:.62rem;color:var(--muted);font-family:var(--font);font-weight:500}.content{flex:1;padding:1rem 1rem calc(var(--nav-h) + var(--safe-b) + 1rem);max-width:1100px;width:100%;margin:0 auto}.content.wide{max-width:1400px}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:20;height:calc(var(--nav-h) + var(--safe-b));padding-bottom:var(--safe-b);background:var(--tabbar-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(5,1fr)}.tabbar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--muted);font-size:.68rem;font-weight:500;position:relative}.tabbar a.active{color:var(--gold)}.ico{width:18px;height:18px;flex:none}.tabbar .ico{width:22px;height:22px}.badge-dot{position:absolute;top:8px;right:calc(50% - 20px);background:var(--gold);color:var(--on-gold);font-size:.62rem;font-weight:700;border-radius:999px;min-width:17px;height:17px;display:grid;place-items:center;padding:0 4px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.card.pad-0{padding:0;overflow:hidden}.card.gold{border-color:#d4af3773;background:linear-gradient(160deg,#d4af371f,#d4af3705)}.hero{border-radius:20px;padding:1.5rem 1.25rem;background:radial-gradient(120% 120% at 100% 0%,rgba(212,175,55,.22),transparent 60%),var(--surface);border:1px solid var(--border)}.hero h1{font-size:1.7rem;margin-bottom:.35rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.78rem 1.1rem;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-weight:600;cursor:pointer;transition:transform .08s ease,background .15s;min-height:44px}.btn:active{transform:scale(.98)}.btn.primary{background:var(--gold);border-color:var(--gold);color:var(--on-gold)}.btn.primary:hover{background:var(--gold-2)}.btn.ghost{background:transparent}.btn.danger{color:var(--danger);border-color:#e5484d66}.btn.block{width:100%}.btn.sm{padding:.45rem .75rem;min-height:34px;font-size:.85rem;border-radius:9px}.btn[disabled]{opacity:.55;cursor:not-allowed}.btn.icon{width:44px;padding:0}input,select,textarea{width:100%;background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:11px;padding:.75rem .85rem;font:inherit;min-height:44px}input:focus,select:focus,textarea:focus{outline:2px solid rgba(212,175,55,.5);border-color:var(--gold)}label.field{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--muted)}label.check{display:flex;gap:.6rem;align-items:flex-start;font-size:.9rem;line-height:1.4;cursor:pointer}label.check input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:22px;height:22px;min-height:0;padding:0;margin:1px 0 0;flex:none;border:1.5px solid var(--border);border-radius:6px;background:var(--surface-2);display:inline-grid;place-content:center;cursor:pointer;position:relative;transition:background .12s,border-color .12s}label.check input[type=checkbox]:checked{background:var(--gold);border-color:var(--gold)}label.check input[type=checkbox]:checked:after{content:"";width:6px;height:12px;margin-top:-3px;border:solid var(--on-gold);border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}label.check input[type=checkbox]:focus-visible{outline:2px solid var(--gold);outline-offset:2px}label.check:has(input:checked){color:var(--text)}.chips{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.25rem;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:none;padding:.45rem .85rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:.85rem;font-weight:500;cursor:pointer;white-space:nowrap}.chip.active{background:var(--gold-dim);border-color:var(--gold);color:var(--gold-2)}.chip.option{padding:.6rem 1.1rem;font-size:.95rem;color:var(--text)}.chip.option.active{background:var(--gold);border-color:var(--gold);color:var(--on-gold);font-weight:700}a.chip{text-decoration:none}.grid{display:grid;gap:.75rem;grid-template-columns:repeat(2,1fr)}@media (min-width: 640px){.grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 960px){.grid{grid-template-columns:repeat(4,1fr)}}.pcard{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;color:var(--text)}.pcard .img{aspect-ratio:1;background:var(--img-bg);display:grid;place-items:center;overflow:hidden}.pcard .img img{width:100%;height:100%;object-fit:cover}.pcard .body{padding:.7rem .8rem .85rem;display:flex;flex-direction:column;gap:.3rem;flex:1}.pcard .name{font-weight:600;font-size:.92rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.price{font-weight:700;color:var(--gold-2)}.price s{color:var(--muted);font-weight:400;margin-right:.35rem;font-size:.85em}.tag{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:6px;font-size:.7rem;font-weight:700;letter-spacing:.4px;text-transform:uppercase}.tag.sale{background:var(--gold);color:var(--on-gold)}.tag.out{background:var(--tag-out-bg);color:var(--muted)}.tag.app{background:var(--gold);color:var(--on-gold)}.tag.web{background:var(--tag-web-bg, #2d3d5c);color:var(--tag-web, #cfe0ff)}.tag.processing{background:#4f8cff2e;color:var(--tag-processing)}.tag.completed{background:#3ecf8e2e;color:var(--tag-completed)}.tag.pending,.tag.on-hold{background:#d4af372e;color:var(--gold-2)}.tag.cancelled,.tag.refunded,.tag.failed{background:#e5484d2e;color:var(--tag-bad, #ff9a9d)}.qty{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:10px;overflow:hidden}.qty button{width:40px;height:40px;background:var(--surface-2);color:var(--text);border:0;font-size:1.2rem;cursor:pointer}.qty span{min-width:36px;text-align:center;font-weight:600}.gallery{aspect-ratio:1;background:var(--img-bg);border-radius:18px;overflow:hidden;border:1px solid var(--border)}.gallery img{width:100%;height:100%;object-fit:contain}.thumbs{display:flex;gap:.5rem;margin-top:.5rem;overflow-x:auto}.thumbs img{width:56px;height:56px;object-fit:cover;border-radius:8px;border:2px solid transparent}.thumbs img.active{border-color:var(--gold)}.prose{color:var(--prose);line-height:1.6;font-size:.95rem}.prose h1,.prose h2,.prose h3{font-family:var(--font);font-size:1.05rem;margin:1rem 0 .4rem;color:var(--text)}.prose a{text-decoration:underline}.prose table{width:100%;border-collapse:collapse;font-size:.9rem}.prose td,.prose th{border:1px solid var(--border);padding:.4rem}.prose img{border-radius:10px}.sticky-cta{position:sticky;bottom:calc(var(--nav-h) + var(--safe-b) + .5rem);background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:.7rem;display:flex;gap:.6rem;align-items:center;margin-top:1rem;box-shadow:0 10px 30px #00000080}.list{display:flex;flex-direction:column}.list>*{padding:.85rem 0;border-bottom:1px solid var(--border)}.list>*:last-child{border-bottom:0}.cart-item{display:grid;grid-template-columns:64px 1fr auto;gap:.75rem;align-items:center}.cart-item img{width:64px;height:64px;object-fit:cover;border-radius:10px;background:var(--img-bg)}.totals div{display:flex;justify-content:space-between;padding:.3rem 0}.totals .grand{font-weight:700;font-size:1.1rem;border-top:1px solid var(--border);margin-top:.3rem;padding-top:.6rem}.notice{padding:.8rem .95rem;border-radius:12px;font-size:.9rem;line-height:1.45;border:1px solid var(--border);background:var(--surface-2)}.notice.warn{border-color:#d4af3780;background:var(--gold-dim)}.notice.error{border-color:#e5484d80;background:#e5484d1a}.notice.ok{border-color:#3ecf8e80;background:#3ecf8e1a}.timeline{display:grid;gap:.5rem}.timeline .step{display:flex;gap:.7rem;align-items:center;color:var(--muted);font-size:.9rem}.timeline .dot{width:12px;height:12px;border-radius:50%;background:var(--border);flex:none}.timeline .step.done{color:var(--text)}.timeline .step.done .dot{background:var(--gold)}.gate{min-height:100dvh;display:grid;place-items:center;padding:1.5rem 1rem;background:radial-gradient(80% 50% at 50% 0%,rgba(212,175,55,.16),transparent 60%),var(--bg)}.gate .card{width:100%;max-width:440px}.tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--surface-2);border-radius:12px;padding:4px}.tabs button{border:0;background:transparent;color:var(--muted);padding:.6rem;border-radius:9px;font-weight:600;cursor:pointer}.tabs button.active{background:var(--surface);color:var(--gold)}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--gold);animation:spin .8s linear infinite;margin:2rem auto}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,var(--surface) 25%,var(--surface-2) 50%,var(--surface) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:10px}@keyframes shimmer{to{background-position:-200% 0}}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(var(--nav-h) + var(--safe-b) + 1rem);background:var(--toast-bg);color:var(--toast-fg);padding:.7rem 1rem;border-radius:12px;font-weight:600;z-index:50;box-shadow:0 10px 30px #00000080;animation:pop .2s ease;max-width:calc(100% - 2rem);text-align:center}@keyframes pop{0%{opacity:0;transform:translate(-50%,8px)}}.admin{display:grid;grid-template-columns:220px 1fr;min-height:100dvh}.admin aside{background:var(--surface);border-right:1px solid var(--border);padding:1rem;position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:.25rem}.admin aside a{padding:.6rem .75rem;border-radius:10px;color:var(--muted);font-weight:500;display:flex;gap:.6rem;align-items:center}.admin aside a.active{background:var(--gold-dim);color:var(--gold-2)}.admin main{padding:1.25rem;min-width:0}@media (max-width: 860px){.admin{grid-template-columns:1fr}.admin aside{position:static;height:auto;flex-direction:row;overflow-x:auto;gap:.35rem}.admin aside a{white-space:nowrap}.admin aside .spacer{display:none}}.kpis{display:grid;gap:.75rem;grid-template-columns:repeat(2,1fr)}@media (min-width: 760px){.kpis{grid-template-columns:repeat(4,1fr)}}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1rem}.kpi .label{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.kpi .value{font-size:1.5rem;font-weight:700;margin-top:.25rem;font-family:var(--display)}.kpi .sub{color:var(--muted);font-size:.8rem;margin-top:.2rem}.kpi.app{border-color:#d4af3766}.kpi.web{border-color:#4f8cff59}table.data{width:100%;border-collapse:collapse;font-size:.88rem}table.data th{text-align:left;color:var(--muted);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.4px;padding:.5rem .6rem;border-bottom:1px solid var(--border)}table.data td{padding:.6rem;border-bottom:1px solid var(--border);vertical-align:middle}table.data tr:hover td{background:#ffffff05}table.data td.num,table.data th.num{text-align:right;font-variant-numeric:tabular-nums}.table-wrap{overflow-x:auto}.legend{display:flex;gap:1rem;font-size:.8rem;color:var(--muted)}.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:middle}.two{display:grid;gap:.75rem;grid-template-columns:1fr}@media (min-width: 960px){.two{grid-template-columns:1fr 1fr}}.range{display:inline-flex;background:var(--surface-2);border-radius:10px;padding:3px;border:1px solid var(--border)}.range button{border:0;background:transparent;color:var(--muted);padding:.4rem .7rem;border-radius:8px;font-weight:600;font-size:.85rem;cursor:pointer}.range button.active{background:var(--surface);color:var(--gold)}.bar{height:8px;border-radius:4px;background:var(--border);overflow:hidden}.bar i{display:block;height:100%;background:var(--gold)}code{background:var(--surface-2);padding:.1rem .35rem;border-radius:5px;font-size:.85em}pre{background:var(--surface-2);padding:.75rem;border-radius:10px;overflow-x:auto;font-size:.8rem}.cart-item.unavailable img{opacity:.45;filter:grayscale(1)}.notice.small{padding:.55rem .8rem;font-size:.9rem}.coa-chips{gap:6px;flex-wrap:wrap;overflow:visible;white-space:normal}.coa-chips .chip{white-space:nowrap}.cart-item>.grow{min-width:0}.chip.coa{display:inline-flex;gap:8px;align-items:baseline;border-color:#d4af3773}.chip.coa .coa-lot{font-weight:600}.chip.coa .coa-purity{color:var(--gold-2);font-size:.8em}.coa-card{border-color:#d4af3740}.timeline .step{align-items:flex-start}.timeline .step .dot{margin-top:4px}.timeline .step .step-body{flex:1}.timeline .step.alert .dot{background:var(--danger);border-color:var(--danger)}.linklike{background:none;border:0;color:var(--gold);padding:0;font:inherit;cursor:pointer;text-decoration:underline}.scans{margin:6px 0 0;padding-left:1rem;display:grid;gap:4px}.scans li{line-height:1.35}.buy-again{margin-top:6px;font-size:.8rem;padding:.25rem .7rem}.skip-link{position:absolute;left:8px;top:-100px;z-index:100;background:var(--gold);color:var(--on-gold);padding:.6rem 1rem;border-radius:10px;font-weight:700}.skip-link:focus{top:calc(8px + var(--safe-t));outline:3px solid var(--focus)}main:focus{outline:none}:focus{outline:none}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}.btn:focus-visible,.chip:focus-visible,.tabbar a:focus-visible,.tabs button:focus-visible,.qty button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:0;border-color:var(--gold)}.btn{min-height:44px}.btn.sm{min-height:40px;padding:.45rem .9rem}.btn.icon{width:44px;height:44px}.chip,.chip.option{min-height:40px;display:inline-flex;align-items:center}.qty button{min-width:44px;min-height:44px}.tabs button{min-height:44px}.check input[type=checkbox]{width:24px;height:24px}.linklike{min-height:32px}.tabbar a{font-size:.74rem}.brand small{font-size:.68rem}.badge-dot{font-size:.7rem;min-width:18px;height:18px;line-height:18px}.small,.muted.small{font-size:.875rem}input.code{letter-spacing:.35em;font-size:1.4rem;text-align:center;font-variant-numeric:tabular-nums}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (forced-colors: active){.btn,.chip,.card,input{border:1px solid ButtonText}}@media (min-resolution: 1dppx){.tabbar a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.code-pill{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem .6rem .5rem .9rem;border:1px dashed var(--gold);border-radius:12px;background:var(--card-2, rgba(255,255,255,.03))}.code-pill-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;letter-spacing:.12em;font-size:1.05rem;color:var(--gold);flex:1 1 auto;-webkit-user-select:all;user-select:all}.card.promo{border-color:#d4af3759}
