:root{--bg: #f8f7f4;--text: #1a1a1a;--accent: #e8b923;--card-bg: #ffffff;--border: #e0ddd6;--dark: #1a1a1a}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}.app{min-height:100vh;display:flex;flex-direction:column}.navbar{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:var(--card-bg);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.logo{font-size:1.5rem;font-weight:700;color:var(--dark);text-decoration:none}.nav-links{display:flex;gap:1.5rem;align-items:center}.nav-link{text-decoration:none;color:var(--text);font-weight:500;transition:color .15s}.nav-link:hover,.nav-link.active{color:var(--accent)}.btn-signout{background:none;border:none;cursor:pointer;font-family:inherit;font-size:inherit;padding:0;text-decoration:none;color:var(--text);font-weight:500;transition:color .15s}.btn-signout:hover{color:var(--accent)}.main-content{flex:1;padding:2rem;max-width:1200px;margin:0 auto;width:100%}.hero{text-align:center;padding:4rem 2rem;background:linear-gradient(135deg,#f0ede5,#e8e4d9);border-radius:12px;margin-bottom:2rem}.hero h1{font-size:2.5rem;margin-bottom:.5rem}.hero p{font-size:1.1rem;color:#555;margin-bottom:1.5rem}.hero-cta{display:inline-block;padding:.75rem 2rem;background:var(--accent);color:var(--dark);text-decoration:none;border-radius:8px;font-weight:600}.category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.category-card{background:var(--card-bg);border-radius:12px;padding:1.5rem;text-align:center;border:1px solid var(--border);transition:box-shadow .15s}.category-card:hover{box-shadow:0 4px 16px #00000014}.category-card img{width:100%;height:200px;object-fit:cover;border-radius:8px;margin-bottom:1rem}.category-card h3{margin-bottom:.5rem}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}.product-card{background:var(--card-bg);border-radius:12px;padding:1.5rem;border:1px solid var(--border);transition:box-shadow .15s}.product-card:hover{box-shadow:0 4px 16px #00000014}.product-card img{width:100%;height:180px;object-fit:cover;border-radius:8px;margin-bottom:1rem}.product-card h3{font-size:1.1rem;margin-bottom:.25rem}.product-card .price{font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.product-card .product-type-badge{display:inline-block;font-size:.75rem;padding:.2rem .6rem;border-radius:4px;background:#eee;margin-bottom:.5rem;text-transform:capitalize}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:900px}.product-detail img{width:100%;border-radius:12px}.spec-table{width:100%;border-collapse:collapse;margin-top:1rem}.spec-table th,.spec-table td{text-align:left;padding:.5rem;border-bottom:1px solid var(--border)}.spec-table th{font-weight:600;color:#555;width:40%}.btn{display:inline-block;padding:.6rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:.95rem;transition:opacity .15s}.btn:hover{opacity:.85}.btn-primary{background:var(--accent);color:var(--dark)}.btn-secondary{background:#ddd;color:var(--dark)}.btn-danger{background:#d9534f;color:#fff}.cart-list{list-style:none}.cart-item{display:flex;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--border)}.cart-item img{width:80px;height:80px;object-fit:cover;border-radius:8px}.cart-item-info{flex:1}.cart-item-qty{display:flex;align-items:center;gap:.5rem}.cart-item-qty button{width:32px;height:32px;border:1px solid var(--border);background:var(--card-bg);border-radius:4px;cursor:pointer;font-size:1rem}.cart-summary{margin-top:1.5rem;text-align:right}.cart-summary .total{font-size:1.3rem;font-weight:700;margin-bottom:1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.25rem;font-weight:500}.form-group input{width:100%;padding:.6rem;border:1px solid var(--border);border-radius:8px;font-size:1rem}.checkout-form{max-width:500px}.auth-form{max-width:400px;margin:2rem auto}.footer{text-align:center;padding:1.5rem;color:#888;font-size:.85rem;border-top:1px solid var(--border)}
