/* === WDRC Store === */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

:root {
    --peach: #F6D7D2; --peach-light: #FBE8E4;
    --purple: #7B4FA3; --purple-light: #8E5EBE; --purple-soft: #B794D6; --purple-pale: #E8DCF0;
    --cyan: #4FB6D8; --cyan-soft: #B3E0F0;
    --blue: #3FA9F5; --blue-soft: #BDE0FC;
    --magenta: #E94E89; --magenta-light: #F07AA4; --magenta-soft: #FAC0D4;
    --white: #FFFFFF;
    --gray-50: #FAFAFA; --gray-100: #F5F5F5; --gray-200: #EEEEEE; --gray-300: #E0E0E0;
    --gray-400: #BDBDBD; --gray-500: #9E9E9E; --gray-600: #757575; --gray-700: #616161; --gray-800: #424242;
    --shadow-sm: 0 2px 8px rgba(123,79,163,0.08); --shadow-md: 0 8px 24px rgba(123,79,163,0.12);
    --shadow-lg: 0 16px 48px rgba(123,79,163,0.14);
    --radius-sm: 8px; --radius-md: 16px; --radius-lg: 24px; --radius-xl: 32px; --radius-full: 9999px;
    --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }

body {
    font-family:'Inter',system-ui,-apple-system,sans-serif;
    background:linear-gradient(135deg, var(--peach), #F8DCD6);
    color:var(--gray-800); line-height:1.6; min-height:100vh;
    position:relative; overflow-x:hidden;
}
body::before {
    content:''; position:fixed; top:0; left:0; right:0; bottom:0;
    background:radial-gradient(ellipse at 20% 20%, rgba(123,79,163,0.06) 0%, transparent 50%),
               radial-gradient(ellipse at 80% 30%, rgba(79,182,216,0.06) 0%, transparent 50%),
               radial-gradient(ellipse at 40% 80%, rgba(233,78,137,0.04) 0%, transparent 50%);
    pointer-events:none; z-index:0;
}
#geo-canvas { position:fixed; top:0; left:0; width:100%; height:100%; pointer-events:none; z-index:1; }

/* Header */
.site-header { position:sticky; top:0; z-index:100; background:rgba(255,255,255,0.85); backdrop-filter:blur(20px); border-bottom:1px solid rgba(123,79,163,0.08); }
.header-inner { max-width:1200px; margin:0 auto; padding:0 24px; display:flex; align-items:center; justify-content:space-between; height:64px; }
.logo { display:flex; align-items:center; text-decoration:none; }
.logo-img { height:36px; width:auto; display:block; }
.nav-links { display:flex; align-items:center; gap:8px; list-style:none; }
.nav-links a { text-decoration:none; color:var(--gray-600); font-weight:500; font-size:0.9rem; padding:8px 16px; border-radius:var(--radius-full); transition:var(--transition); }
.nav-links a:hover, .nav-links a.active { color:var(--purple); background:var(--purple-pale); }
.nav-icons { display:flex; align-items:center; gap:12px; }
.btn-icon { position:relative; display:flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:var(--radius-full); background:var(--purple-pale); color:var(--purple); text-decoration:none; transition:var(--transition); border:none; cursor:pointer; font-size:1.1rem; }
.btn-icon:hover { background:var(--purple-soft); color:white; }
.cart-count { position:absolute; top:-2px; right:-2px; background:var(--magenta); color:white; font-size:0.7rem; font-weight:700; width:18px; height:18px; border-radius:50%; display:flex; align-items:center; justify-content:center; }
.menu-toggle { display:none; background:none; border:none; cursor:pointer; color:var(--purple); font-size:1.5rem; padding:8px; }

/* Buttons */
.btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:12px 28px; border-radius:var(--radius-full); font-weight:600; font-size:0.9rem; text-decoration:none; border:none; cursor:pointer; transition:var(--transition); font-family:inherit; }
.btn-primary { background:linear-gradient(135deg, var(--purple), var(--purple-light)); color:white; box-shadow:0 4px 16px rgba(123,79,163,0.25); }
.btn-primary:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(123,79,163,0.35); }
.btn-outline { background:transparent; color:var(--purple); border:2px solid var(--purple-soft); }
.btn-outline:hover { background:var(--purple-pale); border-color:var(--purple); }
.btn-accent { background:linear-gradient(135deg, var(--cyan), var(--blue)); color:white; box-shadow:0 4px 16px rgba(79,182,216,0.25); }
.btn-accent:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(79,182,216,0.35); }
.btn-danger { background:linear-gradient(135deg, var(--magenta), var(--magenta-light)); color:white; }
.btn-danger:hover { opacity:0.9; }
.btn-sm { padding:8px 16px; font-size:0.8rem; }
.btn-lg { padding:16px 36px; font-size:1rem; }

