@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{--purple:#4b2067;--purple2:#71418b;--pink:#f8e9f0;--lilac:#ede3f4;--gold:#c69b52;--ink:#2d2032;--muted:#756a79;--white:#fff;--line:#eadfec;--green:#25d366;--danger:#b42318;--radius:22px;--shadow:0 18px 50px rgba(75,32,103,.12)}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font-family:'DM Sans',sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}.container{width:min(1160px,calc(100% - 32px));margin:auto}.topbar{background:var(--purple);color:#fff;text-align:center;padding:7px;font-size:.82rem}.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font:700 1.75rem 'Playfair Display';color:var(--purple)}.brand span{color:var(--gold)}.nav-links,.nav-actions,.row{display:flex;align-items:center;gap:22px}.nav-links a:hover,.active{color:var(--purple);font-weight:700}.cart-pill{background:var(--pink);padding:10px 16px;border-radius:99px;color:var(--purple);font-weight:700}.hero{background:linear-gradient(110deg,#fbf1f6 0%,#f3e9f6 52%,#fff 52%);overflow:hidden}.hero-grid{min-height:560px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px}.hero h1{font:700 clamp(3rem,6vw,5.3rem)/.98 'Playfair Display';color:var(--purple);margin:0 0 24px}.hero p{font-size:1.08rem;color:var(--muted);max-width:520px;margin-bottom:30px}.hero-image{height:485px;border-radius:180px 20px 180px 20px;object-fit:cover;box-shadow:var(--shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:99px;padding:13px 22px;font-weight:700;cursor:pointer;background:var(--purple);color:#fff;transition:.2s}.btn:hover{transform:translateY(-2px);background:var(--purple2)}.btn-light{background:#fff;color:var(--purple);border:1px solid var(--line)}.btn-gold{background:var(--gold)}.btn-whatsapp{background:var(--green)}.btn-danger{background:#fff;color:var(--danger);border:1px solid #ffd3ce}.section{padding:82px 0}.section-pink{background:#fff8fb}.section-title{font:700 clamp(2.1rem,4vw,3.2rem) 'Playfair Display';color:var(--purple);margin:0 0 10px}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:34px}.muted{color:var(--muted)}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.category-card{min-height:230px;padding:28px;border-radius:var(--radius);background:var(--lilac);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:end}.category-card:nth-child(2){background:var(--pink)}.category-card:nth-child(3){background:#f4ead8}.category-card h3{font:700 1.7rem 'Playfair Display';margin:0;color:var(--purple)}.category-card:before{content:'✦';position:absolute;right:24px;top:15px;color:rgba(75,32,103,.15);font-size:6rem}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.product-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:.25s}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.product-img{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--pink)}.product-body{padding:17px}.product-category{text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;font-weight:700;color:var(--gold)}.product-body h3{margin:5px 0 10px;font-size:1rem}.price{font-weight:800;color:var(--purple);font-size:1.05rem}.old-price{text-decoration:line-through;color:#9d949f;font-size:.82rem;margin-left:6px}.product-actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:13px}.product-actions .btn{padding:10px 14px;font-size:.8rem}.whatsapp-band{padding:42px;border-radius:32px;background:var(--purple);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:25px}.whatsapp-band h2{font:700 2.4rem 'Playfair Display';margin:0 0 8px}.footer{background:#25142e;color:#dfd0e5;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer h3{color:#fff}.copyright{border-top:1px solid #4a3652;margin-top:30px;padding-top:20px;font-size:.82rem}.filters{display:grid;grid-template-columns:1fr 220px auto;gap:12px;padding:20px;background:var(--pink);border-radius:18px;margin-bottom:30px}.input{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#fff;color:var(--ink)}textarea.input{min-height:120px;resize:vertical}.detail{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}.detail-image{width:100%;max-height:620px;object-fit:cover;border-radius:var(--radius)}.detail h1{font:700 3rem 'Playfair Display';color:var(--purple);margin:8px 0}.choice{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 18px}.choice label{border:1px solid var(--line);border-radius:99px;padding:8px 13px;cursor:pointer}.choice input{margin-right:5px}.stock{color:#267a52;font-weight:700}.cart-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:30px}.cart-item{display:grid;grid-template-columns:90px 1fr auto;gap:16px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.cart-item img{width:90px;height:105px;object-fit:cover;border-radius:12px}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}.flash{padding:13px 16px;border-radius:12px;margin:15px auto;background:#eaf8f0;color:#17643d}.errors{background:#fff0ef;color:#9b241c;padding:12px 18px;border-radius:12px}.empty{text-align:center;padding:60px;background:var(--pink);border-radius:var(--radius)}.pagination{margin-top:30px}.mobile-menu{display:none}
.admin-body{background:#f8f5fa}.admin-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:#321641;color:#fff;padding:26px 20px}.sidebar .brand{color:#fff;display:block;margin-bottom:35px}.sidebar a{display:block;padding:11px 14px;border-radius:10px;margin:5px 0}.sidebar a:hover{background:#56306a}.admin-main{padding:30px}.admin-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}.stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}.stat strong{font:700 2rem 'Playfair Display';display:block;color:var(--purple)}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid var(--line);padding:13px 10px;vertical-align:top}th{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.badge{padding:5px 9px;border-radius:99px;background:var(--lilac);font-size:.75rem;font-weight:700}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.full{grid-column:1/-1}.label{display:block;font-size:.84rem;font-weight:700;margin-bottom:5px}.login{min-height:100vh;background:linear-gradient(135deg,var(--pink),var(--lilac));display:grid;place-items:center}.login-card{width:min(430px,calc(100% - 30px));background:#fff;padding:38px;border-radius:26px;box-shadow:var(--shadow)}
@media(max-width:900px){.nav-links{display:none}.hero-grid,.detail,.cart-grid{grid-template-columns:1fr}.hero-grid{padding:50px 0}.hero-image{height:380px}.product-grid{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:1fr}.admin-shell{grid-template-columns:1fr}.sidebar{display:flex;overflow:auto;gap:5px;padding:12px}.sidebar .brand{margin:0}.sidebar a{white-space:nowrap}.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.container{width:min(100% - 24px,1160px)}.nav{height:65px}.nav-actions .btn{display:none}.hero h1{font-size:3rem}.section{padding:55px 0}.product-grid{grid-template-columns:1fr 1fr;gap:10px}.product-body{padding:12px}.product-actions{grid-template-columns:1fr}.product-actions .btn-whatsapp{display:none}.filters{grid-template-columns:1fr}.whatsapp-band,.section-head{align-items:start;flex-direction:column}.footer-grid{grid-template-columns:1fr}.cart-item{grid-template-columns:70px 1fr}.cart-item>div:last-child{grid-column:1/-1}.form-grid,.stats{grid-template-columns:1fr}.admin-main{padding:18px;overflow:auto}.detail h1{font-size:2.3rem}}
html,body{overflow-x:hidden}.hero-grid>*{min-width:0}.hero-image{width:100%}
@media(max-width:600px){.topbar{font-size:.68rem}.brand{font-size:1.35rem}.nav-actions{gap:4px}.cart-pill{padding:8px 9px;font-size:.72rem}.hero h1{font-size:2.7rem}.hero p{font-size:.98rem}}
@media(max-width:600px){.nav{width:calc(100% - 24px);gap:8px}.nav-actions{flex:0 0 auto}.hero-grid,.hero-grid>div{width:100%;max-width:100%;overflow:hidden}.hero h1,.hero p{max-width:100%;overflow-wrap:anywhere}}
