:root{--clr-primary:#10b981;--clr-primary-hover:#059669;--clr-primary-soft:#10b9811f;--clr-primary-light:#4edea3;--clr-primary-glow:#10b98140;--clr-bg:#0f1117;--clr-surface:#131313;--clr-surface-raised:#1c1c1c;--clr-surface-card:#201f1f;--clr-surface-high:#2a2a2a;--clr-surface-highest:#353534;--clr-overlay:#0009;--clr-text:#e5e2e1;--clr-text-muted:#bbcabf;--clr-text-dim:#86948a;--clr-danger:#f87171;--clr-danger-soft:#f871711f;--clr-warning:#fb923c;--clr-warning-soft:#fb923c1f;--clr-success:#4ade80;--clr-success-soft:#4ade801f;--clr-border:#3c4a42;--clr-border-focus:#10b981;--shadow-xs:0 1px 2px #0006;--shadow-sm:0 2px 6px #0006;--shadow-md:0 4px 16px #00000073;--shadow-lg:0 8px 32px #0000008c;--shadow-xl:0 16px 48px #000000a6;--neo-shadow-primary:4px 4px 0px 0px #10b981;--neo-shadow-primary-hover:6px 6px 0px 0px #10b981;--neo-shadow-primary-active:2px 2px 0px 0px #10b981;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-2xl:28px;--radius-full:9999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--sp-20:80px;--container-width:1280px;--container-padding:32px;--font-sans:"Bricolage Grotesque", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Mono", monospace;--t-fast:.12s ease;--t-normal:.2s ease;--t-slow:.3s ease;--h-btn-sm:36px;--h-btn-md:44px;--h-btn-lg:52px;--h-input:44px;--focus-ring:0 0 0 3px #10b98159}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-moz-text-size-adjust:100%;text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html,body{background:var(--clr-surface);color:var(--clr-text);font-family:var(--font-sans)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--clr-surface)}::-webkit-scrollbar-thumb{background:var(--clr-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#5a6b62}.skip-link{z-index:9999;width:1px;height:1px;position:absolute;top:auto;left:-9999px;overflow:hidden}.skip-link:focus{background:var(--clr-primary);color:#002113;width:auto;height:auto;font-family:var(--font-mono);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);outline:none;padding:12px 24px;font-size:14px;font-weight:600;text-decoration:none;position:fixed;top:16px;left:16px}:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.neo-shadow{box-shadow:var(--neo-shadow-primary);transition:box-shadow var(--t-fast), transform var(--t-fast)}.neo-shadow:hover{box-shadow:var(--neo-shadow-primary-hover);transform:translate(-2px,-2px)}.neo-shadow:active{box-shadow:var(--neo-shadow-primary-active);transform:translate(2px,2px)}.hard-shadow{box-shadow:var(--neo-shadow-primary)}.hard-shadow-hover{transition:box-shadow var(--t-normal), transform var(--t-normal)}.hard-shadow-hover:hover{box-shadow:var(--neo-shadow-primary-hover);transform:translate(-2px,-2px)}.hard-shadow-primary{box-shadow:var(--neo-shadow-primary);transition:box-shadow var(--t-fast), transform var(--t-fast)}.hard-shadow-primary:hover{box-shadow:var(--neo-shadow-primary-hover);transform:translate(-2px,-2px)}.hard-shadow-primary-active:active{box-shadow:var(--neo-shadow-primary-active);transform:translate(2px,2px)}.btn{justify-content:center;align-items:center;gap:var(--sp-2);font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--t-fast), color var(--t-fast), border-color var(--t-fast), box-shadow var(--t-fast), transform var(--t-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;height:var(--h-btn-md);padding:0 var(--sp-5);border:2px solid #0000;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary{color:#00422b;box-shadow:var(--neo-shadow-primary);background:#10b981;border-color:#00422b}.btn-primary:hover{box-shadow:var(--neo-shadow-primary-hover);background:#0ea577;transform:translate(-2px,-2px)}.btn-primary:active{box-shadow:var(--neo-shadow-primary-active);transform:translate(2px,2px)}.btn-outline{color:var(--clr-text);border-color:var(--clr-border);background:0 0}.btn-outline:hover{border-color:var(--clr-primary);color:var(--clr-primary)}.btn-ghost{color:var(--clr-text-muted);background:0 0;border-color:#0000}.btn-ghost:hover{color:var(--clr-text);background:var(--clr-surface-high)}.btn-sm{height:var(--h-btn-sm);padding:0 var(--sp-4);font-size:12px}.btn-lg{height:var(--h-btn-lg);padding:0 var(--sp-8);font-size:15px}.btn-icon{width:var(--h-btn-md);border-radius:var(--radius-full);padding:0}.btn-icon.btn-sm{width:var(--h-btn-sm)}.card{background:var(--clr-surface-card);border:1px solid var(--clr-border);border-radius:var(--radius-xl)}.card-raised{background:var(--clr-surface-raised);border:1px solid var(--clr-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.product-card{transition:border-color var(--t-normal), box-shadow var(--t-normal)}.product-card:hover{box-shadow:var(--shadow-md);border-color:#10b98166}.badge{align-items:center;gap:var(--sp-1);font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;border-radius:var(--radius-xs);border:1px solid #0000;padding:3px 8px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.badge-primary{background:var(--clr-primary-soft);color:var(--clr-primary);border-color:var(--clr-primary)}.badge-danger{background:var(--clr-danger-soft);color:var(--clr-danger);border-color:var(--clr-danger)}.badge-warning{background:var(--clr-warning-soft);color:var(--clr-warning);border-color:var(--clr-warning)}.badge-success{background:var(--clr-success-soft);color:var(--clr-success);border-color:var(--clr-success)}.badge-neutral{color:var(--clr-text-muted);border-color:var(--clr-border);background:#ffffff0d}.filter-chip{align-items:center;gap:var(--sp-1);font-family:var(--font-mono);letter-spacing:.03em;border-radius:var(--radius-full);border:1px solid var(--clr-primary);background:var(--clr-primary-soft);color:var(--clr-primary);transition:background var(--t-fast);padding:4px 10px;font-size:12px;font-weight:500;text-decoration:none;display:inline-flex}.filter-chip:hover{background:#10b98133}.filter-chip .chip-remove{border-radius:var(--radius-full);opacity:.7;cursor:pointer;justify-content:center;align-items:center;width:14px;height:14px;font-size:14px;display:inline-flex}.form-label{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--clr-text-muted);margin-bottom:var(--sp-1);font-size:12px;font-weight:500;display:block}.form-label .required{color:var(--clr-danger);margin-left:2px}.form-input{width:100%;height:var(--h-input);padding:0 var(--sp-4);background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-md);color:var(--clr-text);font-family:var(--font-sans);transition:border-color var(--t-fast), box-shadow var(--t-fast);font-size:16px;display:block}.form-input::placeholder{color:var(--clr-text-dim)}.form-input:focus{border-color:var(--clr-primary);box-shadow:var(--focus-ring);outline:none}.form-input.error{border-color:var(--clr-danger);box-shadow:0 0 0 3px var(--clr-danger-soft)}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2386948a' viewBox='0 0 16 16'%3E%3Cpath d='M8 10.5L3 5.5h10L8 10.5z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.form-error{color:var(--clr-danger);margin-top:var(--sp-1);font-size:13px;display:block}.form-check{align-items:flex-start;gap:var(--sp-3);cursor:pointer;display:flex}.form-check input[type=checkbox],.form-check input[type=radio]{width:18px;height:18px;accent-color:var(--clr-primary);cursor:pointer;flex-shrink:0;margin-top:2px}.cat-bg-merch{background-image:linear-gradient(135deg,#064e3b,#065f46)}.cat-bg-digital{background-image:linear-gradient(135deg,#134e4a,#115e59)}.cat-bg-electronics{background-image:linear-gradient(135deg,#0f766e,#166534)}.cat-bg-default{background-image:linear-gradient(135deg,#1a2e1e,#14532d)}.toast-container{z-index:1000;gap:var(--sp-2);pointer-events:none;flex-direction:column;display:flex;position:fixed;bottom:5rem;right:1.5rem}@media (min-width:768px){.toast-container{bottom:1.5rem}}.toast{background:var(--clr-surface-card);border:1px solid var(--clr-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);align-items:center;gap:var(--sp-3);max-width:340px;color:var(--clr-text);pointer-events:auto;padding:14px 18px;font-size:14px;animation:.25s forwards toastIn;display:flex}.toast.success{box-shadow:inset 0 2px 0 var(--clr-primary)}.toast.error{box-shadow:inset 0 2px 0 var(--clr-danger)}.toast.warning{box-shadow:inset 0 2px 0 var(--clr-warning)}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.mobile-drawer{z-index:200;pointer-events:none;visibility:hidden;display:flex;position:fixed;inset:0}.mobile-drawer.open{pointer-events:auto;visibility:visible}.mobile-drawer__backdrop{background:var(--clr-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity var(--t-slow);position:absolute;inset:0}.mobile-drawer.open .mobile-drawer__backdrop{opacity:1}.mobile-drawer__panel{background:var(--clr-surface-card);border-right:1px solid var(--clr-border);width:min(320px,90vw);height:100%;transition:transform var(--t-slow) cubic-bezier(.32, 0, .22, 1);box-shadow:var(--shadow-xl);flex-direction:column;display:flex;position:relative;overflow-y:auto;transform:translate(-100%)}.mobile-drawer.open .mobile-drawer__panel{transform:translate(0)}.mobile-drawer__header{padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--clr-border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.mobile-drawer__nav{padding:var(--sp-4) 0;flex:1;overflow-y:auto}.mobile-drawer__link{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);font-family:var(--font-sans);color:var(--clr-text-muted);transition:color var(--t-fast), background var(--t-fast), border-color var(--t-fast);border-left:3px solid #0000;font-size:16px;font-weight:500;text-decoration:none;display:flex}.mobile-drawer__link:hover,.mobile-drawer__link.active{color:var(--clr-primary);background:var(--clr-primary-soft);border-left-color:var(--clr-primary)}.mobile-drawer__link .material-symbols-outlined{flex-shrink:0;font-size:20px}.mobile-drawer__section-title{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--clr-text-dim);padding:var(--sp-4) var(--sp-5) var(--sp-2);font-size:11px;font-weight:600}.mobile-drawer__footer{padding:var(--sp-5);border-top:1px solid var(--clr-border);flex-shrink:0}body.drawer-open{overflow:hidden}.announcement-bar{color:#002113;font-family:var(--font-mono);letter-spacing:.03em;text-align:center;padding:var(--sp-2) var(--sp-4);justify-content:center;align-items:center;gap:var(--sp-2);background:linear-gradient(90deg,#10b981,#4edea3 50%,#10b981) 0 0/200% 100%;font-size:13px;font-weight:600;animation:8s linear infinite announcementShimmer;display:flex}@keyframes announcementShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.announcement-bar{animation:none}}.announcement-bar a{color:#002113;text-underline-offset:2px;text-decoration:underline}.vevit-spinner{border:2px solid #ffffff40;border-top-color:currentColor;border-radius:50%;flex-shrink:0;width:1rem;height:1rem;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg, var(--clr-surface-card) 25%, var(--clr-surface-high) 50%, var(--clr-surface-card) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s linear infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{background:var(--clr-surface-high);animation:none}}.product-img-wrapper{aspect-ratio:1;background:var(--clr-surface-high);border-radius:var(--radius-lg);position:relative;overflow:hidden}.product-img-wrapper img{object-fit:cover;width:100%;height:100%;transition:transform var(--t-slow);display:block}.product-img-wrapper:hover img{transform:scale(1.03)}.product-img-placeholder{justify-content:center;align-items:center;gap:var(--sp-2);flex-direction:column;display:flex;position:absolute;inset:0}.step-indicator{align-items:center;gap:var(--sp-2);display:flex}.step-dot{border:2px solid var(--clr-border);width:32px;height:32px;font-family:var(--font-mono);color:var(--clr-text-muted);background:var(--clr-surface-card);transition:all var(--t-fast);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.step-dot.active{border-color:var(--clr-primary);color:#002113;box-shadow:var(--neo-shadow-primary);background:#10b981}.step-dot.done{border-color:var(--clr-primary);color:var(--clr-primary)}.step-line{background:var(--clr-border);border-radius:var(--radius-full);flex:1;height:2px}.step-line.done{background:var(--clr-primary)}.order-status-icon{border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto;display:flex}.order-status-icon.success{background:var(--clr-success-soft);border:2px solid var(--clr-success)}.order-status-icon.pending{background:var(--clr-warning-soft);border:2px solid var(--clr-warning)}.order-status-icon.error{background:var(--clr-danger-soft);border:2px solid var(--clr-danger)}.order-status-icon.review{background:var(--clr-primary-soft);border:2px solid var(--clr-primary)}.order-status-icon.pending .vevit-spinner{width:36px;height:36px;color:var(--clr-warning);border-width:3px}.breadcrumb{font-family:var(--font-mono);letter-spacing:.03em;color:var(--clr-text-dim);flex-wrap:wrap;align-items:center;gap:4px;font-size:12px;display:flex}.breadcrumb a{color:var(--clr-text-muted);text-transform:uppercase;transition:color var(--t-fast);text-decoration:none}.breadcrumb a:hover{color:var(--clr-primary)}.breadcrumb span{text-transform:uppercase}.breadcrumb-sep{color:var(--clr-text-dim);-webkit-user-select:none;user-select:none;font-size:14px}details.vv-accordion summary{padding:var(--sp-4) 0;cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;list-style:none;display:flex}details.vv-accordion summary::-webkit-details-marker{display:none}details.vv-accordion summary .accordion-icon{transition:transform var(--t-normal);flex-shrink:0}details.vv-accordion[open] summary .accordion-icon{transform:rotate(180deg)}.icon-filled{font-variation-settings:"FILL" 1}.material-symbols-outlined{-webkit-user-select:none;user-select:none;pointer-events:none}button .material-symbols-outlined,a .material-symbols-outlined{pointer-events:none}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.qty-group{border:2px solid var(--clr-border);border-radius:var(--radius-md);height:var(--h-btn-lg);background:var(--clr-surface);align-items:center;display:flex;overflow:hidden}.qty-group button{width:48px;height:100%;color:var(--clr-text-muted);cursor:pointer;transition:color var(--t-fast), background var(--t-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.qty-group button:hover{color:var(--clr-primary);background:var(--clr-primary-soft)}.qty-group .qty-val{font-family:var(--font-mono);text-align:center;width:48px;color:var(--clr-text);border-left:1px solid var(--clr-border);border-right:1px solid var(--clr-border);font-size:16px;font-weight:600}