/* Cards */
.card { background:linear-gradient(135deg, white, var(--peach-light)); border-radius:var(--radius-lg); padding:24px; box-shadow:var(--shadow-sm); transition:var(--transition); border:1px solid rgba(123,79,163,0.06); position:relative; z-index:2; }
.card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
.card-img { width:100%; height:200px; border-radius:var(--radius-md); margin-bottom:16px; background:linear-gradient(135deg, var(--purple-pale), var(--cyan-soft)); position:relative; overflow:hidden; }
.card-tag { display:inline-block; padding:4px 12px; border-radius:var(--radius-full); font-size:0.75rem; font-weight:600; background:var(--purple-pale); color:var(--purple); margin-bottom:8px; }
.card h3 { font-size:1.1rem; font-weight:700; color:var(--gray-800); margin-bottom:8px; }
.card p { color:var(--gray-500); font-size:0.85rem; margin-bottom:16px; line-height:1.5; }
.card-price { font-size:1.3rem; font-weight:800; background:linear-gradient(135deg, var(--magenta), var(--purple)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.card-badge-off { position:absolute; top:10px; left:10px; background:linear-gradient(135deg, var(--magenta), var(--magenta-light)); color:white; padding:3px 10px; border-radius:var(--radius-full); font-size:0.72rem; font-weight:800; box-shadow:0 3px 10px rgba(233,78,137,0.35); z-index:2; }
.card-price-old { display:block; font-size:0.78rem; color:var(--gray-400); text-decoration:line-through; margin-bottom:1px; }

/* Hero */
.hero { position:relative; z-index:2; padding:100px 24px 80px; text-align:center; max-width:900px; margin:0 auto; }
.hero-badge { display:inline-block; padding:8px 20px; border-radius:var(--radius-full); background:var(--purple-pale); color:var(--purple); font-size:0.85rem; font-weight:600; margin-bottom:24px; }
.hero h1 { font-size:3.5rem; font-weight:800; line-height:1.15; margin-bottom:20px; background:linear-gradient(135deg, var(--purple) 0%, var(--blue) 50%, var(--magenta) 100%); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; letter-spacing:-1px; }
.hero p { font-size:1.2rem; color:var(--gray-500); max-width:600px; margin:0 auto 32px; line-height:1.7; }
.hero-actions { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }

/* Sections */
.section { padding:80px 24px; position:relative; z-index:2; }
.section-inner { max-width:1200px; margin:0 auto; }
.section-title { text-align:center; margin-bottom:56px; }
.section-title h2 { font-size:2.2rem; font-weight:800; color:var(--gray-800); margin-bottom:12px; }
.section-title p { color:var(--gray-500); font-size:1rem; }
.accent-line { width:60px; height:4px; background:linear-gradient(135deg, var(--magenta), var(--purple)); border-radius:2px; margin:12px auto 0; }

/* Grids */
.grid-2 { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }

/* Forms */
.form-group { margin-bottom:20px; }
.form-group label { display:block; font-weight:600; font-size:0.85rem; color:var(--gray-700); margin-bottom:6px; }
.form-control { width:100%; padding:12px 16px; border:2px solid var(--gray-200); border-radius:var(--radius-md); font-size:0.95rem; font-family:inherit; transition:var(--transition); background:white; color:var(--gray-800); }
.form-control:focus { outline:none; border-color:var(--purple); box-shadow:0 0 0 3px rgba(123,79,163,0.1); }
select.form-control { cursor:pointer; }
textarea.form-control { resize:vertical; }

/* Auth */
.auth-container { min-height:calc(100vh - 64px - 200px); display:flex; align-items:center; justify-content:center; padding:40px 24px; position:relative; z-index:2; }
.auth-card { background:white; border-radius:var(--radius-xl); padding:48px 40px; box-shadow:var(--shadow-lg); width:100%; max-width:440px; }
.auth-card h2 { font-size:1.8rem; font-weight:800; color:var(--gray-800); margin-bottom:8px; text-align:center; }
.auth-card .subtitle { color:var(--gray-500); font-size:0.9rem; text-align:center; margin-bottom:32px; }

/* Alerts */
.alert { padding:14px 20px; border-radius:var(--radius-md); font-size:0.9rem; font-weight:500; margin-bottom:20px; }
.alert-success { background:#E8F5E9; color:#2E7D32; border:1px solid #C8E6C9; }
.alert-error { background:#FBE8E8; color:#C62828; border:1px solid #FFCDD2; }
.alert-info { background:var(--purple-pale); color:var(--purple); border:1px solid var(--purple-soft); }

/* Badges */
.badge { display:inline-flex; align-items:center; padding:4px 10px; border-radius:var(--radius-full); font-size:0.7rem; font-weight:700; text-transform:uppercase; letter-spacing:0.5px; }
.badge-purple { background:var(--purple-pale); color:var(--purple); }
.badge-cyan { background:var(--cyan-soft); color:#1A7A9E; }
.badge-gray { background:var(--gray-200); color:var(--gray-600); }
.badge-success { background:#E8F5E9; color:#2E7D32; }
.badge-warning { background:#FFF3E0; color:#E65100; }
.badge-info { background:#E3F2FD; color:#1565C0; }
.badge-error { background:#FFEBEE; color:#C62828; }

/* Cart */
.cart-page { max-width:900px; margin:0 auto; padding:40px 24px; position:relative; z-index:2; }
.cart-title { font-size:1.8rem; font-weight:800; margin-bottom:32px; }
.cart-items { display:flex; flex-direction:column; gap:16px; margin-bottom:32px; }
.cart-item { display:flex; align-items:center; gap:16px; background:white; padding:16px 20px; border-radius:var(--radius-lg); box-shadow:var(--shadow-sm); }
.cart-item-img-wrap { width:60px; height:60px; border-radius:var(--radius-md); background:linear-gradient(135deg, var(--purple-pale), var(--cyan-soft)); display:flex; align-items:center; justify-content:center; font-size:1.5rem; flex-shrink:0; }
.cart-item-info { flex:1; min-width:0; }
.cart-item-name { font-weight:600; font-size:0.95rem; }
.cart-item-price { color:var(--gray-500); font-size:0.8rem; }
.cart-qty { display:flex; align-items:center; gap:4px; }
.qty-btn { width:32px; height:32px; border:1px solid var(--gray-200); border-radius:50%; background:white; cursor:pointer; font-size:1rem; color:var(--purple); display:flex; align-items:center; justify-content:center; }
.qty-num { width:48px; text-align:center; border:1px solid var(--gray-200); border-radius:var(--radius-sm); padding:6px; font-size:0.9rem; font-weight:600; }
.cart-item-subtotal { font-weight:700; color:var(--purple); font-size:0.95rem; white-space:nowrap; }
.cart-remove { background:none; border:none; font-size:1.5rem; cursor:pointer; color:var(--gray-400); }
.cart-remove:hover { color:var(--magenta); }
.cart-summary { background:white; padding:24px; border-radius:var(--radius-lg); box-shadow:var(--shadow-sm); }
.cart-total { display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; padding-bottom:16px; border-bottom:1px solid var(--gray-200); }
.cart-total-label { font-weight:700; font-size:1.1rem; }
.cart-total-value { font-size:1.5rem; font-weight:800; background:linear-gradient(135deg, var(--magenta), var(--purple)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.cart-empty { text-align:center; padding:60px 0; }
.cart-empty-icon { font-size:3rem; margin-bottom:16px; }

/* Orders */
.order-card { background:white; border-radius:var(--radius-lg); padding:24px; box-shadow:var(--shadow-sm); }
.order-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:16px; flex-wrap:wrap; gap:8px; }
.order-date { color:var(--gray-400); font-size:0.8rem; margin-left:12px; }
.order-items { border-top:1px solid var(--gray-100); padding-top:12px; }
.order-item { display:flex; justify-content:space-between; padding:8px 0; font-size:0.9rem; }
.order-total { margin-top:12px; font-weight:800; font-size:1.2rem; color:var(--purple); text-align:right; }
.btn-delivery { display:inline-flex; align-items:center; gap:6px; padding:6px 16px; border-radius:var(--radius-full); font-size:0.78rem; font-weight:700; text-decoration:none; background:linear-gradient(135deg, var(--cyan), var(--blue)); color:white; margin-left:12px; transition:var(--transition); white-space:nowrap; }
.btn-delivery:hover { transform:translateY(-1px); box-shadow:0 4px 14px rgba(79,182,216,0.35); }

/* Product Detail */
.product-hero { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; max-width:1200px; margin:40px auto; padding:0 24px; position:relative; z-index:2; }
.product-image-col { position:sticky; top:80px; }
.product-image-main { position:relative; width:100%; aspect-ratio:1; border-radius:var(--radius-xl); overflow:hidden; box-shadow:0 16px 48px rgba(123,79,163,0.14); background:linear-gradient(135deg, var(--purple-pale), var(--cyan-soft)); }
.product-badge { position:absolute; top:16px; left:16px; background:linear-gradient(135deg, var(--magenta), var(--magenta-light)); color:white; padding:5px 14px; border-radius:var(--radius-full); font-size:0.8rem; font-weight:800; box-shadow:0 4px 14px rgba(233,78,137,0.35); }
.product-thumb-row { display:flex; gap:10px; margin-top:12px; overflow-x:auto; padding-bottom:4px; }
.product-thumb { width:68px; height:68px; min-width:68px; border-radius:var(--radius-md); overflow:hidden; cursor:pointer; border:2px solid transparent; opacity:0.55; transition:var(--transition); }
.product-thumb:hover { opacity:0.85; border-color:var(--purple-soft); }
.product-thumb.active { opacity:1; border-color:var(--purple); }
.product-thumb img { width:100%; height:100%; object-fit:cover; }
.product-detail-info { display:flex; flex-direction:column; gap:12px; }
.product-detail-info h1 { font-size:2rem; font-weight:800; color:var(--gray-800); line-height:1.2; }
.product-desc-text { color:var(--gray-500); line-height:1.8; font-size:0.9rem; }
.product-price-area { display:flex; align-items:baseline; gap:12px; padding:16px 0; }
.product-old-price { font-size:1rem; color:var(--gray-400); text-decoration:line-through; }

/* Tables */
.admin-table { width:100%; border-collapse:collapse; }
.admin-table th { text-align:left; padding:16px; font-size:0.8rem; font-weight:700; color:var(--gray-500); text-transform:uppercase; letter-spacing:0.5px; border-bottom:2px solid var(--gray-200); }
.admin-table td { padding:16px; border-bottom:1px solid var(--gray-100); font-size:0.9rem; }
.admin-table tr:hover td { background:var(--gray-50); }
.table-card { background:white; border-radius:var(--radius-lg); padding:8px; box-shadow:var(--shadow-sm); overflow-x:auto; }
.table-actions { display:flex; gap:8px; align-items:center; }

/* Footer */
.site-footer { background:rgba(255,255,255,0.6); backdrop-filter:blur(12px); border-top:1px solid rgba(123,79,163,0.08); padding:48px 24px 24px; margin-top:80px; position:relative; z-index:2; }
.footer-inner { max-width:1200px; margin:0 auto; display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:40px; }
.footer-col h4 { color:var(--purple); font-size:1rem; font-weight:700; margin-bottom:16px; }
.footer-col p, .footer-col a { color:var(--gray-500); font-size:0.875rem; text-decoration:none; display:block; margin-bottom:8px; transition:var(--transition); }
.footer-col a:hover { color:var(--purple); }
.footer-logo { height:32px; width:auto; display:block; margin-bottom:14px; }
.footer-bottom { text-align:center; padding-top:32px; margin-top:32px; border-top:1px solid rgba(123,79,163,0.08); color:var(--gray-400); font-size:0.8rem; }

/* Admin */
.admin-navbar { background:rgba(255,255,255,0.9); backdrop-filter:blur(12px); border-bottom:1px solid rgba(123,79,163,0.08); position:sticky; top:0; z-index:100; }
.admin-nav-inner { max-width:1200px; margin:0 auto; padding:0 24px; display:flex; align-items:center; justify-content:space-between; height:56px; }
.admin-logo { display:flex; align-items:center; gap:6px; font-size:1.1rem; font-weight:800; color:var(--purple); text-decoration:none; }
.admin-logo-img { height:28px; width:auto; }
.admin-nav-links { display:flex; align-items:center; gap:12px; }
.admin-nav-links a { text-decoration:none; color:var(--gray-600); font-weight:500; font-size:0.85rem; }
.admin-layout { display:flex; max-width:1200px; margin:0 auto; min-height:calc(100vh - 56px); position:relative; z-index:2; }
.admin-sidebar { width:220px; background:rgba(255,255,255,0.5); border-right:1px solid rgba(123,79,163,0.06); padding:20px 0; flex-shrink:0; }
.admin-sidebar a { display:block; padding:12px 24px; text-decoration:none; color:var(--gray-600); font-weight:500; font-size:0.9rem; transition:var(--transition); }
.admin-sidebar a:hover, .admin-sidebar a.active { color:var(--purple); background:var(--purple-pale); }
.admin-content { flex:1; padding:32px; min-width:0; }
.admin-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:32px; }
.admin-header h1 { font-size:1.8rem; font-weight:800; color:var(--gray-800); }
.admin-section { margin-top:32px; }
.admin-section h2 { font-size:1.2rem; font-weight:700; margin-bottom:16px; color:var(--gray-700); }
.admin-form { display:grid; grid-template-columns:1fr 1fr; gap:20px; background:white; padding:24px; border-radius:var(--radius-lg); box-shadow:var(--shadow-sm); margin-bottom:24px; }
.config-section { background:white; border-radius:var(--radius-lg); padding:24px; box-shadow:var(--shadow-sm); margin-bottom:20px; }
.stats-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:20px; margin-bottom:32px; }
.stat-card { background:white; padding:24px; border-radius:var(--radius-lg); box-shadow:var(--shadow-sm); position:relative; overflow:hidden; }
.stat-label { font-size:0.85rem; color:var(--gray-500); font-weight:500; }
.stat-value { font-size:2rem; font-weight:800; color:var(--gray-800); margin-top:4px; }
.stat-icon { position:absolute; right:16px; top:50%; transform:translateY(-50%); font-size:2.5rem; opacity:0.2; }
.status-form { display:flex; gap:6px; align-items:center; }
.status-form select { padding:4px 8px; border-radius:6px; border:1px solid var(--gray-200); font-size:0.8rem; font-family:inherit; }

/* Mobile nav */
.mobile-nav { display:none; position:fixed; top:0; left:0; right:0; bottom:0; background:rgba(255,255,255,0.98); backdrop-filter:blur(20px); z-index:200; flex-direction:column; align-items:center; justify-content:center; gap:24px; }
.mobile-nav.open { display:flex; }
.mobile-nav a { font-size:1.3rem; font-weight:600; color:var(--gray-700); text-decoration:none; }
.mobile-nav .close-nav { position:absolute; top:20px; right:24px; background:none; border:none; font-size:2rem; cursor:pointer; color:var(--purple); }

/* Pix / Boleto */
.pix-container { text-align:center; }
.pix-qrcode { margin:0 auto 20px; max-width:300px; }
.pix-copy { max-width:500px; margin:0 auto; }
.pix-copy textarea { width:100%; padding:12px; border:2px solid var(--gray-200); border-radius:var(--radius-md); font-family:monospace; font-size:0.8rem; resize:none; height:80px; }

/* Video section */
.video-card { border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-md); background:white; }
.video-embed { position:relative; padding-bottom:56.25%; height:0; }
.video-embed iframe { position:absolute; top:0; left:0; width:100%; height:100%; border:none; }

/* Gallery (admin) */
.gallery-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(100px, 1fr)); gap:8px; margin-top:8px; }
.gallery-item { position:relative; border-radius:8px; overflow:hidden; aspect-ratio:1; background:var(--gray-100); }
.gallery-item img { width:100%; height:100%; object-fit:cover; }
.gallery-item .del-btn { position:absolute; top:4px; right:4px; width:22px; height:22px; border-radius:50%; background:var(--magenta); color:white; border:none; cursor:pointer; font-size:12px; line-height:1; display:flex; align-items:center; justify-content:center; }
.video-list { display:flex; flex-direction:column; gap:8px; margin-top:8px; }
.video-item { display:flex; align-items:center; gap:10px; padding:10px; background:var(--gray-50); border-radius:8px; }
.add-row { display:flex; gap:8px; margin-top:8px; }
.add-row input, .add-row select { flex:1; }

/* Toast */
.toast { position:fixed; bottom:30px; right:30px; z-index:9999; background:white; padding:16px 24px; border-radius:var(--radius-sm); box-shadow:var(--shadow-lg); font-weight:600; font-size:14px; animation:slideUp 0.3s ease; border-left:4px solid var(--purple); max-width:400px; }
@keyframes slideUp { from{transform:translateY(20px);opacity:0} to{transform:translateY(0);opacity:1} }

/* Utilities */
.container { max-width:1200px; margin:0 auto; padding:0 24px; }
.text-center { text-align:center; }
.flex { display:flex; }
.items-center { align-items:center; }
.justify-between { justify-content:space-between; }
.main-content { position:relative; z-index:2; min-height:calc(100vh - 64px); }
.status-badge { display:inline-flex; align-items:center; gap:6px; padding:6px 14px; border-radius:var(--radius-full); font-size:0.8rem; font-weight:600; }
.status-ok { background:#E8F5E9; color:#2E7D32; }
.status-warn { background:#FFF3E0; color:#E65100; }

/* Toggle switch */
.toggle-group { display:flex; gap:24px; flex-wrap:wrap; }
.toggle-item { display:flex; align-items:center; gap:10px; }
.toggle-item label { font-weight:500; color:var(--gray-700); cursor:pointer; }
.toggle-switch { position:relative; width:48px; height:26px; }
.toggle-switch input { opacity:0; width:0; height:0; }
.toggle-slider { position:absolute; cursor:pointer; top:0; left:0; right:0; bottom:0; background:var(--gray-300); border-radius:26px; transition:var(--transition); }
.toggle-slider:before { content:""; position:absolute; height:20px; width:20px; left:3px; bottom:3px; background:white; border-radius:50%; transition:var(--transition); }
.toggle-switch input:checked + .toggle-slider { background:linear-gradient(135deg, var(--purple), var(--purple-light)); }
.toggle-switch input:checked + .toggle-slider:before { transform:translateX(22px); }

/* Responsive */
@media (max-width:1024px) { .grid-4, .stats-grid { grid-template-columns:repeat(2, 1fr); } }
@media (max-width:768px) {
    .grid-2, .grid-3 { grid-template-columns:1fr; }
    .hero h1 { font-size:2.2rem; }
    .nav-links { display:none; }
    .menu-toggle { display:block; }
    .admin-layout { flex-direction:column; }
    .admin-sidebar { width:100%; border-right:none; border-bottom:1px solid rgba(123,79,163,0.06); padding:8px; display:flex; overflow-x:auto; gap:4px; }
    .admin-sidebar a { white-space:nowrap; padding:8px 16px; }
    .admin-form { grid-template-columns:1fr; }
    .product-hero { grid-template-columns:1fr; gap:24px; }
    .product-image-col { position:static; }
    .product-detail-info h1 { font-size:1.5rem; }
}
@media (max-width:480px) {
    .grid-2, .grid-3, .grid-4, .stats-grid { grid-template-columns:1fr; }
    .hero h1 { font-size:1.8rem; }
}

/* === Product Options === */
.prod-opcoes-section { margin:8px 0 16px; }
.prod-opcoes-title { font-size:0.9rem; font-weight:700; color:var(--gray-700); margin-bottom:10px; }
.prod-opcoes-grid { display:flex; flex-direction:column; gap:8px; }
.prod-opcao-card { display:flex; align-items:center; gap:14px; padding:16px 18px; border-radius:var(--radius-md); border:2px solid var(--gray-200); cursor:pointer; transition:var(--transition); background:white; }
.prod-opcao-card:hover { border-color:var(--purple-soft); background:rgba(123,79,163,0.02); }
.prod-opcao-card.selected { border-color:var(--purple); background:rgba(123,79,163,0.05); box-shadow:0 0 0 3px rgba(123,79,163,0.12); }
.prod-opcao-card input[type=radio] { display:none; }
.prod-opcao-radio { width:20px; height:20px; min-width:20px; border-radius:50%; border:2px solid var(--gray-300); display:flex; align-items:center; justify-content:center; transition:var(--transition); }
.prod-opcao-card.selected .prod-opcao-radio { border-color:var(--purple); background:var(--purple); }
.prod-opcao-card.selected .prod-opcao-radio::after { content:""; width:8px; height:8px; border-radius:50%; background:white; }
.prod-opcao-text { flex:1; display:flex; flex-direction:column; gap:2px; }
.prod-opcao-nome { font-weight:600; font-size:0.9rem; color:var(--gray-800); }
.prod-opcao-desc { font-size:0.75rem; color:var(--gray-500); }
.prod-opcao-preco { font-weight:700; font-size:0.9rem; color:var(--purple); white-space:nowrap; }
.cart-item-option { font-size:0.78rem; color:var(--purple); font-weight:600; margin-top:1px; }
.order-item-option { display:inline-block; font-size:0.75rem; color:var(--purple); font-weight:600; background:var(--purple-pale); padding:2px 8px; border-radius:var(--radius-full); margin-left:6px; }