.app-container{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;padding:20px}nav ul{justify-content:space-around;margin:0;padding:0;list-style:none;display:flex}nav li{margin:0 10px}footer{text-align:center;background-color:#f0f0f0;padding:10px}.footer-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;display:flex}.navbar{background:linear-gradient(135deg,#7719aa,#8b5cf6);padding:.8rem 1rem;position:relative;box-shadow:0 2px 4px #0000001a}.navbar-content{width:100%;max-width:1200px;margin:0 auto}.top-section{justify-content:space-between;align-items:center;display:flex}.search-section{justify-content:center;margin-top:1rem;display:flex}.navbar-brand{color:#fff;filter:invert();align-items:center;gap:.5rem;font-family:Poppins,sans-serif;font-size:1.2rem;font-weight:600;text-decoration:none;transition:filter .3s,transform .3s;display:flex}.navbar-brand:hover{filter:invert(.8);transform:scale(1.05)}.nav-item{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:5px;align-items:center;gap:.3rem;padding:.6rem 1rem;font-family:Poppins,sans-serif;font-size:.95rem;text-decoration:none;transition:all .3s;display:inline-flex;position:relative}.nav-item:hover{background:#fff3}.nav-link{color:#fff;font-family:Poppins,sans-serif;text-decoration:none}.search-input-container{align-items:center;width:40%;max-width:400px;transition:transform .2s ease-in-out;display:flex;position:relative}.search-input-container:hover{transform:scale(1.01)}.search-input-field{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#333;background:#ffffffe6;border:1px solid #fff3;border-radius:28px;outline:none;width:100%;padding:.8rem 3.5rem .8rem .8rem;font-size:1rem;transition:background .3s}.search-input-container:hover .search-input-field{background:#fff}.search-button{cursor:pointer;color:#6366f1;background:0 0;border:none;padding:.5rem;font-size:1.5em;line-height:1;transition:transform .2s ease-in-out;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.search-button:hover{transform:translateY(-50%)scale(1.1)}.navbar-right{align-items:center;gap:.75rem;display:flex}.basket-indicator{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;color:#6366f1;background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;transition:transform .3s;display:flex;position:relative}.basket-indicator:hover{transform:scale(1.1)}.basket-badge{color:#fff;background:red;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.75rem;font-weight:700;line-height:1;display:flex;position:absolute;top:-8px;right:-8px}.login-button{color:#6366f1;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5em;text-decoration:none;transition:transform .3s;display:flex}.login-button:hover{transform:scale(1.1)}.account-menu-container{align-items:center;display:flex;position:relative}.account-menu-toggle{display:none}.account-link-large-screen{display:inline-flex}.logout-button-large-screen{cursor:pointer;color:#fff;background:0 0;border:none;font-family:Poppins,sans-serif;display:inline-flex}.logout-button-large-screen:hover{background:#fff3}.account-dropdown-menu{z-index:1050;opacity:0;visibility:hidden;background-color:#fff;border-radius:6px;min-width:200px;padding:.5rem 0;list-style:none;transition:opacity .2s,transform .2s,visibility 0s linear .2s;position:absolute;top:calc(100% + .5rem);right:0;transform:translateY(-10px);box-shadow:0 4px 12px #00000026}.account-menu-toggle[aria-expanded=true]~.account-dropdown-menu{opacity:1;visibility:visible;transition:opacity .2s,transform .2s,visibility linear;transform:translateY(0)}.account-dropdown-item{color:#333;white-space:nowrap;text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:.75rem 1.2rem;font-family:Poppins,sans-serif;font-size:.9rem;text-decoration:none;transition:background-color .2s,color .2s;display:block}.account-dropdown-item:hover{color:#000;background-color:#f0f0f0}.account-dropdown-item.logout{color:#dc3545}.account-dropdown-item.logout:hover{color:#721c24;background-color:#f8d7da}@media (width<=768px){.navbar{padding:.5rem}.top-section{width:100%;margin-bottom:.5rem}.navbar-brand{font-size:1rem}.navbar-brand img{flex-shrink:0;width:150px;height:auto}.search-section{order:2;width:100%;margin-top:.5rem}.search-input-container{width:95%;max-width:none}.navbar-right{order:1;margin-left:auto}.account-menu-toggle{display:inline-flex}.account-link-large-screen,.logout-button-large-screen{display:none}}@media (width>=769px){.top-section{margin-bottom:0}.search-section{flex:1;margin-top:0;padding:0 1rem}.search-input-container{width:100%}.account-menu-toggle{display:none}.account-link-large-screen,.logout-button-large-screen{display:inline-flex}}.navbar-categories{text-align:center;margin-bottom:1rem}.menu-toggle{color:#fff;cursor:pointer;background-color:#8b5cf6;border:none;border-radius:10px;padding:.5rem 1rem;font-size:1.5rem;transition:background-color .3s;display:none}@media (width<=768px){.menu-toggle{margin-top:1rem;display:inline-block}}.top-level-categories{flex-wrap:wrap;justify-content:center;gap:1rem;margin:1rem 0;display:flex}@media (width<=768px){.top-level-categories{max-height:0;transition:max-height .3s ease-out;overflow:hidden}.top-level-categories.open{max-height:60rem;transition:max-height .3s ease-in;overflow-y:auto}}.category-button{color:#fff;text-align:center;background-color:#0000;border-radius:10px;flex-direction:column;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:1rem;text-decoration:none;transition:background-color .3s;display:flex}.category-button:hover,.category-button.selected{background-color:#8b5cf6;transform:scale(1.1)}.category-content{flex-direction:column;align-items:center;display:flex}.category-image{background-color:#fff;border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:2rem;display:flex}.category-image img{object-fit:cover;border-radius:50%;width:100%;height:100%}.category-name{margin-top:.5rem;font-size:1rem}.newsletter-signup{text-align:left;gap:.65rem;width:min(100%,420px);margin:.75rem auto 1rem;display:grid}.newsletter-email,.newsletter-consent{color:#334155;gap:.35rem;font-weight:700;display:grid}.newsletter-email input{box-sizing:border-box;width:100%;min-height:42px;font:inherit;border:1px solid #cbd5e1;border-radius:6px;padding:.65rem .75rem}.newsletter-consent{color:#475569;grid-template-columns:22px 1fr;align-items:start;font-size:.92rem;font-weight:500;line-height:1.45}.newsletter-consent input{accent-color:#0f766e;width:18px;height:18px;margin-top:.12rem}.newsletter-signup button{color:#fff;cursor:pointer;background:#0f766e;border:0;border-radius:6px;justify-self:start;min-height:40px;padding:.6rem 1rem;font-weight:800}.newsletter-signup button:disabled{cursor:not-allowed;opacity:.65}.newsletter-status,.newsletter-error{margin:0;font-size:.92rem}.newsletter-status{color:#0f766e}.newsletter-error{color:#b42318}.notification-banner{color:#4338ca;text-align:center;background-color:#eef2ff;border-bottom:1px solid #c7d2fe;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.5rem;padding:1rem;font-size:.9rem;display:flex}.notification-banner p{margin:0}.notification-banner .error-text{color:#be123c;text-align:center;width:100%;font-size:.8rem}.notification-banner-denied{color:#be123c;background-color:#fff1f2;border-bottom:1px solid #fecdd3}.banner-buttons{gap:1rem;display:flex}.banner-buttons .btn-primary{color:#fff;cursor:pointer;background-color:#4f46e5;border:none;border-radius:6px;padding:.5rem 1rem;font-weight:500}.banner-buttons .btn-secondary{color:#4f46e5;cursor:pointer;background-color:#0000;border:1px solid #a5b4fc;border-radius:6px;padding:.5rem 1rem}.notification-banner-success{color:#166534;background-color:#f0fdf4;border-bottom:1px solid #bbf7d0}.account-header-nav{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;padding:.5rem;display:flex}.account-header-nav a{color:#333;white-space:nowrap;border-radius:6px;padding:.75rem 1.25rem;font-weight:500;text-decoration:none;transition:background-color .2s,color .2s}.account-header-nav a:hover{color:#000;background-color:#e9ecef}.account-header-nav a.active{color:#fff;background:linear-gradient(135deg,#7719aa,#8b5cf6);font-weight:600;box-shadow:0 1px 3px #8b5cf64d}.account-header-nav a.active:hover{background:linear-gradient(135deg,#6a169a,#7a4ce0)}.account-header-nav .logout-link{color:#dc3545}.account-header-nav .logout-link:hover{color:#721c24;background-color:#f8d7da}.account-layout-container{max-width:1200px;margin:1rem auto;padding:1rem}.account-header{background-color:#fff;border-radius:8px;margin-bottom:2rem;box-shadow:0 2px 5px #00000014}.account-content-area{background-color:#fff;border-radius:8px;padding:1.5rem 2rem;box-shadow:0 2px 5px #00000014}@media (width<=768px){.account-layout-container{padding:.5rem}.account-content-area{padding:1rem}}.categories-page-container{max-width:1200px;margin:0 auto;padding:1rem}.loading-state,.error-state,.error-message,.no-categories-message{text-align:center;color:#555;padding:2rem;font-size:1.2rem}.error-state.fatal-error,.error-message.global-error{color:#d9534f;background-color:#f2dede;border:1px solid #ebccd1;border-radius:4px;margin-bottom:1rem}.error-message.product-error{color:#c09853;background-color:#fcf8e3;border:1px solid #fbeed5;border-radius:4px;margin-top:1rem}.categories-page-main-title{text-align:center;color:#333;margin-bottom:2rem;font-size:2.2rem}.category-box{text-align:center;color:#fff;background:linear-gradient(135deg,#c5a2d8,#aa8bc4);border:1px solid #b39cc4;border-radius:10px;margin-bottom:2rem;padding:1.5rem;box-shadow:0 3px 6px #0000001f}.category-box h2{justify-content:center;align-items:center;gap:.75rem;margin-top:0;margin-bottom:1.5rem;font-size:1.8rem;display:flex}.category-icon-placeholder,.category-icon-image{font-size:1.8em}.category-icon-image{width:auto;max-height:1.8em}.subcategory-list{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1rem;padding:0;list-style:none;display:flex}.subcategory-item{flex:0 calc(20% - 1rem);min-width:130px;max-width:calc(20% - 1rem)}.subcategory-box{color:#fff;text-align:center;box-sizing:border-box;background-color:#ffffff26;border:1px solid #fff3;border-radius:8px;flex-direction:column;align-items:center;gap:.5rem;height:100%;padding:1rem;font-size:.95rem;text-decoration:none;transition:background-color .3s,transform .2s;display:flex}.subcategory-box:hover{background-color:#8b5cf6;border-color:#8b5cf6;transform:translateY(-4px)}.subcategory-image{color:#8b5cf6;background-color:#fff;border-radius:50%;justify-content:center;align-items:center;width:4rem;height:4rem;font-size:2.2rem;display:flex;box-shadow:0 2px 4px #0000001a}.subcategory-image.actual-image{object-fit:cover;padding:0}.subcategory-name{margin-top:.5rem;font-size:1rem;font-weight:500;line-height:1.3}.top-level-categories-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.top-level-categories-grid .category-box{margin-bottom:0}.products-section{margin-top:2rem}.products-section h2{text-align:center;color:#333;margin-bottom:1.5rem;font-size:1.8rem}.products-section .loading-state,.products-section .product-error,.products-section .no-products-message{text-align:center;color:#555;padding:2rem;font-size:1.1rem}@media (width<=992px){.subcategory-item{flex:0 calc(25% - 1rem);max-width:calc(25% - 1rem)}}@media (width<=768px){.subcategory-item{flex:0 calc(33.333% - 1rem);max-width:calc(33.333% - 1rem)}.top-level-categories-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.category-box h2{font-size:1.6rem}}@media (width<=550px){.subcategory-item{flex:0 calc(50% - .8rem);gap:.8rem;max-width:calc(50% - .8rem)}.category-box h2{font-size:1.4rem}.subcategory-name,.subcategory-box{font-size:.9rem}.subcategory-image{width:3.5rem;height:3.5rem;font-size:2rem}.top-level-categories-grid{grid-template-columns:1fr}}.product-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.product-card-item{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;flex-direction:column;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;display:flex;overflow:hidden;box-shadow:0 2px 5px #00000014}.product-card-item:hover{transform:translateY(-5px);box-shadow:0 4px 10px #0000001f}.product-card-link{color:inherit;flex-direction:column;height:100%;text-decoration:none;display:flex}.product-card-image-container{aspect-ratio:4/3;background-color:#f8f8f8;justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.product-card-image{object-fit:cover;width:100%;height:100%;transition:transform .3s}.product-card-link:hover .product-card-image{transform:scale(1.05)}.product-card-image-placeholder{color:#ccc;background-color:#f0f0f0;justify-content:center;align-items:center;width:100%;height:100%;font-size:2.5rem;display:flex}.product-card-image-placeholder span{padding-bottom:5px}.product-card-info{text-align:left;flex-direction:column;flex-grow:1;justify-content:space-between;padding:1rem;display:flex}.product-card-name{color:#333;-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;min-height:2.6em;margin:0 0 .5rem;font-size:1.1rem;font-weight:600;line-height:1.3em;display:-webkit-box;overflow:hidden}.product-card-price{color:#8b5cf6;margin:.5rem 0 .35rem;font-size:1.2rem;font-weight:700}.product-card-stock{margin:0;font-size:.9rem;font-weight:600}.product-card-stock.in-stock{color:#24724b}.product-card-stock.low-stock{color:#a55b00}.product-card-stock.out-of-stock{color:#b3261e}@media (width<=550px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}.product-card-name{min-height:2.4em;font-size:1rem;line-height:1.2em}.product-card-price{font-size:1.1rem}}@media (width<=400px){.product-grid{grid-template-columns:1fr}}.legal-page{color:#2f2f36;max-width:920px;margin:1rem auto 2rem;padding:1rem}.legal-page-header{border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem;padding-bottom:1rem}.legal-page-kicker{color:#6d28d9;letter-spacing:0;text-transform:uppercase;margin:0 0 .4rem;font-size:.9rem;font-weight:700}.legal-page-header h1{color:#23232a;margin:0 0 .75rem;font-size:2.15rem;line-height:1.2}.legal-page-header p,.legal-page-intro p,.legal-page-section p,.legal-page-section li,.business-detail dd{color:#4b5563;font-size:1rem;line-height:1.65}.legal-page-intro{background-color:#f7f5ff;border:1px solid #ddd6fe;border-radius:8px;margin-bottom:1.75rem;padding:1rem 1.25rem}.legal-page-intro p{margin:0 0 .8rem}.legal-page-intro p:last-child{margin-bottom:0}.legal-page-section{border-bottom:1px solid #edf0f3;padding:1.25rem 0}.legal-page-section:last-of-type{border-bottom:none}.legal-page-section h2{color:#2d2a34;margin:0 0 .75rem;font-size:1.35rem}.legal-page-section p{margin:0 0 .8rem}.legal-page-section ul{margin:.5rem 0 0;padding-left:1.25rem}.legal-page-section li{margin-bottom:.65rem}.business-detail-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem;margin:0;display:grid}.business-detail{border:1px solid #e5e7eb;border-radius:8px;padding:.85rem 1rem}.business-detail dt{color:#23232a;margin-bottom:.35rem;font-weight:700}.business-detail dd{overflow-wrap:anywhere;margin:0}.legal-page-related{border-top:1px solid #e5e7eb;flex-wrap:wrap;gap:.75rem 1rem;margin-top:1.5rem;padding-top:1rem;display:flex}.legal-page-related a{color:#5b21b6;font-weight:700}.legal-cta-panel{color:#29415f;background-color:#eef6ff;border:1px solid #d9e7ff;border-radius:8px;margin-bottom:1.5rem;padding:1rem 1.25rem}.legal-cta-panel p{margin:0 0 .75rem}.legal-cta-panel a{color:#1d4ed8;font-weight:700}@media (width<=640px){.legal-page{padding:.25rem}.legal-page-header h1{font-size:1.8rem}}.privacy-policy-page{color:#2f2f36;max-width:900px;margin:1rem auto 2rem;padding:1rem}.privacy-policy-header{border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem;padding-bottom:1rem}.privacy-policy-kicker{color:#6d28d9;letter-spacing:0;text-transform:uppercase;margin:0 0 .4rem;font-size:.9rem;font-weight:700}.privacy-policy-header h1{color:#23232a;margin:0 0 .75rem;font-size:2.2rem;line-height:1.2}.privacy-policy-header p,.privacy-policy-intro p,.privacy-policy-section p,.privacy-policy-section li{color:#4b5563;font-size:1rem;line-height:1.65}.privacy-policy-intro{background-color:#f7f5ff;border:1px solid #ddd6fe;border-radius:8px;margin-bottom:1.75rem;padding:1rem 1.25rem}.privacy-policy-intro p{margin:0}.privacy-policy-section{border-bottom:1px solid #edf0f3;padding:1.25rem 0}.privacy-policy-section:last-child{border-bottom:none}.privacy-policy-section h2{color:#2d2a34;margin:0 0 .75rem;font-size:1.35rem}.privacy-policy-section p{margin:0 0 .8rem}.privacy-policy-section ul{margin:.5rem 0 0;padding-left:1.25rem}.privacy-policy-section li{margin-bottom:.65rem}@media (width<=640px){.privacy-policy-page{padding:.25rem}.privacy-policy-header h1{font-size:1.8rem}}.request-page{color:#2f2f36;max-width:920px;margin:1rem auto 2rem;padding:1rem}.request-page-header{border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem;padding-bottom:1rem}.request-page-kicker{color:#6d28d9;letter-spacing:0;text-transform:uppercase;margin:0 0 .4rem;font-size:.9rem;font-weight:700}.request-page-header h1{color:#23232a;margin:0 0 .75rem;font-size:2.15rem;line-height:1.2}.request-page-header p,.request-page-intro p,.prepared-request p{color:#4b5563;font-size:1rem;line-height:1.65}.request-page-intro{background-color:#f7f5ff;border:1px solid #ddd6fe;border-radius:8px;margin-bottom:1.75rem;padding:1rem 1.25rem}.request-page-intro p{margin:0 0 .8rem}.request-page-intro p:last-child{margin-bottom:0}.request-form{gap:1rem;display:grid}.request-form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.request-form label{color:#2d2a34;gap:.4rem;font-weight:700;display:grid}.request-form input,.request-form select,.request-form textarea,.prepared-request textarea{box-sizing:border-box;color:#23232a;font:inherit;border:1px solid #cfd4dc;border-radius:6px;width:100%;padding:.7rem .8rem}.request-form textarea,.prepared-request textarea{resize:vertical}.request-form button{color:#fff;cursor:pointer;font:inherit;background-color:#5b21b6;border:none;border-radius:6px;justify-self:start;padding:.8rem 1.1rem;font-weight:700}.request-form button:hover{background-color:#4c1d95}.prepared-request{border-top:1px solid #e5e7eb;margin-top:2rem;padding-top:1.25rem}.prepared-request h2{color:#2d2a34;margin:0 0 .75rem;font-size:1.35rem}.request-page-links{border-top:1px solid #e5e7eb;flex-wrap:wrap;gap:.75rem 1rem;margin-top:1.5rem;padding-top:1rem;display:flex}.request-page-links a{color:#5b21b6;font-weight:700}@media (width<=640px){.request-page{padding:.25rem}.request-page-header h1{font-size:1.8rem}.request-form button{width:100%}}.other-products-section{border-top:1px solid #eee;margin-top:3rem;padding-top:1.5rem}.other-products-section h2{color:#333;text-align:left;margin-bottom:1rem;font-size:1.5rem}.other-products-scroller{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#ccc #f0f0f0;gap:1rem;padding-bottom:1rem;display:flex;overflow:auto hidden}.other-products-scroller::-webkit-scrollbar{height:8px}.other-products-scroller::-webkit-scrollbar-track{background:#f0f0f0;border-radius:4px}.other-products-scroller::-webkit-scrollbar-thumb{background-color:#ccc;border:2px solid #f0f0f0;border-radius:4px}.other-products-scroller::-webkit-scrollbar-thumb:hover{background-color:#bbb}.other-product-item{width:160px;color:inherit;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;flex-direction:column;flex:none;text-decoration:none;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;display:flex;overflow:hidden}.other-product-item:hover{transform:translateY(-3px);box-shadow:0 4px 12px #0000001a}.other-product-image-container{background-color:#f8f8f8;justify-content:center;align-items:center;width:100%;height:140px;display:flex;overflow:hidden}.other-product-image{object-fit:contain;width:100%;height:100%}.other-product-image-placeholder{color:#888;font-size:.9rem}.other-product-name{text-align:center;white-space:nowrap;text-overflow:ellipsis;margin-top:auto;margin-bottom:0;padding:.5rem .75rem;font-size:.9rem;font-weight:500;overflow:hidden}.other-product-price{color:#8b5cf6;text-align:center;margin:0;padding:0 .75rem .5rem;font-size:.9rem;font-weight:700}.scroller-status{text-align:center;color:#777;padding:1rem}.scroller-error{color:#e74c3c}.recently-viewed-section{border-top:1px solid #e7e1ec;margin-top:2.5rem;padding-top:1.5rem}.recently-viewed-section h2{color:#333;margin:0 0 1rem;font-size:1.4rem}.recently-viewed-list{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;display:grid}.recently-viewed-card{min-width:0;color:inherit;background:#fff;border:1px solid #e2d9eb;border-radius:8px;flex-direction:column;gap:.45rem;padding:.75rem;text-decoration:none;display:flex}.recently-viewed-card:hover{border-color:#8b5cf6;box-shadow:0 4px 12px #5940781f}.recently-viewed-image-wrap{aspect-ratio:1;color:#8b5cf6;background:#f6f2f8;border-radius:6px;justify-content:center;align-items:center;width:100%;font-size:1.8rem;font-weight:700;display:flex;overflow:hidden}.recently-viewed-image-wrap img{object-fit:cover;width:100%;height:100%}.recently-viewed-name{color:#333;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.5em;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.recently-viewed-price{color:#5b2fb2;font-weight:700}.product-detail-page{color:#333;max-width:1200px;margin:2rem auto;padding:1rem;font-family:sans-serif}.product-breadcrumb{color:#555;margin-bottom:1.5rem;font-size:.9rem}.product-breadcrumb span:hover{color:#8b5cf6}.product-main-layout{flex-direction:column;gap:2rem;display:flex}.product-gallery{flex-direction:column;flex:50%;gap:1rem;display:flex}.main-image-container{aspect-ratio:1;background-color:#f0f0f0;border:1px solid #eee;border-radius:8px;justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.main-product-image{object-fit:contain;width:100%;height:100%}.image-placeholder{color:#888;font-size:1.2rem}.thumbnail-gallery{flex-wrap:wrap;justify-content:flex-start;gap:.5rem;display:flex}.thumbnail-image{object-fit:cover;cursor:pointer;border:2px solid #0000;border-radius:4px;width:80px;height:80px;transition:border-color .2s}.thumbnail-image:hover{border-color:#c5a2d8}.thumbnail-image.selected{border-color:#8b5cf6;box-shadow:0 0 5px #8b5cf6}.product-info-actions{flex-direction:column;flex:50%;gap:1rem;display:flex}.product-title{color:#333;margin-bottom:.5rem;font-size:2rem;font-weight:700}.product-price{color:#8b5cf6;margin-bottom:1rem;font-size:1.8rem;font-weight:700}.product-stock{margin:-.4rem 0 .25rem;font-size:1rem;font-weight:700}.product-stock.in-stock{color:#24724b}.product-stock.low-stock{color:#a55b00}.product-stock.out-of-stock{color:#b3261e}.in-baskets-count{color:#e67e22;background-color:#fdf2e2;border-radius:4px;padding:.3rem .6rem;font-size:.9rem;font-weight:700;display:inline-block}.product-quantity-selector{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.product-quantity-selector button{color:#333;cursor:pointer;background-color:#f0f0f0;border:1px solid #ccc;border-radius:4px;width:30px;height:30px;font-size:1.2rem;transition:background-color .2s}.product-quantity-selector button:hover:not(:disabled){background-color:#e0e0e0}.product-quantity-selector button:disabled{opacity:.5;cursor:not-allowed}.product-quantity-selector span{text-align:center;min-width:30px;padding:0 .5rem;font-size:1.2rem}.product-actions{flex-direction:column;gap:.75rem;display:flex}.product-actions button{cursor:pointer;text-align:center;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:700;transition:background-color .3s,transform .1s}.product-actions button:active{transform:scale(.98)}.add-to-basket-button{color:#fff;background-color:#c5a2d8}.add-to-basket-button:hover{background-color:#b38cc4}.buy-it-now-button{color:#fff;background-color:#8b5cf6}.buy-it-now-button:hover{background-color:#7c4fe2}.share-product-button{color:#fff;background-color:#244d61}.share-product-button:hover{background-color:#1b3b4b}.product-description-container{background:linear-gradient(135deg,#f9f2fc,#f0e8f5);border:1px solid #e0d1e8;border-radius:8px;margin-top:1.5rem;padding:1rem;box-shadow:0 1px 3px #0000000d}.product-description-container h2{color:#543864;margin-top:0;margin-bottom:.75rem;font-size:1.2rem}.product-description{color:#444;font-size:1rem;line-height:1.6}.product-listing-metadata{flex-direction:column;gap:1rem;display:flex}.product-metadata-section{background:#fff;border:1px solid #d9e2e7;border-radius:8px;padding:1rem}.product-metadata-section h2{color:#244d61;margin:0 0 .75rem;font-size:1.15rem}.product-metadata-list{gap:.65rem;margin:0;display:grid}.product-metadata-row{gap:.2rem;display:grid}.product-metadata-row dt{color:#555;font-size:.88rem;font-weight:700}.product-metadata-row dd{color:#333;margin:0;line-height:1.45}.product-metadata-row.metadata-warning dd{color:#8a3f00;font-weight:600}.product-detail-loading,.product-detail-error,.product-detail-not-found{text-align:center;color:#555;padding:3rem 1rem;font-size:1.2rem}.product-detail-error{color:red}@media (width>=768px){.product-main-layout{flex-direction:row}.product-gallery{align-self:flex-start;max-height:calc(100vh - 2rem);position:sticky;top:1rem}.product-actions{flex-direction:row}.product-actions button{flex:1}.product-metadata-row{grid-template-columns:170px 1fr;gap:1rem}}.products-page-container{max-width:1200px;margin:1rem auto;padding:1rem}.products-page-header{flex-direction:column;align-items:center;gap:.4rem;margin-bottom:1.5rem;display:flex}.products-page-title{text-align:center;color:#333;margin:0;font-size:2rem}.products-page-summary{color:#655d6d;margin:0;font-size:1rem}.product-filter-shell{margin-bottom:1.5rem}.filter-toggle-button{display:none}.product-filter-panel{background:#fbf9fc;border:1px solid #e5dde9;border-radius:8px;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(130px,1fr)) auto;align-items:end;gap:.9rem;padding:1rem;display:grid}.product-filter-panel label{color:#403746;flex-direction:column;gap:.35rem;min-width:0;font-size:.9rem;font-weight:600;display:flex}.product-filter-panel input,.product-filter-panel select{box-sizing:border-box;color:#2f2933;width:100%;min-height:2.65rem;font:inherit;background:#fff;border:1px solid #cfc3d9;border-radius:6px;padding:.55rem .7rem}.product-filter-panel input:focus,.product-filter-panel select:focus{border-color:#8b5cf6;outline:2px solid #8b5cf659}.filter-actions{gap:.5rem;display:flex}.filter-actions button{color:#fff;cursor:pointer;background:#8b5cf6;border:1px solid #8b5cf6;border-radius:6px;min-height:2.65rem;padding:0 .9rem;font-weight:700}.filter-actions button[type=button]{color:#5c3aa8;background:#fff}.filter-actions button:disabled{opacity:.55;cursor:not-allowed}.products-page-loading,.products-page-error,.no-products-message{text-align:center;color:#555;padding:3rem 1rem;font-size:1.2rem}.products-page-loading{justify-content:center;align-items:center;gap:.75rem;display:flex}.loading-dot{background:#8b5cf6;border-radius:50%;width:.75rem;height:.75rem;animation:1s ease-in-out infinite loadingPulse}.products-page-error{color:red}.no-products-message{color:#5f5665;max-width:520px;margin:0 auto}.no-products-message h2{color:#333;margin:0 0 .5rem;font-size:1.4rem}.no-products-message p{margin:0}.pagination-controls{background:#fff;border:1px solid #dfd3e8;border-radius:8px;justify-content:center;align-items:center;gap:.75rem;width:fit-content;max-width:100%;margin:1.25rem auto;padding:.75rem;display:flex;box-shadow:0 8px 24px #31273914}.pagination-controls-top{margin-top:0;margin-bottom:1.25rem}.pagination-controls-bottom{margin-top:2rem;margin-bottom:0}.pagination-controls button{color:#fff;cursor:pointer;background-color:#8b5cf6;border:1px solid #8b5cf6;border-radius:6px;min-width:6.5rem;min-height:2.75rem;padding:0 1rem;font-weight:700;transition:background-color .2s,transform .2s}.pagination-controls button:hover:not(:disabled){background-color:#7448d8;transform:translateY(-1px)}.pagination-controls button:disabled{opacity:.5;cursor:not-allowed;transform:none}.pagination-controls span{color:#2f2933;flex-direction:column;align-items:center;gap:.1rem;min-width:8rem;font-size:1rem;display:flex}.pagination-controls small{color:#655d6d;font-size:.82rem}@keyframes loadingPulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}@media (width<=1050px){.product-filter-panel{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=700px){.products-page-container{margin:.5rem auto;padding:.75rem}.products-page-header{align-items:flex-start;margin-bottom:.75rem}.products-page-title{text-align:left;font-size:1.55rem}.products-page-summary{font-size:.95rem}.product-filter-shell{margin-bottom:1rem}.filter-toggle-button{color:#2f2933;width:100%;min-height:2.5rem;font:inherit;background:#fff;border:1px solid #cfc3d9;border-radius:6px;justify-content:space-between;align-items:center;padding:0 .8rem;font-weight:700;display:flex}.filter-toggle-button span:last-child{color:#fff;background:#8b5cf6;border-radius:999px;justify-content:center;align-items:center;min-width:1.35rem;min-height:1.35rem;font-size:.8rem;display:inline-flex}.product-filter-panel{grid-template-columns:1fr;gap:.65rem;margin-top:.6rem;padding:.75rem;display:none}.product-filter-shell.filters-open .product-filter-panel{display:grid}.product-filter-panel input,.product-filter-panel select{min-height:2.45rem;padding:.45rem .65rem}.filter-actions{justify-content:stretch}.filter-actions button{flex:1}.pagination-controls{box-sizing:border-box;justify-content:space-between;gap:.5rem;width:100%;padding:.6rem}.pagination-controls button{flex:1;min-width:0;padding:0 .65rem}.pagination-controls span{min-width:5.8rem;font-size:.92rem}.pagination-controls small{font-size:.74rem}}.basket-page-container{max-width:900px;margin:2rem auto;padding:1rem}.basket-page-container h1{text-align:center;color:#333;margin-bottom:2rem}.basket-page-loading,.basket-page-error,.empty-basket-message{text-align:center;color:#555;padding:3rem 1rem;font-size:1.2rem}.basket-page-error{color:#d9534f;background-color:#f2dede;border:1px solid #ebccd1;border-radius:4px;padding:1rem}.continue-shopping-link{color:#fff;background-color:#8b5cf6;border-radius:5px;margin-top:1rem;padding:.75rem 1.5rem;text-decoration:none;transition:background-color .3s;display:inline-block}.continue-shopping-link:hover{background-color:#7c4fe2}.basket-items-list{margin:0 0 2rem;padding:0;list-style:none}.basket-item-card{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem;display:flex;box-shadow:0 1px 3px #0000000d}.basket-item-image-link{flex-shrink:0}.basket-item-image{object-fit:cover;border:1px solid #eee;border-radius:4px;width:80px;height:80px}.basket-item-details{flex-grow:1}.basket-item-details a{color:inherit;text-decoration:none}.basket-item-name{color:#333;margin:0 0 .3rem;font-size:1.1rem;font-weight:600}.basket-item-name:hover{color:#8b5cf6}.basket-item-sku,.basket-item-unit-price{color:#666;margin:.2rem 0;font-size:.9rem}.basket-item-quantity-controls{align-items:center;gap:.5rem;display:flex}.basket-item-quantity-controls button{color:#333;cursor:pointer;background-color:#f0f0f0;border:1px solid #ccc;border-radius:4px;justify-content:center;align-items:center;width:25px;height:25px;font-size:1rem;transition:background-color .2s;display:flex}.basket-item-quantity-controls button:hover:not(:disabled){background-color:#e0e0e0}.basket-item-quantity-controls button:disabled{opacity:.5;cursor:not-allowed}.basket-item-quantity-controls span{text-align:center;min-width:20px;padding:0 .3rem;font-size:1rem}.basket-item-total-price{text-align:right;min-width:80px;font-size:1rem;font-weight:700}.basket-item-remove-button{color:#721c24;cursor:pointer;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;padding:.4rem .8rem;font-size:.9rem;transition:background-color .2s}.basket-item-remove-button:hover{background-color:#f1b0b7}.basket-item-remove-button:disabled{opacity:.6;cursor:not-allowed}.basket-summary{text-align:right;background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;flex-direction:column;align-items:flex-end;gap:1rem;margin-top:2rem;padding:1.5rem;display:flex}.clear-basket-button{color:#fff;cursor:pointer;background-color:#e74c3c;border:none;border-radius:5px;align-self:flex-start;padding:.6rem 1.2rem;font-size:.9rem}.clear-basket-button:hover{background-color:#c0392b}.clear-basket-button:disabled{cursor:not-allowed;background-color:#ccc}.basket-subtotal h3{color:#333;margin:0;font-size:1.5rem}.checkout-button{color:#fff;text-align:center;box-sizing:border-box;background-color:#2ecc71;border-radius:5px;padding:.8rem 2rem;font-size:1.1rem;font-weight:700;text-decoration:none;transition:background-color .3s;display:inline-block}.checkout-button:hover{background-color:#27ae60}@media (width<=768px){.basket-item-card{text-align:center;flex-direction:column;align-items:stretch}.basket-item-image{width:120px;height:120px;margin:0 auto .5rem}.basket-item-quantity-controls{justify-content:center;margin:.5rem 0}.basket-item-total-price{text-align:center;margin:.5rem 0}.basket-item-remove-button{width:100%;margin-top:.5rem}.basket-summary{align-items:center;padding:1rem}.clear-basket-button{box-sizing:border-box;align-self:center;width:100%;margin-bottom:1rem}.checkout-button{width:100%}}.checkout-page-container{max-width:960px;margin:2rem auto;padding:1rem}.checkout-page-container h1{text-align:center;margin-bottom:2rem}.checkout-page-loading,.checkout-page-error,.checkout-page-empty,.checkout-page-no-address{text-align:center;color:#555;padding:2rem;font-size:1.1rem}.checkout-page-error{color:#d9534f;background-color:#f2dede;border:1px solid #ebccd1;border-radius:4px}.checkout-error-message{color:#d9534f;text-align:center;margin-top:1rem}.checkout-layout{flex-direction:column-reverse;gap:2rem;display:flex}@media (width>=768px){.checkout-layout{flex-direction:row}}.checkout-order-summary{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;flex:1;height:fit-content;padding:1.5rem}.checkout-order-summary h2{border-bottom:1px solid #ddd;margin-top:0;margin-bottom:1rem;padding-bottom:.5rem}.summary-item{justify-content:space-between;margin-bottom:.5rem;font-size:.95rem;display:flex}.summary-item span:last-child{font-weight:500}.checkout-order-summary hr{border:0;border-top:1px solid #eee;margin:1rem 0}.summary-total,.summary-grand-total{justify-content:space-between;margin-top:.5rem;font-size:1.1rem;display:flex}.summary-grand-total{margin-top:.8rem;font-size:1.3rem}.summary-note{color:#555;justify-content:space-between;gap:1rem;margin-top:.5rem;font-size:.9rem;display:flex}.summary-note span:last-child{text-align:right}.checkout-quote-status{color:#555;margin:.75rem 0 0;font-size:.95rem}.checkout-quote-messages{color:#6f5300;background-color:#fff8df;border:1px solid #f0d98c;border-radius:6px;margin-top:1rem;padding:.75rem;font-size:.95rem}.checkout-quote-messages.error{color:#842029;background-color:#f8d7da;border-color:#f5c2c7}.checkout-quote-messages p{margin:0 0 .4rem}.checkout-quote-messages p:last-child{margin-bottom:0}.checkout-details{flex:2}.checkout-details h2{margin-top:0;margin-bottom:1rem}.address-select{background-color:#fff;border:1px solid #ccc;border-radius:4px;width:100%;margin-bottom:.5rem;padding:.75rem;font-size:1rem}.add-new-address-link{color:#8b5cf6;margin-bottom:1.5rem;font-size:.9rem;text-decoration:none;display:inline-block}.add-new-address-link:hover{text-decoration:underline}.checkout-form-grid{grid-template-columns:1fr;gap:1rem;margin-bottom:1.5rem;display:grid}@media (width>=640px){.checkout-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.checkout-field{color:#333;flex-direction:column;gap:.4rem;font-size:.95rem;font-weight:600;display:flex}.checkout-field-wide{grid-column:1/-1}.checkout-field input,.checkout-field select{font:inherit;border:1px solid #ccc;border-radius:4px;width:100%;padding:.75rem;font-weight:400}.checkout-consent-panel{border:1px solid #e5e7eb;border-radius:8px;gap:.85rem;margin-bottom:1.5rem;padding:1rem;display:grid}.checkout-consent-copy{color:#4b5563;margin:0;font-size:.92rem;line-height:1.45}.checkout-checkbox{color:#374151;align-items:flex-start;gap:.65rem;line-height:1.45;display:flex}.checkout-checkbox input{flex:none;margin-top:.2rem}.checkout-checkbox a{color:#5b21b6;font-weight:700}.customer-notes-textarea{resize:vertical;border:1px solid #ccc;border-radius:4px;width:100%;min-height:80px;margin-bottom:1.5rem;padding:.75rem;font-size:1rem}.checkout-customer-information{color:#4b5563;background-color:#f7f5ff;border:1px solid #ddd6fe;border-radius:8px;margin-top:2rem;padding:1rem 1.25rem}.checkout-customer-information h2{color:#2d2a34;margin:0 0 .75rem;font-size:1.2rem}.checkout-customer-information ul{margin:0;padding-left:1.25rem}.checkout-customer-information li{margin-bottom:.55rem;line-height:1.55}.checkout-customer-information li:last-child{margin-bottom:0}.checkout-customer-information a{color:#5b21b6;font-weight:700}.proceed-to-payment-button{color:#fff;cursor:pointer;background-color:#2ecc71;border:none;border-radius:8px;width:100%;max-width:300px;margin:2rem auto 0;padding:1rem 1.5rem;font-size:1.2rem;font-weight:700;transition:background-color .3s;display:block}.proceed-to-payment-button:hover:not(:disabled){background-color:#27ae60}.proceed-to-payment-button:disabled{cursor:not-allowed;background-color:#ccc}.payment-return-page{text-align:center;background-color:#fff;border-radius:8px;max-width:600px;margin:3rem auto;padding:2rem;box-shadow:0 2px 10px #0000001a}.payment-return-page h1{color:#333;margin-bottom:1.5rem}.status-loading,.status-error,.status-success{border-radius:4px;margin-bottom:1.5rem;padding:1rem;font-size:1.2rem}.status-loading{color:#555}.status-error{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb}.status-success{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb}.order-details-summary{text-align:left;background-color:#f9f9f9;border:1px solid #eee;border-radius:4px;margin-bottom:2rem;padding:1rem}.order-details-summary h2{margin-top:0;margin-bottom:.75rem;font-size:1.3rem}.order-details-summary p{margin:.3rem 0;font-size:1rem}.order-next-steps{text-align:left;background-color:#f7f5ff;border:1px solid #ddd6fe;border-radius:8px;margin-bottom:2rem;padding:1rem}.order-next-steps h2{margin-top:0;margin-bottom:.75rem;font-size:1.3rem}.order-next-steps ul{margin:0;padding-left:1.25rem}.order-next-steps li{color:#4b5563;margin-bottom:.55rem;line-height:1.55}.order-next-step-links{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.order-next-step-links a{color:#5b21b6;font-weight:700}.payment-return-actions{justify-content:center;gap:1rem;margin-top:1.5rem;display:flex}.action-button{cursor:pointer;font:inherit;border:0}.action-button:disabled{opacity:.65;cursor:not-allowed}@media (width<=560px){.payment-return-page{padding:1rem}.payment-return-actions{flex-direction:column}}.payment-cancel-page{text-align:center;background-color:#fff;border-radius:8px;max-width:600px;margin:3rem auto;padding:2rem;box-shadow:0 2px 10px #0000001a}.payment-cancel-page h1{color:#e74c3c;margin-bottom:1rem}.payment-cancel-page p{color:#555;margin-bottom:1.5rem;font-size:1.1rem;line-height:1.6}.cancel-status-loading,.cancel-status-success,.cancel-status-warning,.cancel-status-detail,.payment-cancel-summary,.payment-cancel-recovery{border-radius:6px;padding:1rem}.cancel-status-loading{background:#f8f9fa;border:1px solid #e9ecef}.cancel-status-success{color:#166534;background:#ecfdf3;border:1px solid #86efac}.cancel-status-warning,.cancel-status-detail{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa}.payment-cancel-summary,.payment-cancel-recovery{text-align:left;background:#f8f9fa;border:1px solid #e9ecef;margin:1rem 0}.payment-cancel-summary p,.payment-cancel-recovery p{margin:.35rem 0;font-size:1rem}.payment-cancel-recovery button{color:#fff;cursor:pointer;background-color:#5b21b6;border:0;border-radius:5px;padding:.75rem 1rem;font-weight:700}.payment-cancel-recovery button:disabled{opacity:.65;cursor:not-allowed}.payment-cancel-actions{justify-content:center;gap:1rem;margin-top:2rem;display:flex}.action-link{color:#333;background-color:#e9ecef;border:1px solid #ced4da;border-radius:5px;padding:.75rem 1.5rem;font-weight:500;text-decoration:none;transition:background-color .2s}.action-link:first-of-type{color:#fff;background-color:#8b5cf6;border-color:#8b5cf6}.action-link:first-of-type:hover{background-color:#7c4fe2}.action-link:hover{background-color:#dee2e6}@media (width<=560px){.payment-cancel-page{padding:1rem}.payment-cancel-actions{flex-direction:column}}.order-review-section{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.review-heading-row{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.review-heading-row h3{color:#495057;margin:0 0 .35rem;font-size:1.35rem}.review-heading-row p,.review-note,.review-unavailable{color:#6c757d;margin:0;line-height:1.5}.verified-review-badge{color:#166534;background:#ecfdf3;border-radius:999px;flex:none;padding:.35rem .55rem;font-size:.85rem;font-weight:700}.order-review-form{gap:1rem;display:grid}.rating-control{border:0;margin:0;padding:0}.rating-control legend,.review-field,.review-checkbox{color:#343a40;font-weight:600}.rating-control div{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.rating-control button{color:#343a40;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:50%;width:2.4rem;height:2.4rem;font-weight:700}.rating-control button.selected{color:#fff;background:#5b21b6;border-color:#5b21b6}.review-field{gap:.35rem;display:grid}.review-field input,.review-field textarea,.review-field select{width:100%;font:inherit;border:1px solid #ced4da;border-radius:4px;padding:.55rem .65rem}.review-rating-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.review-checkbox{align-items:flex-start;gap:.55rem;line-height:1.4;display:flex}.review-checkbox input{margin-top:.2rem}.review-message,.review-error{border-radius:6px;padding:.75rem}.review-message{color:#166534;background:#ecfdf3;border:1px solid #86efac}.review-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.order-review-form>button{color:#fff;cursor:pointer;background:#5b21b6;border:0;border-radius:4px;justify-self:start;padding:.65rem 1rem;font-weight:700}.order-review-form>button:disabled{opacity:.6;cursor:not-allowed}@media (width<=640px){.review-heading-row{display:grid}}.auth-form-container{flex-direction:column;justify-content:center;align-items:center;min-height:80vh;padding:20px;display:flex}.auth-form{background-color:#fff;border-radius:8px;width:100%;max-width:450px;padding:30px 40px;box-shadow:0 4px 12px #0000001a}.auth-form h2{text-align:center;color:#333;margin-bottom:25px;font-size:1.8rem;font-weight:600}.form-group{margin-bottom:20px}.form-group label{color:#555;margin-bottom:8px;font-size:.95rem;font-weight:500;display:block}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password]{box-sizing:border-box;border:1px solid #ccc;border-radius:5px;width:100%;padding:12px;font-size:1rem;transition:border-color .2s ease-in-out}.form-group input:focus{border-color:#8b5cf6;outline:none;box-shadow:0 0 0 .2rem #8b5cf640}.auth-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7719aa,#8b5cf6);border:none;border-radius:5px;width:100%;margin-top:10px;padding:12px;font-size:1.1em;font-weight:600;transition:background-color .3s,transform .1s}.auth-button:hover:not(:disabled){background:linear-gradient(135deg,#6a169a,#7c4fe2);transform:translateY(-1px)}.auth-button:active:not(:disabled){transform:translateY(0)}.auth-button:disabled{cursor:not-allowed;background-color:#ccc}.auth-checkbox-group{align-items:flex-start;gap:.65rem;margin:.25rem 0 .85rem;display:flex}.auth-checkbox-group input[type=checkbox]{accent-color:#7719aa;flex:none;width:1.1rem;height:1.1rem;margin-top:.15rem}.auth-checkbox-group label{color:#555;font-size:.9rem;line-height:1.45}.auth-checkbox-copy{color:#555;margin:0;font-size:.9rem;line-height:1.45}.auth-error-message{color:#d9534f;text-align:center;background-color:#f2dede;border:1px solid #ebccd1;border-radius:4px;margin-bottom:15px;padding:10px;font-size:.9rem}.auth-success-message{color:#3c763d;text-align:center;background-color:#dff0d8;border:1px solid #d6e9c6;border-radius:4px;margin-bottom:15px;padding:10px;font-size:.9rem}.auth-switch-link{text-align:center;color:#555;margin-top:15px;font-size:.9rem}.auth-legal-copy{color:#666;text-align:center;margin:14px 0 0;font-size:.85rem;line-height:1.45}.auth-switch-link a,.auth-checkbox-group a,.auth-legal-copy a{color:#8b5cf6;font-weight:500;text-decoration:none}.auth-switch-link a:hover,.auth-checkbox-group a:hover,.auth-legal-copy a:hover{text-decoration:underline}.auth-success-message{color:#155724;text-align:center;background-color:#d4edda;border:1px solid #c3e6cb;border-radius:4px;margin-bottom:1rem;padding:1rem}.account-profile-page h2{color:#333;margin-top:0;margin-bottom:1.5rem;font-size:1.8rem}.profile-form .form-group{margin-bottom:1.5rem}.profile-form label{color:#555;margin-bottom:.5rem;font-weight:600;display:block}.profile-form input[type=text],.profile-form input[type=email],.profile-form input[type=date],.profile-form input[type=tel]{box-sizing:border-box;border:1px solid #ccc;border-radius:6px;width:100%;padding:.75rem;font-size:1rem;transition:border-color .2s}.profile-form input[type=email][disabled]{cursor:not-allowed;background-color:#e9ecef}.profile-form input:focus{border-color:#8b5cf6;outline:none;box-shadow:0 0 0 .2rem #8b5cf640}.profile-form button[type=submit]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7719aa,#8b5cf6);border:none;border-radius:6px;padding:.75rem 1.5rem;font-size:1rem;font-weight:700;transition:background-color .3s,transform .1s}.profile-form button[type=submit]:hover{background:linear-gradient(135deg,#6a169a,#7a4ce0)}.profile-form button[type=submit]:disabled{cursor:not-allowed;background-color:#ccc}.profile-loading,.profile-error{text-align:center;color:#555;padding:2rem;font-size:1.1rem}.profile-error{color:#d9534f;background-color:#f2dede;border:1px solid #ebccd1;border-radius:4px}.profile-success{text-align:center;color:#3c763d;background-color:#dff0d8;border:1px solid #d6e9c6;border-radius:4px;margin-top:1rem;padding:1rem;font-size:1.1rem}.address-card{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000000d}.address-card h3{color:#343a40;margin-top:0;margin-bottom:.75rem;font-size:1.25rem}.address-card p{color:#495057;margin-bottom:.5rem;line-height:1.6}.address-card .primary-tags span{color:#fff;background-color:#8b5cf6;border-radius:12px;margin-bottom:.5rem;margin-right:.5rem;padding:.25rem .6rem;font-size:.8rem;font-weight:500;display:inline-block}.address-card .primary-tags span.billing{background-color:#7719aa}.address-actions{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.address-actions button{cursor:pointer;border:1px solid #0000;border-radius:5px;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s}.address-actions .btn-edit{color:#333;background-color:#e0e0e0;border-color:silver}.address-actions .btn-edit:hover{background-color:#d0d0d0}.address-actions .btn-delete{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.address-actions .btn-delete:hover{background-color:#f1b0b7}.address-actions .btn-set-primary{color:#0f5132;background-color:#d1e7dd;border-color:#badbcc}.address-actions .btn-set-primary:hover{background-color:#b8dfc9}.address-actions .btn-set-primary:disabled{color:#6c757d;cursor:not-allowed;opacity:.7;background-color:#e9ecef}.modal-backdrop{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.modal-content{background-color:#fff;border-radius:8px;width:90%;max-width:500px;max-height:90vh;padding:2rem;overflow-y:auto;box-shadow:0 5px 15px #0000004d}.modal-content h3{color:#333;margin-top:0;margin-bottom:1.5rem}.address-form .form-group{margin-bottom:1rem}.address-form label{color:#555;margin-bottom:.3rem;font-weight:500;display:block}.address-form input[type=text],.address-form input[type=tel]{box-sizing:border-box;border:1px solid #ccc;border-radius:4px;width:100%;padding:.6rem;font-size:.95rem}.address-form input:focus{border-color:#8b5cf6;outline:none;box-shadow:0 0 0 .15rem #8b5cf633}.address-form .checkbox-group{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.address-form .checkbox-group input[type=checkbox]{width:auto;margin-right:.5rem}.modal-actions{justify-content:flex-end;gap:.75rem;margin-top:1.5rem;display:flex}.modal-actions button{cursor:pointer;border:none;border-radius:5px;padding:.6rem 1.2rem;font-size:.95rem;font-weight:500}.modal-actions .btn-save{color:#fff;background-color:#8b5cf6}.modal-actions .btn-save:hover{background-color:#7a4fe2}.modal-actions .btn-save:disabled{background-color:#ccc}.modal-actions .btn-cancel{color:#333;background-color:#f0f0f0;border:1px solid #ccc}.modal-actions .btn-cancel:hover{background-color:#e0e0e0}.modal-error{color:#d9534f;background-color:#f2dede;border:1px solid #ebccd1;border-radius:4px;margin-bottom:1rem;padding:.75rem;font-size:.9rem}.account-addresses-page h2{color:#333;margin-top:0;margin-bottom:1.5rem;font-size:1.8rem}.add-address-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7719aa,#8b5cf6);border:none;border-radius:6px;margin-bottom:1.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:700;transition:background-color .3s;display:inline-block}.add-address-btn:hover{background:linear-gradient(135deg,#6a169a,#7a4ce0)}.addresses-loading,.addresses-error,.no-addresses-message{text-align:center;color:#555;padding:2rem;font-size:1.1rem}.addresses-error{color:#d9534f;background-color:#f2dede;border:1px solid #ebccd1;border-radius:4px}.addresses-action-error{color:#d9534f;background-color:#f8d7da;border:1px solid #d9534f;border-radius:4px;margin-bottom:1rem;padding:.5rem}.addresses-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}@media (width<=700px){.addresses-grid{grid-template-columns:1fr}}.account-orders-page h2{color:#333;margin-top:0;margin-bottom:1.5rem;font-size:1.8rem}.orders-loading,.orders-error,.no-orders-message{text-align:center;color:#555;padding:2rem;font-size:1.1rem}.orders-error{color:#d9534f;background-color:#f2dede;border:1px solid #ebccd1;border-radius:4px}.order-list-item{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:1rem;padding:1.5rem;transition:box-shadow .2s;box-shadow:0 1px 3px #0000000d}.order-list-item:hover{box-shadow:0 2px 6px #0000001a}.order-list-item-header{flex-wrap:wrap;justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.order-list-item-header h3{color:#8b5cf6;margin:0;font-size:1.2rem}.order-list-item-header .order-date{color:#6c757d;font-size:.9rem}.order-details p{margin:.3rem 0;font-size:.95rem}.order-details strong{color:#343a40}.order-status{font-weight:700}.order-status.PendingPayment,.order-status.AwaitingPayment{color:#ffc107}.order-status.Processing,.order-status.Authorized,.order-status.CapturePending{color:#17a2b8}.order-status.Shipped{color:#007bff}.order-status.Delivered,.order-status.Captured{color:#28a745}.order-status.Cancelled,.order-status.Abandoned,.order-status.Declined,.order-status.Failed,.order-status.PaymentFailed{color:#dc3545}.order-status.Refunded,.order-status.PartiallyRefunded,.order-status.Voided{color:#6c757d}.view-order-details-link{color:#fff;background-color:#8b5cf6;border-radius:5px;margin-top:1rem;padding:.5rem 1rem;font-weight:500;text-decoration:none;transition:background-color .2s;display:inline-block}.view-order-details-link:hover{background-color:#7a4fe2}.orders-pagination{justify-content:center;align-items:center;gap:1rem;margin-top:2rem;display:flex}.orders-pagination button{color:#333;cursor:pointer;background-color:#f8f8f8;border:1px solid #ccc;border-radius:4px;padding:.5rem 1rem;transition:background-color .2s}.orders-pagination button:hover:not(:disabled){background-color:#e0e0e0}.orders-pagination button:disabled{opacity:.5;cursor:not-allowed}.orders-pagination span{font-size:1rem}.orders-search-filter{gap:.5rem;margin-bottom:1.5rem;display:flex}.orders-search-filter input{border:1px solid #ccc;border-radius:4px;flex-grow:1;padding:.75rem;font-size:1rem}.orders-search-filter button{color:#fff;cursor:pointer;background-color:#8b5cf6;border:none;border-radius:4px;padding:.75rem 1.5rem}.order-detail-page{font-family:sans-serif}.order-detail-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.order-detail-page h2{color:#333;margin:0 0 .5rem;font-size:1.8rem}.order-date-header{color:#6c757d;margin:0;font-size:.95rem}.back-to-orders-link,.order-help-links a,.tracking-box a{color:#5b21b6;font-weight:600}.order-summary-section,.order-self-service-section,.order-requests-section,.order-timeline-section,.order-address-section,.order-items-section,.order-help-section{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.order-summary-section h3,.order-self-service-section h3,.order-requests-section h3,.order-timeline-section h3,.order-address-section h3,.order-items-section h3,.order-help-section h3{color:#495057;border-bottom:1px solid #e0e0e0;margin-top:0;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.35rem}.status-grid,.order-summary-grid,.order-address-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem;display:grid}.status-grid{margin-bottom:1.25rem}.status-grid>div{background:#fff;border:1px solid #e9ecef;border-radius:6px;min-height:76px;padding:.75rem}.status-grid span{color:#6c757d;margin-bottom:.35rem;font-size:.86rem;display:block}.status-grid strong{color:#343a40}.payment-status-guidance{background:#fff;border:1px solid #d9e2e7;border-radius:6px;margin-bottom:1.25rem;padding:.85rem 1rem}.payment-status-guidance p{color:#4b5563;margin:.35rem 0 0;line-height:1.5}.order-summary-item p,.address-block p{color:#343a40;margin:.4rem 0;font-size:1rem}.totals-list p{justify-content:space-between;gap:1rem;display:flex}.tracking-box{background:#fff;border:1px solid #e9ecef;border-radius:6px;margin-top:.75rem;padding:.75rem}.tracking-box h4,.request-panel h4,.refund-list h4,.address-block h4,.order-item-info h4,.support-request-card h4{margin:0 0 .5rem}.address-block{margin-bottom:1rem}.address-block h4{color:#5b21b6;font-size:1.1rem}.order-notes-block{margin-top:1rem}.order-notes-block p{color:#555;margin-bottom:0;font-style:italic}.order-action-message,.order-action-error{border-radius:6px;margin:1rem 0;padding:.75rem}.order-action-message{color:#166534;background:#ecfdf3;border:1px solid #86efac}.order-action-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.request-panel{background:#fff;border:1px solid #e5e7eb;border-radius:6px;margin-top:1rem;padding:1rem}.request-panel label,.return-item-picker label{color:#343a40;gap:.35rem;margin-top:.75rem;font-weight:600;display:grid}.request-panel input,.request-panel textarea,.return-item-picker input{width:100%;font:inherit;border:1px solid #ced4da;border-radius:4px;padding:.55rem .65rem}.request-panel button{color:#fff;cursor:pointer;background:#5b21b6;border:0;border-radius:4px;margin-top:1rem;padding:.65rem 1rem;font-weight:700}.request-panel button:disabled{opacity:.6;cursor:not-allowed}.return-item-picker{gap:.75rem;display:grid}.return-item-picker label{grid-template-columns:minmax(0,1fr) 90px;align-items:center;margin-top:0}.request-unavailable{color:#6c757d;margin-bottom:0}.support-request-list{gap:.75rem;display:grid}.support-request-card{background:#fff;border:1px solid #e5e7eb;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;gap:1rem;padding:1rem;display:grid}.support-request-card p{margin:.35rem 0}.support-request-card ul{margin:.5rem 0 0;padding-left:1.25rem}.support-request-card time,.order-timeline time{color:#6c757d;font-size:.88rem}.admin-response{border-top:1px solid #e5e7eb;padding-top:.5rem}.refund-list{margin-top:1.25rem}.refund-row{border-top:1px solid #e9ecef;grid-template-columns:minmax(0,1fr) auto auto;gap:1rem;padding:.65rem 0;display:grid}.order-timeline{margin:0;padding:0;list-style:none}.order-timeline li{border-bottom:1px solid #e9ecef;grid-template-columns:150px minmax(0,1fr);gap:.35rem 1rem;padding:.75rem 0;display:grid}.order-timeline li:last-child{border-bottom:0}.order-timeline span{color:#6c757d;grid-column:2}.order-item-card{border-bottom:1px solid #e9ecef;gap:1rem;padding:1rem 0;display:flex}.order-item-card:last-child{border-bottom:none}.order-item-image-container{background-color:#e9ecef;border-radius:4px;flex-shrink:0;width:80px;height:80px;overflow:hidden}.order-item-image-container img{object-fit:cover;width:100%;height:100%}.order-item-image-placeholder{color:#adb5bd;justify-content:center;align-items:center;width:100%;height:100%;font-size:1.5rem;display:flex}.order-item-info{flex-grow:1}.order-item-info h4{font-size:1.1rem}.item-sku{color:#6c757d;margin-bottom:.3rem;font-size:.85rem}.item-price-qty{color:#495057;font-size:.95rem}.order-help-links{flex-wrap:wrap;gap:.75rem;display:flex}.order-detail-loading,.order-detail-error{text-align:center;color:#555;padding:2rem;font-size:1.1rem}.order-detail-error{color:#d9534f}.order-status-badge{color:#fff;border-radius:.25rem;padding:.3em .6em;font-size:.9em;font-weight:700;display:inline-block}.order-status-badge.PendingPayment,.order-status-badge.AwaitingPayment{color:#212529;background-color:#ffc107}.order-status-badge.Processing,.order-status-badge.Authorized,.order-status-badge.CapturePending{background-color:#17a2b8}.order-status-badge.Shipped{background-color:#007bff}.order-status-badge.Delivered,.order-status-badge.Captured{background-color:#28a745}.order-status-badge.Cancelled,.order-status-badge.Abandoned,.order-status-badge.Declined,.order-status-badge.Failed,.order-status-badge.PaymentFailed{background-color:#dc3545}.order-status-badge.Refunded,.order-status-badge.PartiallyRefunded,.order-status-badge.Voided{background-color:#6c757d}@media (width<=640px){.order-detail-header,.support-request-card,.refund-row,.order-timeline li,.return-item-picker label{grid-template-columns:1fr}.order-detail-header{display:grid}.order-timeline span{grid-column:1}}.account-activity-page h2{color:#333;margin-top:0;margin-bottom:1.5rem;font-size:1.8rem}.activity-filters{background-color:#f8f9fa;border-radius:6px;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem;display:flex}.activity-filters .form-group{flex-direction:column;display:flex}.activity-filters label{color:#555;margin-bottom:.25rem;font-size:.85rem}.activity-filters input[type=date]{border:1px solid #ccc;border-radius:4px;padding:.5rem}.activity-filters button{color:#fff;cursor:pointer;background-color:#8b5cf6;border:none;border-radius:4px;align-self:flex-end;padding:.6rem 1rem}.activity-filters button:hover{background-color:#7a4fe2}.activity-loading,.activity-error,.no-activity-message{text-align:center;color:#555;padding:2rem;font-size:1.1rem}.activity-error{color:#d9534f;background-color:#f2dede;border:1px solid #ebccd1;border-radius:4px}.table-container{width:100%;margin-bottom:1rem;overflow-x:auto}.activity-table{border-collapse:collapse;width:100%;margin-top:1rem;font-size:.9rem}.activity-table th,.activity-table td{text-align:left;vertical-align:top;overflow-wrap:break-word;word-wrap:break-word;border:1px solid #dee2e6;padding:.75rem}.activity-table th{white-space:nowrap;background-color:#e9ecef;font-weight:600}.activity-table tbody tr:nth-child(odd){background-color:#f8f9fa}.activity-table tbody tr:hover{background-color:#f1f3f5}.activity-table .success-true{color:#28a745;font-weight:700}.activity-table .success-false{color:#dc3545;font-weight:700}.activity-pagination{justify-content:center;align-items:center;gap:1rem;margin-top:2rem;display:flex}.activity-pagination button{color:#333;cursor:pointer;background-color:#f8f8f8;border:1px solid #ccc;border-radius:4px;padding:.5rem 1rem}.activity-pagination button:hover:not(:disabled){background-color:#e0e0e0}.activity-pagination button:disabled{opacity:.5;cursor:not-allowed}.activity-pagination span{font-size:1rem}.activity-filters{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:1rem;display:grid}.activity-filters input,.activity-filters select{border:1px solid #ccc;border-radius:4px;width:100%;padding:.5rem}.activity-filters button{grid-column:1/-1}.open-app-container{color:#333;flex-direction:column;justify-content:center;align-items:center;height:100vh;font-family:sans-serif;display:flex}.spinner{border:4px solid #0000001a;border-left-color:#4f46e5;border-radius:50%;width:36px;height:36px;margin-bottom:20px;animation:1s infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-overlay{z-index:1000;background-color:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:8px;width:90%;max-width:400px;padding:2rem;box-shadow:0 5px 15px #0000004d}.modal-content h3{margin-top:0;margin-bottom:1rem}.modal-content p{color:#555;margin-bottom:1.5rem;font-size:.9rem}.modal-content .form-group{margin-bottom:1rem}.modal-content label{margin-bottom:.5rem;display:block}.modal-content input{border:1px solid #ccc;border-radius:4px;width:100%;padding:.75rem}.modal-actions{justify-content:flex-end;gap:.5rem;display:flex}.modal-button{cursor:pointer;border:none;border-radius:4px;padding:.6rem 1.2rem;font-weight:700}.modal-button.primary{color:#fff;background-color:#007bff}.modal-button.danger{color:#fff;background-color:#dc3545}.modal-button.secondary{color:#fff;background-color:#6c757d}.modal-button:disabled{cursor:not-allowed;opacity:.65}.modal-error{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;margin:0 0 1rem;padding:.75rem}.data-privacy-page h2{color:#333;margin-top:0;margin-bottom:1.5rem;font-size:1.8rem}.privacy-section{border-bottom:1px solid #e9ecef;margin-bottom:2rem;padding-bottom:2rem}.data-privacy-page section:last-of-type{border-bottom:none;margin-bottom:0}.privacy-section h3{color:#343a40;margin-bottom:.75rem;font-size:1.3rem}.privacy-section p{color:#6c757d;max-width:70ch;line-height:1.6}.privacy-preference-list{gap:.75rem;max-width:720px;margin-top:1rem;display:grid}.privacy-preference-row{background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem;display:flex}.privacy-preference-row strong,.privacy-preference-row small,.privacy-preference-row span span{display:block}.privacy-preference-row small,.privacy-preference-row span span{color:#6c757d;margin-top:.25rem;line-height:1.45}.privacy-preference-row input{accent-color:#0f766e;flex:none;width:22px;height:22px}.privacy-preference-row.locked>span{color:#0f766e;flex:none;font-weight:800}.privacy-button{color:#fff;cursor:pointer;background-color:#8b5cf6;border:none;border-radius:6px;margin-top:1rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:background-color .2s}.privacy-link-button{color:#6d28d9;background-color:#f4f0ff;border:1px solid #ddd6fe;border-radius:6px;margin-top:1rem;padding:.7rem 1.1rem;font-weight:600;text-decoration:none;display:inline-block}.privacy-link-button:hover{background-color:#ece4ff;text-decoration:none}.privacy-button:hover:not(:disabled){background-color:#7a4fe2}.privacy-button:disabled{cursor:not-allowed;background-color:#c7d2fe}.danger-zone{background-color:#fff1f2;border:2px solid #f8d7da;border-radius:8px;padding:1.5rem}.danger-zone h3,.danger-zone p{color:#721c24}.delete-button:disabled{background-color:#f5c6cb}.privacy-error{color:#721c24;text-align:center;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;margin-bottom:1.5rem;padding:1rem}.privacy-success{color:#027a48;background-color:#ecfdf3;border:1px solid #abefc6;border-radius:4px;margin:1rem 0 0;padding:.85rem}.security-page h2{margin-top:0;margin-bottom:1.5rem}.security-section{margin-bottom:2rem}.security-section h3{font-size:1.3rem}.security-section p{color:#6c757d;max-width:70ch;line-height:1.6}.security-button{color:#fff;cursor:pointer;background-color:#8b5cf6;border:none;border-radius:6px;margin-top:1rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:background-color .2s}.security-button.secondary{color:#333;background-color:#e9ecef}.security-button:hover:not(:disabled){background-color:#7a4fe2}.security-button.secondary:hover:not(:disabled){background-color:#dee2e6}.delete-button{background-color:#dc3545}.delete-button:hover:not(:disabled){background-color:#c82333}.security-error{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;margin-bottom:1rem;padding:1rem}.setup-steps{flex-direction:column;gap:1rem;display:flex}.qr-code{background-color:#fff;border:1px solid #ccc;border-radius:8px;align-self:center;max-width:250px;height:auto;padding:1rem}.secret-key{word-break:break-all;background-color:#e9ecef;border-radius:4px;padding:.5rem;font-family:monospace;font-size:1.1rem}.setup-steps input{text-align:center;letter-spacing:.5rem;border:1px solid #ccc;border-radius:4px;align-self:center;max-width:250px;padding:.75rem;font-size:1.2rem}.button-group{justify-content:center;gap:1rem;display:flex}.recovery-codes-warning{color:#856404;background-color:#fff3cd;border:1px solid #ffeeba;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.recovery-codes-list{background-color:#f8f9fa;border-radius:8px;grid-template-columns:1fr 1fr;gap:.75rem;padding:1rem;font-family:monospace;font-size:1.1rem;display:grid}.consent-banner{z-index:1000;color:#172033;background:#fff;border:1px solid #d8dee8;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;max-width:980px;margin:0 auto;padding:1rem;display:flex;position:fixed;bottom:1rem;left:1rem;right:1rem;box-shadow:0 14px 40px #1118272e}.consent-banner h2,.consent-modal h2{letter-spacing:0;margin:0 0 .4rem;font-size:1.1rem}.consent-banner p{color:#3d485b;max-width:64ch;margin:0 0 .45rem;line-height:1.45}.consent-banner a{color:#0f766e;font-weight:700}.consent-actions,.consent-modal footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.consent-button{cursor:pointer;border:1px solid #0000;border-radius:6px;min-height:42px;padding:.7rem 1rem;font-weight:700}.consent-button.primary{color:#fff;background:#0f766e}.consent-button.secondary{color:#172033;background:#fff;border-color:#cbd5e1}.consent-button:disabled{cursor:not-allowed;opacity:.65}.privacy-preferences-fab{z-index:900;color:#172033;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;min-height:38px;padding:.55rem .8rem;position:fixed;bottom:1rem;right:1rem;box-shadow:0 6px 22px #11182726}.consent-modal-backdrop{z-index:1100;background:#0f172a75;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.consent-modal{color:#172033;background:#fff;border-radius:8px;width:min(640px,100%);max-height:calc(100vh - 2rem);padding:1rem;overflow:auto;box-shadow:0 18px 54px #0f172a42}.consent-modal header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.consent-modal header button{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #d8dee8;border-radius:6px;width:36px;height:36px}.consent-choice{border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;display:flex}.consent-choice strong,.consent-choice small{display:block}.consent-choice small,.consent-choice p{color:#5f6b7c;margin:.25rem 0 0;line-height:1.45}.consent-choice input{accent-color:#0f766e;flex:none;width:22px;height:22px}.consent-choice.locked span{color:#0f766e;flex:none;font-weight:800}.consent-error{color:#842029;background:#f8d7da;border:1px solid #f5c2c7;border-radius:6px;padding:.7rem}.consent-modal footer{border-top:1px solid #e2e8f0;margin-top:1rem;padding-top:1rem}@media (width<=700px){.consent-banner{flex-direction:column;align-items:stretch}.consent-actions,.consent-modal footer{justify-content:stretch}.consent-actions .consent-button,.consent-modal footer .consent-button{flex:140px}}
