@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg-primary: #0A0A0A;--bg-secondary: #111111;--bg-tertiary: #1A1A1A;--bg-card: #141414;--bg-input: #1E1E1E;--bg-hover: #1C1C1C;--text-primary: #F5F5F5;--text-secondary: #A0A0A0;--text-tertiary: #666666;--text-muted: #444444;--border-primary: #222222;--border-secondary: #333333;--border-focus: #F5F5F5;--accent-white: #FFFFFF;--accent-green: #00D26A;--accent-red: #FF3B3B;--accent-blue: #3B82F6;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--text-xs: .6875rem;--text-sm: .75rem;--text-base: .8125rem;--text-md: .875rem;--text-lg: 1rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 2rem;--text-4xl: 2.75rem;--text-5xl: 3.5rem;--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;--transition-fast: .12s ease;--transition-base: .2s ease;--transition-slow: .4s cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;border-radius:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:1.5;color:var(--text-primary);background:var(--bg-primary);min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font-family:var(--font-sans);cursor:pointer}.store-header{position:sticky;top:0;z-index:100;background:#0a0a0ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-primary)}.header-inner{max-width:1280px;margin:0 auto;padding:var(--sp-3) var(--sp-6);display:flex;align-items:center;justify-content:space-between}.header-logo{display:flex;align-items:center;gap:var(--sp-3)}.header-logo img{width:32px;height:32px}.header-logo span{font-size:var(--text-md);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.header-nav{display:flex;align-items:center;gap:var(--sp-5)}.header-nav a{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;transition:color var(--transition-fast)}.header-nav a:hover,.header-nav a.active{color:var(--accent-white)}.header-actions{display:flex;align-items:center;gap:var(--sp-4)}.cart-btn{position:relative;background:none;border:1px solid var(--border-primary);color:var(--text-primary);padding:var(--sp-2) var(--sp-3);font-size:var(--text-sm);font-weight:600;display:flex;align-items:center;gap:var(--sp-2);transition:all var(--transition-fast)}.cart-btn:hover{border-color:var(--border-secondary);background:var(--bg-hover)}.cart-count{background:var(--accent-white);color:var(--bg-primary);font-size:10px;font-weight:800;padding:1px 5px;min-width:18px;text-align:center}.store-main{flex:1;max-width:1280px;width:100%;margin:0 auto;padding:var(--sp-6)}.gate-page{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--sp-6)}.gate-box{width:380px;text-align:center}.gate-box img{width:80px;height:80px;margin:0 auto var(--sp-4)}.gate-box h1{font-size:var(--text-3xl);font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-bottom:var(--sp-2)}.gate-box p{font-size:var(--text-sm);color:var(--text-tertiary);margin-bottom:var(--sp-6)}.gate-input-row{display:flex;gap:0}.gate-input-row input{flex:1;padding:var(--sp-3) var(--sp-4);background:var(--bg-input);border:1px solid var(--border-primary);color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-md);text-transform:uppercase;letter-spacing:.1em;outline:none;transition:border-color var(--transition-fast)}.gate-input-row input:focus{border-color:var(--border-focus)}.gate-input-row input::placeholder{color:var(--text-muted);text-transform:none;letter-spacing:0;font-family:var(--font-sans)}.gate-input-row button{padding:var(--sp-3) var(--sp-5);background:var(--accent-white);border:1px solid var(--accent-white);color:var(--bg-primary);font-weight:700;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;transition:all var(--transition-fast)}.gate-input-row button:hover{background:#e0e0e0}.gate-error{margin-top:var(--sp-3);color:var(--accent-red);font-size:var(--text-sm)}.hero{padding:var(--sp-16) 0 var(--sp-12);text-align:center;border-bottom:1px solid var(--border-primary);margin-bottom:var(--sp-8)}.hero h1{font-size:var(--text-5xl);font-weight:900;text-transform:uppercase;letter-spacing:.06em;line-height:1.1;margin-bottom:var(--sp-4)}.hero p{font-size:var(--text-md);color:var(--text-secondary);max-width:480px;margin:0 auto}.section-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--sp-5);padding-bottom:var(--sp-3);border-bottom:1px solid var(--border-primary)}.section-header h2{font-size:var(--text-xl);font-weight:800;text-transform:uppercase;letter-spacing:.04em}.section-header a{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);font-weight:600;transition:color var(--transition-fast)}.section-header a:hover{color:var(--text-primary)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--sp-4);margin-bottom:var(--sp-10)}.product-card{border:1px solid var(--border-primary);background:var(--bg-card);transition:all var(--transition-base);overflow:hidden;cursor:pointer}.product-card:hover{border-color:var(--border-secondary);transform:translateY(-2px)}.product-card-img{aspect-ratio:1;background:var(--bg-tertiary);overflow:hidden;position:relative}.product-card-img img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.product-card:hover .product-card-img img{transform:scale(1.05)}.product-card-badge{position:absolute;top:var(--sp-2);left:var(--sp-2);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px var(--sp-2);background:var(--accent-white);color:var(--bg-primary)}.product-card-info{padding:var(--sp-3) var(--sp-4)}.product-card-name{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);margin-bottom:var(--sp-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-card-meta{font-size:var(--text-xs);color:var(--text-tertiary);margin-bottom:var(--sp-2)}.product-card-price{font-size:var(--text-md);font-weight:800;color:var(--text-primary);font-variant-numeric:tabular-nums}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-8);padding:var(--sp-6) 0}.product-gallery{display:flex;flex-direction:column;gap:var(--sp-3)}.product-main-image{aspect-ratio:1;background:var(--bg-tertiary);border:1px solid var(--border-primary);overflow:hidden}.product-main-image img{width:100%;height:100%;object-fit:cover}.product-thumbs{display:flex;gap:var(--sp-2);overflow-x:auto}.product-thumb{width:64px;height:64px;border:1px solid var(--border-primary);cursor:pointer;flex-shrink:0;overflow:hidden;transition:border-color var(--transition-fast)}.product-thumb:hover,.product-thumb.active{border-color:var(--accent-white)}.product-thumb img{width:100%;height:100%;object-fit:cover}.product-info{padding-top:var(--sp-2)}.product-info h1{font-size:var(--text-2xl);font-weight:800;margin-bottom:var(--sp-3)}.product-meta-row{display:flex;gap:var(--sp-4);margin-bottom:var(--sp-4);flex-wrap:wrap}.product-meta-item{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em}.product-meta-item .label{color:var(--text-tertiary)}.product-meta-item .value{color:var(--text-primary);font-weight:600}.product-price{font-size:var(--text-3xl);font-weight:900;margin-bottom:var(--sp-5);font-variant-numeric:tabular-nums}.product-options{margin-bottom:var(--sp-5)}.option-group{margin-bottom:var(--sp-4)}.option-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:var(--sp-2);display:block}.option-chips{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.option-chip{padding:var(--sp-2) var(--sp-3);border:1px solid var(--border-primary);background:var(--bg-input);color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.option-chip:hover{border-color:var(--border-secondary);color:var(--text-primary)}.option-chip.selected{background:var(--accent-white);color:var(--bg-primary);border-color:var(--accent-white);font-weight:700}.cart-page h1{font-size:var(--text-2xl);margin-bottom:var(--sp-6)}.cart-items{display:flex;flex-direction:column;gap:var(--sp-3);margin-bottom:var(--sp-6)}.cart-item{display:flex;gap:var(--sp-4);padding:var(--sp-4);background:var(--bg-card);border:1px solid var(--border-primary);align-items:center}.cart-item-img{width:80px;height:80px;flex-shrink:0;background:var(--bg-tertiary);overflow:hidden}.cart-item-img img{width:100%;height:100%;object-fit:cover}.cart-item-info{flex:1}.cart-item-name{font-weight:600;font-size:var(--text-md);margin-bottom:var(--sp-1)}.cart-item-meta{font-size:var(--text-xs);color:var(--text-tertiary)}.cart-item-qty{display:flex;align-items:center;gap:var(--sp-2)}.qty-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-primary);background:var(--bg-input);color:var(--text-primary);font-weight:700;font-size:var(--text-md);transition:all var(--transition-fast)}.qty-btn:hover{background:var(--bg-hover);border-color:var(--border-secondary)}.cart-item-price{font-weight:700;font-size:var(--text-md);min-width:70px;text-align:right;font-variant-numeric:tabular-nums}.cart-item-remove{background:none;border:none;color:var(--text-muted);font-size:var(--text-lg);transition:color var(--transition-fast)}.cart-item-remove:hover{color:var(--accent-red)}.cart-summary{background:var(--bg-card);border:1px solid var(--border-primary);padding:var(--sp-5);max-width:400px;margin-left:auto}.cart-summary-row{display:flex;justify-content:space-between;padding:var(--sp-2) 0;font-size:var(--text-sm);color:var(--text-secondary)}.cart-summary-row.total{border-top:1px solid var(--border-primary);margin-top:var(--sp-3);padding-top:var(--sp-3);font-size:var(--text-lg);font-weight:800;color:var(--text-primary)}.cart-summary-row .discount{color:var(--accent-green)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-5);font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn:hover{background:var(--bg-hover);border-color:var(--border-secondary)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent-white);color:var(--bg-primary);border-color:var(--accent-white);width:100%;padding:var(--sp-4);font-size:var(--text-md)}.btn-primary:hover{background:#e0e0e0;color:var(--bg-primary)}.btn-sm{padding:var(--sp-2) var(--sp-3);font-size:var(--text-xs)}.form-group{margin-bottom:var(--sp-4)}.form-label{display:block;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:var(--sp-2)}.form-input,.form-select{width:100%;padding:var(--sp-2) var(--sp-3);background:var(--bg-input);border:1px solid var(--border-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-sm);outline:none;transition:border-color var(--transition-fast)}.form-input:focus,.form-select:focus{border-color:var(--border-focus)}.form-input::placeholder{color:var(--text-muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4)}.search-bar{position:relative;max-width:500px;margin:0 auto var(--sp-6)}.search-bar input{width:100%;padding:var(--sp-3) var(--sp-4) var(--sp-3) var(--sp-10);background:var(--bg-input);border:1px solid var(--border-primary);color:var(--text-primary);font-size:var(--text-md);font-family:var(--font-sans);outline:none;transition:border-color var(--transition-fast)}.search-bar input:focus{border-color:var(--border-focus)}.search-bar .search-icon{position:absolute;left:var(--sp-3);top:50%;transform:translateY(-50%);color:var(--text-muted)}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--sp-3);margin-bottom:var(--sp-8)}.category-card{padding:var(--sp-4) var(--sp-5);background:var(--bg-card);border:1px solid var(--border-primary);transition:all var(--transition-base);cursor:pointer}.category-card:hover{border-color:var(--border-secondary);background:var(--bg-hover)}.category-card h3{font-size:var(--text-md);font-weight:700;margin-bottom:var(--sp-1)}.category-card span{font-size:var(--text-xs);color:var(--text-tertiary)}.store-footer{border-top:1px solid var(--border-primary);padding:var(--sp-8) var(--sp-6);text-align:center}.store-footer p{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em}.auth-page{max-width:400px;margin:var(--sp-10) auto}.auth-page h1{font-size:var(--text-2xl);margin-bottom:var(--sp-6)}.auth-error{background:#ff3b3b1a;border:1px solid var(--accent-red);color:var(--accent-red);padding:var(--sp-3);font-size:var(--text-sm);margin-bottom:var(--sp-4)}.auth-switch{text-align:center;margin-top:var(--sp-4);font-size:var(--text-sm);color:var(--text-tertiary)}.auth-switch a{color:var(--text-primary);font-weight:600;text-decoration:underline}.loading{display:flex;align-items:center;justify-content:center;padding:var(--sp-12)}.spinner{width:24px;height:24px;border:2px solid var(--border-primary);border-top-color:var(--accent-white);animation:spin .6s linear infinite}.empty-state{text-align:center;padding:var(--sp-12) var(--sp-6);color:var(--text-tertiary)}.empty-state .icon{font-size:48px;margin-bottom:var(--sp-4)}.notification-banner{background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);padding:var(--sp-2) var(--sp-4);text-align:center;font-size:var(--text-xs);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;gap:var(--sp-2)}.badge{display:inline-flex;padding:2px var(--sp-2);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;border:1px solid}.badge-new{color:var(--accent-green);border-color:var(--accent-green)}.cycle-banner{background:var(--bg-secondary);border:1px solid var(--border-primary);padding:var(--sp-4) var(--sp-5);margin-bottom:var(--sp-6);display:flex;align-items:center;justify-content:space-between}.cycle-banner .cycle-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);font-weight:600}.cycle-banner .cycle-value{font-size:var(--text-md);font-weight:700;font-family:var(--font-mono)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease}.slide-up{animation:slideUp .4s cubic-bezier(.16,1,.3,1)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-secondary)}@media(max-width:768px){.product-detail{grid-template-columns:1fr}.hero h1{font-size:var(--text-3xl)}.product-grid{grid-template-columns:repeat(2,1fr)}.header-nav{display:none}.store-main{padding:var(--sp-4)}.form-row{grid-template-columns:1fr}}@media(max-width:480px){.product-grid{grid-template-columns:1fr}}
