:root{--bg: #0a0a0c;--surface: #121216;--border: #1e1e24;--text: #d8d8dc;--muted: #6e6e78;--rose: #b8636e;--rose-glow: rgba(184, 99, 110, .12);font-family:system-ui,sans-serif}*{box-sizing:border-box;margin:0}body{background:var(--bg);color:var(--text);min-height:100vh}#root{display:grid;grid-template-rows:auto 1fr;min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:#0a0a0ccc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10}.topbar-brand{font-size:.95rem;font-weight:500;letter-spacing:.08em;color:var(--rose);text-transform:uppercase}.topbar-nav{display:flex;gap:.25rem}.topbar-nav a{color:var(--muted);text-decoration:none;padding:.4rem .9rem;border-radius:99px;font-size:.82rem;transition:color .15s,background .15s}.topbar-nav a.active,.topbar-nav a:hover{color:var(--text);background:var(--border)}.topbar-user{display:flex;align-items:center;gap:.75rem}.topbar-user span{font-size:.82rem;color:var(--muted)}.main{max-width:960px;margin:0 auto;padding:2.5rem 1.5rem;width:100%}.status{color:var(--muted);text-align:center;padding:3rem 0;font-size:.95rem}button{border:none;border-radius:99px;padding:.55rem 1.1rem;cursor:pointer;font-size:.82rem;font-weight:500;transition:opacity .15s,transform .1s}button:active:not(:disabled){transform:scale(.97)}button:disabled{opacity:.25;cursor:default}button.primary{background:var(--rose);color:#fff}button.secondary{background:transparent;color:var(--muted);border:1px solid var(--border)}.button-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:99px;padding:.55rem 1.1rem;font-size:.82rem;font-weight:500;cursor:pointer;transition:opacity .15s}.page-card{padding:0}.page-card h2{font-size:1.5rem;font-weight:400;margin-bottom:2rem;letter-spacing:-.01em}.grid-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}.product-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;transition:border-color .2s}.product-card:hover{border-color:var(--rose)}.product-image{width:100%;height:200px;object-fit:cover;display:block}.product-image-placeholder{width:100%;height:200px;background:var(--border);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:2.5rem}.product-body{padding:1rem 1.1rem 1.1rem;display:flex;flex-direction:column;gap:.5rem;flex:1}.product-body h3{font-size:.92rem;font-weight:500}.product-body p{font-size:.8rem;color:var(--muted);line-height:1.5;flex:1}.product-footer{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.1rem;border-top:1px solid var(--border);font-size:.78rem}.price{color:var(--rose);font-weight:600}.stock{color:var(--muted)}.product-actions{display:flex;gap:.5rem;padding:0 1.1rem 1rem}.detail-image{width:100%;max-height:400px;object-fit:cover;border-radius:16px;margin-bottom:1.5rem}.detail-info{display:flex;flex-direction:column;gap:.75rem}.detail-info h2{margin-bottom:0;font-size:1.6rem}.detail-info p{color:var(--muted);line-height:1.6;font-size:.9rem}.detail-row{display:flex;align-items:center;gap:1.5rem;font-size:.85rem}.detail-actions{display:flex;gap:.75rem;margin-top:.5rem}.cart-empty{text-align:center;padding:4rem 0}.cart-empty p{color:var(--muted);margin-bottom:1.5rem}.cart-list{display:flex;flex-direction:column;gap:.75rem}.cart-item{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1rem 1.25rem;display:flex;align-items:center;gap:1.25rem}.cart-image{width:64px;height:64px;border-radius:10px;object-fit:cover}.cart-info{flex:1;display:flex;flex-direction:column;gap:.3rem}.cart-info h3{font-size:.9rem;font-weight:500}.cart-info p{font-size:.78rem;color:var(--muted)}.cart-qty{display:flex;align-items:center;gap:.5rem}.cart-qty input{width:52px;padding:.3rem .5rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:.82rem;text-align:center}.cart-total{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.cart-total span{font-size:.85rem;color:var(--muted)}.cart-total strong{font-size:1.1rem;color:var(--rose)}.profile-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:2.5rem;display:flex;flex-direction:column;align-items:center;gap:1.25rem;max-width:400px}.avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;border:2px solid var(--border)}.profile-card .meta{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;text-align:center}.profile-card .meta div{color:var(--muted)}.profile-card .meta div strong{color:var(--text)}.profile-empty{text-align:center;padding:4rem 0}.profile-empty p{color:var(--muted);margin-bottom:1.5rem}.error{color:#c45a5a;font-size:.82rem}.status{font-size:.78rem;color:var(--muted)}@media (max-width: 600px){.topbar{padding:.75rem 1rem}.main{padding:1.5rem 1rem}.grid-list{grid-template-columns:1fr}.cart-item{flex-wrap:wrap}}
