:root{--color-primary-50: #e8eef5;--color-primary-100: #d1dcea;--color-primary-200: #a3b9d5;--color-primary-300: #7596c0;--color-primary-400: #4773ab;--color-primary-500: #2c5282;--color-primary-600: #1e3a5c;--color-primary-700: #1a3150;--color-primary-800: #152844;--color-primary-900: #0f1f38;--color-secondary-50: #f8f9fa;--color-secondary-100: #e9ecef;--color-secondary-200: #dee2e6;--color-secondary-300: #ced4da;--color-secondary-400: #adb5bd;--color-secondary-500: #8c939a;--color-secondary-600: #6c757d;--color-secondary-700: #495057;--color-success-50: #ecfdf5;--color-success-100: #d1fae5;--color-success-500: #10b981;--color-success-600: #059669;--color-success-700: #047857;--color-error-50: #fef2f2;--color-error-100: #fee2e2;--color-error-500: #ef4444;--color-error-600: #dc2626;--color-error-700: #b91c1c;--color-warning-50: #fffbeb;--color-warning-100: #fef3c7;--color-warning-500: #f59e0b;--color-warning-600: #d97706;--color-gray-50: #f8fafc;--color-gray-100: #f1f5f9;--color-gray-200: #e2e8f0;--color-gray-300: #cbd5e1;--color-gray-400: #94a3b8;--color-gray-500: #64748b;--color-gray-600: #475569;--color-gray-700: #334155;--color-gray-800: #1e293b;--color-gray-900: #0f172a;--color-gray-950: #020617;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--spacing-20: 5rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--container-max: 1440px;--container-padding: var(--spacing-4)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--color-gray-900);background-color:var(--color-gray-50);min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit;font-size:inherit}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--color-gray-900)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding)}.container-fluid{width:100%;padding:0 var(--container-padding)}.container-wide{width:100%;max-width:1600px;margin:0 auto;padding:0 var(--container-padding)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing-1)}.gap-2{gap:var(--spacing-2)}.gap-3{gap:var(--spacing-3)}.gap-4{gap:var(--spacing-4)}.gap-6{gap:var(--spacing-6)}.gap-8{gap:var(--spacing-8)}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-sm);font-weight:600;border-radius:var(--radius-lg);transition:all var(--transition-base);white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--color-primary-600),var(--color-primary-700));color:#fff;box-shadow:0 2px 8px -2px #2563eb80}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-500),var(--color-primary-600));transform:translateY(-1px);box-shadow:0 4px 12px -2px #2563eb99}.btn-secondary{background:var(--color-gray-100);color:var(--color-gray-700);border:1px solid var(--color-gray-300)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-200)}.btn-success{background:linear-gradient(135deg,var(--color-success-500),var(--color-success-600));color:#fff}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,var(--color-success-600),var(--color-success-700))}.btn-danger{background:linear-gradient(135deg,var(--color-error-500),var(--color-error-600));color:#fff}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,var(--color-error-600),var(--color-error-700))}.btn-outline{background:transparent;color:var(--color-primary-600);border:2px solid var(--color-primary-600)}.btn-outline:hover:not(:disabled){background:var(--color-primary-50)}.btn-ghost{background:transparent;color:var(--color-gray-600)}.btn-ghost:hover:not(:disabled){background:var(--color-gray-100)}.btn-sm{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-xs)}.btn-lg{padding:var(--spacing-4) var(--spacing-8);font-size:var(--font-size-base)}.btn-block{width:100%}.btn-icon{padding:var(--spacing-2);width:36px;height:36px}.form-group{display:flex;flex-direction:column;gap:var(--spacing-2)}.form-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-base);border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);background:#fff;transition:all var(--transition-fast)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px var(--color-primary-100)}.form-input.error,.form-textarea.error{border-color:var(--color-error-500)}.form-error{font-size:var(--font-size-sm);color:var(--color-error-600)}.card{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);overflow:hidden}.card-header{padding:var(--spacing-6);border-bottom:1px solid var(--color-gray-100)}.card-body{padding:var(--spacing-6)}.card-footer{padding:var(--spacing-6);border-top:1px solid var(--color-gray-100);background:var(--color-gray-50)}.badge{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-full)}.badge-primary{background:var(--color-primary-100);color:var(--color-primary-700)}.badge-success{background:var(--color-success-100);color:var(--color-success-700)}.badge-warning{background:var(--color-warning-100);color:var(--color-warning-600)}.badge-error{background:var(--color-error-100);color:var(--color-error-700)}.alert{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-4);border-radius:var(--radius-lg)}.alert-success{background:var(--color-success-50);border:1px solid var(--color-success-100);color:var(--color-success-700)}.alert-error{background:var(--color-error-50);border:1px solid var(--color-error-100);color:var(--color-error-700)}.alert-warning{background:var(--color-warning-50);border:1px solid var(--color-warning-100);color:var(--color-warning-600)}.spinner{width:24px;height:24px;border:3px solid var(--color-gray-200);border-top-color:var(--color-primary-600);border-radius:50%;animation:spin .8s linear infinite}.spinner-lg{width:48px;height:48px;border-width:4px}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,var(--color-gray-200) 25%,var(--color-gray-100) 50%,var(--color-gray-200) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (min-width: 640px){.sm-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 768px){.md-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1024px){.lg-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg-grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.hide-mobile{display:none!important}.show-mobile{display:block!important}@media (min-width: 768px){.hide-mobile{display:initial!important}.hide-mobile.flex{display:flex!important}.show-mobile{display:none!important}}.page-enter{opacity:0;transform:translateY(10px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.whatsapp-float{position:fixed;bottom:24px;right:24px;width:60px;height:60px;background:#25d366;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;box-shadow:0 4px 20px #25d36666;z-index:1000;transition:all var(--transition-base)}.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 6px 24px #25d36680}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideInUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.animate-fadeIn{animation:fadeIn .5s ease-out forwards}.animate-fadeInUp{animation:fadeInUp .6s ease-out forwards}.animate-fadeInDown{animation:fadeInDown .6s ease-out forwards}.animate-fadeInLeft{animation:fadeInLeft .6s ease-out forwards}.animate-fadeInRight{animation:fadeInRight .6s ease-out forwards}.animate-scaleIn{animation:scaleIn .4s ease-out forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-700{animation-delay:.7s}.delay-1000{animation-delay:1s}.page-transition{animation:fadeInUp .4s ease-out forwards}html{scroll-behavior:smooth}.card{transition:transform .3s ease,box-shadow .3s ease}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.btn{transition:all .2s ease}.btn:active{transform:scale(.98)}.link-animated{position:relative}.link-animated:after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--color-primary-600);transition:width .3s ease}.link-animated:hover:after{width:100%}.img-zoom{overflow:hidden}.img-zoom img{transition:transform .4s ease}.img-zoom:hover img{transform:scale(1.08)}.stagger-children>*{opacity:0;animation:fadeInUp .5s ease-out forwards}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:.1s}.stagger-children>*:nth-child(4){animation-delay:.3s}.stagger-children>*:nth-child(5){animation-delay:.4s}.stagger-children>*:nth-child(6){animation-delay:.5s}.stagger-children>*:nth-child(7){animation-delay:.6s}.stagger-children>*:nth-child(8){animation-delay:.7s}.skeleton{background:linear-gradient(90deg,var(--color-gray-200) 25%,var(--color-gray-100) 50%,var(--color-gray-200) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.modal-overlay{animation:fadeIn .2s ease-out forwards}.modal-content{animation:scaleIn .3s ease-out forwards}.toast-enter{animation:slideInUp .3s ease-out forwards}.badge-pulse{animation:pulse 2s ease-in-out infinite}.gradient-text{background:linear-gradient(135deg,var(--color-primary-600),var(--color-secondary-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 3px #3b82f64d;transition:box-shadow .2s ease}table tbody tr{transition:background-color .2s ease}table tbody tr:hover{background-color:var(--color-gray-50)}.icon-spin:hover svg{animation:spin .5s ease-in-out}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-nav-link{text-decoration:none}.admin-nav-link:hover{background:var(--color-gray-800)!important;color:#fff!important}aside a{transition:all .2s ease}aside a:hover{transform:translate(4px)}.admin-table tbody tr{transition:background-color .15s ease}.admin-table tbody tr:hover{background:var(--color-primary-50)}.admin-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width: 479px){:root{--container-padding: var(--spacing-3)}body{font-size:14px}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}.container{padding:0 var(--spacing-3)}.btn{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);width:100%}.btn-lg{padding:var(--spacing-3) var(--spacing-6)}.form-input,.form-textarea,.form-select{padding:var(--spacing-3);font-size:16px}.card{border-radius:var(--radius-lg)}.card-body,.card-header,.card-footer{padding:var(--spacing-4)}.whatsapp-float{bottom:16px;right:16px;width:50px;height:50px;font-size:24px}.grid,.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr!important}.hide-mobile{display:none!important}}@media (min-width: 480px) and (max-width: 639px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}.btn{width:auto}}@media (min-width: 640px) and (max-width: 767px){.container{padding:0 var(--spacing-4)}.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media (min-width: 768px) and (max-width: 1023px){.grid-cols-4{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){header{padding:var(--spacing-2) 0}header .container>div{flex-wrap:wrap;gap:var(--spacing-2)}header nav{position:fixed;top:0;left:-100%;width:80%;max-width:300px;height:100vh;background:#fff;box-shadow:var(--shadow-xl);flex-direction:column;padding:var(--spacing-8) var(--spacing-4);transition:left .3s ease;z-index:1001}header nav.open{left:0}header nav a{padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--color-gray-100);width:100%}.mobile-menu-toggle{display:flex!important;align-items:center;justify-content:center;width:40px;height:40px;background:var(--color-gray-100);border-radius:var(--radius-lg)}.desktop-only{display:none!important}header input[type=search],header input[type=text]{width:100%;max-width:none}.cart-badge{top:-5px;right:-5px;min-width:18px;height:18px;font-size:10px}}@media (max-width: 768px){footer{padding:var(--spacing-8) 0 var(--spacing-4)}footer .container>div{flex-direction:column;gap:var(--spacing-6);text-align:center}footer nav,footer ul{flex-direction:column;gap:var(--spacing-2)}footer a{padding:var(--spacing-2)}}@media (max-width: 639px){.product-card{padding:var(--spacing-3)}.product-card img,.product-card .product-image{height:150px}.product-card h3{font-size:var(--font-size-sm)}.product-card .price{font-size:var(--font-size-lg)}.product-card .btn{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs)}}@media (max-width: 768px){.cart-page>div{flex-direction:column}.cart-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-4)}.cart-item img{width:100%;max-width:150px}.quantity-controls{width:100%;justify-content:space-between}.cart-summary{width:100%;position:static}}@media (max-width: 768px){.checkout-page>div{flex-direction:column}.checkout-form{order:1}.checkout-summary{order:2;width:100%}.form-row{flex-direction:column}.form-row>*{width:100%}}@media (max-width: 768px){.product-detail{flex-direction:column}.product-detail>*{width:100%}.product-gallery{max-height:300px}.product-info{padding:var(--spacing-4)}.product-title{font-size:var(--font-size-xl)}.product-price{font-size:var(--font-size-2xl)}}@media (max-width: 479px){.auth-container{padding:var(--spacing-4);margin:var(--spacing-4);border-radius:var(--radius-lg)}.auth-container h1{font-size:var(--font-size-xl)}.auth-container .btn{width:100%}}@media (max-width: 768px){.admin-layout{flex-direction:column}.admin-sidebar{width:280px!important;position:fixed!important;top:0!important;left:-280px!important;height:100vh!important;z-index:1001;transition:left .3s ease!important}.admin-sidebar.open{left:0!important}.admin-sidebar-close,.admin-menu-toggle{display:flex!important}.admin-main{width:100%!important;margin-left:0!important;padding:var(--spacing-4)}.admin-table{display:block;overflow-x:auto;white-space:nowrap}.admin-table th,.admin-table td{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm)}.admin-stats-grid{grid-template-columns:repeat(2,1fr)}.admin-form .form-row{flex-direction:column}}@media (max-width: 479px){.admin-stats-grid{grid-template-columns:1fr}}@media (max-width: 479px){.modal-content{width:95%;max-width:none;margin:var(--spacing-4);max-height:90vh;overflow-y:auto}.modal-header,.modal-body,.modal-footer{padding:var(--spacing-4)}}@media (max-width: 768px){.mobile-text-center{text-align:center!important}.mobile-text-left{text-align:left!important}}@media (max-width: 768px){.mobile-p-0{padding:0!important}.mobile-m-0{margin:0!important}.mobile-mt-4{margin-top:var(--spacing-4)!important}.mobile-mb-4{margin-bottom:var(--spacing-4)!important}}@media (max-width: 768px){.mobile-block{display:block!important}.mobile-flex-col{flex-direction:column!important}.mobile-w-full{width:100%!important}}.show-mobile{display:none!important}@media (max-width: 768px){.show-mobile{display:flex!important}.hide-mobile{display:none!important}}@media (max-width: 768px){a,button,input,select,textarea{min-height:44px}.btn-sm{min-height:36px;padding:var(--spacing-2) var(--spacing-3)}}html,body{overflow-x:hidden}@supports (padding: max(0px)){body{padding-left:max(var(--spacing-4),env(safe-area-inset-left));padding-right:max(var(--spacing-4),env(safe-area-inset-right))}.whatsapp-float{bottom:max(16px,env(safe-area-inset-bottom));right:max(16px,env(safe-area-inset-right))}}.animate-fade-in{animation:fadeIn .8s ease-out forwards}.animate-fade-in-up{animation:fadeInUp .8s ease-out forwards;opacity:0}.animate-scale-in{animation:scaleIn .5s ease-out forwards}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.animate-delay-400{animation-delay:.4s}.animate-delay-500{animation-delay:.5s}.animate-delay-700{animation-delay:.7s}.opacity-0{opacity:0}.stagger-children>*{opacity:0;animation:fadeInUp .6s ease-out forwards}.stagger-children>*:nth-child(1){animation-delay:.1s}.stagger-children>*:nth-child(2){animation-delay:.15s}.stagger-children>*:nth-child(3){animation-delay:.2s}.stagger-children>*:nth-child(4){animation-delay:.25s}.stagger-children>*:nth-child(5){animation-delay:.3s}.stagger-children>*:nth-child(6){animation-delay:.35s}.stagger-children>*:nth-child(7){animation-delay:.4s}.stagger-children>*:nth-child(8){animation-delay:.45s}.stagger-children>*:nth-child(9){animation-delay:.5s}.stagger-children>*:nth-child(10){animation-delay:.55s}.stagger-children>*:nth-child(11){animation-delay:.6s}.stagger-children>*:nth-child(12){animation-delay:.65s}
