.component{padding:1em}.signup-form{display:flex;flex-direction:column;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}label{color:#333;font-size:14px;font-weight:500;margin:2% 0}input,select{border:1px solid #e6e6fa;border-radius:8px;font-size:14px;height:3vh;padding:1em;transition:border .2s;width:20vw}input:focus{border-color:indigo;box-shadow:0 0 0 2px #4b00821a;outline:none}button{background:indigo;border:none;border-radius:8px!important;color:#fff;cursor:pointer;font-size:16px;font-weight:600;height:7vh;padding:.5em;transition:background .2s;width:100%}.signup-button{gap:10px}.login,.signup-button{align-items:center;display:flex;justify-content:center;margin-top:5%}.login{gap:5px}.purple{color:indigo;font-weight:500;text-decoration:none;transition:color .2s}.purple:hover{color:#8a2be2;text-decoration:underline}.logo-gold{color:gold}.logo{font-family:Playfair Display;font-size:36px;text-align:center}.button-loader{animation:signup-spin 1s linear infinite;height:18px;width:18px}@keyframes signup-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.signup-button:disabled{background:#6c5ce7;cursor:not-allowed;opacity:.6}.signup-button:hover:not(:disabled){background:#3a0069}input:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.error-message{border-left:3px solid #ff4757;font-size:12px;margin-top:5px;padding:8px}input:valid:not(:focus):not(:placeholder-shown){border-color:#2ed573}.signup-overlay-loader{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#fffffff2;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.signup-overlay-container{background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 10px 30px #0003;max-width:300px;padding:40px;text-align:center;width:90%}.signup-overlay-spinner{animation:signup-spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:indigo;height:50px;margin:0 auto 20px;width:50px}.signup-overlay-container p{color:indigo;font-size:16px;font-weight:600;margin:0}@media screen and (max-width:767px){input{width:80vw}.signup-form{width:90%}.signup-overlay-spinner{height:40px;width:40px}.signup-overlay-container{padding:30px 20px}.signup-overlay-container p{font-size:14px}.button-loader{height:16px;width:16px}.signup-button{font-size:14px;height:50px}}@media screen and (min-width:768px) and (max-width:1023px){input{width:60vw}.signup-form{width:80%}.signup-overlay-spinner{height:45px;width:45px}.signup-overlay-container{padding:35px}}.forgot-password{display:flex;flex-direction:column;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.success-message{color:#4bb543;margin:20px 0}.reset-password:disabled{cursor:not-allowed;opacity:.7}.reset-password{align-items:center;background:indigo;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;margin-top:15px;min-width:160px;padding:12px 24px;transition:background .2s}.reset-password:hover:not(:disabled){background:#3a0069}.success-message{background:#f8fff8;border:1px solid #4bb543;border-radius:8px;padding:20px;position:relative}.success-message:after{animation:spin 1s linear infinite;border:2px solid #4bb543;border-radius:50%;border-top-color:#0000;content:"";display:block;height:30px;margin:15px auto 0;width:30px}.error-message{background:#fff8f8;border-radius:4px;color:#ff4757;font-size:.9rem;margin-bottom:15px;padding:10px}.forgot-password label{color:#333;font-weight:500;margin-bottom:8px}.forgot-password input{border:1px solid #ddd;border-radius:4px;font-size:16px;margin-bottom:15px;padding:12px;transition:border .2s}.forgot-password input:focus{border-color:indigo;box-shadow:0 0 0 2px #4b00821a;outline:none}.forgot-password input:disabled{background:#f5f5f5;cursor:not-allowed}.logo{font-size:1.8rem;justify-content:center;margin-bottom:30px}@media (max-width:768px){.forgot-password{max-width:400px;width:90%}.reset-password{min-width:auto;width:100%}}.login-form{display:flex;flex-direction:column;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.login-button{margin-top:5%}sub{margin-top:3%;text-align:right}.signup{display:flex;margin-top:10%}.error-message{color:#f44;font-size:14px;margin-bottom:10px}.login-button:disabled{cursor:not-allowed;opacity:.7}.login-overlay-loader{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#fffffff2;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.login-overlay-container{background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 10px 30px #0003;max-width:300px;padding:40px;text-align:center;width:90%}.login-overlay-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:indigo;height:50px;margin:0 auto 20px;width:50px}.login-overlay-container p{color:indigo;font-size:16px;font-weight:600;margin:0}.login-button{align-items:center;background:indigo;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:12px 24px;transition:background .2s}.login-button:hover:not(:disabled){background:#3a0069}.reset-password-form{display:flex;flex-direction:column;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.reset-password{margin-top:5%}.set-password{align-items:center;background:indigo;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;margin-top:20px;padding:14px 28px;transition:all .2s ease;width:100%}.set-password:hover:not(:disabled){background:#3a0069;box-shadow:0 4px 12px #4b008233;transform:translateY(-2px)}.set-password:disabled{background:#6c5ce7;cursor:not-allowed;opacity:.6}.success-state{background:#f8fff8;border:1px solid #4bb543;border-radius:12px;padding:30px;text-align:center}.success-icon{color:#4bb543;font-size:3rem;margin-bottom:20px}.success-text{color:#155724;font-size:1.1rem;margin:10px 0}.redirect-text{color:#666;font-style:italic;margin-top:20px}.error-text{background:#fff8f8;border:1px solid #fcc;border-radius:8px;color:#ff4757;margin:20px 0;padding:15px;text-align:center}.email-display{background:#f8f5ff;border-radius:6px;color:#666;margin-bottom:25px;padding:10px;text-align:center}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-weight:500;margin-bottom:8px}.form-group input{border:1px solid #ddd;border-radius:6px;font-size:16px;padding:12px;transition:border .2s;width:100%}.form-group input:focus{border-color:indigo;box-shadow:0 0 0 2px #4b00821a;outline:none}.form-group input:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.password-requirements{background:#f8f5ff;border-radius:8px;margin:20px 0;padding:15px}.password-requirements h4{color:indigo;font-size:14px;margin-bottom:10px}.password-requirements ul{list-style:none;margin:0;padding:0}.password-requirements li{color:#666;font-size:13px;margin:5px 0;padding-left:20px;position:relative}.password-requirements li:before{color:#ccc;content:"○";left:0;position:absolute}.password-requirements li.met{color:#4bb543}.password-requirements li.met:before{color:#4bb543;content:"✓"}.reset-overlay-loader{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#fffffff2;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.reset-overlay-container{background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 10px 30px #0003;max-width:300px;padding:40px;text-align:center;width:90%}.reset-overlay-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:indigo;height:50px;margin:0 auto 20px;width:50px}.reset-overlay-container p{color:indigo;font-size:16px;font-weight:600;margin:0}@media (max-width:767px){.reset-overlay-spinner{height:40px;width:40px}.reset-overlay-container{padding:30px 20px}.reset-overlay-container p{font-size:14px}.button-loader{height:14px;width:14px}.set-password{font-size:14px}.reset-password-form{max-width:400px;padding:20px;width:90%}.set-password{padding:12px 20px}}@media (min-width:769px) and (max-width:1024px){.reset-overlay-spinner{height:45px;width:45px}.reset-overlay-container{padding:35px}}.footer{background:#000;border-top:1px solid #0000001e;color:#fff;margin-top:2%;padding:1em}.footer-top{display:flex;justify-content:space-between}.footer-bottom{border-top:1px solid #fff;margin-top:3%;padding-top:1em;text-align:center}.footer-link{color:#fff;text-decoration:none}.social-icon{background:indigo;border-radius:50%;color:gold;margin-right:2%;padding:1em}.subscribe{margin-top:2%;width:10vw}.column{display:flex;flex-direction:column}@media screen and (max-width:767px){.footer-top{flex-direction:column}.footer-left,.footer-middle,.footer-right,.footer-subscribe{margin-bottom:5%}.subscribe{width:40vw}}@media screen and (min-width:768px) and (max-width:1023px){.footer-top{flex-wrap:wrap}.subscribe{width:20vw}}.contact-form{margin-top:4%;width:70vw}.contact-form input{height:5vh}.button-loader{animation:spin 1s linear infinite;border:2px solid #fff;border-radius:50%;border-top-color:#0000;display:inline-block;height:16px;margin-right:8px;width:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.add-to-cart{align-items:center;display:flex;gap:8px;justify-content:center}.add-to-cart:disabled{cursor:not-allowed;opacity:.7}.success-message{background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724;margin-bottom:20px;padding:15px;text-align:center}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;margin-bottom:20px;padding:15px;text-align:center}input:disabled,textarea:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.7}.contact-overlay-loader{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#fffffff2;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.contact-overlay-container{background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 10px 30px #0003;max-width:300px;padding:40px;text-align:center;width:90%}.contact-overlay-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:indigo;height:50px;margin:0 auto 20px;width:50px}.contact-overlay-container p{color:indigo;font-size:16px;font-weight:600;margin:0}.topbar{border-bottom:1px solid #f0f0f0;display:flex;height:60px;justify-content:space-between;padding:0 20px;position:relative;width:100%}.topbar-toggle{background:none;border:none;color:indigo;cursor:pointer;display:none;font-size:1.5rem;padding:.5rem;z-index:1001}.topbar-collapse{display:flex;flex-grow:1;justify-content:center}.navigation{display:flex;gap:30px;list-style:none;margin-top:0}.navigation li{color:indigo}.navigation .link{align-items:center;color:inherit;display:flex;font-weight:500;gap:8px;padding:.5rem 0;text-decoration:none;transition:color .2s ease}.navigation .link:focus,.navigation .link:hover{color:#8a2be2}.navigation .link:focus,.right .link:focus{outline:2px solid indigo;outline-offset:2px}.logo{cursor:pointer;display:flex;flex-shrink:0;font-size:1.5rem;font-weight:700;-webkit-user-select:none;user-select:none}.logo:focus{outline:2px solid indigo;outline-offset:2px}.logo-purple{color:indigo}.logo-gold{color:#d4af37}.user-dropdown .dropdown-content{display:none}.user-dropdown .dropdown-content.show{display:block}.right .link{color:indigo;font-weight:500;padding:.5rem 0;text-decoration:none;transition:color .2s ease}.right .link:hover{color:#8a2be2}.logo:focus,.topbar-toggle:focus,[role=button]:focus,button:focus{outline:2px solid indigo;outline-offset:2px}.cart-count{font-size:.9rem;font-weight:600;margin-left:4px}.user-dropdown{position:relative}.user-welcome{align-items:center;color:indigo;cursor:pointer;display:flex;font-weight:500;gap:6px}.user-welcome:hover{color:#8a2be2}.order-badge{align-items:center;background:indigo;border-radius:50%;color:#fff;display:inline-flex;font-size:.8rem;height:20px;justify-content:center;margin-left:4px;width:20px}.dropdown-content{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;min-width:180px;padding:10px 0;position:absolute;right:0;top:100%;z-index:1000}.dropdown-content a,.dropdown-content button{background:none;border:none;color:indigo;cursor:pointer;display:block;font-size:.95rem;padding:10px 15px;text-align:left;transition:background-color .2s;width:100%}.dropdown-content a:hover,.dropdown-content button:hover{background-color:#f8f5ff;color:#8a2be2}@media screen and (max-width:767px){.topbar{height:56px;padding:0 15px}.topbar-toggle{display:block;margin-top:-2%;order:3}.topbar-collapse{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:none;flex-direction:column;left:0;padding:1em;position:absolute;right:0;top:100%;z-index:1000}.topbar-collapse.show{display:flex}.navigation{flex-direction:column;gap:0;width:100%}.navigation li{padding:.5rem 0;width:100%}.navigation .link{gap:12px;padding:.75rem 1rem}.right{margin-left:auto;margin-right:10px;order:2}.logo{font-size:1.3rem;order:1}.user-welcome{font-size:.9rem;padding-left:1rem}.dropdown-content{left:50%;max-width:90vw;min-width:250px;position:fixed;top:50%;transform:translate(-50%,-50%)}}@media screen and (min-width:768px) and (max-width:1023px){.topbar{padding:0 15px}.navigation{gap:20px}.right{margin-left:auto}.topbar-collapse{flex-grow:0;margin:0 20px}}body{box-sizing:border-box;font-family:Arial,Helvetica,sans-serif!important;height:100%;margin:0;padding:0}.brand-skeleton{background:#f5f5f5;border-radius:8px;padding:15px;width:18vw}.skeleton-header{height:24px;margin-bottom:20px;width:80px}.skeleton-checkbox,.skeleton-header{animation:skeleton-loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:4px}.skeleton-checkbox{height:20px;margin-bottom:12px;width:100%}.product-grid-skeleton{grid-gap:20px;display:grid;flex:1 1;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));padding:20px}.skeleton-product{animation:skeleton-loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:8px;height:350px}.search-results-skeleton{padding:20px;text-align:center}.search-results-skeleton h2{color:indigo;margin-bottom:30px}.skeleton-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));padding:20px}.skeleton-card{animation:skeleton-loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:8px;height:350px}.shop-skeleton{margin-top:40px}.skeleton-section{margin-bottom:40px;padding:20px}.skeleton-section .skeleton-header{animation:skeleton-loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:4px;height:32px;margin-bottom:20px;width:200px}.skeleton-carousel{display:flex;gap:20px;overflow:hidden}.skeleton-carousel .skeleton-product{animation:skeleton-loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:8px;flex-basis:calc(25% - 15px);flex-grow:0;flex-shrink:0;height:300px}.contact-skeleton,.footer-skeleton{background:#f9f9f9;border-radius:8px;color:#666;margin:20px 0;padding:40px;text-align:center}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}@keyframes skeleton-loading{0%{background-position:-200% 0}to{background-position:200% 0}}@media screen and (max-width:767px){.brand-skeleton{margin-left:5%;width:90vw}.product-grid-skeleton{gap:15px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.skeleton-product{height:250px}.skeleton-grid{gap:15px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.skeleton-card{height:250px}.skeleton-carousel .skeleton-product{flex-basis:calc(50% - 10px);flex-grow:0;flex-shrink:0;height:200px}.skeleton-section .skeleton-header{width:150px}}@media screen and (min-width:768px) and (max-width:1023px){.brand-skeleton{width:100%}.skeleton-carousel .skeleton-product{flex-basis:calc(33.333% - 14px);flex-grow:0;flex-shrink:0}}