:root {
    --bg: #0a0a0a;
    --bg-card: #141414;
    --text: #f0f0f0;
    --text-muted: #999;
    --accent: #e63946;
    --accent-hover: #ff4d5a;
    --border: #2a2a2a;
}

* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Inter',sans-serif; background:var(--bg); color:var(--text); line-height:1.6; }
.container { max-width:1200px; margin:0 auto; padding:0 1.5rem; }

.header { position:sticky; top:0; z-index:100; background:rgba(10,10,10,0.95); backdrop-filter:blur(12px); border-bottom:1px solid var(--border); }
.header-inner { display:flex; align-items:center; justify-content:space-between; height:72px; }
.logo img { height:60px; width:auto; }
.nav { display:flex; gap:2rem; }
.nav a { color:var(--text-muted); text-decoration:none; font-weight:500; }
.nav a:hover { color:var(--text); }
.cart-btn { position:relative; background:none; border:none; color:var(--text); cursor:pointer; padding:0.5rem; }
.cart-count { position:absolute; top:0; right:0; background:var(--accent); color:white; font-size:0.7rem; width:18px; height:18px; border-radius:50%; display:flex; align-items:center; justify-content:center; }

.hero { min-height:70vh; display:flex; align-items:center; justify-content:center; text-align:center; background:linear-gradient(180deg,#111 0%,#0a0a0a 100%); }
.hero-content { max-width:700px; padding:2rem; }
.hero h1 { font-family:'Oswald',sans-serif; font-size:clamp(2.8rem,8vw,5rem); font-weight:700; }
.hero h1 span { color:var(--accent); }
.hero p { font-size:1.15rem; color:var(--text-muted); margin:1.25rem 0 2rem; }

.btn { display:inline-flex; align-items:center; justify-content:center; padding:0.9rem 2rem; font-weight:600; font-size:0.95rem; text-decoration:none; border:none; border-radius:6px; cursor:pointer; transition:all .2s; }
.btn-primary { background:var(--accent); color:white; }
.btn-primary:hover { background:var(--accent-hover); }
.btn-telegram { background:#0088cc; color:white; }
.btn-telegram:hover { background:#0077b5; }
.btn-ebay { background:#e53238; color:white; }
.btn-ebay:hover { background:#c62b30; }

.section-title { font-family:'Oswald',sans-serif; font-size:2.2rem; font-weight:600; letter-spacing:2px; text-align:center; margin-bottom:0.5rem; }
.section-subtitle { text-align:center; color:var(--text-muted); margin-bottom:2rem; }
.line-title { font-family:'Oswald',sans-serif; font-size:1.5rem; letter-spacing:1px; color:var(--accent); margin-bottom:1.5rem; border-bottom:1px solid var(--border); padding-bottom:0.5rem; }

.product-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:2rem; }
.product-card { background:var(--bg-card); border:1px solid var(--border); border-radius:8px; overflow:hidden; }
.product-image { width:100%; aspect-ratio:1; object-fit:cover; background:#1a1a1a; transition:opacity 0.2s; }
.product-info { padding:1.25rem; }
.product-info h3 { font-family:'Oswald',sans-serif; font-size:1.15rem; margin-bottom:.35rem; }
.product-info .price { color:var(--accent); font-weight:600; font-size:1.1rem; margin-bottom:1rem; }

.option-group { margin-bottom:0.85rem; }
.option-label { font-size:0.8rem; color:var(--text-muted); margin-bottom:0.4rem; display:block; }
.color-options { display:flex; gap:0.5rem; flex-wrap:wrap; }
.color-btn {
    width:28px; height:28px; border-radius:50%; border:2px solid transparent;
    cursor:pointer; transition:all 0.15s;
}
.color-btn.selected { border-color:var(--accent); transform:scale(1.15); box-shadow:0 0 0 2px rgba(230,57,70,0.3); }
.color-btn.black { background:#111; }
.color-btn.navy { background:#1a2744; }
.color-btn.grey { background:#555; }
.color-btn.white { background:#eee; border:1px solid #444; }
.color-btn.pink { background:#ff69b4; }

.size-select {
    width:100%; padding:0.5rem; background:var(--bg); color:var(--text);
    border:1px solid var(--border); border-radius:4px; font-size:0.9rem;
}

.add-to-cart { width:100%; margin-top:0.5rem; }

.contact-info { max-width:500px; margin:2rem auto; text-align:left; background:var(--bg-card); padding:2rem; border-radius:8px; border:1px solid var(--border); }
.contact-info a { color:var(--accent); text-decoration:none; }
.contact-info a:hover { text-decoration:underline; }

.about, .contact, .cautions { padding:4rem 0; text-align:center; }
.about p, .contact p { max-width:600px; margin:0 auto; color:var(--text-muted); }
.supplement-note { font-style:italic; color:var(--accent); margin-top:1rem; }

.caution-box {
    max-width: 800px;
    margin: 2rem auto 0;
    text-align: left;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 2rem 2.5rem;
}
.caution-box h3 {
    font-family: 'Oswald', sans-serif;
    font-size: 1.4rem;
    color: var(--accent);
    margin-bottom: 1rem;
}
.caution-box h4 {
    font-family: 'Oswald', sans-serif;
    font-size: 1.1rem;
    margin: 1.5rem 0 0.75rem;
    color: var(--text);
}
.caution-box p {
    color: var(--text-muted);
    margin-bottom: 1rem;
}
.caution-box ul {
    margin: 0.5rem 0 1rem 1.5rem;
    color: var(--text-muted);
}
.caution-box ul li {
    margin-bottom: 0.5rem;
}
.caution-box .disclaimer-text {
    margin-top: 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border);
    font-size: 0.9rem;
    font-style: italic;
    color: #777;
}

.footer { border-top:1px solid var(--border); padding:2rem 0; text-align:center; color:var(--text-muted); font-size:.9rem; }

.cart-sidebar { position:fixed; top:0; right:-420px; width:400px; height:100%; background:var(--bg-card); border-left:1px solid var(--border); z-index:201; transition:right .3s; display:flex; flex-direction:column; }
.cart-sidebar.open { right:0; }
.cart-overlay { position:fixed; inset:0; background:rgba(0,0,0,.6); z-index:200; opacity:0; visibility:hidden; transition:all .3s; }
.cart-overlay.open { opacity:1; visibility:visible; }

.cart-header { display:flex; justify-content:space-between; align-items:center; padding:1.25rem 1.5rem; border-bottom:1px solid var(--border); }
.cart-header h3 { font-family:'Oswald',sans-serif; font-weight:500; }
.close-cart { background:none; border:none; color:var(--text-muted); font-size:1.8rem; cursor:pointer; }
.cart-items { flex:1; overflow-y:auto; padding:1rem 1.5rem; }
.empty-cart { color:var(--text-muted); text-align:center; padding:3rem 0; }
.cart-item { display:flex; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--border); }
.cart-item img { width:70px; height:70px; object-fit:cover; border-radius:4px; }
.cart-item-info { flex:1; }
.cart-item-info h4 { font-size:0.95rem; margin-bottom:0.25rem; }
.cart-item-info .price { color:var(--accent); font-weight:600; font-size:0.9rem; }
.cart-item-info .variant { font-size:0.8rem; color:var(--text-muted); }
.cart-footer { padding:1.25rem 1.5rem; border-top:1px solid var(--border); }
.cart-total { display:flex; justify-content:space-between; font-size:1.15rem; font-weight:600; margin-bottom:1.25rem; }

.order-info { text-align:center; }
.order-info p { color:var(--text-muted); font-size:0.9rem; margin-bottom:1rem; }
.contact-links { display:flex; flex-direction:column; gap:0.6rem; }
.contact-links .btn { width:100%; }

.toast { position:fixed; bottom:2rem; left:50%; transform:translateX(-50%) translateY(100px); background:#2ecc71; color:white; padding:0.85rem 1.5rem; border-radius:6px; font-weight:500; opacity:0; transition:all 0.3s; z-index:300; }
.toast.show { transform:translateX(-50%) translateY(0); opacity:1; }

@media (max-width:768px){ .nav{display:none;} .cart-sidebar{width:100%;} .caution-box{padding:1.5rem;} }
