@import"https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;500;600;700&display=swap";:root{--primary-color: #FF9DC4;--primary-hover: #FFBDD4;--primary-text: #5D4037;--background-dark: #FFF0F6;--background-medium: #FFF9F0;--background-light: #FFFFFF;--accent-color: #E06A9C;--error-color: #E57373;--success-color: #9DD6BD;--vip-color: #E06A9C;--partner-color: #80BDFF;--partner-hc: #5B9BD5;--partner-classique: #A5D3FA;--card-shadow: 0 4px 15px rgba(224, 106, 156, .1);--hover-shadow: 0 10px 20px rgba(224, 106, 156, .15);--modal-shadow: 0 8px 25px rgba(224, 106, 156, .2);--transition-speed: .3s;--transition-ease: cubic-bezier(.4, 0, .2, 1)}body{font-family:Nunito,sans-serif;background-color:var(--background-dark);color:var(--primary-text);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-speed) var(--transition-ease)}a:hover{color:var(--primary-hover)}button{border-radius:12px;border:none;padding:10px 18px;font-size:14px;font-weight:600;font-family:Nunito,sans-serif;cursor:pointer;transition:all var(--transition-speed) var(--transition-ease);background-color:var(--primary-color);color:var(--primary-text);box-shadow:0 2px 6px #e06a9c1a}button:hover:not(:disabled){background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 8px #e06a9c33}button:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 3px #e06a9c1a}button:disabled{opacity:.6;cursor:not-allowed}input,select,textarea{font-family:Nunito,sans-serif;font-size:15px;padding:12px 16px;border-radius:12px;border:2px solid var(--primary-color);background-color:var(--background-light);color:var(--primary-text);transition:all var(--transition-speed);box-shadow:0 2px 5px #e06a9c0d}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #e06a9c26;transform:translateY(-1px)}input::placeholder,textarea::placeholder{color:#5d403780}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--background-dark);border-radius:10px}::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:10px;border:2px solid var(--background-dark)}::-webkit-scrollbar-thumb:hover{background:var(--accent-color);border:2px solid var(--background-dark)}@media (prefers-color-scheme: light){:root{color:var(--primary-text);background-color:var(--background-dark)}a:hover{color:var(--primary-hover)}button{background-color:var(--primary-color)}}.login-container{font-family:Nunito,sans-serif;background-color:var(--background-dark);color:var(--primary-text);min-height:100vh;display:flex;justify-content:center;align-items:center}.login-card{background-color:var(--background-light);padding:40px;border-radius:8px;width:100%;max-width:400px;box-shadow:0 0 25px #00000040;border:2px solid var(--primary-color);text-align:center}.login-logo{margin-bottom:20px}.login-logo img{max-width:100px;border-radius:12px;box-shadow:0 0 20px #c4915a80}.login-card h1{margin:10px 0 30px;font-size:28px;color:var(--primary-color);letter-spacing:2px}.form-group label{display:block;text-align:left;margin-bottom:5px;font-weight:600;font-size:14px;color:var(--primary-text)}.form-group input{width:100%;padding:12px;border:2px solid var(--primary-color);border-radius:5px;background-color:var(--background-dark);color:var(--primary-text);font-size:15px;box-sizing:border-box;transition:border .3s}.form-group input:focus{outline:none;border-color:var(--primary-hover)}.login-button{width:100%;margin-top:25px;padding:12px;background-color:var(--primary-color);color:var(--background-dark);font-weight:700;font-size:15px;border:none;border-radius:5px;cursor:pointer;text-transform:uppercase;transition:background .3s ease}.login-button:hover:not(:disabled){background-color:var(--primary-hover)}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-error{background-color:#dc354533;color:#ff8a8a;padding:10px;border-radius:5px;margin-bottom:20px;font-size:14px;border:1px solid rgba(220,53,69,.5)}.spinner{position:relative;width:50px;height:50px;margin:20px auto 0}.spinner:before{width:100%;height:100%;border:2px solid rgba(212,175,55,.1);border-top:2px solid var(--primary-color);animation:spin-fast 1.2s cubic-bezier(.68,-.55,.27,1.55) infinite}.spinner:after{top:10px;left:10px;width:30px;height:30px;border:2px solid rgba(212,175,55,.2);border-bottom:2px solid var(--primary-color);animation:spin-fast 1s cubic-bezier(.68,-.55,.27,1.55) infinite reverse}@keyframes spin-fast{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.service-button-container{display:flex;flex-direction:column;align-items:center;margin:0;width:180px;height:60px;justify-content:center}.service-button{display:flex;justify-content:center;align-items:center;padding:10px 20px;width:100%;border:none;border-radius:6px;font-family:Nunito,sans-serif;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s ease;box-shadow:none}.service-inactive{background-color:var(--primary-color);color:var(--background-dark)}.service-inactive:hover{background-color:var(--primary-hover)}.service-active{background-color:var(--error-color);color:#fff}.service-active:hover{background-color:#e04545}.service-button:disabled{opacity:.7;cursor:not-allowed;box-shadow:none}.service-loading{background-color:var(--background-medium);color:var(--primary-text);opacity:.7;cursor:wait}.service-error{color:var(--error-color);font-size:12px;margin-top:5px;text-align:center}.service-info{display:flex;align-items:center;justify-content:center;margin-top:4px;font-size:12px;color:var(--primary-text);width:100%;overflow:hidden}.service-time{font-weight:700;color:var(--primary-color);white-space:nowrap;text-align:center;display:block;width:100%}.service-loader{width:18px;height:18px;border:2px solid rgba(255,255,255,.2);border-top:2px solid white;border-radius:50%;animation:service-spin 1s linear infinite}@keyframes service-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.profile-modal{background-color:var(--background-light);border-radius:8px;padding:25px;width:90%;max-width:500px;box-shadow:0 8px 25px #0006;animation:fadeIn .3s;border:2px solid var(--primary-color);text-align:center}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:1px solid var(--primary-color);padding-bottom:15px}.modal-header h2{margin:0;color:var(--primary-color);font-size:22px}.close-button{background:none;border:none;color:var(--primary-text);font-size:24px;cursor:pointer;padding:0;line-height:1}.close-button:hover{color:var(--primary-color)}.user-preview{display:flex;align-items:center;justify-content:center;margin-bottom:20px;padding:10px;border-radius:8px;background-color:#c4915a1a;width:80%;margin-left:auto;margin-right:auto}.preview-avatar{width:60px;height:60px;border-radius:50%;overflow:hidden;margin-right:15px;border:2px solid var(--primary-color)}.preview-avatar img{width:100%;height:100%;object-fit:cover}.preview-initials{width:100%;height:100%;background-color:var(--primary-color);color:var(--background-dark);display:flex;justify-content:center;align-items:center;font-weight:700;font-size:20px}.preview-details{display:flex;flex-direction:column}.preview-name{font-weight:700;color:var(--primary-color);font-size:16px}.preview-role{color:var(--accent-color);font-size:14px}.form-group{margin-bottom:20px;width:80%;margin-left:auto;margin-right:auto}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--primary-text);text-align:left}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border-radius:6px;border:1px solid var(--accent-color);background-color:var(--background-dark);color:var(--primary-text);font-size:15px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 10px #d4af374d}.modal-actions{display:flex;justify-content:center;gap:15px;margin-top:25px;width:80%;margin-left:auto;margin-right:auto}.cancel-button,.confirm-button{padding:10px 20px;border-radius:6px;font-weight:700;cursor:pointer;transition:all .3s;min-width:120px}.error-message{background-color:#dc354533;color:#ff8a8a;padding:10px;border-radius:5px;margin-bottom:20px;font-size:14px;border:1px solid rgba(220,53,69,.5);width:80%;margin-left:auto;margin-right:auto}.success-message{background-color:#28a74533;color:#8aff8a;padding:10px;border-radius:5px;margin-bottom:20px;font-size:14px;border:1px solid rgba(40,167,69,.5);width:80%;margin-left:auto;margin-right:auto}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 576px){.profile-modal{width:95%;padding:15px}.modal-actions{flex-direction:column;width:90%}.form-group,.user-preview,.error-message,.success-message{width:90%}.cancel-button,.confirm-button{width:100%}}.form-hint{display:block;color:#6c7a8a;font-size:12px;margin-top:5px}.image-preview-container{margin-top:10px;background-color:#c4915a0d;border-radius:6px;padding:10px;width:90%;margin-left:auto;margin-right:auto}.image-preview-container span{display:block;margin-bottom:5px;font-size:14px;color:var(--primary-text)}.image-preview{position:relative;width:100%;height:150px;border-radius:6px;overflow:hidden;background-color:#0003;display:flex;justify-content:center;align-items:center}.image-preview img{max-width:100%;max-height:100%;object-fit:contain}.image-preview.error img{display:none}.image-error-message{display:none;color:#ff8a8a;font-size:14px;text-align:center}.image-preview.error .image-error-message{display:block}.navbar{background-color:var(--background-dark);border-bottom:2px solid var(--accent-color);padding:0 24px;display:flex;justify-content:space-between;align-items:center;color:var(--primary-text);height:80px;position:relative;width:100%;box-sizing:border-box;box-shadow:0 2px 10px #e06a9c1a}.navbar-left{display:flex;align-items:center;height:100%;gap:20px;flex:0 0 auto;width:300px}.navbar-logo{display:flex;align-items:center;height:100%;padding:10px 0}.navbar-center{display:flex;justify-content:center;flex:1 1 auto;height:100%;min-width:0;padding:0 10px}.navbar-logo img{width:60px;height:60px;border-radius:16px;object-fit:cover;border:2px solid var(--accent-color);box-shadow:0 0 12px #e06a9c66;transition:transform .3s ease}.navbar-logo img:hover{transform:scale(1.05)}.navbar-links{display:flex;gap:15px;align-items:center;list-style-type:none;padding:0;margin:0;height:100%;justify-content:center;width:100%}.navbar-links li{height:100%;display:flex;align-items:center}.navbar-links li a{color:var(--primary-text);text-decoration:none;font-weight:600;font-size:16px;padding:0 18px;height:100%;display:flex;align-items:center;transition:all .3s ease;border-bottom:3px solid transparent;white-space:nowrap;position:relative}.navbar-links li a:after{content:"";position:absolute;bottom:0;left:50%;width:0;height:3px;background-color:var(--accent-color);transition:all .3s ease;transform:translate(-50%);border-radius:3px 3px 0 0}.navbar-links li.active a{color:var(--accent-color)}.navbar-links li.active a:after{width:70%}.navbar-links li a:hover{color:var(--accent-color)}.navbar-links li a:hover:after{width:40%}.navbar-link{background:none;color:var(--primary-color);border:none;font-weight:700;font-size:18px;padding:10px 15px;border-radius:5px;cursor:pointer;transition:all .3s ease}.navbar-link:hover{background-color:var(--primary-hover);color:var(--background-dark)}.navbar-link.active{background-color:var(--primary-color);color:var(--background-dark)}.navbar-right{display:flex;align-items:center;gap:15px;flex:0 0 auto;width:200px;justify-content:flex-end}.user-dropdown{position:relative;display:inline-block}.user-menu-button{background-color:transparent;color:var(--primary-color);border:1px solid var(--primary-color);padding:8px 15px;border-radius:4px;cursor:pointer;transition:all .3s;font-size:14px;height:36px;display:flex;align-items:center;justify-content:center;white-space:nowrap}.user-menu-button:hover{background-color:var(--primary-color);color:var(--background-dark)}.dropdown-menu{position:absolute;right:0;top:45px;background-color:var(--background-medium);min-width:180px;border-radius:4px;border:1px solid var(--primary-color);z-index:100;box-shadow:var(--card-shadow);overflow:hidden}.dropdown-item{display:block;width:100%;text-align:left;padding:10px 15px;background-color:transparent;color:var(--primary-text);border:none;border-bottom:1px solid var(--background-light);transition:all .3s;cursor:pointer}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background-color:var(--background-light);color:var(--primary-color)}.user-info{display:flex;align-items:center;margin-right:0;padding:0 10px;height:60px}.user-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;margin-right:10px;border:2px solid var(--primary-color);cursor:pointer;transition:transform .3s,box-shadow .3s;position:relative;flex-shrink:0}.user-avatar:after{content:"✎";position:absolute;bottom:-2px;right:-2px;background-color:var(--primary-color);color:var(--background-dark);width:16px;height:16px;border-radius:50%;font-size:10px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}.user-avatar:hover:after{opacity:1}.user-avatar:hover{transform:scale(1.05);box-shadow:0 0 10px #c4915a80}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-initials{width:100%;height:100%;background-color:var(--primary-color);color:var(--background-dark);display:flex;justify-content:center;align-items:center;font-weight:700;font-size:16px}.user-details{display:flex;flex-direction:column}.user-name{font-weight:700;font-size:14px;color:var(--primary-text)}.user-role{font-size:12px;color:var(--primary-color)}.logout-button{background-color:transparent;color:var(--accent-color);border:1.5px solid var(--accent-color);padding:8px 18px;border-radius:12px;cursor:pointer;transition:all .3s;font-size:14px;height:38px;display:flex;align-items:center;justify-content:center;white-space:nowrap;font-weight:600;box-shadow:0 2px 5px #e06a9c1a}.logout-button:hover{background-color:var(--accent-color);color:#fff;box-shadow:0 4px 8px #e06a9c40;transform:translateY(-1px)}@media (min-width: 1200px){.navbar-logo{min-width:70px}.navbar-left{min-width:300px}.navbar-right{min-width:250px}.navbar-center{max-width:800px;margin:0 auto}}@media (max-width: 768px){.navbar{flex-direction:column;height:auto;padding:15px;gap:15px}.navbar-logo{margin-bottom:10px;width:100%;justify-content:center}.navbar-center{width:100%}.navbar-links{flex-wrap:wrap;justify-content:center;width:100%;margin:0}.navbar-links li{height:40px}.navbar-links li a{padding:10px}.navbar-right{width:100%;justify-content:center;margin-left:0;flex-wrap:wrap;gap:10px}.navbar-left{width:100%;justify-content:center;flex-direction:column;gap:10px}.service-button-container{margin:0 auto;width:250px}}.product-card{background-color:var(--background-light);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;position:relative;border:1px solid var(--primary-color);transition:transform var(--transition-speed),box-shadow var(--transition-speed),border-color var(--transition-speed);box-shadow:0 4px 12px #00000026;height:100%;width:100%;margin:0}.product-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px #c4915a40;border-color:var(--primary-hover);z-index:5}.product-card.partner{border:2px solid var(--partner-color);background:linear-gradient(to bottom,var(--background-light),var(--background-medium));box-shadow:0 5px 15px #007bff26}.product-card.partner:hover{box-shadow:0 8px 20px #007bff40}.product-card.vip{border:2px solid var(--primary-color);background:linear-gradient(to bottom,var(--background-light),var(--background-medium));box-shadow:0 5px 15px #c4915a26}.product-card.vip:hover{box-shadow:0 8px 20px #c4915a40}.product-image{height:120px;overflow:hidden;display:flex;justify-content:center;align-items:center;background-color:var(--background-dark);position:relative;border-bottom:1px solid var(--primary-color)}.product-image:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40px;background:linear-gradient(to top,var(--background-light),transparent);opacity:.7;pointer-events:none}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--transition-ease)}.product-card:hover .product-image img{transform:scale(1.08)}.product-card:hover .product-name{color:var(--primary-color)}.product-placeholder{width:100%;height:100%;display:flex;justify-content:center;align-items:center;background-color:var(--accent-color);color:var(--primary-color);font-weight:700;font-size:28px;letter-spacing:1px}.product-badges{position:absolute;top:8px;right:8px;display:flex;flex-direction:column;gap:6px;z-index:2;max-width:80%}.badge{padding:4px 8px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase;box-shadow:0 2px 4px #0003;letter-spacing:.5px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.badge.vip{background-color:var(--vip-color);color:var(--background-dark);animation:pulse 2s infinite}.badge.discount{background-color:var(--success-color);color:var(--background-dark)}.badge.vip-discount{background:linear-gradient(135deg,var(--vip-color) 0%,var(--success-color) 100%);color:var(--background-dark)}.badge.partner{background-color:var(--partner-color);color:#fff}.badge.subscription{background-color:var(--primary-color);color:var(--background-dark)}@keyframes pulse{0%{box-shadow:0 0 #d4af3766}70%{box-shadow:0 0 0 5px #d4af3700}to{box-shadow:0 0 #d4af3700}}.product-info{padding:12px;flex-grow:1;display:flex;flex-direction:column;position:relative;text-align:center;justify-content:space-between}.product-name{margin:0 0 8px;font-size:15px;color:var(--primary-text);overflow:hidden;text-overflow:ellipsis;line-height:1.3;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-height:40px}.product-price{margin:5px 0;font-weight:700;color:var(--primary-color);font-size:18px}.add-to-cart-button{width:100%;padding:12px;background-color:var(--primary-color);color:var(--background-dark);border:none;cursor:pointer;font-weight:700;font-size:14px;transition:all var(--transition-speed) var(--transition-ease);text-transform:uppercase;letter-spacing:.5px;border-top:1px solid rgba(255,255,255,.1);border-radius:0 0 10px 10px}.add-to-cart-button:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.product-card.partner .add-to-cart-button{background-color:var(--primary-color);color:#fff;animation:buttonPulse 2s infinite}@keyframes buttonPulse{0%{box-shadow:0 0 #c4915a66}70%{box-shadow:0 0 0 7px #c4915a00}to{box-shadow:0 0 #c4915a00}}.product-card.partner .add-to-cart-button{background-color:var(--primary-color);color:var(--background-dark);animation:buttonPulse 2s infinite}.product-card.partner .add-to-cart-button:hover{background-color:var(--primary-color)}.product-card.vip .add-to-cart-button{background-color:var(--vip-color);color:var(--background-dark);animation:buttonPulse 2s infinite}.product-card.vip .add-to-cart-button:hover{background-color:var(--primary-hover)}@media (max-width: 768px){.product-image{height:110px}.product-name{font-size:14px}.product-price{font-size:16px}.add-to-cart-button{padding:8px;font-size:13px}}.product-list{padding:15px 10px;height:100%;overflow-y:auto}.search-wrapper{width:100%;display:flex;justify-content:center;align-items:center;margin-bottom:25px}.search-container{position:sticky;top:0;z-index:10;padding:10px;width:80%;max-width:450px;box-sizing:border-box}.search-input{width:100%;padding:12px 16px;border-radius:8px;border:2px solid var(--primary-color);background-color:var(--background-dark);color:var(--primary-text);font-size:15px;transition:all var(--transition-speed) var(--transition-ease);box-shadow:none;display:block}.search-input:focus{outline:none;border-color:var(--primary-hover)}.product-category{margin-bottom:35px;animation:fadeIn .4s ease-out;display:flex;flex-direction:column;align-items:center}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.product-category h3{color:var(--primary-text);font-size:18px;margin-bottom:20px;position:relative;letter-spacing:.5px;font-weight:600;display:flex;align-items:center;justify-content:center;text-align:center;padding-bottom:10px;width:100%;max-width:300px}.product-category h3:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:80px;height:3px;background:var(--primary-color);border-radius:4px}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:20px;justify-content:center;max-width:700px;margin:0 auto;padding:0 10px;width:100%;box-sizing:border-box}@media (max-width: 600px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:15px;padding:0 5px}.search-container{width:95%}.search-input{font-size:14px;padding:10px 14px}}@media (max-width: 400px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}}.partner-special{display:flex;justify-content:center;margin-bottom:30px;padding:10px}.partnership-options{display:flex;flex-direction:column;gap:15px;width:100%;max-width:650px}.partnership-option-button{background-color:var(--accent-color);color:var(--primary-text);border:none;border-radius:10px;padding:16px 20px;font-size:16px;cursor:pointer;transition:all var(--transition-speed) var(--transition-ease);display:flex;align-items:center;justify-content:center;text-align:center;box-shadow:var(--card-shadow);border:1px solid rgba(196,145,90,.3);position:relative;overflow:hidden}.partnership-option-button:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,transparent,rgba(196,145,90,.5),transparent)}.partnership-option-button.hc{background-color:var(--partner-hc)}.partnership-option-button.classique{background-color:var(--partner-classique)}.partnership-option-button:hover{transform:translateY(-3px);box-shadow:var(--hover-shadow);border-color:#c4915a99}.partnership-option-button:active{transform:translateY(0)}.partner-special-button{background-color:var(--accent-color);color:var(--primary-text);border:2px solid var(--primary-color);padding:14px 28px;border-radius:10px;font-weight:700;cursor:pointer;transition:all var(--transition-speed) var(--transition-ease);font-size:16px;width:100%;max-width:220px;box-shadow:var(--card-shadow);position:relative;overflow:hidden}.partner-special-button:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(to right,#fff0,#ffffff1a,#fff0);transform:rotate(45deg);transition:all .5s}.partner-special-button:hover{background-color:var(--primary-color);color:var(--background-dark);transform:translateY(-2px)}.partner-special-button:hover:after{left:100%}@media (max-width: 1024px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px}}@media (max-width: 768px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}.search-input{padding:12px 15px;font-size:15px}.product-category h3{font-size:16px;margin-bottom:14px}.partnership-option-button{padding:14px 16px;font-size:15px}}@media (max-width: 480px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}.partnership-options{gap:10px}.partnership-option-button{padding:12px 14px;font-size:14px}.partner-special-button{padding:12px 20px;font-size:15px;max-width:180px}}.cart-summary{display:flex;flex-direction:column;height:100%;flex:1;overflow-y:auto;padding:.6rem}.client-section{margin-bottom:8px;display:flex;flex-direction:column;width:100%}.form-group{margin-bottom:6px;width:100%}.form-group label{display:block;margin-bottom:5px;font-weight:600;color:var(--primary-text);font-size:14px;text-align:center}.form-group input{width:100%;padding:8px 30px 8px 8px;border-radius:4px;border:1px solid var(--primary-color);background-color:var(--background-dark);color:var(--primary-text);font-size:13px}.form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 8px #c4915a4d}.vip-client-indicator{display:flex;align-items:center;justify-content:center;margin:5px 0 10px;padding:6px 12px;border-radius:8px;background-color:#c4915a1a;border:2px solid var(--primary-color);animation:vipPulse 2s infinite;min-width:200px;box-shadow:0 4px 12px #c4915a33}@keyframes vipPulse{0%{box-shadow:0 0 #c4915a66}70%{box-shadow:0 0 0 10px #c4915a00}to{box-shadow:0 0 #c4915a00}}.vip-badge{margin-right:8px;padding:3px 8px;background-color:var(--primary-color);color:var(--background-dark);border-radius:4px;font-size:12px;font-weight:700;text-transform:uppercase;box-shadow:0 2px 6px #0003;letter-spacing:1px}.checkout-error{background-color:#dc354533;color:#ff8a8a;padding:8px;border-radius:4px;margin-bottom:10px;font-size:13px;border:1px solid rgba(220,53,69,.5)}.cart-items{flex-grow:1;overflow-y:auto;margin-bottom:8px}.empty-cart{text-align:center;padding:15px 8px;color:#6c7a8a;font-style:italic;display:flex;justify-content:center;align-items:center;height:100%;font-size:13px;border:1px dashed rgba(108,122,138,.3);border-radius:6px;margin:15px 0}.cart-item{background-color:var(--background-light);border-radius:6px;padding:6px;margin-bottom:6px;display:flex;justify-content:space-between;align-items:center}.cart-item-info{flex-grow:1}.cart-item-info h4{margin:0 0 2px;font-size:13px;color:var(--primary-text)}.cart-item-price{color:var(--primary-color);font-weight:700}.cart-item-controls{display:flex;align-items:center}.quantity-control{display:flex;align-items:center;margin-right:6px}.quantity-control button{width:22px;height:22px;border-radius:4px;border:none;background-color:var(--accent-color);color:var(--primary-text);font-weight:700;cursor:pointer;display:flex;justify-content:center;align-items:center}.quantity-control span{margin:0 5px;min-width:18px;text-align:center;font-size:13px}.remove-button{width:22px;height:22px;border-radius:4px;border:none;background-color:var(--error-color);color:#fff;font-weight:700;cursor:pointer;display:flex;justify-content:center;align-items:center}.cart-total{background-color:var(--accent-color);padding:8px;border-radius:6px;display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;width:100%;max-width:400px;margin-left:auto;margin-right:auto}.total-label{font-weight:700;font-size:15px;color:var(--primary-text)}.total-amount{font-weight:700;font-size:18px;color:#fff}.search-container{position:relative;width:100%}.suggestions-dropdown{position:absolute;top:calc(100% + 2px);left:0;right:0;background-color:var(--background-light);border:1px solid var(--primary-color);border-radius:4px;z-index:100;max-height:150px;overflow-y:auto;box-shadow:0 4px 8px #0000004d;animation:dropdownFade .2s ease-in-out}.suggestions-content{width:100%;background-color:var(--background-medium);border-radius:4px;overflow:hidden}.suggestion-item{padding:8px 12px;cursor:pointer;color:var(--primary-text);transition:background-color .2s ease;display:flex;align-items:center;border-bottom:1px solid rgba(196,145,90,.1)}.suggestion-item:hover{background-color:var(--background-light);padding-left:15px;transition:all .2s ease}.suggestion-highlight{font-weight:600;color:var(--primary-color);font-size:13px}.selected-client{margin-top:3px;font-size:13px;padding:5px;text-align:center;color:var(--primary-text);background-color:#c4915a1a;border-radius:4px;display:flex;align-items:center;justify-content:center;gap:8px}.selected-client-vip{background-color:#c4915a33;border:1px solid var(--primary-color);animation:vipPulseLight 2s infinite}@keyframes vipPulseLight{0%{box-shadow:0 0 #c4915a33}70%{box-shadow:0 0 0 5px #c4915a00}to{box-shadow:0 0 #c4915a00}}.client-name-display{font-weight:700;color:var(--primary-color)}.vip-badge-small{font-size:10px;font-weight:700;text-transform:uppercase;padding:2px 4px;background-color:var(--primary-color);color:var(--background-dark);border-radius:3px;letter-spacing:.5px;box-shadow:0 1px 3px #0000004d}.client-input-wrapper{position:relative;display:flex;width:100%}.validate-client-btn{position:absolute;right:5px;top:50%;transform:translateY(-50%);background-color:var(--primary-color);color:var(--background-dark);border:none;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;cursor:pointer;transition:all .2s}.validate-client-btn:hover{background-color:var(--primary-hover);transform:translateY(-50%) scale(1.1)}.validate-client-btn:disabled{background-color:var(--accent-color);cursor:not-allowed;opacity:.6}.user-profile-card{width:100%;min-width:280px;margin:0;box-sizing:border-box;background-color:var(--background-medium);border-radius:10px;border:1px solid var(--primary-color);box-shadow:0 4px 15px #00000026;overflow:hidden;position:relative}.user-profile-info{display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .3s ease;padding:12px 16px;position:relative;background:linear-gradient(to right,rgba(196,145,90,.1),transparent)}.user-profile-info:hover{background:linear-gradient(to right,#c4915a33,#c4915a0d)}.user-profile-avatar{width:46px;height:46px;border-radius:50%;overflow:hidden;border:2px solid var(--primary-color);background-color:var(--background-dark);flex-shrink:0;box-shadow:0 2px 5px #0003}.user-profile-avatar img{width:100%;height:100%;object-fit:cover}.user-profile-initials{width:100%;height:100%;background-color:var(--primary-color);color:var(--background-dark);display:flex;justify-content:center;align-items:center;font-weight:700;font-size:14px}.user-profile-details{flex-grow:1;overflow:hidden;margin-right:4px}.user-profile-name{font-size:14px;font-weight:600;color:var(--primary-text);margin:0 0 4px;letter-spacing:.3px}.user-profile-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.user-badge{font-size:10px;font-weight:500;padding:2px 8px;border-radius:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.role-badge{color:var(--primary-color);background:#c4915a26}.phone-badge{color:#4a8f9c;background:#4a8f9c26}.rib-badge{color:#7c7c7c;background:#7c7c7c26}.user-profile-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 14px 90px;background-color:var(--background-dark)}.stat-item{position:relative;padding:6px 8px;border-radius:6px;background-color:#ffffff0d;overflow:hidden;transition:transform .2s,box-shadow .2s;min-height:40px}.stat-item:hover{transform:translateY(-2px);box-shadow:0 3px 6px #0000001a}.stat-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background-color:var(--primary-color)}.stat-label{display:block;font-size:8px;color:var(--primary-text);opacity:.7;margin-bottom:2px;text-transform:uppercase;font-weight:500;letter-spacing:.2px;line-height:1.2}.stat-value{font-size:10px;font-weight:600;color:var(--primary-text);word-wrap:break-word;white-space:normal;overflow:hidden;display:flex;align-items:center;line-height:1.3}.user-profile-stats .dividends{font-size:.9em;color:#4caf50;display:inline-block;margin-left:5px;font-weight:500}.service-time{font-style:italic;font-weight:400;font-size:11px;color:var(--primary-color);display:block;margin-top:3px;line-height:1}@media (max-width: 768px){.user-profile-info{padding:10px 12px}.user-profile-stats{grid-template-columns:1fr;padding:10px;gap:8px}.user-profile-badges{gap:4px}.user-badge{font-size:9px;padding:1px 6px}.stat-item{min-height:40px}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;z-index:1000;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-container{background-color:var(--background-light);border-radius:8px;padding:25px;width:90%;max-width:500px;box-shadow:0 5px 25px #0000004d;border:2px solid var(--primary-color)}.modal-container h2{color:var(--primary-color);margin-top:0;margin-bottom:25px;text-align:center;border-bottom:1px solid var(--primary-color);padding-bottom:15px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--primary-text)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border-radius:6px;border:1px solid var(--primary-color);background-color:var(--background-dark);color:var(--primary-text);font-size:15px}.form-group select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url('data:image/svg+xml;utf8,<svg fill="%23C4915A" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>');background-repeat:no-repeat;background-position:right 10px center}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-hover);box-shadow:0 0 10px #c4915a4d}.modal-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:25px}.cancel-button,.confirm-button{padding:10px 20px;border-radius:6px;font-weight:700;cursor:pointer;transition:all .3s}.cancel-button{background-color:transparent;border:1px solid #6c7a8a;color:#6c7a8a}.cancel-button:hover{background-color:#6c7a8a1a;color:var(--primary-text);border-color:var(--primary-color)}.confirm-button{background-color:var(--primary-color);border:none;color:var(--background-dark)}.confirm-button:hover:not(:disabled){background-color:var(--primary-hover)}.confirm-button:disabled{background-color:var(--accent-color);cursor:not-allowed;opacity:.7}.vip-modal textarea{resize:vertical;min-height:80px}.modal-loading{display:flex;flex-direction:column;align-items:center;padding:30px 0}.modal-loading .spinner{margin-bottom:15px}.modal-loading p{color:var(--primary-color);font-style:italic}.error-message{background-color:#ff3b3033;color:#ff6b6b;padding:12px;margin-top:15px;border-radius:5px;border-left:4px solid #ff3b30;font-size:14px;text-align:center}.form-group .error{color:#ff6b6b;font-size:12px;margin-top:5px;font-style:italic}.partnership-modal{max-width:500px;background-color:var(--background-light);border:2px solid var(--primary-color);box-shadow:0 8px 25px #0006;border-radius:8px;overflow:hidden}.partnership-modal h2{color:var(--primary-color);margin-bottom:10px;font-size:22px;position:relative;padding-bottom:10px;text-align:center}.partnership-modal h2:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:80px;height:3px;background:var(--primary-color);border-radius:2px}.partnership-modal h3{color:var(--primary-text);font-size:16px;margin-top:0;margin-bottom:25px;padding:8px 12px;background-color:var(--background-medium);border-radius:6px;display:inline-block;text-align:center;width:100%;box-shadow:0 2px 5px #00000026;border-left:3px solid var(--primary-color)}.partnership-form{padding:15px 0}.modal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px}.modal-loading .spinner{width:50px;height:50px;border:4px solid rgba(196,145,90,.1);border-radius:50%;border-top-color:var(--primary-color);animation:spin 1s ease-in-out infinite;margin-bottom:15px;box-shadow:0 0 10px #c4915a33}.modal-loading p{color:var(--primary-text);font-size:16px;opacity:.8}@keyframes spin{to{transform:rotate(360deg)}}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:10px;color:var(--primary-text);font-weight:500;font-size:16px}.form-group select{width:100%;padding:12px 15px;border-radius:8px;border:2px solid var(--primary-color);background-color:var(--background-dark);color:var(--primary-text);font-size:15px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23C4915A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px;transition:all var(--transition-speed)}.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #c4915a40}.modal-actions{display:flex;justify-content:space-between;margin-top:25px;gap:15px}.cancel-button,.confirm-button{flex:1;padding:12px 20px;border-radius:8px;font-weight:600;font-size:15px;transition:all var(--transition-speed) var(--transition-ease);cursor:pointer;text-align:center}.cancel-button{background-color:transparent;color:var(--primary-text);border:1px solid var(--accent-color)}.confirm-button{background-color:var(--primary-color);color:var(--background-dark);border:none}.cancel-button:hover{background-color:#ffffff0d;transform:translateY(-2px)}.confirm-button:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 8px #c4915a4d}.confirm-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.modal-error{text-align:center;padding:20px;color:#ff6b6b;display:flex;flex-direction:column;align-items:center;gap:15px}.modal-error p{margin:0;font-size:14px}.retry-button{background-color:var(--primary-color);color:var(--background-dark);border:none;border-radius:5px;padding:8px 15px;font-size:14px;cursor:pointer;transition:background-color .3s}.retry-button:hover{background-color:var(--hover-color)}@media (max-width: 576px){.partnership-modal{width:90%;max-width:none}.partnership-modal h2{font-size:20px}.form-group select{padding:10px 12px}.modal-actions{flex-direction:column}.cancel-button,.confirm-button{width:100%}}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%);background-color:var(--background-light);color:var(--primary-text);padding:14px 25px;border-radius:8px;box-shadow:0 6px 20px #00000059;z-index:1000;animation:fadeInUp .3s var(--transition-ease);border-left:4px solid var(--primary-color);font-weight:500;font-size:15px;min-width:250px;text-align:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.toast.temporary{animation:fadeInUp .3s var(--transition-ease),fadeOutDown .3s 2.7s var(--transition-ease)}.toast.vip{border-left:4px solid var(--primary-color);background:linear-gradient(to right,rgba(196,145,90,.15),transparent);box-shadow:0 6px 20px #c4915a33;animation:fadeInUp .3s var(--transition-ease),pulseBorder 2s infinite}@keyframes pulseBorder{0%{border-left-color:var(--primary-color);box-shadow:0 6px 20px #c4915a33}50%{border-left-color:var(--primary-hover);box-shadow:0 6px 20px #d2a36966}to{border-left-color:var(--primary-color);box-shadow:0 6px 20px #c4915a33}}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%,30px);filter:blur(5px)}to{opacity:1;transform:translate(-50%);filter:blur(0)}}@keyframes fadeOutDown{0%{opacity:1;transform:translate(-50%);filter:blur(0)}to{opacity:0;transform:translate(-50%,30px);filter:blur(5px)}}@media (max-width: 576px){.toast{width:85%;max-width:none;padding:12px 20px;font-size:14px}}.caisse-page{display:flex;flex-direction:column;height:100vh;background-color:var(--background-dark);color:var(--primary-text)}.main-container{display:flex;flex-direction:column;flex:1;padding:.8rem;overflow:hidden}.caisse-grid{display:grid;grid-template-columns:1.3fr 2.7fr;gap:1rem;height:100%;overflow:hidden}.left-column{display:flex;flex-direction:column;gap:.8rem;height:100%;overflow:hidden}.profile-section{display:flex;flex-direction:column}.section-title{font-size:16px;margin:0 0 8px;color:var(--primary-color);border-bottom:1px solid var(--primary-color);padding-bottom:4px}@media (max-width: 900px){.caisse-grid{grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:.8rem}.left-column{display:grid;grid-template-columns:1fr 2fr;gap:.8rem;overflow:visible}.products-section,.cart-section{height:auto;max-height:none;padding:.8rem}.products-section{order:3;overflow-y:auto;max-height:60vh}.profile-section{order:1}.cart-section{order:2;overflow-y:auto;max-height:300px}}.products-section,.cart-section,.profile-section{display:flex;flex-direction:column;background:var(--background-light);border-radius:6px;box-shadow:0 3px 10px #00000026;padding:1rem;overflow:hidden;border:1px solid var(--primary-color)}.products-section,.cart-section{height:100%}.products-section h2,.cart-section h2,.profile-section h2{margin-top:0;margin-bottom:.8rem;font-size:18px;color:var(--primary-color)}padding-bottom: .9rem; color: var(--primary-color); font-size: 1.5rem; position: relative; letter-spacing: .5px; text-align: center; text-transform: uppercase; } .products-section h2::after,.cart-section h2::after,.profile-section h2::after{content:"";position:absolute;bottom:-1px;left:50%;transform:translate(-50%);width:80px;height:3px;background:var(--primary-color);border-radius:3px}.products-section{overflow-y:auto;padding:1rem}.cart-section{display:flex;flex-direction:column;overflow-y:auto;padding:1rem}.loading-spinner{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:#0c1a2bd9;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.spinner{position:relative;width:70px;height:70px}.spinner:before,.spinner:after{content:"";position:absolute;border-radius:50%}.spinner:before{width:100%;height:100%;border:2px solid rgba(196,145,90,.1);border-top:2px solid var(--primary-color);animation:spin-elegant 1.5s cubic-bezier(.68,-.55,.27,1.55) infinite}.spinner:after{top:15px;left:15px;width:40px;height:40px;border:2px solid rgba(196,145,90,.2);border-bottom:2px solid var(--primary-color);animation:spin-elegant 1.2s cubic-bezier(.68,-.55,.27,1.55) infinite reverse}.loading-spinner:after{content:"Chargement...";font-family:Nunito,sans-serif;font-size:14px;font-weight:500;letter-spacing:1px;text-transform:uppercase;color:var(--primary-text);margin-top:20px;opacity:.9;animation:pulse 1.5s ease-in-out infinite}@keyframes spin-elegant{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}@keyframes fadeOut{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-20px)}}@media (max-width: 1024px){.caisse-grid{gap:1.2rem}.products-section,.cart-section{padding:1.2rem}.products-section h2,.cart-section h2{font-size:1.3rem}}@media (max-width: 768px){.caisse-grid{grid-template-columns:1fr;grid-template-rows:auto 1fr;height:auto;gap:1rem}.main-container{padding:.8rem}.products-section,.cart-section{height:auto;max-height:none;padding:1rem}.products-section{max-height:60vh}}@media (max-width: 480px){.products-section h2,.cart-section h2{font-size:1.2rem;padding-bottom:.7rem}.products-section,.cart-section{padding:.8rem;border-radius:8px}}.system-status{background-color:var(--background-light);border-radius:8px;padding:15px;margin:10px 0;box-shadow:0 4px 12px #00000026;border:1px solid var(--primary-color)}.system-status h3{margin-top:0;margin-bottom:15px;border-bottom:1px solid var(--primary-color);padding-bottom:10px;color:var(--primary-color)}.status-item{display:flex;justify-content:space-between;margin-bottom:8px}.status-label{font-weight:500;color:var(--primary-text)}.status-value{font-family:monospace;font-weight:600;color:var(--primary-color)}.quota-progress{margin-top:10px;height:20px;border-radius:4px;overflow:hidden}.quota-bar{height:100%;transition:width .5s ease;color:#fff;text-align:center;line-height:20px;font-size:12px;font-weight:700}.quota-low{background-color:var(--success-color)}.quota-medium{background-color:var(--vip-color)}.quota-high{background-color:var(--error-color)}.system-actions{margin-top:15px;display:flex;justify-content:flex-end;gap:10px}.system-actions button{padding:6px 12px;border-radius:4px;border:none;cursor:pointer;font-weight:500;font-size:14px;transition:background-color .2s}.refresh-btn{background-color:var(--background-medium);color:var(--primary-text)}.refresh-btn:hover{background-color:var(--background-light)}.clear-cache-btn{background-color:var(--primary-color);color:var(--background-dark)}.clear-cache-btn:hover{background-color:var(--primary-hover)}.api-warning{background-color:var(--vip-color)}.system-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:20px 0}.system-loader{position:relative;width:60px;height:60px;margin-bottom:15px}.system-loader:before,.system-loader:after{content:"";position:absolute;border-radius:50%}.system-loader:before{width:100%;height:100%;border:2px solid rgba(212,175,55,.1);border-top:2px solid var(--primary-color);animation:system-spin 1.5s cubic-bezier(.68,-.55,.27,1.55) infinite}.system-loader:after{top:15px;left:15px;width:30px;height:30px;border:2px solid rgba(212,175,55,.2);border-bottom:2px solid var(--primary-color);animation:system-spin 1.2s cubic-bezier(.68,-.55,.27,1.55) infinite reverse}.system-loading p{font-family:Nunito,sans-serif;font-size:14px;font-weight:500;letter-spacing:1px;color:var(--primary-text);opacity:.9;animation:system-pulse 1.5s ease-in-out infinite}@keyframes system-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes system-pulse{0%,to{opacity:.6}50%{opacity:.9}}.system-status-page{min-height:100vh;display:flex;flex-direction:column;background-color:var(--background-dark)}.system-status-page h1{color:var(--primary-color);margin:20px 0;font-size:1.8rem;text-align:center}.system-status-page .system-status{margin:0 auto;max-width:800px;width:100%;padding:0 20px}.vips-page{display:flex;flex-direction:column;min-height:100vh;background-color:var(--background-dark)}.vips-container{flex:1;padding:20px;max-width:1400px;margin:0 auto;width:100%}.vips-container h1{margin-bottom:20px;color:var(--primary-color);border-bottom:2px solid var(--primary-color);padding-bottom:10px;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.7)}.vips-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.search-filter{flex:1;max-width:300px}.search-input{width:100%;padding:10px;border:2px solid var(--primary-color);border-radius:5px;font-size:14px;background-color:var(--background-dark);color:var(--primary-text)}.search-input::placeholder{color:#ffffff80}.filter-buttons{display:flex;gap:10px}.filter-btn{padding:8px 16px;background-color:var(--background-light);border:1px solid var(--primary-color);border-radius:5px;cursor:pointer;transition:all .2s;color:var(--primary-text)}.filter-btn:hover{background-color:var(--accent-color)}.filter-btn.active{background-color:var(--primary-color);color:var(--background-dark);border-color:var(--primary-color);font-weight:700}.vips-count{margin-bottom:15px;font-size:14px;color:var(--primary-text)}.vips-table-container{overflow-x:auto;background-color:var(--background-light);border-radius:8px;box-shadow:0 4px 12px #00000026}.vips-table{width:100%;border-collapse:collapse;min-width:800px}.vips-table th{background-color:var(--background-light);padding:12px 15px;text-align:left;font-weight:600;color:var(--primary-color);border-bottom:2px solid var(--primary-color)}.vips-table td{padding:12px 15px;border-bottom:1px solid var(--background-light);color:var(--primary-text)}.vips-table tr:hover{background-color:var(--background-light)}.vips-table tr.expired{background-color:#c9383833}.vips-table tr.expired:hover{background-color:#c938384d}.days-remaining{font-weight:600}.expired-text{color:var(--error-color)}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600}.status-badge.active{background-color:var(--success-color);color:#fff}.status-badge.expired{background-color:var(--error-color);color:#fff}.notes-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-results{text-align:center;color:var(--primary-text);padding:30px 0}.loading-indicator{text-align:center;padding:30px 0;color:var(--primary-text)}@media (max-width: 768px){.vips-controls{flex-direction:column;gap:15px}.search-filter{max-width:100%}}.clients-page{display:flex;flex-direction:column;min-height:100vh;background-color:var(--background-dark)}.clients-container{flex:1;padding:20px;max-width:1400px;margin:0 auto;width:100%}.clients-container h1{margin-bottom:20px;color:var(--primary-color);border-bottom:2px solid var(--primary-color);padding-bottom:10px;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.7)}.client-search-form{display:flex;align-items:center;justify-content:center;margin-bottom:30px}.search-container{position:relative;width:80%;max-width:700px}.search-icon{position:absolute;left:20px;top:50%;transform:translateY(-50%);color:var(--primary-text);opacity:.7;z-index:1;display:flex;align-items:center;justify-content:center;width:20px;height:20px}.client-search-input{width:100%;padding:14px 20px 14px 45px;font-size:16px;border:2px solid var(--primary-color);border-radius:8px;background-color:var(--background-dark);color:var(--primary-text);transition:all .3s ease;box-shadow:none}.search-container:focus-within .search-icon{opacity:1;color:var(--primary-color)}.client-search-input:focus{border-color:var(--primary-hover);outline:none}.client-search-input::placeholder{color:#ffffff80;font-style:italic}.suggestions-dropdown{position:absolute;top:calc(100% + 2px);left:0;right:0;background-color:var(--background-light);border:1px solid var(--primary-color);border-radius:8px;z-index:100;max-height:180px;overflow-y:auto;box-shadow:0 6px 12px #0000004d;animation:dropdownFade .2s ease-in-out}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.suggestions-content{width:100%;background-color:var(--background-medium);border-radius:8px;overflow:hidden}.suggestion-item{padding:10px 15px;cursor:pointer;color:var(--primary-text);transition:background-color .2s ease;display:flex;align-items:center;border-bottom:1px solid rgba(212,175,55,.1)}.suggestion-item:hover{background-color:var(--background-light);padding-left:18px;transition:all .2s ease}.suggestion-highlight{font-weight:600;color:var(--primary-color);font-size:14px;text-shadow:0 1px 1px rgba(0,0,0,.2)}.client-summary{padding:30px;background-color:var(--background-medium);border-radius:8px;margin-bottom:30px;box-shadow:var(--card-shadow);position:relative;overflow:hidden}.client-summary:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--primary-hover))}.client-summary h2{color:var(--primary-color);margin-bottom:20px;font-size:28px;font-weight:700;text-shadow:1px 1px 3px rgba(0,0,0,.3)}.client-stats{display:flex;gap:20px;flex-wrap:wrap}.stat-box{background-color:var(--background-light);padding:20px;border-radius:8px;min-width:180px;display:flex;flex-direction:column;flex:1;transition:all .3s ease;position:relative;overflow:hidden;box-shadow:0 4px 10px #0003}.stat-box:hover{transform:translateY(-5px);box-shadow:0 8px 15px #0000004d}.stat-box:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background-color:var(--primary-color);opacity:.8}.stat-box.total-spent:before{background-color:var(--primary-color)}.stat-box.purchases-count:before{background-color:var(--success-color)}.stat-box.average-purchase:before{background-color:var(--partner-color)}.stat-label{font-size:14px;color:var(--primary-text);margin-bottom:10px;opacity:.8;text-transform:uppercase;letter-spacing:1px}.stat-value{font-size:24px;font-weight:700;color:var(--primary-color)}.purchases-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding:0 8px}.purchases-title{font-size:18px;font-weight:700;color:var(--primary-color);display:flex;align-items:center}.purchases-actions{display:flex;gap:10px}.action-button{padding:8px 12px;background-color:var(--background-medium);border:1px solid var(--accent-color);border-radius:4px;color:var(--primary-text);cursor:pointer;font-size:14px;transition:all .2s}.action-button:hover{background-color:var(--accent-color)}.purchases-table-container{background-color:var(--background-medium);border-radius:8px;overflow:hidden;box-shadow:var(--card-shadow)}.purchases-table{width:100%;border-collapse:separate;border-spacing:0;min-width:800px}.purchases-table th{background-color:var(--background-light);padding:14px 15px;text-align:left;font-weight:600;color:var(--primary-color);border-bottom:2px solid var(--primary-color)}.purchases-table td{padding:14px 15px;border-bottom:1px solid var(--background-light);color:var(--primary-text);transition:background-color .2s}.purchases-table tr:hover td{background-color:#d4af370d}.purchases-table tr.highlight-row td{background-color:#d4af371a;border-left:3px solid var(--primary-color)}.purchases-table tfoot{background-color:var(--background-light)}.purchases-table tfoot td{color:var(--primary-color)}.article-cell{max-width:300px}.article-content{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.price-cell{text-align:right}.total-cell{font-weight:600;color:var(--primary-color)}.text-center{text-align:center}.date-cell{display:flex;flex-direction:column}.date-main{font-weight:600;margin-bottom:3px}.date-days{font-size:12px;opacity:.8;color:var(--primary-color)}.discount-cell{white-space:nowrap}.discount-badge{background-color:#4bb54333;color:var(--success-color);padding:2px 6px;border-radius:4px;font-size:12px;font-weight:600}.no-purchases,.no-client-selected{padding:40px;text-align:center;color:var(--primary-text);background-color:var(--background-medium);border-radius:8px;margin-top:20px}.loading-indicator{text-align:center;padding:30px;color:var(--primary-text)}.error-message{background-color:#c9383833;color:var(--error-color);padding:10px 15px;border-radius:4px;margin-bottom:20px;border:1px solid var(--error-color)}@media (max-width: 768px){.client-search-form{flex-direction:column;align-items:stretch}.search-container{max-width:100%}.search-button{width:100%}.client-stats{flex-direction:column}}.system-status-container{padding:20px;max-width:1200px;margin:0 auto;color:#fff}.system-status-container h1{font-size:2rem;margin-bottom:20px;color:var(--primary-color)}.system-status-container h2{font-size:1.5rem;margin-bottom:15px;color:var(--primary-color)}.card{background-color:#1e283ccc;border-radius:8px;padding:20px;margin-bottom:25px;box-shadow:0 4px 8px #0003}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px}.form-grid label{display:block;margin-bottom:5px;font-weight:500;color:#eaeaea}.form-grid input,.form-grid select{width:100%;padding:10px;border-radius:4px;border:1px solid #495057;background-color:#2c3e50;color:#fff;font-size:1rem}.form-grid input:focus,.form-grid select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #ffa50033}.form-grid .checkbox-row{display:flex;align-items:center;gap:10px}.form-grid .checkbox-row input[type=checkbox]{width:auto;margin-right:8px}.form-grid button{background-color:var(--primary-color);color:#000;font-weight:700;padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .2s}.form-grid button:hover{background-color:#ffb732}.hint{font-size:.9rem;color:#adb5bd;margin-top:5px}.info{background-color:#007bff33;color:#a2d2ff;padding:10px;border-radius:4px;margin-top:15px;grid-column:1 / -1}.error-banner{background-color:#dc354533;color:#f8d7da;padding:10px;border-radius:4px;margin-bottom:15px}.table-wrapper{overflow-x:auto}.table{width:100%;border-collapse:collapse;margin-top:10px;font-size:.95rem}.table th,.table td{padding:12px 15px;text-align:left;border-bottom:1px solid #495057}.table th{background-color:#1e283ce6;color:var(--primary-color);font-weight:600}.table tr:hover{background-color:#323c5080}code{background-color:#2c3e50;padding:2px 5px;border-radius:3px;font-family:monospace}.status-button{padding:6px 12px;border-radius:4px;border:none;font-weight:500;cursor:pointer;transition:background-color .2s,opacity .2s}.status-button:disabled{cursor:not-allowed;opacity:.6}.status-button.activate{background-color:#28a745;color:#fff}.status-button.activate:hover:not(:disabled){background-color:#218838}.status-button.deactivate{background-color:#dc3545;color:#fff}.status-button.deactivate:hover:not(:disabled){background-color:#c82333}.employee-inactive{background-color:#dc35451a!important;opacity:.8}.employee-active{background-color:#28a7450d}*{margin:0;padding:0;box-sizing:border-box}body,html{width:100%;height:100%;font-family:Nunito,sans-serif;background-color:var(--background-dark);color:var(--primary-text)}#root{width:100%;height:100%}.loading-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;background-color:var(--background-dark);color:var(--primary-text)}.loading-indicator{position:relative;width:60px;height:60px;margin-bottom:15px}.loading-outer-circle{position:absolute;top:0;left:0;width:100%;height:100%;border:2px solid rgba(255,157,196,.15);border-top:2px solid var(--primary-color);border-radius:50%;animation:spin 1.5s cubic-bezier(.68,-.55,.27,1.55) infinite}.loading-inner-circle{position:absolute;top:15px;left:15px;width:30px;height:30px;border:2px solid rgba(255,189,212,.25);border-bottom:2px solid var(--accent-color);border-radius:50%;animation:spin 1s cubic-bezier(.68,-.55,.27,1.55) infinite reverse}.loading-text{font-family:Nunito,sans-serif;font-size:16px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--accent-color);margin-bottom:5px;animation:pulse 1.5s ease-in-out infinite}.loading-subtitle{font-family:Nunito,sans-serif;font-size:14px;font-weight:400;color:var(--primary-text);opacity:.7;letter-spacing:.5px;animation:fadeIn 1s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:.7;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.6}50%{opacity:.9}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s var(--transition-ease)}.modal-container{background-color:var(--background-medium);border-radius:12px;overflow:hidden;width:100%;max-width:500px;padding:25px;box-shadow:var(--modal-shadow);position:relative;border:1px solid var(--accent-color);animation:slideDown .4s var(--transition-ease)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.modal-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:20px}.cancel-button{background-color:transparent;color:var(--primary-text);border:1px solid var(--accent-color);padding:10px 20px;border-radius:6px;transition:all var(--transition-speed)}.confirm-button{background-color:var(--primary-color);color:var(--background-dark);border:none;padding:10px 20px;border-radius:6px;transition:all var(--transition-speed)}.cancel-button:hover{background-color:#ffffff0d}.confirm-button:hover{background-color:var(--primary-hover)}
