:root{--color-primary: #0e375f;--color-secondary: #e62a26;--color-accent: #e62a26;--color-success: #0e375f;--color-warning: #ffd93d;--color-error: #e62a26;--color-background: #0a0a0a;--color-surface: rgba(14, 55, 95, .1);--color-surface-light: rgba(14, 55, 95, .2);--color-surface-dark: #0f0f0f;--color-cream: #fffef8;--color-cream-light: #ffffff;--color-text-primary: #fffef8;--color-text-secondary: rgba(255, 254, 248, .8);--color-text-muted: rgba(255, 254, 248, .6);--font-family-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-display: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--border-radius-sm: .375rem;--border-radius-md: .5rem;--border-radius-lg: .75rem;--border-radius-xl: 1rem;--border-radius-2xl: 1.5rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;height:100%;min-height:100%}html:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#0a0a0a 0%,#0e375f 50%,#0a0a0a 100%);z-index:-1;min-height:100vh;height:100%}body{font-family:var(--font-family-primary);background:transparent;color:var(--color-text-primary);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;min-height:100%;position:relative}#root{background:transparent;min-height:100%;position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-display);font-weight:700;line-height:1.2;margin-bottom:var(--spacing-md)}h1{font-size:clamp(2rem,5vw,4rem)}h2{font-size:clamp(1.5rem,4vw,3rem)}h3{font-size:clamp(1.25rem,3vw,2rem)}h4{font-size:clamp(1.125rem,2.5vw,1.5rem)}h5{font-size:clamp(1rem,2vw,1.25rem)}h6{font-size:clamp(.875rem,1.5vw,1rem)}p{margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}a{color:var(--color-text-primary);text-decoration:none;transition:all var(--transition-normal);position:relative}a:hover{color:var(--color-secondary);transform:translateY(-1px)}button{font-family:var(--font-family-primary);cursor:pointer;border:none;outline:none;transition:all var(--transition-normal)}button:focus{outline:2px solid var(--color-primary);outline-offset:2px}input,textarea,select{font-family:inherit;font-size:100%;background:var(--color-surface);border:1px solid var(--color-surface-light);border-radius:var(--border-radius-md);color:var(--color-text-primary);padding:var(--spacing-md);transition:all var(--transition-normal)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(14,55,95,.2)}img{max-width:100%;height:auto;display:block}html,body{scrollbar-width:thin;scrollbar-color:transparent transparent;-ms-overflow-style:none}html.scrolling,body.scrolling{scrollbar-color:var(--color-primary) var(--color-surface)}html::-webkit-scrollbar,body::-webkit-scrollbar{width:8px;height:8px}html::-webkit-scrollbar-track,body::-webkit-scrollbar-track{background:transparent}html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb{background:transparent;border-radius:var(--border-radius-sm);transition:background var(--transition-normal)}html.scrolling::-webkit-scrollbar-thumb,body.scrolling::-webkit-scrollbar-thumb{background:var(--color-primary)}html.scrolling::-webkit-scrollbar-thumb:hover,body.scrolling::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}*{scrollbar-width:thin;scrollbar-color:transparent transparent}*:hover{scrollbar-color:var(--color-primary) var(--color-surface)}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:transparent;border-radius:var(--border-radius-sm);transition:background var(--transition-normal)}*:hover::-webkit-scrollbar-thumb{background:var(--color-primary)}*::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}::selection{background:var(--color-secondary);color:var(--color-text-primary)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.golden-white-gradient{background:linear-gradient(135deg,#ffffff 0%,#fffef8 30%,#fffef5 60%,#fffef8 100%)}.golden-white-gradient-light{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%)}.glass{background:rgba(14,55,95,.15);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(245,245,220,.1);box-shadow:0 8px 32px rgba(0,0,0,.37)}.glass-light{background:rgba(245,245,220,.05);backdrop-filter:blur(15px) saturate(180%);-webkit-backdrop-filter:blur(15px) saturate(180%);border:1px solid rgba(245,245,220,.15)}.gradient-text{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 3s ease-in-out infinite}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.fade-in{animation:fadeIn .6s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.scroll-animate{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.scroll-animate.visible{opacity:1;transform:translateY(0)}.scroll-animate-left{opacity:0;transform:translate(-30px);transition:opacity .8s ease-out,transform .8s ease-out}.scroll-animate-left.visible{opacity:1;transform:translate(0)}.scroll-animate-right{opacity:0;transform:translate(30px);transition:opacity .8s ease-out,transform .8s ease-out}.scroll-animate-right.visible{opacity:1;transform:translate(0)}.scroll-animate-scale{opacity:0;transform:scale(.9);transition:opacity .8s ease-out,transform .8s ease-out}.scroll-animate-scale.visible{opacity:1;transform:scale(1)}@media (max-width: 768px){.container{padding:0 var(--spacing-md)}}.header-logo{display:flex;justify-content:center;align-items:center;position:fixed;top:var(--spacing-md);left:var(--spacing-md);right:var(--spacing-md);z-index:999;transition:all .3s ease-out;transform:translateY(0);opacity:1}.header-logo.hidden{transform:translateY(-100%);opacity:0;pointer-events:none}.header-logo .logo{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-2xl);box-shadow:0 4px 30px rgba(0,0,0,.15);padding:var(--spacing-md) var(--spacing-xl);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;transition:all var(--transition-normal);width:auto;position:relative;overflow:hidden}.header-logo .logo:hover{transform:translateY(-2px);box-shadow:0 6px 35px rgba(0,0,0,.2);background:linear-gradient(135deg,#ffffff 0%,#fffef8 30%,#fffef5 60%,#fffef8 100%)}.header-logo .logo.long-pressing{transform:scale(.95);box-shadow:0 2px 20px rgba(14,55,95,.3)}.long-press-indicator{position:absolute;bottom:0;left:0;right:0;height:4px;background:rgba(230,42,38,.2);overflow:hidden;border-radius:0 0 var(--border-radius-2xl) var(--border-radius-2xl)}.long-press-progress{height:100%;background:linear-gradient(90deg,var(--color-secondary),var(--color-primary));animation:progressBar 1.5s ease-in-out forwards;transform-origin:left}@keyframes progressBar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.logo-image{height:40px;width:auto;max-width:200px;object-fit:contain;transition:all var(--transition-normal)}.header-logo .logo:hover .logo-image{transform:scale(1.05)}.bottom-nav{position:fixed;bottom:var(--spacing-md);left:var(--spacing-md);right:var(--spacing-md);z-index:1000;background:rgba(14,55,95,.25);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(245,245,220,.1);border-radius:var(--border-radius-2xl);box-shadow:0 -4px 30px rgba(0,0,0,.1);padding:var(--spacing-sm) 0;padding-bottom:calc(var(--spacing-sm) + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-around;transition:all .3s ease-out;transform:translateY(0);opacity:1;max-width:600px;margin:0 auto}.bottom-nav.hidden{transform:translateY(calc(100% + var(--spacing-md)));opacity:0;pointer-events:none}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs);flex:1;padding:var(--spacing-md);text-decoration:none;color:var(--color-text-secondary);transition:all var(--transition-normal);border-radius:var(--border-radius-md);position:relative}.nav-item:before{content:"";position:absolute;top:var(--spacing-xs);left:var(--spacing-sm);right:var(--spacing-sm);bottom:var(--spacing-xs);background:transparent;border-radius:var(--border-radius-lg);transition:all var(--transition-normal);z-index:-1;opacity:0}.nav-item:hover{color:var(--color-text-primary)}.nav-item:hover:before{background:rgba(14,55,95,.3);opacity:1;box-shadow:0 2px 10px rgba(0,0,0,.1)}.nav-item.active{color:var(--color-secondary)}.nav-icon{font-size:1.5rem;transition:all var(--transition-normal)}.nav-item.active .nav-icon{transform:scale(1.1)}.nav-label{font-size:.75rem;font-weight:500;text-align:center}.admin-indicator{position:absolute;right:0;top:50%;transform:translateY(-50%);background:linear-gradient(135deg,var(--color-primary),#0a2847);color:var(--color-text-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-xl);display:flex;align-items:center;gap:var(--spacing-sm);text-decoration:none;font-size:.85rem;font-weight:600;box-shadow:0 4px 16px rgba(14,55,95,.3);transition:all var(--transition-normal)}.admin-indicator:hover{transform:translateY(-50%) translateY(-2px);box-shadow:0 6px 20px rgba(14,55,95,.4)}.admin-icon{font-size:1rem}.admin-label{font-weight:700;text-transform:uppercase;letter-spacing:.5px}.cart-badge{background:var(--color-secondary);color:var(--color-text-primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-md);display:flex;align-items:center;gap:var(--spacing-xs);font-weight:700;font-size:.8rem;margin-left:var(--spacing-xs);box-shadow:0 2px 8px rgba(230,42,38,.3);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 2px 8px rgba(230,42,38,.3)}50%{box-shadow:0 4px 16px rgba(230,42,38,.5)}}.cart-count{font-weight:700}@media (max-width: 1023px){.header-logo{top:0;left:0;right:0;padding-top:calc(var(--spacing-md) + env(safe-area-inset-top))}.header-logo .logo{border-radius:var(--border-radius-2xl);padding:var(--spacing-md) var(--spacing-xl)}.logo-image{height:35px}.bottom-nav{max-width:100%;left:var(--spacing-md);right:var(--spacing-md)}.admin-indicator{position:static;transform:none;margin-left:var(--spacing-md)}.admin-indicator:hover{transform:translateY(-2px)}}@media (max-width: 768px){.header-logo .logo{padding:var(--spacing-sm) var(--spacing-md)}.logo-image{height:30px}.nav-icon{font-size:1.25rem}.nav-label{font-size:.7rem}}.auth-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);backdrop-filter:blur(5px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);pointer-events:auto}.auth-modal{position:relative;width:100%;max-width:450px;padding:var(--spacing-2xl);border-radius:var(--border-radius-xl);z-index:2001;max-height:90vh;overflow-y:auto}.auth-close{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg);background:rgba(230,42,38,.1);border:1px solid rgba(230,42,38,.3);color:var(--color-text-primary);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-normal);font-size:1.2rem}.auth-close:hover{background:rgba(230,42,38,.2);border-color:var(--color-secondary);transform:rotate(90deg)}.auth-header{text-align:center;margin-bottom:var(--spacing-2xl)}.auth-header h2{color:var(--color-text-primary);margin-bottom:var(--spacing-sm);font-size:2rem}.auth-subtitle{color:var(--color-text-secondary);margin:0;font-size:.95rem}.auth-header p{color:var(--color-text-secondary);margin:0}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.auth-error{background:linear-gradient(135deg,rgba(230,42,38,.15),rgba(220,38,38,.1));border:2px solid var(--color-secondary);color:var(--color-secondary);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-lg);display:flex;align-items:center;gap:var(--spacing-md);font-size:.95rem;font-weight:600;box-shadow:0 4px 12px rgba(230,42,38,.2)}.auth-error.shake{animation:shake .5s ease-in-out}.error-icon{font-size:1.5rem;animation:pulse 1s ease-in-out infinite}.error-text{flex:1;line-height:1.4}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-8px)}20%,40%,60%,80%{transform:translate(8px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.auth-demo-info{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);backdrop-filter:blur(10px);border:1px solid rgba(14,55,95,.15);padding:var(--spacing-lg);border-radius:var(--border-radius-md);margin-top:var(--spacing-lg);box-shadow:0 2px 8px rgba(0,0,0,.1)}.auth-demo-info p{color:var(--color-primary);margin:var(--spacing-xs) 0;font-size:.85rem;line-height:1.5}.auth-demo-info p:first-child{font-weight:700;font-size:.9rem;color:var(--color-secondary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.5px}.auth-demo-info code{background:rgba(14,55,95,.1);padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-weight:600;color:var(--color-primary)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-primary)!important;font-weight:500;font-size:.9rem}.form-group label svg{color:var(--color-text-primary)!important}.form-group input{background:rgba(14,55,95,.2);border:2px solid rgba(245,245,220,.2);color:var(--color-text-primary)!important;padding:var(--spacing-md);border-radius:var(--border-radius-md);font-size:1rem;transition:all var(--transition-normal)}.form-group input::placeholder{color:var(--color-text-primary)!important;opacity:.7!important}.form-group input:focus{outline:none;border-color:var(--color-primary);background:rgba(14,55,95,.3);box-shadow:0 0 0 3px rgba(14,55,95,.2)}.form-group input.input-error{border-color:var(--color-secondary);background:rgba(230,42,38,.1);animation:inputShake .3s ease-in-out}.form-group input.input-error:focus{border-color:var(--color-secondary);box-shadow:0 0 0 3px rgba(230,42,38,.2)}@keyframes inputShake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.input-hint{display:block;margin-top:var(--spacing-xs);color:var(--color-text-secondary);font-size:.75rem;font-style:italic;opacity:.7}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-right:45px}.password-toggle{position:absolute;right:var(--spacing-md);background:none;border:none;color:var(--color-text-primary)!important;cursor:pointer;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);font-size:1rem}.password-toggle:hover{color:var(--color-text-primary)!important;opacity:.8}.form-options{display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;color:var(--color-text-secondary)}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary)}.forgot-password{color:var(--color-secondary);text-decoration:none;transition:all var(--transition-normal)}.forgot-password:hover{color:var(--color-text-primary);text-decoration:underline}.auth-submit{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:var(--color-text-primary);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--border-radius-md);font-weight:600;font-size:1rem;cursor:pointer;transition:all var(--transition-normal);margin-top:var(--spacing-md);border:none;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.auth-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px rgba(14,55,95,.4)}.auth-submit:active:not(:disabled){transform:translateY(0)}.auth-submit:disabled{opacity:.7;cursor:not-allowed}.auth-submit .spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--color-text-primary);border-radius:50%;animation:spin .6s linear infinite}.auth-footer{margin-top:var(--spacing-xl);text-align:center}.auth-footer p{color:var(--color-text-secondary);margin:0;font-size:.9rem}.auth-toggle{background:none;border:none;color:var(--color-secondary);cursor:pointer;font-weight:600;text-decoration:underline;padding:0;transition:all var(--transition-normal)}.auth-toggle:hover{color:var(--color-text-primary)}@media (max-width: 768px){.auth-modal{width:95%;padding:var(--spacing-xl);max-height:95vh}.auth-header h2{font-size:1.5rem}.form-options{flex-direction:column;gap:var(--spacing-sm);align-items:flex-start}}.pwa-tutorial-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);animation:fadeInOverlay .3s ease-out}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.pwa-tutorial-modal{position:relative;width:100%;max-width:1100px;max-height:92vh;padding:0;border-radius:24px;z-index:2001;overflow:hidden;background:linear-gradient(135deg,rgba(10,20,35,.95) 0%,rgba(14,35,60,.98) 50%,rgba(10,20,35,.95) 100%);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:2px solid rgba(255,255,255,.15);box-shadow:0 25px 80px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.05) inset,0 1px rgba(255,255,255,.1) inset;animation:slideUpModal .4s cubic-bezier(.34,1.56,.64,1)}@keyframes slideUpModal{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.pwa-tutorial-close{position:absolute;background:rgba(230,42,38,.15);border:2px solid rgba(230,42,38,.4);color:var(--color-text-primary);width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:1.1rem;z-index:100;backdrop-filter:blur(10px)}.pwa-tutorial-close:hover{background:rgba(230,42,38,.25);border-color:var(--color-secondary);transform:scale(1.1) rotate(90deg)}.pwa-tutorial-header{position:relative;padding:var(--spacing-xl) var(--spacing-2xl) var(--spacing-lg);background:rgba(0,0,0,.2);border-bottom:1px solid rgba(255,255,255,.1)}.pwa-tutorial-header .pwa-tutorial-close{top:var(--spacing-xl);right:var(--spacing-xl)}.pwa-tutorial-progress-wrapper{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);margin-top:40px;position:relative}.pwa-progress-steps{display:flex;justify-content:center;gap:var(--spacing-2xl);font-size:.875rem;color:var(--color-text-muted);font-weight:500;position:relative;width:100%;padding:0 var(--spacing-lg)}.pwa-progress-steps span{transition:color .3s ease;position:relative;z-index:2;padding:0 var(--spacing-xs);background:transparent;flex-shrink:0}.pwa-progress-steps span.active{color:var(--color-text-primary);font-weight:600}.pwa-progress-bar{width:calc(100% - var(--spacing-2xl) * 2);max-width:600px;height:4px;background:rgba(255,255,255,.1);border-radius:2px;overflow:hidden;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1}.pwa-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));border-radius:2px;transition:width .4s ease;box-shadow:0 0 10px rgba(14,55,95,.5)}.pwa-tutorial-step{padding:var(--spacing-2xl);overflow-y:auto;max-height:calc(92vh - 120px)}.pwa-step-icon-large{display:flex;justify-content:center;margin-bottom:var(--spacing-lg)}.pwa-step-icon-large svg{width:80px;height:80px;color:var(--color-secondary);filter:drop-shadow(0 4px 12px rgba(230,42,38,.4));animation:pulseIcon 2s ease-in-out infinite}@keyframes pulseIcon{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.pwa-step-title{text-align:center;color:var(--color-text-primary);font-size:2.25rem;margin-bottom:var(--spacing-sm);font-family:var(--font-family-display);font-weight:800;background:linear-gradient(135deg,#ffffff 0%,rgba(255,255,255,.8) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.pwa-step-subtitle{text-align:center;color:var(--color-text-secondary);font-size:1.1rem;margin-bottom:var(--spacing-2xl)}.pwa-info-box{background:rgba(14,55,95,.2);border:2px solid rgba(14,55,95,.4);border-radius:16px;padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);display:flex;gap:var(--spacing-lg);backdrop-filter:blur(10px)}.pwa-info-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(14,55,95,.5);border-radius:12px;font-size:1.5rem;color:#60a5fa;border:1px solid rgba(96,165,250,.3)}.pwa-info-content h3{color:var(--color-text-primary);font-size:1.25rem;margin-bottom:var(--spacing-md)}.pwa-info-content p{color:var(--color-text-secondary);margin-bottom:var(--spacing-md);line-height:1.7}.pwa-features-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.pwa-features-list li{display:flex;align-items:flex-start;gap:var(--spacing-md);color:var(--color-text-primary);line-height:1.7}.pwa-feature-icon{flex-shrink:0;color:#10b981;font-size:1.3rem;margin-top:1px;filter:drop-shadow(0 2px 6px rgba(16,185,129,.4))}.pwa-config-grid{display:flex;flex-direction:column;gap:var(--spacing-2xl);margin-bottom:var(--spacing-2xl)}.pwa-config-section{background:rgba(0,0,0,.2);border:2px solid rgba(255,255,255,.1);border-radius:16px;padding:var(--spacing-xl);backdrop-filter:blur(10px)}.pwa-config-label{color:var(--color-text-primary);font-size:1.1rem;font-weight:700;margin-bottom:var(--spacing-lg);text-transform:uppercase;letter-spacing:.5px;text-align:center}.pwa-device-blocks{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.pwa-device-block{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-xl);background:rgba(255,255,255,.05);border:2px solid rgba(255,255,255,.1);border-radius:16px;cursor:pointer;transition:all .3s ease;color:var(--color-text-secondary);font-family:inherit;font-size:1rem;font-weight:600}.pwa-device-block:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.3)}.pwa-device-block.active{background:linear-gradient(135deg,rgba(14,55,95,.4),rgba(230,42,38,.2));border-color:var(--color-primary);color:var(--color-text-primary);box-shadow:0 8px 24px rgba(14,55,95,.4),0 0 0 3px rgba(14,55,95,.2),inset 0 1px rgba(255,255,255,.1)}.pwa-device-icon{font-size:2.5rem;color:var(--color-secondary);transition:all .3s ease}.pwa-device-block.active .pwa-device-icon{color:var(--color-text-primary);transform:scale(1.1);filter:drop-shadow(0 4px 8px rgba(230,42,38,.5))}.pwa-device-label{font-size:1rem}.pwa-os-blocks{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--spacing-md)}.pwa-os-block{padding:var(--spacing-lg) var(--spacing-xl);background:rgba(255,255,255,.05);border:2px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .3s ease;color:var(--color-text-secondary);font-family:inherit;font-size:1rem;font-weight:600;text-align:center}.pwa-os-block:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);transform:translateY(-2px)}.pwa-os-block.active{background:linear-gradient(135deg,rgba(14,55,95,.5),rgba(10,30,60,.6));border-color:var(--color-primary);color:var(--color-text-primary);box-shadow:0 4px 16px rgba(14,55,95,.4),inset 0 1px rgba(255,255,255,.1)}.pwa-browser-blocks{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--spacing-md)}.pwa-browser-block{padding:var(--spacing-md) var(--spacing-lg);background:rgba(255,255,255,.05);border:2px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .3s ease;color:var(--color-text-secondary);font-family:inherit;font-size:.95rem;font-weight:600;text-align:center}.pwa-browser-block:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);transform:translateY(-2px)}.pwa-browser-block.active{background:linear-gradient(135deg,rgba(14,55,95,.5),rgba(10,30,60,.6));border-color:var(--color-primary);color:var(--color-text-primary);box-shadow:0 4px 16px rgba(14,55,95,.4),inset 0 1px rgba(255,255,255,.1)}.pwa-selected-config{margin-bottom:var(--spacing-2xl)}.pwa-config-preview{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:rgba(14,55,95,.2);border:2px solid rgba(14,55,95,.4);border-radius:16px}.pwa-config-text{color:var(--color-text-muted);font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.pwa-config-badge{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);background:rgba(255,255,255,.1);border-radius:12px;color:var(--color-text-primary);font-weight:600;font-size:1.1rem}.pwa-config-badge svg{font-size:1.25rem;color:var(--color-secondary)}.pwa-config-separator{color:var(--color-text-muted);margin:0 var(--spacing-xs)}.pwa-instructions-list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-2xl)}.pwa-instruction-item{display:flex;gap:var(--spacing-lg);padding:var(--spacing-lg);background:rgba(255,255,255,.05);border:2px solid rgba(255,255,255,.1);border-left:4px solid var(--color-primary);border-radius:12px;transition:all .3s ease;animation:fadeInInstruction .4s ease forwards;opacity:0}@keyframes fadeInInstruction{to{opacity:1}}.pwa-instruction-item:nth-child(1){animation-delay:.1s}.pwa-instruction-item:nth-child(2){animation-delay:.2s}.pwa-instruction-item:nth-child(3){animation-delay:.3s}.pwa-instruction-item:nth-child(4){animation-delay:.4s}.pwa-instruction-item:nth-child(5){animation-delay:.5s}.pwa-instruction-item:nth-child(6){animation-delay:.6s}.pwa-instruction-item:nth-child(7){animation-delay:.7s}.pwa-instruction-item:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);transform:translate(4px)}.pwa-instruction-number{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:var(--color-text-primary);border-radius:10px;font-weight:700;font-size:1.1rem;box-shadow:0 4px 12px rgba(14,55,95,.4)}.pwa-instruction-content{flex:1;display:flex;align-items:center}.pwa-instruction-content p{color:var(--color-text-secondary);line-height:1.7;margin:0;font-size:1rem}.pwa-troubleshooting{background:rgba(255,217,61,.1);border:2px solid rgba(255,217,61,.3);border-left:4px solid var(--color-warning);border-radius:12px;padding:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.pwa-troubleshooting h3{color:var(--color-warning);font-size:1.1rem;margin-bottom:var(--spacing-md)}.pwa-troubleshooting ul{list-style:none;padding:0;margin:0}.pwa-troubleshooting li{color:var(--color-text-secondary);padding:var(--spacing-xs) 0;line-height:1.8;padding-left:var(--spacing-lg);position:relative}.pwa-troubleshooting li:before{content:"•";position:absolute;left:0;color:var(--color-warning);font-weight:700}.pwa-tutorial-actions{display:flex;gap:var(--spacing-md);justify-content:center;margin-top:var(--spacing-2xl)}.pwa-next-button,.pwa-back-button,.pwa-done-button{padding:var(--spacing-md) var(--spacing-2xl);border-radius:12px;font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:var(--spacing-sm)}.pwa-next-button{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border:none;color:var(--color-text-primary);box-shadow:0 4px 16px rgba(14,55,95,.4)}.pwa-next-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(14,55,95,.6)}.pwa-back-button{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.2);color:var(--color-text-secondary)}.pwa-back-button:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3);color:var(--color-text-primary)}.pwa-done-button{background:linear-gradient(135deg,var(--color-success),rgba(14,55,95,.8));border:none;color:var(--color-text-primary);box-shadow:0 4px 16px rgba(14,55,95,.4)}.pwa-done-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(14,55,95,.6)}@media (max-width: 1024px){.pwa-tutorial-modal{max-width:95%}}@media (max-width: 768px){.pwa-tutorial-overlay{padding:var(--spacing-md)}.pwa-tutorial-modal{max-width:100%;max-height:90vh;border-radius:20px}.pwa-tutorial-step{padding:var(--spacing-lg);max-height:calc(90vh - 140px)}.pwa-step-title{font-size:1.75rem}.pwa-step-subtitle{font-size:1rem}.pwa-device-blocks{grid-template-columns:1fr}.pwa-os-blocks,.pwa-browser-blocks{grid-template-columns:1fr;gap:var(--spacing-sm)}.pwa-info-box{flex-direction:column;padding:var(--spacing-lg)}.pwa-tutorial-header{padding:var(--spacing-lg) var(--spacing-md) var(--spacing-md)}.pwa-tutorial-header .pwa-tutorial-close{top:var(--spacing-md);right:var(--spacing-md);width:36px;height:36px;font-size:.95rem}.pwa-tutorial-progress-wrapper{margin-top:50px;gap:var(--spacing-sm)}.pwa-progress-steps{gap:var(--spacing-sm);font-size:.7rem;padding:0;flex-wrap:wrap;justify-content:space-around}.pwa-progress-steps span{padding:0 var(--spacing-xs);white-space:nowrap}.pwa-progress-bar{width:100%;max-width:100%}.pwa-tutorial-actions{flex-direction:column}.pwa-next-button,.pwa-back-button,.pwa-done-button{width:100%;justify-content:center}}.footer{background:linear-gradient(135deg,rgba(14,55,95,.95) 0%,rgba(10,40,70,.97) 50%,rgba(14,55,95,.95) 100%);backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border-top:1px solid rgba(255,255,255,.1);padding:var(--spacing-3xl) 0 var(--spacing-xl);margin-top:0;box-shadow:0 -8px 40px rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.05);position:relative}.footer-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);margin-bottom:var(--spacing-2xl)}.footer-section h4{color:#fff;font-weight:700;margin-bottom:var(--spacing-lg);font-size:1.1rem;text-transform:uppercase;letter-spacing:.5px}.footer-section ul{list-style:none;padding:0;margin:0}.footer-section ul li{margin-bottom:var(--spacing-sm)}.footer-section ul li a{color:rgba(255,255,255,.8);text-decoration:none;transition:all var(--transition-normal);position:relative;display:inline-block;padding-bottom:2px}.footer-section ul li a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,#ffffff,#fffef8);transition:width var(--transition-normal)}.footer-section ul li a:hover{color:#fff}.footer-section ul li a:hover:after{width:100%}.legal-link{background:none;border:none;color:rgba(255,255,255,.8);text-decoration:none;cursor:pointer;font-size:inherit;font-family:inherit;padding:0 0 2px;transition:all var(--transition-normal);text-align:left;position:relative;display:inline-block}.legal-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,#ffffff,#fffef8);transition:width var(--transition-normal)}.legal-link:hover{color:#fff}.legal-link:hover:after{width:100%}.pwa-install-link{display:flex;align-items:center;gap:var(--spacing-xs)}.pwa-install-link-icon{font-size:.875rem;color:var(--color-secondary);transition:all var(--transition-normal)}.pwa-install-link:hover .pwa-install-link-icon{transform:translateY(-2px);color:#fff}.footer-bottom{text-align:center;padding-top:var(--spacing-xl);border-top:1px solid rgba(255,255,255,.1)}.footer-signature{color:rgba(255,255,255,.7);margin-bottom:var(--spacing-sm);font-size:.95rem}.footer-company{color:rgba(255,255,255,.7);font-size:.95rem}.company-link{color:var(--color-secondary);text-decoration:none;font-weight:700;transition:all var(--transition-normal);position:relative;display:inline-block;padding-bottom:2px}.company-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,#ffffff,#fffef8);transition:width var(--transition-normal)}.company-link:hover{color:#fff}.company-link:hover:after{width:100%}.heart-icon{color:var(--color-secondary);display:inline-block;animation:heartbeat 1.5s ease-in-out infinite;margin:0 var(--spacing-xs)}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}@media (max-width: 1024px){.footer-content{grid-template-columns:1fr 1fr;gap:var(--spacing-xl)}}@media (max-width: 768px){.footer{padding:var(--spacing-2xl) 0 var(--spacing-lg)}.footer-content{grid-template-columns:1fr;gap:var(--spacing-lg);text-align:center}.footer-section ul li{display:flex;justify-content:center}.legal-link{text-align:center}}.legal-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);backdrop-filter:blur(5px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg)}.legal-modal{position:relative;width:100%;max-width:800px;max-height:90vh;padding:var(--spacing-2xl);border-radius:var(--border-radius-xl);z-index:2001;overflow-y:auto}.legal-modal-close{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg);background:rgba(230,42,38,.1);border:1px solid rgba(230,42,38,.3);color:var(--color-text-primary);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-normal);font-size:1.2rem}.legal-modal-close:hover{background:rgba(230,42,38,.2);border-color:var(--color-secondary);transform:rotate(90deg)}.legal-modal-header{margin-bottom:var(--spacing-xl)}.legal-modal-header h2{color:var(--color-text-primary);font-size:2rem}.legal-modal-content{color:var(--color-text-secondary);line-height:1.8}.legal-modal-content h3{color:var(--color-text-primary);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md)}.legal-modal-content p{margin-bottom:var(--spacing-md)}.legal-modal-content ul{margin-left:var(--spacing-xl);margin-bottom:var(--spacing-md)}.legal-modal-content li{margin-bottom:var(--spacing-xs)}@media (max-width: 768px){.legal-modal{padding:var(--spacing-xl);max-height:95vh}.legal-modal-header h2{font-size:1.5rem}}.splash-screen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:99999;display:flex;align-items:center;justify-content:center;pointer-events:auto;opacity:1;transition:opacity .5s ease-out;width:100vw;height:100vh;overflow:hidden}.splash-screen.fade-out{opacity:0;pointer-events:none}.splash-background{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#0a0a0a 0%,#0e375f 50%,#0a0a0a 100%);opacity:1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.splash-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.splash-logo-container{position:relative;display:flex;align-items:center;justify-content:center;animation:splashLogoEnter 1.2s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes splashLogoEnter{0%{opacity:0;transform:scale(.8) translateY(20px)}60%{opacity:1;transform:scale(1.05) translateY(0)}to{opacity:1;transform:scale(1) translateY(0)}}.splash-logo-glass{background:linear-gradient(135deg,rgba(255,255,255,.95) 0%,rgba(255,254,248,.98) 30%,rgba(255,254,245,.95) 60%,rgba(255,254,248,.98) 100%);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1px solid rgba(14,55,95,.2);border-radius:var(--border-radius-2xl);box-shadow:0 8px 32px rgba(0,0,0,.4),0 0 0 1px rgba(255,255,255,.1) inset,0 0 60px rgba(14,55,95,.3);padding:var(--spacing-xl) var(--spacing-2xl);position:relative;overflow:hidden;animation:splashGlassPulse 2s ease-in-out infinite}@keyframes splashGlassPulse{0%,to{box-shadow:0 8px 32px rgba(0,0,0,.4),0 0 0 1px rgba(255,255,255,.1) inset,0 0 60px rgba(14,55,95,.3)}50%{box-shadow:0 12px 40px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.15) inset,0 0 80px rgba(230,42,38,.2)}}.splash-logo{height:60px;width:auto;max-width:250px;object-fit:contain;display:block;filter:drop-shadow(0 2px 8px rgba(0,0,0,.2));animation:splashLogoShine 2s ease-in-out infinite}@keyframes splashLogoShine{0%,to{filter:drop-shadow(0 2px 8px rgba(0,0,0,.2))}50%{filter:drop-shadow(0 4px 12px rgba(14,55,95,.4))}}.splash-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:300px;height:300px;background:radial-gradient(circle,rgba(14,55,95,.4) 0%,rgba(230,42,38,.2) 40%,transparent 70%);border-radius:50%;animation:splashGlowPulse 2s ease-in-out infinite;pointer-events:none;z-index:-1}@keyframes splashGlowPulse{0%,to{opacity:.6;transform:translate(-50%,-50%) scale(1)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.1)}}@media (prefers-reduced-motion: reduce){.splash-logo-container{animation:splashLogoEnterReduced .6s ease-out forwards}@keyframes splashLogoEnterReduced{0%{opacity:0}to{opacity:1}}.splash-logo-glass,.splash-logo{animation:none}.splash-glow{animation:none;opacity:.5}}@media (max-width: 768px){.splash-logo-glass{padding:var(--spacing-lg) var(--spacing-xl)}.splash-logo{height:45px;max-width:200px}.splash-glow{width:250px;height:250px}}.hero-section{position:relative;min-height:50vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-bg-picture{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%}.hero-bg-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block}.hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(14,55,95,.5);z-index:1}.hero-content{position:relative;z-index:2;text-align:center;padding:var(--spacing-3xl) var(--spacing-lg)}.hero-logo{margin:0 auto var(--spacing-2xl);display:flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-xl);background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-2xl);box-shadow:0 4px 30px rgba(0,0,0,.15)}.hero-logo-image{height:160px;width:auto;max-width:500px;object-fit:contain;display:block}.hero-cta-button{display:inline-block;background:var(--color-primary);color:var(--color-text-primary);padding:var(--spacing-lg) var(--spacing-2xl);border-radius:var(--border-radius-md);text-decoration:none;font-weight:600;font-size:1rem;transition:all var(--transition-normal);text-transform:uppercase;letter-spacing:1px}.hero-cta-button:hover{background:var(--color-secondary);color:var(--color-text-primary);transform:translateY(-2px);box-shadow:0 8px 20px rgba(14,55,95,.4)}@media (max-width: 768px){.hero-section{min-height:45vh}.hero-logo{padding:var(--spacing-sm) var(--spacing-md);margin:0 auto var(--spacing-2xl)}.hero-logo-image{height:100px}.hero-cta-button{padding:var(--spacing-md) var(--spacing-xl);font-size:.9rem}}.register-cta-section{padding:var(--spacing-md) 0;background:rgba(14,55,95,.12);border-top:1px solid rgba(255,254,248,.05);border-bottom:1px solid rgba(255,254,248,.05);position:relative}.register-cta-link{display:block;text-decoration:none;cursor:pointer}.register-cta-content{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);transition:transform var(--transition-normal)}.register-cta-link:hover .register-cta-content{transform:translateY(-2px)}.register-cta-text{color:var(--color-text-secondary);font-size:clamp(.85rem,1.8vw,1rem);font-weight:400;margin:0;letter-spacing:.2px;transition:color var(--transition-normal);white-space:nowrap}.register-cta-link:hover .register-cta-text{color:var(--color-text-primary)}.register-cta-arrow{color:var(--color-secondary);font-size:1.1rem;line-height:1;transition:opacity var(--transition-normal),transform var(--transition-normal);opacity:0;transform:translate(-6px);flex-shrink:0}.register-cta-link:hover .register-cta-arrow{opacity:1;transform:translate(0)}@media (max-width: 768px){.register-cta-text{white-space:normal;text-align:center}}.about-section{position:relative;padding:60px 0 80px;overflow:hidden}.about-section__bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.about-blob{position:absolute;border-radius:50%;filter:blur(90px)}.about-blob--1{width:480px;height:480px;top:-160px;right:-100px;background:radial-gradient(circle,rgba(230,42,38,.06),transparent 70%)}.about-blob--2{width:360px;height:360px;bottom:-100px;left:-80px;background:radial-gradient(circle,rgba(14,55,95,.28),transparent 70%)}.about-section__inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.about-section__eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.68rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--color-secondary);margin-bottom:18px}.about-section__eyebrow-line{display:block;width:22px;height:1px;background:var(--color-secondary);opacity:.5}.about-section__title{font-family:var(--font-family-display);font-size:clamp(1.9rem,3.2vw,2.7rem);font-weight:800;color:var(--color-text-primary);line-height:1.15;margin-bottom:20px}.about-section__title-accent{color:var(--color-secondary);font-weight:800;font-style:italic}.about-section__divider{width:40px;height:3px;background:linear-gradient(90deg,var(--color-secondary),transparent);border-radius:2px;margin-bottom:20px}.about-section__text{font-size:.97rem;line-height:1.8;color:var(--color-text-secondary);margin-bottom:12px}.about-section__text:last-child{margin-bottom:0}.about-brand{font-weight:700;color:var(--color-text-primary);position:relative;display:inline-block}.about-brand:after{content:"";position:absolute;bottom:-1px;left:0;width:0;height:1.5px;background:var(--color-secondary);border-radius:1px;transition:width .4s ease}.about-brand:hover:after{width:100%}.about-section__cards{display:flex;flex-direction:column;gap:14px}.about-card{position:relative;display:flex;align-items:center;gap:18px;padding:22px 24px;border-radius:14px;background:rgba(14,55,95,.2);border:1px solid rgba(255,254,248,.07);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow:hidden;cursor:default;user-select:none;transition:background .3s ease,border-color .3s ease}.about-card:hover{background:rgba(14,55,95,.28);border-color:rgba(255,254,248,.1)}.about-card__bar{position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:var(--color-secondary);border-radius:0 2px 2px 0;transition:height .3s ease}.about-card:hover .about-card__bar{height:50%}.about-card__icon-wrap{width:50px;height:50px;min-width:50px;border-radius:12px;background:rgba(255,254,248,.05);border:1px solid rgba(255,254,248,.09);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .3s ease,border-color .3s ease}.about-card:hover .about-card__icon-wrap{background:rgba(230,42,38,.1);border-color:rgba(230,42,38,.2)}.about-card__icon{font-size:1.25rem;color:var(--color-secondary);transition:transform .35s cubic-bezier(.34,1.56,.64,1)}.about-card:hover .about-card__icon{transform:scale(1.2)}.about-card__body{display:flex;flex-direction:column;gap:4px}.about-card__label{font-family:var(--font-family-display);font-size:.98rem;font-weight:700;color:var(--color-text-primary);line-height:1.2}.about-card__desc{font-size:.8rem;color:var(--color-text-muted);line-height:1.4}.sa{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.sa.visible{opacity:1;transform:translateY(0)}@media (max-width: 960px){.about-section__inner{grid-template-columns:1fr;gap:40px}}@media (max-width: 480px){.about-section{padding:48px 0 60px}.about-card{padding:16px 18px}.about-card__icon-wrap{width:42px;height:42px;min-width:42px}}.product-ranges-section{padding:var(--spacing-3xl) 0;background:var(--color-text-primary)}.ranges-title{text-align:center;color:var(--color-primary);font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:var(--spacing-3xl);font-weight:700;text-transform:uppercase}.ranges-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--spacing-lg);max-width:1400px;margin:0 auto;grid-auto-rows:180px}.range-card:nth-child(1){grid-column:1 / 6;grid-row:1 / 2}.range-card:nth-child(2){grid-column:6 / 10;grid-row:1 / 3}.range-card:nth-child(3){grid-column:10 / 13;grid-row:1 / 2}.range-card:nth-child(4){grid-column:1 / 6;grid-row:2 / 4}.range-card:nth-child(5){grid-column:10 / 13;grid-row:2 / 4}.range-card:nth-child(6){grid-column:6 / 10;grid-row:3 / 4}.range-card{text-decoration:none;position:relative;border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:0 2px 15px rgba(0,0,0,.1);transition:all .4s cubic-bezier(.4,0,.2,1)}.range-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,rgba(0,0,0,.3) 40%,transparent 100%);transition:all .4s ease;z-index:1}.range-card:hover{transform:scale(1.02);box-shadow:0 8px 30px rgba(0,0,0,.2)}.range-card:hover:after{background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 40%,transparent 100%)}.range-image-wrapper{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.range-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(14,55,95,.15) 0%,rgba(230,42,38,.1) 100%);color:#fff;font-weight:700;font-size:1.5rem;text-align:center;padding:var(--spacing-xl);letter-spacing:1px;text-shadow:2px 2px 8px rgba(0,0,0,.3);transition:all .4s ease}.range-card:hover .range-placeholder{background:linear-gradient(135deg,rgba(14,55,95,.2) 0%,rgba(230,42,38,.15) 100%)}.range-image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1)}.range-card:hover .range-image-wrapper img{transform:scale(1.08)}.range-name{position:absolute;bottom:0;left:0;color:#fff;font-size:1.3rem;font-weight:800;margin:0;padding:var(--spacing-lg) var(--spacing-xl);text-transform:uppercase;letter-spacing:1.5px;z-index:2;transition:all .3s ease;text-shadow:2px 2px 10px rgba(0,0,0,.5);line-height:1.2}.range-card:hover .range-name{padding-left:calc(var(--spacing-xl) + 8px);letter-spacing:2px}.range-card:nth-child(3) .range-name{max-width:100%;word-spacing:100vw;font-size:1.2rem}@media (max-width: 1024px){.ranges-grid{grid-template-columns:repeat(8,1fr);grid-auto-rows:150px;gap:var(--spacing-md)}.range-card:nth-child(1){grid-column:1 / 5;grid-row:1 / 2}.range-card:nth-child(2){grid-column:5 / 9;grid-row:1 / 3}.range-card:nth-child(3){grid-column:1 / 4;grid-row:2 / 3}.range-card:nth-child(4){grid-column:4 / 9;grid-row:3 / 5}.range-card:nth-child(5){grid-column:1 / 4;grid-row:3 / 5}.range-card:nth-child(6){grid-column:1 / 6;grid-row:5 / 6}.range-name{font-size:1.1rem;padding:var(--spacing-md) var(--spacing-lg);letter-spacing:1px}.range-placeholder{font-size:1.2rem}}@media (max-width: 768px){.product-ranges-section{padding:var(--spacing-2xl) 0}.ranges-grid{grid-template-columns:1fr;grid-auto-rows:250px;gap:var(--spacing-md)}.range-card:nth-child(1),.range-card:nth-child(2),.range-card:nth-child(3),.range-card:nth-child(4),.range-card:nth-child(5),.range-card:nth-child(6){grid-column:1;grid-row:auto}.range-card:hover{transform:scale(1.01)}.range-name{font-size:1.1rem;padding:var(--spacing-md) var(--spacing-lg);letter-spacing:1px}.range-placeholder{font-size:1.1rem}.range-card:hover .range-name{padding-left:var(--spacing-lg)}}@media (max-width: 480px){.ranges-grid{grid-auto-rows:220px;gap:var(--spacing-sm)}.range-name{font-size:1rem;padding:var(--spacing-sm) var(--spacing-md);letter-spacing:.8px}.range-placeholder{font-size:1rem}}.bestseller-section{padding:var(--spacing-3xl) 0;background:transparent;position:relative;overflow:hidden}.bestseller-header{text-align:center;max-width:800px;margin:0 auto var(--spacing-3xl);padding:0 var(--spacing-lg)}.bestseller-label{font-size:.875rem;text-transform:uppercase;letter-spacing:3px;color:var(--color-secondary);font-weight:600;margin-bottom:var(--spacing-md);display:inline-block;position:relative}.bestseller-label:before,.bestseller-label:after{content:"";position:absolute;top:50%;width:40px;height:2px;background:linear-gradient(90deg,transparent,var(--color-secondary))}.bestseller-label:before{right:calc(100% + 1rem)}.bestseller-label:after{left:calc(100% + 1rem);background:linear-gradient(90deg,var(--color-secondary),transparent)}.bestseller-title{font-size:clamp(2rem,5vw,3.5rem);font-weight:800;margin-bottom:var(--spacing-md);color:var(--color-text-primary);letter-spacing:-.02em}.bestseller-description{font-size:1.125rem;color:var(--color-text-secondary);line-height:1.8}.bestseller-carousel{width:100%;overflow:hidden;position:relative;margin-bottom:var(--spacing-3xl);cursor:grab;-webkit-mask-image:linear-gradient(90deg,transparent 0%,black 10%,black 90%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,black 10%,black 90%,transparent 100%);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.bestseller-carousel:active{cursor:grabbing}.bestseller-carousel *{pointer-events:none}.bestseller-card,.bestseller-card-cta{pointer-events:auto}.bestseller-track{display:flex;gap:var(--spacing-xl);padding:var(--spacing-xl) 0}.bestseller-card{flex:0 0 400px;background:var(--color-surface);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--border-radius-xl);overflow:hidden;transition:all var(--transition-normal);border:1px solid rgba(255,255,255,.1);position:relative}.bestseller-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(14,55,95,.1) 0%,rgba(230,42,38,.05) 100%);opacity:0;transition:opacity var(--transition-normal);pointer-events:none;z-index:1}.bestseller-card:hover{transform:translateY(-8px);border-color:rgba(230,42,38,.3);box-shadow:0 20px 40px rgba(0,0,0,.3),0 0 0 1px rgba(230,42,38,.2)}.bestseller-card:hover:before{opacity:1}.bestseller-card-image{width:100%;height:300px;background:linear-gradient(135deg,rgba(14,55,95,.2) 0%,rgba(14,55,95,.1) 100%);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.bestseller-card-image:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 0%,rgba(230,42,38,.1) 50%,transparent 100%);opacity:0;transition:opacity var(--transition-slow)}.bestseller-card:hover .bestseller-card-image:before{opacity:1}.bestseller-card-image img{width:100%;height:100%;object-fit:contain;padding:var(--spacing-lg);transition:transform var(--transition-slow);position:relative;z-index:2}.bestseller-card:hover .bestseller-card-image img{transform:scale(1.05)}.bestseller-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);text-align:center;color:var(--color-text-muted);font-size:.875rem;background:linear-gradient(135deg,rgba(14,55,95,.3) 0%,rgba(14,55,95,.1) 100%)}.bestseller-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.8) 100%);display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);opacity:0;transition:opacity var(--transition-normal);z-index:10;border-radius:var(--border-radius-xl)}.bestseller-card:hover .bestseller-card-overlay{opacity:1}.bestseller-card-cta{background:var(--color-secondary);color:var(--color-text-primary);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--border-radius-md);font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:1px;text-decoration:none;transition:all var(--transition-normal);display:inline-flex;align-items:center;gap:var(--spacing-sm);box-shadow:0 4px 12px rgba(230,42,38,.4)}.bestseller-card-cta:after{content:"→";transition:transform var(--transition-normal)}.bestseller-card-cta:hover{background:var(--color-primary);transform:translateY(-2px);box-shadow:0 6px 20px rgba(14,55,95,.5)}.bestseller-card-cta:hover:after{transform:translate(4px)}.bestseller-card-content{padding:var(--spacing-xl);position:relative;z-index:2}.bestseller-card-title{font-size:1.125rem;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-sm);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bestseller-card-gamme{font-size:.875rem;color:var(--color-secondary);text-transform:uppercase;letter-spacing:1px;font-weight:600;margin-bottom:var(--spacing-md)}.bestseller-card-sizes-count{color:var(--color-text-muted);font-size:.8125rem;margin-bottom:var(--spacing-xs);font-weight:500;font-style:italic}.bestseller-card-prices{margin-top:auto;padding-top:var(--spacing-sm);border-top:2px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:var(--spacing-xs)}.bestseller-price-row{display:flex;align-items:center}.bestseller-price-row-main{justify-content:center}.bestseller-price-value-ht{color:var(--color-text-primary);font-size:1.125rem;font-weight:700;text-align:center;width:100%;letter-spacing:.02em}.bestseller-price-row-secondary{justify-content:center}.bestseller-price-value-ttc{color:var(--color-text-muted);font-size:.875rem;font-weight:500;text-align:center;width:100%}.bestseller-footer{text-align:center;padding:0 var(--spacing-lg)}.bestseller-footer-cta{display:inline-flex;align-items:center;gap:var(--spacing-md);background:var(--color-surface);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:var(--color-text-primary);padding:var(--spacing-lg) var(--spacing-2xl);border-radius:var(--border-radius-lg);border:2px solid rgba(255,255,255,.1);text-decoration:none;font-weight:600;font-size:1rem;transition:all var(--transition-normal);text-transform:uppercase;letter-spacing:1.5px;position:relative;overflow:hidden}.bestseller-footer-cta:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(230,42,38,.2),transparent);transition:left var(--transition-slow)}.bestseller-footer-cta:after{content:"→";font-size:1.5rem;transition:transform var(--transition-normal)}.bestseller-footer-cta:hover{background:var(--color-secondary);border-color:var(--color-secondary);color:#fff;transform:translateY(-2px);box-shadow:0 8px 24px rgba(230,42,38,.4)}.bestseller-footer-cta:hover:before{left:100%}.bestseller-footer-cta:hover:after{transform:translate(5px);color:#fff}@media (max-width: 768px){.bestseller-section{padding:var(--spacing-2xl) 0}.bestseller-header{margin-bottom:var(--spacing-2xl)}.bestseller-label:before,.bestseller-label:after{width:20px}.bestseller-card{flex:0 0 300px}.bestseller-card-image{height:240px}.bestseller-track{gap:var(--spacing-md);padding:var(--spacing-md) 0}.bestseller-carousel{margin-bottom:var(--spacing-2xl);-webkit-mask-image:linear-gradient(90deg,transparent 0%,black 5%,black 95%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,black 5%,black 95%,transparent 100%)}}@media (max-width: 480px){.bestseller-card{flex:0 0 260px}.bestseller-card-image{height:200px}.bestseller-card-content{padding:var(--spacing-md)}.bestseller-footer-cta{padding:var(--spacing-md) var(--spacing-xl);font-size:.875rem}}.home{min-height:100vh;padding-top:100px;padding-bottom:0;background:transparent}.contact-section-title{text-align:center;color:var(--color-primary);font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:var(--spacing-2xl);font-weight:700}@media (max-width: 1023px){.home{padding-top:70px;padding-bottom:0}.home-contact-section{padding:var(--spacing-2xl) 0}}.product-card{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(14,55,95,.1);border-radius:var(--border-radius-xl);padding:var(--spacing-lg);cursor:pointer;transition:all var(--transition-normal);display:flex;flex-direction:column;height:100%;overflow:hidden;box-shadow:0 4px 16px rgba(0,0,0,.08);position:relative;opacity:1;transform:none}.product-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:all var(--transition-normal);z-index:1;pointer-events:none}.product-card:hover:before{left:100%}.product-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px rgba(0,0,0,.15);border-color:var(--color-primary);background:linear-gradient(135deg,#ffffff 0%,#fffef8 30%,#fffef5 60%,#fffef8 100%)}.product-image{width:100%;aspect-ratio:1;margin-bottom:var(--spacing-md);border-radius:var(--border-radius-lg);overflow:hidden;background:linear-gradient(135deg,#fafafa 0%,#f5f5f5 100%);flex-shrink:0;position:relative;z-index:2;box-shadow:0 2px 8px rgba(0,0,0,.05)}.product-image-img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.product-card:hover .product-image-img{transform:scale(1.05)}.product-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(14,55,95,.1),rgba(230,42,38,.05));color:var(--color-primary);font-size:3rem;font-weight:700;transition:transform var(--transition-normal)}.product-card:hover .product-image-placeholder{transform:scale(1.05)}.product-info{flex:1;display:flex;flex-direction:column;min-height:0;position:relative;z-index:2}.product-name{color:#1a1a1a;font-size:1.125rem;font-weight:600;margin-bottom:var(--spacing-xs);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:3.15rem}.product-gamme{color:var(--color-primary);font-size:.875rem;font-weight:600;margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.5px}.product-sizes-count{color:#666;font-size:.8125rem;margin-top:auto;margin-bottom:var(--spacing-xs);font-weight:500;font-style:italic}.product-prices{margin-top:auto;padding-top:var(--spacing-sm);border-top:2px solid rgba(14,55,95,.1);display:flex;flex-direction:column;gap:var(--spacing-xs)}.price-row{display:flex;align-items:center}.price-row-main{justify-content:center}.price-value-ht{color:var(--color-primary);font-size:1.125rem;font-weight:700;text-align:center;width:100%;letter-spacing:.02em}.price-row-secondary{justify-content:center}.price-value-ttc{color:#666;font-size:.875rem;font-weight:500;text-align:center;width:100%}@keyframes shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.product-card-skeleton{background:#fff;border:1px solid rgba(14,55,95,.08);border-radius:var(--border-radius-xl);padding:var(--spacing-lg);display:flex;flex-direction:column;height:100%;overflow:hidden;box-shadow:0 4px 16px rgba(0,0,0,.05)}.skeleton-image{width:100%;aspect-ratio:1;border-radius:var(--border-radius-lg);margin-bottom:var(--spacing-md);background:linear-gradient(90deg,#f0f4f8 25%,#e2e8f0 50%,#f0f4f8 75%);background-size:600px 100%;animation:shimmer 1.4s ease-in-out infinite}.skeleton-body{flex:1;display:flex;flex-direction:column;gap:8px}.skeleton-line{border-radius:6px;background:linear-gradient(90deg,#f0f4f8 25%,#e2e8f0 50%,#f0f4f8 75%);background-size:600px 100%;animation:shimmer 1.4s ease-in-out infinite}.skeleton-line-title{height:16px;width:80%}.skeleton-line-sub{height:13px;width:50%}.skeleton-line-short{height:12px;width:35%;margin-top:4px}.skeleton-price{margin-top:auto;padding-top:12px;border-top:2px solid rgba(14,55,95,.06);display:flex;flex-direction:column;gap:6px}.skeleton-line-price{height:18px;width:65%;margin:0 auto}.skeleton-line-price-sub{height:13px;width:45%;margin:0 auto}.product-card-skeleton:nth-child(2) .skeleton-line{animation-delay:.1s}.product-card-skeleton:nth-child(3) .skeleton-line{animation-delay:.2s}.product-card-skeleton:nth-child(4) .skeleton-line{animation-delay:.05s}.product-card-skeleton:nth-child(5) .skeleton-line{animation-delay:.15s}.product-card-skeleton:nth-child(6) .skeleton-line{animation-delay:.25s}.product-card-skeleton:nth-child(7) .skeleton-line{animation-delay:.1s}.product-card-skeleton:nth-child(8) .skeleton-line{animation-delay:.2s}.product-card-skeleton:nth-child(9) .skeleton-line{animation-delay:.3s}@media (max-width: 768px){.product-card{padding:var(--spacing-md)}.product-image-placeholder{font-size:2.5rem}.product-name{font-size:1rem}.product-price{font-size:1.25rem}}.product-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);backdrop-filter:blur(10px);z-index:2000;display:flex;align-items:flex-end;justify-content:center;animation:fadeIn .3s ease-out}.product-modal-overlay.closing{animation:fadeOut .4s ease-in}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.product-modal{position:relative;width:100%;max-width:1200px;max-height:95vh;background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1px solid rgba(14,55,95,.1);border-radius:var(--border-radius-2xl) var(--border-radius-2xl) 0 0;padding:var(--spacing-2xl);overflow-y:auto;animation:slideUp .4s ease-out;transform-origin:bottom;box-shadow:0 -8px 32px rgba(0,0,0,.2)}.product-modal.closing{animation:slideDown .4s ease-in}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}.product-modal-close{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg);background:rgba(255,255,255,.9);border:2px solid rgba(14,55,95,.2);color:var(--color-primary);width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-normal);font-size:1.3rem;font-weight:700;z-index:10;box-shadow:0 2px 8px rgba(0,0,0,.1)}.product-modal-close:hover{background:var(--color-secondary);border-color:var(--color-secondary);color:#fff;transform:rotate(90deg) scale(1.1);box-shadow:0 4px 16px rgba(230,42,38,.4)}.product-modal-back{position:absolute;top:var(--spacing-lg);left:var(--spacing-lg);background:rgba(14,55,95,.3);border:1px solid rgba(245,245,220,.2);color:var(--color-text-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-lg);display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;transition:all var(--transition-normal);font-size:.95rem;z-index:10}.product-modal-back:hover{background:rgba(14,55,95,.4);transform:translate(-4px)}.product-modal-wrapper{display:flex;flex-direction:column;gap:var(--spacing-xl);margin-top:var(--spacing-xl)}.product-modal-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl)}.product-modal-images{display:flex;flex-direction:column;gap:var(--spacing-md)}.product-main-image{width:100%;aspect-ratio:1;border-radius:var(--border-radius-xl);overflow:hidden;background:#f8f8f8;position:relative;border:1px solid rgba(14,55,95,.1)}.product-main-image-img{width:100%;height:100%;object-fit:contain;background:rgba(14,55,95,.1)}.product-image-placeholder-large{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(14,55,95,.1),rgba(230,42,38,.05));color:var(--color-primary);font-size:5rem;font-weight:700}.image-nav-button{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.95);border:1px solid rgba(14,55,95,.2);color:#1a1a1a;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-normal);z-index:5;backdrop-filter:blur(10px);box-shadow:0 2px 8px rgba(0,0,0,.15)}.image-nav-button:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff;transform:translateY(-50%) scale(1.1)}.image-nav-prev{left:var(--spacing-md)}.image-nav-next{right:var(--spacing-md)}.image-counter{position:absolute;bottom:var(--spacing-md);right:var(--spacing-md);background:rgba(255,255,255,.95);color:#1a1a1a;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-md);font-size:.875rem;font-weight:600;backdrop-filter:blur(10px);box-shadow:0 2px 8px rgba(0,0,0,.15);border:1px solid rgba(14,55,95,.1)}.product-thumbnails{display:flex;gap:var(--spacing-sm);overflow-x:auto;padding-bottom:var(--spacing-xs);scrollbar-width:thin;scrollbar-color:rgba(245,245,220,.3) transparent}.product-thumbnails::-webkit-scrollbar{height:6px}.product-thumbnails::-webkit-scrollbar-track{background:rgba(14,55,95,.2);border-radius:var(--border-radius-sm)}.product-thumbnails::-webkit-scrollbar-thumb{background:rgba(245,245,220,.3);border-radius:var(--border-radius-sm)}.product-thumbnails::-webkit-scrollbar-thumb:hover{background:rgba(245,245,220,.5)}.thumbnail{min-width:80px;height:80px;border-radius:var(--border-radius-md);overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all var(--transition-normal);background:#f8f8f8;position:relative}.thumbnail img{width:100%;height:100%;object-fit:cover}.thumbnail:hover{border-color:var(--color-primary);transform:scale(1.05)}.thumbnail.active{border-color:var(--color-primary);border-width:3px}.thumbnail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:rgba(14,55,95,.1);color:var(--color-primary);font-size:1.5rem;font-weight:600}.product-modal-info{display:flex;flex-direction:column;gap:var(--spacing-xl)}.product-modal-header{display:flex;flex-direction:column;gap:var(--spacing-sm)}.product-modal-gamme{color:var(--color-primary);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-xs)}.product-modal-name{color:#1a1a1a;font-size:2rem;font-weight:700;line-height:1.2;margin-bottom:var(--spacing-md)}.product-modal-prices{margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:linear-gradient(135deg,rgba(255,255,255,.9) 0%,rgba(250,250,250,.9) 100%);border-radius:var(--border-radius-lg);border:1px solid rgba(14,55,95,.1);box-shadow:0 2px 8px rgba(0,0,0,.05)}.product-reference{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:rgba(14,55,95,.05);border-radius:var(--border-radius-md);border-left:3px solid var(--color-primary)}.reference-label{color:#666;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.reference-value{color:var(--color-primary);font-size:1rem;font-weight:700;font-family:Courier New,monospace}.copy-code-btn{background:transparent;border:none;color:var(--color-primary);cursor:pointer;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm);transition:all var(--transition-fast);font-size:1rem;margin-left:auto}.copy-code-btn:hover{background:rgba(14,55,95,.1);transform:scale(1.1)}.copy-code-btn:active{transform:scale(.95)}.copy-code-btn svg{transition:all var(--transition-fast)}.price-row-modal{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.price-row-modal:last-child{margin-bottom:0}.price-row-primary{padding:var(--spacing-sm) 0;border-bottom:2px solid rgba(14,55,95,.1)}.price-row-primary .price-label-modal{color:var(--color-primary);font-size:1rem;font-weight:700}.price-row-primary .price-ht-modal{color:var(--color-primary);font-size:1.75rem;font-weight:700}.price-row-secondary .price-label-modal{color:#666;font-size:.875rem;font-weight:500}.price-row-secondary .price-ttc-modal{color:#666;font-size:1.125rem;font-weight:600}.product-dimensions-modal{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:linear-gradient(135deg,rgba(255,255,255,.9) 0%,rgba(250,250,250,.9) 100%);border-radius:var(--border-radius-md);border:1px solid rgba(14,55,95,.1);margin-top:var(--spacing-sm);box-shadow:0 2px 8px rgba(0,0,0,.05)}.dimensions-label{color:#666;font-size:.875rem;font-weight:500}.dimensions-value{color:#1a1a1a;font-size:.9375rem;font-weight:600}.product-option-group{display:flex;flex-direction:column;gap:var(--spacing-md)}.product-option-label{color:#1a1a1a;font-size:1rem;font-weight:600}.size-selector,.material-selector,.package-type-selector{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.material-display,.quantity-display{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.material-badge,.quantity-badge{background:#f0f4f8;border:1px solid rgba(14,55,95,.2);color:#1a1a1a;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);font-size:.95rem;font-weight:500}.quantity-total{display:block;font-size:.85rem;opacity:.8;margin-top:var(--spacing-xs)}.size-option,.material-option,.package-type-option{background:rgba(255,255,255,.8);border:2px solid rgba(14,55,95,.15);color:var(--color-primary);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-lg);cursor:pointer;transition:all var(--transition-normal);font-size:.95rem;font-weight:600;position:relative;overflow:hidden}.size-option:before,.material-option:before,.package-type-option:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(14,55,95,.05);transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.size-option:hover:before,.material-option:hover:before,.package-type-option:hover:before{width:200%;height:200%}.size-option:hover,.material-option:hover,.package-type-option:hover{background:rgba(255,255,255,1);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px rgba(14,55,95,.15)}.size-option.active,.material-option.active,.package-type-option.active{background:linear-gradient(135deg,var(--color-primary) 0%,#0a2847 100%);border-color:var(--color-primary);color:#fff;font-weight:700;box-shadow:0 4px 16px rgba(14,55,95,.3);transform:translateY(-2px)}.size-option.active:before,.material-option.active:before,.package-type-option.active:before{display:none}.product-description{padding-top:var(--spacing-xl);border-top:1px solid rgba(14,55,95,.1);width:100%}.product-description h3{color:#1a1a1a;font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-md)}.product-description p{color:#4a4a4a;line-height:1.8}.similar-products{padding-top:var(--spacing-xl);border-top:1px solid rgba(14,55,95,.1);width:100%}.similar-products h3{color:#1a1a1a;font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-md)}.similar-products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md)}.similar-product-card{background:#ffffff;border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-lg);padding:var(--spacing-md);cursor:pointer;transition:all var(--transition-normal);box-shadow:0 2px 4px rgba(0,0,0,.05)}.similar-product-card:hover{transform:translateY(-2px);border-color:var(--color-primary);box-shadow:0 4px 8px rgba(0,0,0,.1)}.similar-product-image{width:100%;aspect-ratio:1;border-radius:var(--border-radius-md);overflow:hidden;margin-bottom:var(--spacing-sm);background:#f8f8f8;position:relative}.similar-product-image-img{width:100%;height:100%;object-fit:cover}.similar-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(14,55,95,.1),rgba(230,42,38,.05));color:var(--color-primary);font-size:1.5rem;font-weight:600}.similar-product-name{color:#1a1a1a;font-size:.875rem;font-weight:500;margin-bottom:var(--spacing-xs);line-height:1.4}.similar-product-price{color:var(--color-primary);font-size:1rem;font-weight:600}.product-modal::-webkit-scrollbar{width:8px}.product-modal::-webkit-scrollbar-track{background:#f0f0f0;border-radius:var(--border-radius-sm)}.product-modal::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:var(--border-radius-sm)}.product-modal::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}@media (max-width: 1024px){.product-modal-content{grid-template-columns:1fr}.similar-products-grid{grid-template-columns:repeat(2,1fr)}}.out-of-stock-badge-modal{display:inline-flex;align-items:center;gap:6px;background:#dc2626;color:#fff;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:7px 14px;border-radius:6px;margin-top:var(--spacing-xs);box-shadow:0 3px 10px rgba(220,38,38,.45);animation:pulse-stock 2s ease-in-out infinite}.out-of-stock-badge-modal:before{content:"⚠";font-size:.9rem}@keyframes pulse-stock{0%,to{box-shadow:0 3px 10px rgba(220,38,38,.45)}50%{box-shadow:0 3px 18px rgba(220,38,38,.75)}}.product-modal-actions{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:2px solid rgba(14,55,95,.1);display:flex;flex-direction:column;gap:var(--spacing-md)}.discount-tiers{margin-bottom:12px;display:flex;flex-direction:column;gap:6px}.discount-tiers-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#475569}.discount-tiers-list{display:flex;flex-wrap:wrap;gap:6px}.discount-tier-badge{background:rgba(14,55,95,.07);color:#0e375f;border:1px solid rgba(14,55,95,.15);border-radius:100px;padding:3px 10px;font-size:.78rem;font-weight:700}.product-discount-banner{background:linear-gradient(135deg,#eef6ee,#f0faf0);border:1px solid #bbdfc2;border-radius:10px;padding:14px 18px;margin:16px 0}.product-discount-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.product-discount-icon{font-size:20px;line-height:1}.product-discount-title{font-weight:600;font-size:.95rem;color:#15803d}.product-discount-tiers{display:flex;flex-wrap:wrap;gap:8px}.product-discount-tier-badge{background:white;border:1px solid #bbdfc2;border-radius:6px;padding:8px 14px;font-size:.85rem;color:#166534;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.product-discount-tier-qty{font-weight:600}.product-discount-tier-value{color:#15803d;font-weight:700;font-size:.9rem}.product-modal-actions-cart{display:flex;gap:var(--spacing-lg);align-items:flex-end}.btn-toggle-stock{width:100%;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:600;font-size:.875rem;cursor:pointer;transition:all var(--transition-normal);border:2px solid;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);text-transform:uppercase;letter-spacing:.4px}.btn-toggle-stock.out-of-stock{background:rgba(220,38,38,.06);border-color:#dc2626;color:#dc2626}.btn-toggle-stock.out-of-stock:hover:not(:disabled){background:#dc2626;color:#fff}.btn-toggle-stock.in-stock{background:rgba(34,197,94,.06);border-color:#16a34a;color:#16a34a}.btn-toggle-stock.in-stock:hover:not(:disabled){background:#16a34a;color:#fff}.btn-toggle-stock:disabled{opacity:.6;cursor:not-allowed}.stock-feedback{font-size:.82rem;font-weight:600;padding:6px 12px;border-radius:var(--border-radius-sm);text-align:center;animation:fadeInUp .25s ease-out}.stock-feedback.added{background:rgba(220,38,38,.08);color:#dc2626;border:1px solid rgba(220,38,38,.2)}.stock-feedback.removed{background:rgba(34,197,94,.08);color:#16a34a;border:1px solid rgba(34,197,94,.2)}.stock-feedback.error{background:rgba(234,179,8,.08);color:#b45309;border:1px solid rgba(234,179,8,.25)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.cart-quantity-selector{display:flex;flex-direction:column;gap:var(--spacing-sm)}.cart-quantity-selector label{color:var(--color-primary);font-weight:600;font-size:.9rem}.quantity-input-group{display:flex;align-items:center;gap:var(--spacing-xs);background:white;border:2px solid rgba(14,55,95,.2);border-radius:var(--border-radius-md);padding:var(--spacing-xs)}.quantity-btn-modal{width:36px;height:36px;background:var(--color-primary);color:var(--color-text-primary);border:none;border-radius:var(--border-radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);font-size:1.2rem;font-weight:700}.quantity-btn-modal:hover:not(:disabled){background:var(--color-secondary);transform:scale(1.1)}.quantity-btn-modal:disabled{opacity:.3;cursor:not-allowed}.quantity-input-group input{width:60px;text-align:center;border:none;background:transparent;color:var(--color-primary);font-weight:700;font-size:1.1rem;-moz-appearance:textfield}.quantity-input-group input::-webkit-outer-spin-button,.quantity-input-group input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-input-group input:focus{outline:none}.btn-add-to-cart{flex:1;background:linear-gradient(135deg,var(--color-primary),#0a2847);color:var(--color-text-primary);padding:var(--spacing-lg) var(--spacing-xl);border-radius:var(--border-radius-md);font-weight:700;font-size:1rem;cursor:pointer;transition:all var(--transition-normal);border:none;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);text-transform:uppercase;letter-spacing:.5px;position:relative;overflow:hidden}.btn-add-to-cart:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left var(--transition-normal)}.btn-add-to-cart:hover:not(:disabled):before{left:100%}.btn-add-to-cart:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px rgba(14,55,95,.4)}.btn-add-to-cart:active:not(:disabled){transform:translateY(0)}.btn-add-to-cart.added{background:linear-gradient(135deg,#22c55e,#16a34a);cursor:default;animation:successPulse .5s ease-out}@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.btn-add-to-cart:disabled{opacity:1}@media (max-width: 768px){.product-modal{padding:var(--spacing-xl);max-height:100vh;border-radius:0}.product-modal-name{font-size:1.5rem}.product-modal-price{font-size:2rem}.size-selector,.material-selector{flex-direction:column}.size-option,.material-option{width:100%}.similar-products-grid{grid-template-columns:1fr}.product-modal-actions,.product-modal-actions-cart{flex-direction:column;align-items:stretch}.cart-quantity-selector{width:100%}.quantity-input-group{justify-content:center}.product-discount-banner{padding:12px 14px;margin:12px 0}.product-discount-title{font-size:.9rem}.product-discount-tiers{gap:6px}.product-discount-tier-badge{padding:7px 12px;font-size:.8rem}}@media (max-width: 480px){.product-discount-banner{padding:10px 12px;margin:12px 0;border-radius:10px;box-sizing:border-box;max-width:100%;overflow:hidden}.product-discount-header{margin-bottom:8px}.product-discount-title{font-size:.85rem}.product-discount-tiers{gap:6px;flex-wrap:wrap}.product-discount-tier-badge{padding:6px 10px;font-size:.78rem;white-space:normal;word-break:break-word}}.catalogue{min-height:100vh;padding-top:100px;padding-bottom:100px;background:transparent}.catalogue-hero{background:transparent;padding:var(--spacing-2xl) 0;text-align:center;position:relative}.catalogue-hero h1{font-size:clamp(2rem,5vw,3rem);margin-bottom:var(--spacing-sm);font-weight:700;color:var(--color-text-primary)}.catalogue-hero p{font-size:clamp(.95rem,2vw,1.125rem);color:var(--color-text-secondary)}.catalogue-content{padding:var(--spacing-2xl) 0}.search-section{margin-bottom:var(--spacing-xl)}.search-bar{position:relative;display:flex;align-items:center;background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);backdrop-filter:blur(20px);border:2px solid rgba(14,55,95,.15);border-radius:var(--border-radius-2xl);padding:var(--spacing-lg) var(--spacing-xl);box-shadow:0 4px 16px rgba(0,0,0,.08);transition:all var(--transition-normal);min-height:60px}.search-bar:focus-within{border-color:var(--color-primary);box-shadow:0 6px 24px rgba(14,55,95,.15);transform:translateY(-2px)}.search-icon{color:var(--color-primary);font-size:1.2rem;margin-right:var(--spacing-md);opacity:.7}.search-input{flex:1;border:none;background:transparent;color:var(--color-primary);font-size:1.1rem;font-weight:500;outline:none;padding:var(--spacing-sm) 0}.search-input::placeholder{color:var(--color-primary);opacity:.5}.search-clear{background:rgba(230,42,38,.1);border:1px solid rgba(230,42,38,.3);color:var(--color-secondary);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);font-size:.9rem;margin-left:var(--spacing-sm)}.search-clear:hover{background:var(--color-secondary);color:var(--color-text-primary);transform:rotate(90deg) scale(1.1)}.search-results-count{color:var(--color-primary);font-size:.9rem;font-weight:600;margin:var(--spacing-md) 0 0 0;padding-left:var(--spacing-lg);opacity:.8}.filters-section{margin-bottom:var(--spacing-2xl);padding:var(--spacing-lg);background:linear-gradient(135deg,rgba(255,255,255,.9) 0%,rgba(255,254,249,.85) 100%);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(14,55,95,.1);border-radius:var(--border-radius-2xl);box-shadow:0 4px 16px rgba(0,0,0,.08)}.display-controls-section{position:fixed;top:50%;right:var(--spacing-xl);transform:translateY(-50%);z-index:100;padding:var(--spacing-md);background:linear-gradient(135deg,rgba(255,255,255,.95) 0%,rgba(255,254,249,.95) 100%);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-xl);box-shadow:0 8px 32px rgba(0,0,0,.12);transition:all var(--transition-normal);width:fit-content}.display-controls-section:hover{box-shadow:0 12px 40px rgba(0,0,0,.18);transform:translateY(-50%) scale(1.02)}.filters-wrapper{position:relative;display:flex;align-items:center;width:100%;min-width:0;gap:0;overflow:visible}.filters{display:flex;gap:var(--spacing-sm);overflow-x:auto;overflow-y:visible;flex:1;min-width:0;scrollbar-width:none;padding:2px 0;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;justify-content:flex-start}@media (min-width: 1025px){.filters{justify-content:center}}.filters::-webkit-scrollbar{display:none}.scroll-arrow{background:linear-gradient(135deg,rgba(255,255,255,.98) 0%,rgba(255,254,249,.98) 100%);backdrop-filter:blur(10px);border:none;color:var(--color-primary);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-normal);font-size:1.8rem;font-weight:700;flex-shrink:0;box-shadow:0 2px 8px rgba(0,0,0,.12);z-index:2;outline:none;user-select:none;line-height:1;padding-bottom:2px}.scroll-arrow:focus{outline:none}.scroll-arrow:hover{background:linear-gradient(135deg,var(--color-primary) 0%,#0a2847 100%);color:#fff;transform:scale(1.05);box-shadow:0 4px 12px rgba(14,55,95,.25)}.scroll-arrow:active{transform:scale(.98);box-shadow:0 2px 6px rgba(14,55,95,.2)}.scroll-arrow-left{margin-right:var(--spacing-xs)}.scroll-arrow-right{margin-left:var(--spacing-xs)}.filter-btn{background:rgba(255,255,255,.5);border:2px solid rgba(14,55,95,.15);color:var(--color-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-lg);cursor:pointer;transition:all var(--transition-normal);font-size:.875rem;font-weight:600;white-space:nowrap;flex-shrink:0;min-height:44px;display:flex;align-items:center;justify-content:center;user-select:none;position:relative;overflow:hidden;outline:none}.filter-btn:focus{outline:none}.filter-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(14,55,95,.1);transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.filter-btn:hover:before{width:200%;height:200%}.filter-btn:hover{background:rgba(255,255,255,.8);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px rgba(14,55,95,.15)}.filter-btn.active{background:linear-gradient(135deg,var(--color-secondary) 0%,#d42522 100%);border-color:var(--color-secondary);color:#fff;font-weight:700;box-shadow:0 4px 16px rgba(230,42,38,.4)}.filter-btn.active:before{display:none}.filter-label-short{display:none}.display-controls{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.display-label{color:var(--color-primary);font-weight:700;font-size:.85rem;white-space:nowrap;letter-spacing:.02em;text-align:center;margin-bottom:var(--spacing-xs);text-transform:uppercase;opacity:.8}.display-icons{display:flex;flex-direction:column;gap:var(--spacing-xs);align-items:center;background:rgba(255,255,255,.5);padding:var(--spacing-xs);border-radius:var(--border-radius-lg);border:1px solid rgba(14,55,95,.1)}.display-icon-btn{background:transparent;border:none;color:var(--color-primary);padding:var(--spacing-xs);border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:center;width:48px;height:48px;outline:none;opacity:.6;position:relative}.display-icon-btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--border-radius-md);background:transparent;transition:all var(--transition-fast)}.display-icon-btn:focus{outline:none}.display-icon-btn:hover:after{background:rgba(14,55,95,.08)}.display-icon-btn:hover{opacity:1;transform:scale(1.08)}.display-icon-btn.active{background:linear-gradient(135deg,var(--color-primary) 0%,#0a2847 100%);color:#fff;opacity:1;box-shadow:0 4px 12px rgba(14,55,95,.3)}.display-icon-btn.active:after{display:none}.products-grid{display:grid;gap:var(--spacing-xl);width:100%}.products-grid.columns-2{grid-template-columns:repeat(2,1fr)}.products-grid.columns-3{grid-template-columns:repeat(3,1fr)}.products-grid.columns-4{grid-template-columns:repeat(4,1fr)}.products-grid.columns-6{grid-template-columns:repeat(6,1fr)}.loading-state,.empty-state{text-align:center;padding:var(--spacing-3xl);color:var(--color-text-secondary);font-size:1.125rem}@media (max-width: 1024px){.catalogue{padding-top:70px}.filters-section{padding:var(--spacing-md)}.display-controls-section{display:none}.products-grid.columns-2,.products-grid.columns-3,.products-grid.columns-4,.products-grid.columns-6{grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}}@media (max-width: 600px){.products-grid.columns-2,.products-grid.columns-3,.products-grid.columns-4,.products-grid.columns-6{grid-template-columns:1fr}}.contact-form-phone-wrapper{width:100%;position:relative}.contact-form-phone-container{display:flex;width:100%;height:auto;min-height:calc(var(--spacing-md) * 2 + 1.5rem);background:rgba(14,55,95,.1);border:1px solid rgba(245,245,220,.2);border-radius:var(--border-radius-md);transition:all var(--transition-normal);overflow:visible}.contact-form-phone-container:focus-within{border-color:var(--color-primary);background:rgba(14,55,95,.15);box-shadow:0 0 0 3px rgba(14,55,95,.1)}.contact-form-phone-container--error{border-color:var(--color-secondary)!important;background:rgba(230,42,38,.05)!important}.contact-form-phone-container--error:focus-within{border-color:var(--color-secondary)!important;box-shadow:0 0 0 3px rgba(230,42,38,.1)!important}.contact-form-phone-selector{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md);background:transparent;border:none;border-right:1px solid rgba(245,245,220,.2);border-radius:var(--border-radius-md) 0 0 var(--border-radius-md);cursor:pointer;transition:all var(--transition-normal);min-width:90px;flex-shrink:0}.contact-form-phone-container:focus-within .contact-form-phone-selector{border-right-color:var(--color-primary)}.contact-form-phone-selector:hover{background:rgba(14,55,95,.05)}.contact-form-phone-selector:focus{outline:none;background:rgba(14,55,95,.1)}.contact-form-phone-flag{font-size:1.25rem;line-height:1}.contact-form-phone-code{color:var(--color-primary);font-weight:500;font-size:.95rem;white-space:nowrap}.contact-form-phone-arrow{margin-left:auto;color:var(--color-primary);opacity:.7;transition:transform var(--transition-normal)}.contact-form-phone-arrow--open{transform:rotate(180deg)}.contact-form-phone-input{flex:1;width:100%;min-height:calc(var(--spacing-md) * 2 + 1.5rem);background:transparent;border:none;border-radius:0 var(--border-radius-md) var(--border-radius-md) 0;padding:var(--spacing-md);font-family:inherit;font-size:1rem;line-height:1.5;color:var(--color-primary);transition:all var(--transition-normal)}.contact-form-phone-input::placeholder{color:rgba(14,55,95,.5);opacity:1}.contact-form-phone-input:placeholder-shown{color:rgba(14,55,95,.5)}.contact-form-phone-input:not(:placeholder-shown){color:var(--color-primary)}.contact-form-phone-input:focus{outline:none}.contact-form-phone-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#FFFFFF;border:1px solid rgba(14,55,95,.2);border-radius:var(--border-radius-md);box-shadow:0 8px 30px rgba(0,0,0,.2);z-index:1000;overflow:hidden;max-height:300px;display:flex;flex-direction:column}.contact-form-phone-search-container{padding:var(--spacing-sm);border-bottom:1px solid rgba(14,55,95,.1);background:rgba(14,55,95,.02)}.contact-form-phone-search{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:rgba(14,55,95,.05);border:1px solid rgba(14,55,95,.1);border-radius:var(--border-radius-sm);font-family:inherit;font-size:.9rem;color:var(--color-primary);transition:all var(--transition-normal)}.contact-form-phone-search:focus{outline:none;border-color:var(--color-primary);background:rgba(14,55,95,.1);box-shadow:0 0 0 2px rgba(14,55,95,.1)}.contact-form-phone-search::placeholder{color:rgba(14,55,95,.5)}.contact-form-phone-list{overflow-y:auto;max-height:240px;padding:var(--spacing-xs)}.contact-form-phone-list::-webkit-scrollbar{width:8px}.contact-form-phone-list::-webkit-scrollbar-track{background:rgba(14,55,95,.05);border-radius:var(--border-radius-sm)}.contact-form-phone-list::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:var(--border-radius-sm)}.contact-form-phone-list::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}.contact-form-phone-item{width:100%;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-normal);text-align:left;font-family:inherit;font-size:.95rem;color:var(--color-primary)}.contact-form-phone-item:hover{background:rgba(14,55,95,.1)}.contact-form-phone-item:focus{outline:none;background:rgba(14,55,95,.15)}.contact-form-phone-item--selected{background:rgba(14,55,95,.15);font-weight:600}.contact-form-phone-item-flag{font-size:1.25rem;line-height:1;flex-shrink:0}.contact-form-phone-item-name{flex:1;color:var(--color-primary)}.contact-form-phone-item-code{color:rgba(14,55,95,.7);font-size:.9rem;font-weight:500}.contact-form-phone-empty{padding:var(--spacing-lg);text-align:center;color:rgba(14,55,95,.6);font-size:.9rem}@media (max-width: 768px){.contact-form-phone-selector{min-width:80px;padding:var(--spacing-sm) var(--spacing-md)}.contact-form-phone-code{font-size:.875rem}}.contact-form-wrapper{background:rgba(255,255,255,.9);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(14,55,95,.1);border-radius:var(--border-radius-2xl);padding:var(--spacing-2xl);display:flex;flex-direction:column;height:100%;box-shadow:0 4px 16px rgba(0,0,0,.08);transition:all var(--transition-normal)}.contact-form-wrapper:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.12)}.contact-form-title{color:var(--color-primary)!important;margin:0 0 var(--spacing-xl) 0!important;font-size:clamp(1.5rem,3vw,2rem)!important;font-weight:700!important;line-height:1.2!important}.contact-form{display:flex;flex-direction:column;gap:var(--spacing-lg);flex:1}.contact-form-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.contact-form-label{color:var(--color-primary)!important;font-weight:600!important;font-size:.95rem!important;line-height:1.4!important;display:block!important}.contact-form-required{color:var(--color-secondary)!important}.contact-form-input,.contact-form-textarea{width:100%!important;background:linear-gradient(135deg,rgba(255,255,255,.9) 0%,rgba(250,250,250,.9) 100%)!important;border:1px solid rgba(14,55,95,.15)!important;border-radius:var(--border-radius-lg)!important;padding:var(--spacing-md)!important;font-family:inherit!important;font-size:1rem!important;line-height:1.5!important;transition:all var(--transition-normal)!important;color:var(--color-primary)!important;-webkit-appearance:none!important;appearance:none!important;box-shadow:0 2px 8px rgba(0,0,0,.05)!important}.contact-form-input::placeholder,.contact-form-input::-webkit-input-placeholder,.contact-form-input::-moz-placeholder,.contact-form-input:-ms-input-placeholder{color:rgba(14,55,95,.5)!important;opacity:1!important}.contact-form-textarea{resize:none!important;min-height:120px!important}.contact-form-textarea::placeholder,.contact-form-textarea::-webkit-input-placeholder,.contact-form-textarea::-moz-placeholder,.contact-form-textarea:-ms-input-placeholder{color:rgba(14,55,95,.5)!important;opacity:1!important}.contact-form-input:placeholder-shown,.contact-form-textarea:placeholder-shown{color:rgba(14,55,95,.5)!important}.contact-form-input:not(:placeholder-shown),.contact-form-textarea:not(:placeholder-shown){color:var(--color-primary)!important}.contact-form-input:focus,.contact-form-textarea:focus{outline:none!important;border-color:var(--color-primary)!important;background:#ffffff!important;box-shadow:0 4px 12px rgba(14,55,95,.15)!important;color:var(--color-primary)!important;transform:translateY(-1px)!important}.contact-form-input--error,.contact-form-textarea.contact-form-input--error{border-color:var(--color-secondary)!important;background:rgba(230,42,38,.05)!important}.contact-form-input--error:focus,.contact-form-textarea.contact-form-input--error:focus{border-color:var(--color-secondary)!important;box-shadow:0 0 0 3px rgba(230,42,38,.1)!important}.contact-form-submit-error{background:rgba(220,38,38,.08)!important;border:1px solid rgba(220,38,38,.3)!important;color:#dc2626!important;border-radius:var(--border-radius-md)!important;padding:var(--spacing-md)!important;font-size:.9rem!important;text-align:center!important}.contact-form-error{color:var(--color-secondary)!important;font-size:.875rem!important;display:flex!important;align-items:center!important;gap:var(--spacing-xs)!important;min-height:1.5rem!important;margin-top:var(--spacing-xs)!important}.contact-form-submit{background:linear-gradient(135deg,var(--color-primary) 0%,#0a2847 100%)!important;color:#fff!important;border:none!important;border-radius:var(--border-radius-lg)!important;padding:var(--spacing-lg) var(--spacing-2xl)!important;font-weight:700!important;font-size:1rem!important;font-family:inherit!important;cursor:pointer!important;transition:all var(--transition-normal)!important;margin-top:var(--spacing-md)!important;text-transform:uppercase!important;letter-spacing:.5px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:var(--spacing-sm)!important;min-height:48px!important;box-shadow:0 4px 16px rgba(14,55,95,.3)!important;position:relative!important;overflow:hidden!important}.contact-form-submit:before{content:""!important;position:absolute!important;top:0!important;left:-100%!important;width:100%!important;height:100%!important;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent)!important;transition:all var(--transition-normal)!important}.contact-form-submit:hover:not(:disabled):before{left:100%!important}.contact-form-submit:hover:not(:disabled){transform:translateY(-2px)!important;box-shadow:0 8px 24px rgba(14,55,95,.4)!important}.contact-form-submit:active:not(:disabled){transform:translateY(0)!important}.contact-form-submit:disabled{opacity:.7!important;cursor:not-allowed!important;transform:none!important}.contact-form-submit-spinner{width:16px!important;height:16px!important;border:2px solid rgba(245,245,220,.3)!important;border-top-color:var(--color-text-primary)!important;border-radius:50%!important;animation:contact-form-spin .6s linear infinite!important}@keyframes contact-form-spin{to{transform:rotate(360deg)}}.contact-form-success{text-align:center!important;padding:var(--spacing-3xl)!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:var(--spacing-lg)!important}.contact-form-success-icon{width:64px!important;height:64px!important;background:var(--color-primary)!important;color:var(--color-text-primary)!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:2rem!important;font-weight:700!important;margin-bottom:var(--spacing-sm)!important}.contact-form-success-title{color:var(--color-primary)!important;margin:0!important;font-size:1.5rem!important;font-weight:700!important}.contact-form-success-text{color:var(--color-primary)!important;margin:0!important;font-size:1.125rem!important;line-height:1.6!important}@media (max-width: 768px){.contact-form-wrapper{padding:var(--spacing-xl)!important}.contact-form-title{margin-bottom:var(--spacing-lg)!important}.contact-form{gap:var(--spacing-md)!important}.contact-form-submit{width:100%!important;padding:var(--spacing-md) var(--spacing-xl)!important}}.contact-info{background:rgba(255,255,255,.9);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(14,55,95,.1);border-radius:var(--border-radius-2xl);padding:var(--spacing-2xl);display:flex;flex-direction:column;height:100%;box-shadow:0 4px 16px rgba(0,0,0,.08);transition:all var(--transition-normal)}.contact-info:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.12)}.contact-info h2{color:var(--color-primary);margin-bottom:var(--spacing-md);font-size:clamp(1.5rem,3vw,2rem);font-weight:700}.contact-info-intro{color:var(--color-primary);margin-bottom:var(--spacing-2xl);line-height:1.8;font-size:1.125rem}.contact-info-items{display:flex;flex-direction:column;gap:var(--spacing-lg)}.contact-info-item{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-lg);background:linear-gradient(135deg,rgba(255,255,255,.9) 0%,rgba(250,250,250,.9) 100%);border-radius:var(--border-radius-lg);border:1px solid rgba(14,55,95,.1);transition:all var(--transition-normal);box-shadow:0 2px 8px rgba(0,0,0,.05)}.contact-info-item:hover{border-color:var(--color-primary);background:linear-gradient(135deg,#ffffff 0%,#fffef8 100%);transform:translateY(-2px);box-shadow:0 6px 20px rgba(14,55,95,.15)}.contact-info-icon{font-size:1.5rem;color:var(--color-secondary);min-width:30px;display:flex;align-items:center;justify-content:center;margin-top:var(--spacing-xs)}.contact-info-content{flex:1}.contact-info-content h3{color:var(--color-primary);margin-bottom:var(--spacing-sm);font-size:1.125rem;font-weight:600}.contact-info-content p{color:var(--color-primary);margin-bottom:var(--spacing-xs);font-size:.95rem;line-height:1.6}.contact-info-content p:last-child{margin-bottom:0}.contact-info-content a{color:var(--color-primary);text-decoration:none;transition:all var(--transition-normal);font-weight:500}.contact-info-content a:hover{color:var(--color-secondary);text-decoration:underline}@media (max-width: 768px){.contact-info{padding:var(--spacing-xl)}.contact-info-item{padding:var(--spacing-md)}}.contact-container{min-height:100vh;padding-top:100px;padding-bottom:0;background:transparent}@media (max-width: 1023px){.contact-container{padding-top:70px;padding-bottom:0}}.contact-banner{background:transparent;padding:var(--spacing-2xl) 0;text-align:center}.contact-banner h1{color:var(--color-text-primary);font-size:clamp(2rem,5vw,3rem);margin-bottom:var(--spacing-sm);font-weight:700}.contact-banner p{color:var(--color-text-secondary);font-size:clamp(.95rem,2vw,1.125rem)}.contact-content{padding:var(--spacing-3xl) 0;background:linear-gradient(135deg,#ffffff 0%,#fffef8 50%,#ffffff 100%)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-3xl);align-items:stretch}@media (max-width: 1024px){.contact-grid{grid-template-columns:1fr;gap:var(--spacing-2xl)}}@media (max-width: 768px){.contact-banner,.contact-content{padding:var(--spacing-2xl) 0}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-xl);box-shadow:0 20px 60px rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.8);width:90%;max-width:450px;overflow:hidden;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{background:linear-gradient(135deg,var(--color-primary),#0a2847);padding:var(--spacing-xl);border-bottom:1px solid rgba(255,255,255,.1)}.modal-header h3{color:var(--color-text-primary);margin:0;font-size:1.25rem;font-weight:600}.modal-body{padding:var(--spacing-2xl)}.modal-body p{color:var(--color-primary);margin:0;font-size:1rem;line-height:1.6}.modal-footer{padding:var(--spacing-xl);display:flex;gap:var(--spacing-md);justify-content:flex-end;background:rgba(14,55,95,.03);border-top:1px solid rgba(14,55,95,.1)}.btn-modal{padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--border-radius-md);font-weight:600;font-size:.95rem;cursor:pointer;transition:all var(--transition-normal);border:none;min-width:100px;display:inline-flex;align-items:center;justify-content:center}.btn-cancel{background:rgba(14,55,95,.1);color:var(--color-primary);border:1px solid rgba(14,55,95,.2)}.btn-cancel:hover{background:rgba(14,55,95,.15);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.btn-confirm{background:linear-gradient(135deg,var(--color-primary),#0a2847);color:var(--color-text-primary);box-shadow:0 2px 8px rgba(14,55,95,.2)}.btn-confirm:hover{background:linear-gradient(135deg,#0a2847,var(--color-primary));transform:translateY(-2px);box-shadow:0 6px 16px rgba(14,55,95,.4)}@media (max-width: 480px){.modal-content{width:95%;max-width:none}.modal-header,.modal-body,.modal-footer{padding:var(--spacing-lg)}.modal-footer{flex-direction:column-reverse}.btn-modal{width:100%}}.dashboard{min-height:100vh;padding-bottom:var(--spacing-3xl)}.dashboard-header{background:linear-gradient(135deg,rgba(14,55,95,.95) 0%,rgba(10,40,70,.97) 50%,rgba(14,55,95,.95) 100%);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-bottom:1px solid rgba(255,255,255,.1);padding:var(--spacing-2xl) 0;margin-bottom:var(--spacing-2xl);box-shadow:0 4px 20px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.1);position:relative;z-index:1001}.dashboard-header-content{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-xl)}.dashboard-user{display:flex;align-items:center;gap:var(--spacing-lg)}.user-avatar{width:60px;height:60px;background:linear-gradient(135deg,var(--color-secondary),var(--color-primary));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--color-text-primary);box-shadow:0 4px 12px rgba(230,42,38,.3)}.user-info h1{color:var(--color-text-primary);font-size:1.75rem;margin:0 0 var(--spacing-xs) 0}.user-info p{color:var(--color-text-secondary);margin:0;font-size:.9rem}.dashboard-actions{display:flex;gap:var(--spacing-md)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:600;font-size:.9rem;cursor:pointer;transition:all var(--transition-normal);border:none;text-decoration:none;line-height:1.4;min-height:44px;vertical-align:middle}.btn-primary{background:linear-gradient(135deg,var(--color-primary),#0a2847);color:var(--color-text-primary)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(14,55,95,.4)}.btn-secondary{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);color:var(--color-primary);border:1px solid rgba(14,55,95,.15)}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.1)}.btn-catalogue-admin{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);color:#fff;border:none;box-shadow:0 4px 12px rgba(245,158,11,.35)}.btn-catalogue-admin:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(245,158,11,.45)}.btn-logout{background:rgba(230,42,38,.1);color:var(--color-secondary);border:1px solid rgba(230,42,38,.3)}.btn-logout:hover{background:var(--color-secondary);color:var(--color-text-primary);transform:translateY(-2px);box-shadow:0 6px 16px rgba(230,42,38,.3)}.dashboard-stats{margin-bottom:var(--spacing-2xl)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.stat-card{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);display:flex;align-items:center;gap:var(--spacing-lg);box-shadow:0 2px 8px rgba(0,0,0,.05),inset 0 1px rgba(255,255,255,.8);transition:all var(--transition-normal)}.stat-card:hover{transform:translateY(-5px);box-shadow:0 8px 24px rgba(0,0,0,.1),inset 0 1px rgba(255,255,255,.8)}.stat-card-highlight{background:linear-gradient(135deg,var(--color-primary),#0a2847);border-color:rgba(255,255,255,.2)}.stat-card-highlight .stat-icon,.stat-card-highlight .stat-label,.stat-card-highlight .stat-value{color:var(--color-text-primary)}.stat-icon{width:50px;height:50px;background:rgba(14,55,95,.1);border-radius:var(--border-radius-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--color-primary)}.stat-card-highlight .stat-icon{background:rgba(255,255,255,.2)}.euro-icon{font-weight:700;font-size:1.75rem}.stat-content{flex:1}.stat-label{color:var(--color-primary);opacity:.8;font-size:.85rem;margin:0 0 var(--spacing-xs) 0;text-transform:uppercase;letter-spacing:.5px}.stat-value{color:var(--color-primary);font-size:1.75rem;font-weight:700;margin:0}.cart-section{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-xl);padding:var(--spacing-2xl);box-shadow:0 4px 16px rgba(0,0,0,.05),inset 0 1px rgba(255,255,255,.8)}.cart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid rgba(14,55,95,.1)}.cart-header h2{color:var(--color-primary);font-size:1.5rem;margin:0;display:flex;align-items:center;gap:var(--spacing-sm)}.btn-clear-cart{background:rgba(230,42,38,.1);color:var(--color-secondary);border:1px solid rgba(230,42,38,.3);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:600;font-size:.85rem;cursor:pointer;transition:all var(--transition-normal);display:inline-flex;align-items:center;gap:var(--spacing-xs)}.btn-clear-cart:hover{background:var(--color-secondary);color:var(--color-text-primary);transform:translateY(-2px);box-shadow:0 4px 12px rgba(230,42,38,.3)}.empty-cart{text-align:center;padding:var(--spacing-3xl) var(--spacing-xl)}.empty-icon{font-size:4rem;color:var(--color-primary);opacity:.3;margin-bottom:var(--spacing-lg)}.empty-cart h3{color:var(--color-primary);font-size:1.5rem;margin:0 0 var(--spacing-md) 0}.empty-cart p{color:var(--color-primary);opacity:.7;margin:0 0 var(--spacing-xl) 0}.cart-items{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.cart-item{display:grid;grid-template-columns:120px 1fr auto;gap:var(--spacing-lg);padding:var(--spacing-lg);background:rgba(14,55,95,.03);border:1px solid rgba(14,55,95,.1);border-radius:var(--border-radius-lg);transition:all var(--transition-normal)}.cart-item:hover{background:rgba(14,55,95,.05);box-shadow:0 4px 12px rgba(0,0,0,.05)}.cart-item-image{width:120px;height:120px;border-radius:var(--border-radius-md);overflow:hidden;background:white;display:flex;align-items:center;justify-content:center;border:1px solid rgba(14,55,95,.1)}.cart-item-image img{width:100%;height:100%;object-fit:contain}.cart-item-image-fallback{width:100%;height:100%;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(14,55,95,.1),rgba(230,42,38,.05));color:var(--color-primary);font-size:2rem;font-weight:700;padding:var(--spacing-sm)}.cart-item-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.cart-item-info h3{color:var(--color-primary);font-size:1.1rem;margin:0}.item-gamme{color:var(--color-secondary);font-weight:600;font-size:.85rem;margin:0}.item-code{color:var(--color-primary);opacity:.6;font-size:.8rem;margin:0;font-family:Courier New,monospace}.item-prices{display:flex;gap:var(--spacing-lg);margin-top:auto}.item-price-ht,.item-price-ttc{color:var(--color-primary);font-size:.9rem;font-weight:600}.item-price-ttc{color:var(--color-secondary)}.cart-next-tier{font-size:.72rem;color:#d97706;font-weight:600;margin-top:2px}.cart-discount-applied{font-size:.72rem;color:#16a34a;font-weight:700;margin-top:2px}.cart-item-controls{display:flex;flex-direction:column;gap:var(--spacing-md);align-items:flex-end}.quantity-controls{display:flex;align-items:center;gap:var(--spacing-xs);background:white;border:1px solid rgba(14,55,95,.2);border-radius:var(--border-radius-md);padding:var(--spacing-xs)}.quantity-btn{width:30px;height:30px;background:var(--color-primary);color:var(--color-text-primary);border:none;border-radius:var(--border-radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);font-size:.8rem}.quantity-btn:hover:not(:disabled){background:var(--color-secondary);transform:scale(1.1)}.quantity-btn:disabled{opacity:.3;cursor:not-allowed}.quantity-controls input{width:50px;text-align:center;border:none;background:transparent;color:var(--color-primary);font-weight:600;font-size:1rem;-moz-appearance:textfield}.quantity-controls input::-webkit-outer-spin-button,.quantity-controls input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-controls input:focus{outline:none}.item-total{text-align:right}.total-label{color:var(--color-primary);opacity:.7;font-size:.7rem;margin:0 0 var(--spacing-xs) 0;text-transform:uppercase;letter-spacing:.3px;line-height:1.2;word-break:break-word}.total-value{color:var(--color-primary);font-size:1.1rem;font-weight:700;margin:0}.total-ttc{color:var(--color-secondary)}.btn-remove{background:rgba(230,42,38,.1);color:var(--color-secondary);border:1px solid rgba(230,42,38,.3);width:40px;height:40px;border-radius:var(--border-radius-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-normal);margin-top:auto}.btn-remove:hover{background:var(--color-secondary);color:var(--color-text-primary);transform:scale(1.1);box-shadow:0 4px 12px rgba(230,42,38,.3)}.dashboard-client-form-section{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.25);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);box-shadow:0 2px 8px rgba(0,0,0,.05),inset 0 1px rgba(255,255,255,.8)}.dashboard-client-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.dashboard-client-form-title{color:#0a2847;font-size:1.25rem;margin:0;font-weight:700;font-family:var(--font-family-display)}.dashboard-client-form-toggle-btn{background:rgba(14,55,95,.15);color:#0a2847;border:1px solid rgba(14,55,95,.3);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:600;font-size:.85rem;cursor:pointer;transition:all var(--transition-normal);display:inline-flex;align-items:center;gap:var(--spacing-xs)}.dashboard-client-form-toggle-btn:hover{background:var(--color-primary);color:var(--color-text-primary);border-color:var(--color-primary);transform:translateY(-2px)}.dashboard-client-form-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.dashboard-client-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.dashboard-client-form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.dashboard-client-form-label{color:#0a2847;font-weight:700;font-size:.9rem;margin:0;letter-spacing:.3px}.dashboard-client-form-input{background:var(--color-cream-light);border:2px solid rgba(14,55,95,.35);border-radius:var(--border-radius-md);color:#0a2847;padding:var(--spacing-md);font-size:.95rem;font-weight:500;transition:all var(--transition-normal);width:100%}.dashboard-client-form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(14,55,95,.15);background:#fff}.dashboard-client-form-input::placeholder{color:rgba(10,40,71,.6);font-weight:400}.client-search-wrapper{position:relative;margin-bottom:var(--spacing-md)}.client-search-bar{display:flex;align-items:center;gap:10px;background:#f0f4f8;border:2px solid rgba(14,55,95,.25);border-radius:var(--border-radius-md);padding:10px 14px;transition:border-color .2s}.client-search-bar:focus-within{border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px rgba(14,55,95,.12)}.client-search-icon{color:var(--color-primary);opacity:.5;font-size:.9rem;flex-shrink:0}.client-search-input{flex:1;border:none;background:transparent;outline:none;font-size:.95rem;color:#0a2847;font-weight:500}.client-search-input::placeholder{color:rgba(10,40,71,.45);font-weight:400}.client-search-spinner{color:var(--color-primary);font-size:.85rem;flex-shrink:0}.client-search-clear{background:none;border:none;cursor:pointer;color:#888;font-size:.9rem;display:flex;align-items:center;padding:2px;border-radius:50%;transition:color .15s}.client-search-clear:hover{color:var(--color-secondary)}.client-suggestions{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-md);box-shadow:0 8px 24px rgba(0,0,0,.12);z-index:100;overflow:hidden}.client-suggestion-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:background .15s}.client-suggestion-item:hover{background:rgba(14,55,95,.06)}.csi-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),#0a2847);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;flex-shrink:0}.csi-info{display:flex;flex-direction:column;flex:1;min-width:0}.csi-name{font-weight:600;font-size:.9rem;color:#0a2847;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csi-email{font-size:.78rem;color:#888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csi-phone{font-size:.78rem;color:var(--color-primary);opacity:.7;white-space:nowrap;flex-shrink:0}.client-suggestion-empty{padding:14px 16px;font-size:.88rem;color:#888;display:flex;align-items:center;gap:8px}.cart-summary{background:linear-gradient(135deg,var(--color-primary),#0a2847);border-radius:var(--border-radius-lg);padding:var(--spacing-2xl);box-shadow:0 4px 16px rgba(14,55,95,.3)}.summary-content h3{color:var(--color-text-primary);margin:0 0 var(--spacing-lg) 0;font-size:1.25rem}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) 0;border-bottom:1px solid rgba(255,255,255,.1);color:var(--color-text-primary);opacity:.9}.summary-row:last-of-type{border-bottom:none}.summary-total{margin-top:var(--spacing-md);padding-top:var(--spacing-lg);border-top:2px solid rgba(255,255,255,.3);font-size:1.25rem;font-weight:700;opacity:1}.summary-value{font-weight:600}.pdf-message{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--border-radius-md);margin-top:var(--spacing-lg);font-size:.9rem;font-weight:600;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.pdf-message.success{background:rgba(34,197,94,.2);color:#16a34a;border:1px solid rgba(34,197,94,.4)}.pdf-message.error{background:rgba(239,68,68,.2);color:#dc2626;border:1px solid rgba(239,68,68,.4)}.btn-generate-pdf{width:100%;background:var(--color-secondary);color:var(--color-text-primary);padding:var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:700;font-size:1rem;cursor:pointer;transition:all var(--transition-normal);border:none;margin-top:var(--spacing-xl);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);text-transform:uppercase;letter-spacing:.5px;position:relative;overflow:hidden}.btn-generate-pdf:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left var(--transition-normal)}.btn-generate-pdf:hover:not(:disabled):before{left:100%}.btn-generate-pdf:hover:not(:disabled){background:#ffffff;color:var(--color-secondary);transform:translateY(-2px);box-shadow:0 6px 20px rgba(230,42,38,.4)}.btn-generate-pdf:disabled{opacity:.7;cursor:not-allowed}.btn-generate-pdf.generating{background:linear-gradient(135deg,var(--color-primary),#0a2847)}.spinner-pdf{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--color-text-primary);border-radius:50%;animation:spin .8s linear infinite}.dashboard-content{margin-bottom:var(--spacing-2xl)}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) scale(.85);background:#1a2940;color:#fff;font-size:.72rem;font-weight:500;white-space:nowrap;padding:5px 10px;border-radius:6px;pointer-events:none;opacity:0;transition:opacity .18s ease,transform .18s ease;z-index:99999;letter-spacing:.2px;box-shadow:0 4px 12px rgba(0,0,0,.25)}[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%) scale(.85);border:5px solid transparent;border-top-color:#1a2940;pointer-events:none;opacity:0;transition:opacity .18s ease,transform .18s ease;z-index:99999}[data-tooltip]:hover:after,[data-tooltip]:hover:before{opacity:1;transform:translate(-50%) scale(1)}.cmo-quote-actions,.client-modal-header-actions,.btn-quote-action,.btn-modal,.btn-modal-close{overflow:visible}.clients-section{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-xl);padding:var(--spacing-2xl);margin-bottom:0;box-shadow:0 4px 16px rgba(0,0,0,.05),inset 0 1px rgba(255,255,255,.8)}.invite-section{margin-bottom:0}.clients-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid rgba(14,55,95,.1)}.clients-header h2{color:var(--color-primary);font-size:1.5rem;margin:0;display:flex;align-items:center;gap:var(--spacing-sm)}.clients-header-actions{display:flex;gap:var(--spacing-md);align-items:center}.btn-download{background:linear-gradient(135deg,#16a34a,#15803d);color:var(--color-text-primary);border:none}.btn-download:hover{background:linear-gradient(135deg,#15803d,#166534);transform:translateY(-2px);box-shadow:0 6px 16px rgba(22,163,74,.4)}.clients-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);gap:var(--spacing-lg)}.clients-loading .spinner{font-size:2rem;color:var(--color-primary);animation:spin 1s linear infinite}.clients-loading p{color:var(--color-primary);opacity:.7;margin:0}.clients-empty{text-align:center;padding:var(--spacing-3xl) var(--spacing-xl)}.clients-empty .empty-icon{font-size:4rem;color:var(--color-primary);opacity:.3;margin-bottom:var(--spacing-lg)}.clients-empty h3{color:var(--color-primary);font-size:1.5rem;margin:0 0 var(--spacing-md) 0}.clients-empty p{color:var(--color-primary);opacity:.7;margin:0}.clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.client-card-v2{position:relative;background:#fff;border:1px solid rgba(14,55,95,.12);border-radius:14px;padding:20px;cursor:pointer;transition:all .22s ease;display:flex;flex-direction:column;gap:12px;box-shadow:0 2px 8px rgba(0,0,0,.04);overflow:visible}.client-card-v2:before{content:"";position:absolute;top:-1px;left:-1px;right:-1px;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));border-radius:14px 14px 0 0;opacity:0;transition:opacity .22s}.client-card-v2:hover{transform:translateY(-4px);box-shadow:0 10px 28px rgba(14,55,95,.14);border-color:rgba(14,55,95,.25)}.client-card-v2:hover:before{opacity:1}.ccv2-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),#0a2847);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:700;flex-shrink:0}.ccv2-body{flex:1}.ccv2-name{font-size:1.05rem;font-weight:700;color:#0a2847;margin:0 0 5px}.ccv2-email,.ccv2-phone{font-size:.82rem;color:#666;margin:0 0 3px;display:flex;align-items:center;gap:5px}.ccv2-email svg,.ccv2-phone svg{font-size:.75rem;color:var(--color-secondary);flex-shrink:0}.ccv2-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(14,55,95,.08);padding-top:10px;margin-top:4px}.ccv2-since{font-size:.75rem;color:#999}.ccv2-cta{font-size:.78rem;font-weight:600;color:var(--color-primary);display:flex;align-items:center;gap:4px;opacity:0;transition:opacity .2s}.client-card-v2:hover .ccv2-cta{opacity:1}.ccv2-delete{position:absolute;top:-10px;right:-10px;width:28px;height:28px;border-radius:50%;background:#fff;border:2px solid rgba(230,42,38,.3);color:var(--color-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.72rem;transition:all .18s;opacity:0;box-shadow:0 2px 8px rgba(230,42,38,.2);z-index:10}.client-card-v2:hover .ccv2-delete{opacity:1}.ccv2-delete:hover{background:var(--color-secondary);color:#fff;transform:scale(1.1)}.client-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px}.client-modal{background:#fff;border-radius:18px;width:100%;max-width:820px;max-height:90vh;overflow-y:auto;overflow-x:clip;box-shadow:0 24px 60px rgba(0,0,0,.25);display:flex;flex-direction:column}.cmo-quote-actions{position:static;overflow:visible}.btn-quote-action{overflow:visible}.client-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:28px 28px 20px;border-bottom:1px solid rgba(14,55,95,.1);gap:16px;background:linear-gradient(135deg,#f8fafc,#fff);border-radius:18px 18px 0 0}.client-modal-title{display:flex;align-items:flex-start;gap:16px;flex:1;min-width:0}.client-modal-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),#0a2847);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;flex-shrink:0}.client-modal-title h2{font-size:1.4rem;color:#0a2847;margin:0 0 6px}.client-modal-meta{display:flex;flex-wrap:wrap;gap:12px}.client-modal-meta span{display:flex;align-items:center;gap:5px;font-size:.83rem;color:#555}.client-modal-meta svg{font-size:.75rem;color:var(--color-secondary)}.client-modal-edit-fields{display:flex;flex-direction:column;gap:8px;flex:1}.cme-input{border:1.5px solid rgba(14,55,95,.25);border-radius:8px;padding:8px 12px;font-size:.9rem;color:#0a2847;outline:none;transition:border-color .15s;width:100%}.cme-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(14,55,95,.1)}.client-modal-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.btn-modal{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;border:none;transition:all .18s}.btn-modal-edit{background:rgba(14,55,95,.08);color:var(--color-primary);border:1px solid rgba(14,55,95,.2)}.btn-modal-edit:hover{background:var(--color-primary);color:#fff}.btn-modal-save{background:#16a34a;color:#fff}.btn-modal-save:hover{background:#15803d}.btn-modal-cancel{background:rgba(100,100,100,.1);color:#555;border:1px solid rgba(0,0,0,.1)}.btn-modal-close{width:36px;height:36px;border-radius:50%;background:rgba(0,0,0,.06);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#666;transition:all .15s;font-size:.9rem}.btn-modal-close:hover{background:var(--color-secondary);color:#fff}.client-modal-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(14,55,95,.08);border-bottom:1px solid rgba(14,55,95,.08)}.cms-item{background:#f8fafc;padding:16px 24px;display:flex;flex-direction:column;gap:4px}.cms-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;color:#888;font-weight:600}.cms-value{font-size:1.2rem;font-weight:700;color:#0a2847}.cms-highlight{color:var(--color-secondary)}.client-modal-quotes{padding:24px 28px 28px}.client-modal-quotes h3{font-size:1.05rem;color:#0a2847;margin:0 0 16px;display:flex;align-items:center;gap:8px}.no-quotes{color:#aaa;font-size:.9rem;text-align:center;padding:24px}.cmo-quotes-list{display:flex;flex-direction:column;gap:10px}.cmo-quote-card{border:1px solid rgba(14,55,95,.12);border-radius:10px;overflow:visible;transition:box-shadow .18s}.cmo-quote-card:hover{box-shadow:0 4px 14px rgba(0,0,0,.08)}.cmo-quote-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;cursor:pointer;background:#f8fafc;transition:background .15s;gap:12px;color:var(--color-primary)}.cmo-quote-header:hover{background:#f0f4f8}.cmo-quote-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.cmo-quote-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.cmo-quote-right>svg{color:var(--color-primary);opacity:.6;font-size:.85rem;flex-shrink:0}.cmo-quote-number{font-family:Courier New,monospace;font-size:.82rem;font-weight:600;color:var(--color-primary);background:rgba(14,55,95,.08);padding:3px 8px;border-radius:5px;white-space:nowrap}.cmo-quote-date{display:flex;align-items:center;gap:5px;font-size:.8rem;color:#777}.cmo-quote-ttc{font-size:1rem;font-weight:700;color:var(--color-secondary)}.cmo-quote-actions{display:flex;gap:6px}.btn-quote-action{width:30px;height:30px;border-radius:7px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.8rem;transition:all .16s}.btn-pdf{background:rgba(14,55,95,.08);color:var(--color-primary)}.btn-pdf:hover{background:var(--color-primary);color:#fff}.btn-del{background:rgba(230,42,38,.08);color:var(--color-secondary)}.btn-del:hover{background:var(--color-secondary);color:#fff}.btn-quote-action.btn-invoice{background:rgba(34,139,34,.12);color:#228b22}.btn-quote-action.btn-invoice:hover:not(:disabled){background:#228b22;color:#fff}.btn-quote-action.btn-invoice:disabled{opacity:.7;cursor:wait}.cmo-quote-detail{padding:16px;border-top:1px solid rgba(14,55,95,.08);background:#fff}.cmo-quote-table{width:100%;border-collapse:collapse;font-size:.85rem}.cmo-quote-table th{background:rgba(14,55,95,.07);color:#0a2847;font-weight:700;padding:8px 10px;text-align:left;font-size:.78rem;text-transform:uppercase;letter-spacing:.4px}.cmo-quote-table td{padding:8px 10px;border-bottom:1px solid rgba(0,0,0,.04);color:#333}.cmo-quote-table tr:last-child td{border-bottom:none}.cmo-quote-table tr:hover td{background:rgba(14,55,95,.02)}.cmo-quote-table .mono{font-family:Courier New,monospace;font-size:.78rem}.cmo-quote-table .center{text-align:center}.cmo-quote-table .right{text-align:right}.quote-discount-badge{display:inline-block;margin-left:5px;background:rgba(22,163,74,.1);color:#16a34a;border-radius:100px;padding:1px 6px;font-size:.7rem;font-weight:700;vertical-align:middle}.cmo-quote-totals{display:flex;flex-direction:column;align-items:flex-end;gap:4px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(14,55,95,.1)}.cmo-total-row{display:flex;gap:24px;font-size:.88rem;color:#555}.cmo-total-row span:first-child{min-width:80px;text-align:right}.cmo-total-row span:last-child{min-width:80px;text-align:right;font-weight:600;color:#0a2847}.cmo-total-main{font-size:1rem;font-weight:700}.cmo-total-main span:last-child{color:var(--color-secondary)!important;font-size:1.05rem}.profile-summary{display:flex;flex-direction:column;gap:10px;padding:16px 0 4px;border-top:1px solid rgba(14,55,95,.1);margin-top:16px}.profile-row{display:flex;align-items:center;gap:16px}.profile-label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#888;min-width:110px}.profile-value{font-size:.93rem;color:#1a1a1a;font-weight:500}.invite-form-wrapper{padding:24px 0 8px;border-top:1px solid rgba(14,55,95,.1);margin-top:16px}.invite-form{display:flex;flex-direction:column;gap:16px}.invite-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.invite-field{display:flex;flex-direction:column;gap:6px}.invite-field label{font-size:.82rem;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.5px}.invite-field input{border:1.5px solid #ddd;border-radius:8px;padding:10px 13px;font-size:.9rem;outline:none;transition:border-color .2s;color:#1a1a1a;background:#fff}.invite-field input:focus{border-color:#0e375f}.invite-field input::placeholder{color:#aaa}.invite-error{background:#fff5f5;border:1px solid #ffcdd2;border-radius:8px;padding:10px 14px;color:#c62828;font-size:.88rem}.invite-success{background:#f1f8e9;border:1px solid #c5e1a5;border-radius:8px;padding:16px 20px;color:#2e7d32;font-size:.92rem;display:flex;align-items:center;gap:10px;font-weight:500}@media (max-width: 1024px){.dashboard-header-content{flex-direction:column;text-align:center}.dashboard-user{flex-direction:column}.user-info h1{font-size:1.5rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.cart-item{grid-template-columns:100px 1fr;gap:var(--spacing-md)}.cart-item-controls{grid-column:1 / -1;flex-direction:row;justify-content:space-between;align-items:center}.client-modal-stats{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.dashboard-header{padding:var(--spacing-xl) 0}.dashboard-actions{flex-direction:column;width:100%}.btn{width:100%;justify-content:center}.stats-grid{grid-template-columns:1fr}.cart-section{padding:var(--spacing-lg)}.cart-header{flex-direction:column;gap:var(--spacing-md)}.cart-item{grid-template-columns:80px 1fr;padding:var(--spacing-md)}.cart-item-image{width:80px;height:80px}.item-prices{flex-direction:column;gap:var(--spacing-xs)}.dashboard-client-form-row,.invite-fields{grid-template-columns:1fr}.clients-section{padding:var(--spacing-lg)}.clients-header{flex-direction:column;gap:var(--spacing-md);align-items:flex-start}.clients-header-actions{width:100%;flex-direction:column}.clients-grid{grid-template-columns:1fr}.client-modal{border-radius:12px}.client-modal-header{flex-direction:column}.client-modal-stats{grid-template-columns:1fr}.cmo-quote-header{flex-wrap:wrap}.cmo-quote-table{font-size:.78rem}}.admin-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-3xl)}.cs-wrapper{position:relative;display:inline-block}.cs-trigger{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;font-size:.875rem;font-weight:500;color:#1e293b;cursor:pointer;white-space:nowrap;min-width:150px;transition:border-color .15s,box-shadow .15s;user-select:none;font-family:inherit}.cs-trigger:hover{border-color:#0e375f}.cs-open .cs-trigger{border-color:#0e375f;box-shadow:0 0 0 3px rgba(14,55,95,.08)}.cs-prefix-icon{color:#94a3b8;font-size:13px;flex-shrink:0}.cs-value{flex:1;text-align:left}.cs-arrow{font-size:11px;color:#64748b;flex-shrink:0;transition:transform .2s}.cs-open .cs-arrow{transform:rotate(180deg);color:#0e375f}.cs-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:100%;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.12);z-index:500;padding:6px;list-style:none;margin:0;animation:cs-fade-in .12s ease;overflow:hidden}@keyframes cs-fade-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.cs-option{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:8px;font-size:.875rem;color:#334155;cursor:pointer;transition:background .1s,color .1s;white-space:nowrap}.cs-option:hover{background:rgba(14,55,95,.06);color:#0e375f}.cs-option-selected{background:rgba(14,55,95,.08);color:#0e375f;font-weight:600}.cs-check{font-size:11px;color:#0e375f;flex-shrink:0}.image-uploader{display:flex;flex-direction:column;gap:12px}.image-preview-grid{display:flex;flex-wrap:wrap;gap:10px}.image-preview-item{position:relative;width:90px;height:90px;border-radius:8px;overflow:hidden;border:2px solid var(--color-border, #e2e8f0);background:#f8fafc}.image-preview-item.is-primary{border-color:var(--color-primary, #0E375F)}.image-preview-item img{width:100%;height:100%;object-fit:cover;display:block}.image-preview-actions{position:absolute;top:4px;right:4px;display:flex;flex-direction:column;gap:4px;opacity:0;transition:opacity .15s}.image-preview-item:hover .image-preview-actions{opacity:1}.img-btn{width:24px;height:24px;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;transition:transform .15s}.img-btn:hover{transform:scale(1.15)}.img-btn-remove{background:#ef4444;color:#fff}.img-btn-primary{background:#f59e0b;color:#fff}.image-primary-badge{position:absolute;bottom:0;left:0;right:0;background:rgba(14,55,95,.82);color:#fff;font-size:9px;font-weight:600;text-align:center;padding:2px 0;text-transform:uppercase;letter-spacing:.5px}.upload-drop-zone{border:2px dashed var(--color-border, #cbd5e1);border-radius:10px;padding:24px 16px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s;background:#f8fafc;color:#64748b;user-select:none}.upload-drop-zone:hover,.upload-drop-zone.drag-over{border-color:var(--color-primary, #0E375F);background:rgba(14,55,95,.04)}.upload-drop-zone.uploading{cursor:wait;opacity:.7}.upload-zone-icon{font-size:28px;color:var(--color-primary, #0E375F);margin-bottom:8px;opacity:.6}.upload-drop-zone p{margin:4px 0;font-size:.875rem;color:#475569}.upload-hint{font-size:.75rem;color:#94a3b8}.upload-input-hidden{display:none}.upload-uploading{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--color-primary, #0E375F);font-size:.875rem}.upload-spinner{width:28px;height:28px;border:3px solid rgba(14,55,95,.2);border-top-color:var(--color-primary, #0E375F);border-radius:50%;animation:spin .7s linear infinite}.url-input-row{display:flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid var(--color-border, #e2e8f0);border-radius:8px;padding:6px 10px}.url-icon{color:#94a3b8;font-size:14px;flex-shrink:0}.url-input-row input{flex:1;border:none;background:transparent;font-size:.875rem;color:#1e293b;outline:none}.url-input-row input::placeholder{color:#94a3b8}.btn-add-url{width:30px;height:30px;border:none;border-radius:6px;background:var(--color-primary, #0E375F);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:background .2s;flex-shrink:0}.btn-add-url:disabled{background:#cbd5e1;cursor:not-allowed}.upload-error{color:#ef4444;font-size:.8rem;margin:0}.pfm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);z-index:3000;display:flex;align-items:center;justify-content:center;padding:16px;animation:pfm-fade-in .15s ease}@keyframes pfm-fade-in{0%{opacity:0}to{opacity:1}}.pfm-modal{background:#fff;border-radius:16px;width:100%;max-width:780px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 60px rgba(0,0,0,.25);animation:pfm-slide-up .2s ease;overflow:hidden}@keyframes pfm-slide-up{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.pfm-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#0E375F 0%,#1a5490 100%);color:#fff;flex-shrink:0}.pfm-header h2{font-size:1.1rem;font-weight:700;margin:0}.pfm-close{background:rgba(255,255,255,.15);border:none;border-radius:8px;color:#fff;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;transition:background .15s}.pfm-close:hover{background:rgba(255,255,255,.25)}.pfm-body{overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:20px;flex:1}.pfm-section{border:1px solid #e2e8f0;border-radius:12px;padding:16px 20px 20px;margin:0}.pfm-section legend{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#0e375f;padding:0 8px;background:#fff}.pfm-row{display:grid;gap:14px;margin-top:14px}.pfm-row-2{grid-template-columns:1fr 1fr}.pfm-row-3{grid-template-columns:1fr 1fr 1fr}.pfm-field{display:flex;flex-direction:column;gap:5px}.pfm-field label{font-size:.8rem;font-weight:600;color:#475569}.pfm-field input,.pfm-field select,.pfm-field textarea{border:1.5px solid #e2e8f0;border-radius:8px;padding:9px 12px;font-size:.875rem;color:#1e293b;background:#f8fafc;transition:border-color .15s,box-shadow .15s;outline:none;font-family:inherit}.pfm-field input:focus,.pfm-field select:focus,.pfm-field textarea:focus{border-color:#0e375f;box-shadow:0 0 0 3px rgba(14,55,95,.08);background:#fff}.pfm-field input[type=number]{-moz-appearance:textfield}.pfm-field input[type=number]::-webkit-inner-spin-button,.pfm-field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.pfm-field textarea{resize:vertical;min-height:80px}.pfm-field input.input-error,.pfm-field select.input-error{border-color:#ef4444}.field-error{color:#ef4444;font-size:.75rem}.field-hint{color:#94a3b8;font-size:.72rem}.pfm-select-wrap{min-height:40px}.pfm-select-wrap.input-error .cs-trigger{border-color:#ef4444}.pfm-label-max{font-weight:400;color:#94a3b8;font-size:.8em}.pfm-size-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.pfm-size-btn{min-width:44px;padding:8px 12px;border:1.5px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#475569;font-size:.875rem;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.pfm-size-btn:hover:not(:disabled){border-color:#0e375f;background:rgba(14,55,95,.06);color:#0e375f}.pfm-size-btn.active{border-color:#0e375f;background:#0E375F;color:#fff}.pfm-size-btn:disabled{opacity:.5;cursor:not-allowed}.pfm-size-subtitle{display:flex;flex-direction:column;gap:4px;margin-top:4px}.pfm-size-subtitle input{border:1.5px solid #e2e8f0;border-radius:8px;padding:7px 10px;font-size:.8rem;color:#1e293b;background:#f8fafc;outline:none;font-family:inherit;transition:border-color .15s}.pfm-size-subtitle input:focus{border-color:#0e375f;box-shadow:0 0 0 3px rgba(14,55,95,.08);background:#fff}.pfm-field-toggle{justify-content:flex-start}.toggle-switch{display:flex;align-items:center;gap:10px;cursor:pointer;user-select:none;padding:8px 0}.toggle-switch input[type=checkbox]{display:none}.toggle-slider{position:relative;width:44px;height:24px;background:#cbd5e1;border-radius:12px;transition:background .2s;flex-shrink:0}.toggle-slider:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.15)}.toggle-switch input:checked+.toggle-slider{background:#ef4444}.toggle-switch input:checked+.toggle-slider:after{transform:translate(20px)}.toggle-label{font-size:.875rem;font-weight:500;color:#475569}.tag-field{display:flex;flex-direction:column;gap:6px}.tags-list{display:flex;flex-wrap:wrap;gap:6px;min-height:30px}.tag{display:inline-flex;align-items:center;gap:5px;background:rgba(14,55,95,.08);color:#0e375f;border-radius:100px;padding:3px 10px 3px 8px;font-size:.78rem;font-weight:500}.tag svg{font-size:9px;opacity:.6}.tag button{background:none;border:none;cursor:pointer;color:#64748b;display:flex;align-items:center;padding:0;font-size:10px;margin-left:2px;transition:color .15s}.tag button:hover{color:#ef4444}.tag-input-row{display:flex;gap:6px}.tag-input-row input{flex:1;border:1.5px solid #e2e8f0;border-radius:8px;padding:7px 10px;font-size:.8rem;color:#1e293b;background:#f8fafc;outline:none;font-family:inherit;transition:border-color .15s}.tag-input-row input:focus{border-color:#0e375f}.btn-tag-add{width:34px;height:34px;border:none;border-radius:8px;background:var(--color-primary, #0E375F);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;transition:background .15s}.btn-tag-add:hover:not(:disabled){background:#1a5490}.btn-tag-add:disabled{background:#cbd5e1;cursor:not-allowed;opacity:.8}.pfm-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e2e8f0;flex-shrink:0;background:#f8fafc}.btn-pfm{padding:10px 22px;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;border:none;display:flex;align-items:center;gap:8px;transition:all .15s}.btn-pfm:disabled{opacity:.6;cursor:not-allowed}.btn-pfm-cancel{background:#e2e8f0;color:#475569}.btn-pfm-cancel:hover:not(:disabled){background:#cbd5e1}.btn-pfm-save{background:linear-gradient(135deg,#0E375F 0%,#1a5490 100%);color:#fff;box-shadow:0 4px 12px rgba(14,55,95,.3)}.btn-pfm-save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px rgba(14,55,95,.4)}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@media (max-width: 640px){.pfm-modal{max-height:96vh;border-radius:12px}.pfm-body{padding:16px}.pfm-row-2,.pfm-row-3{grid-template-columns:1fr}}.drrt-row{display:grid;grid-template-columns:1fr 1fr 36px;align-items:start;gap:8px}.drrt-col{display:flex;flex-direction:column;min-width:0}.drrt-col:first-child{max-width:none}.drrt-input-wrapper{position:relative;width:100%}.drrt-input-wrapper--cartons .drrt-input{padding-right:60px}.drrt-input-wrapper--pct .drrt-input{padding-right:32px}.drrt-input{width:100%;min-width:0;padding:10px 12px;border:1px solid #ddd;border-radius:10px;font-size:.9rem;box-sizing:border-box;background:#fff;color:#1e293b;caret-color:#0e375f;-webkit-text-fill-color:#1e293b}.drrt-input:focus{outline:none;border-color:#0e375f}.drrt-input:invalid{color:#1e293b;-webkit-text-fill-color:#1e293b}.drrt-input-suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:.8rem;color:#94a3b8;pointer-events:none;user-select:none}.drrt-input.drrt-input-error{border-color:#dc2626;color:#dc2626;-webkit-text-fill-color:#dc2626}.drrt-field-error{color:#dc2626;font-size:.75rem;margin-top:4px;line-height:1.2}.drrt-remove{width:32px;height:32px;background:none;border:none;color:#dc2626;opacity:.75;padding:0;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,opacity .15s,color .15s}.drrt-remove:hover:not(:disabled){background:rgba(239,68,68,.12);opacity:1;color:#dc2626}.drrt-remove:disabled{opacity:.35;cursor:not-allowed}@media (max-width: 768px){.drrt-row{grid-template-columns:1fr 1fr 34px;gap:6px}.drrt-input-wrapper--cartons .drrt-input{padding-right:54px}.drrt-input-wrapper--pct .drrt-input{padding-right:30px}.drrt-remove{width:30px;height:30px}}@media (max-width: 480px){.drrt-row{grid-template-columns:1fr 1fr 32px;gap:6px}.drrt-input-wrapper--cartons .drrt-input{padding-right:50px}.drrt-input-wrapper--pct .drrt-input{padding-right:28px}.drrt-input{font-size:.85rem;padding:9px 10px}.drrt-remove{width:28px;height:28px;border-radius:8px}}.drf-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);z-index:3000;display:flex;align-items:center;justify-content:center;padding:16px}.drf-modal{background:#fff;border-radius:16px;width:100%;max-width:560px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 60px rgba(0,0,0,.25);overflow:hidden}.drf-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#0E375F 0%,#1a5490 100%);color:#fff;flex-shrink:0}.drf-header h2{font-size:1.1rem;font-weight:700;margin:0}.drf-close{background:rgba(255,255,255,.15);border:none;border-radius:8px;color:#fff;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}.drf-close:hover{background:rgba(255,255,255,.25)}.drf-form{display:flex;flex-direction:column;flex:1;min-height:0}.drf-scroll{padding:24px;overflow-y:auto;flex:1;min-height:0}.drf-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px;color:#64748b}.drf-field{margin-bottom:18px}.drf-field label{display:block;font-size:.85rem;font-weight:600;color:#334155;margin-bottom:6px}.drf-field input[type=text],.drf-field input[type=number],.drf-field textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:10px;font-size:.9rem;background:#fff;color:#1a1a1a;caret-color:#1a1a1a;-webkit-text-fill-color:#1a1a1a;box-sizing:border-box}.drf-field input:focus,.drf-field textarea:focus{outline:none;border-color:#0e375f}.drf-field textarea{resize:vertical;min-height:60px}.drf-checkbox label{display:flex;align-items:center;gap:8px;cursor:pointer}.drf-checkbox input[type=checkbox]{width:18px;height:18px}.drf-tiers-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:12px}.drf-tiers-section{background:#f8f9fa;border-radius:8px;padding:16px;margin:16px 0}.drf-tiers-title{font-size:.95rem;font-weight:600;color:#1e293b;margin:0}.drf-tiers-column-labels{display:grid;grid-template-columns:1fr 1fr 36px;gap:8px;padding:0 4px;margin-bottom:6px}.drf-tiers-column-labels span{font-size:.75rem;color:#94a3b8;font-weight:500}.drf-tiers-hint{font-size:.75rem;color:#94a3b8;margin:8px 0 0 4px}.drf-add-tier-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:.8rem;font-weight:600;color:#0e375f;background:rgba(14,55,95,.08);border:1px solid rgba(14,55,95,.2);border-radius:8px;cursor:pointer;transition:background .15s}.drf-add-tier-btn:hover{background:rgba(14,55,95,.15)}.drf-btn-add{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:.8rem;font-weight:600;color:#0e375f;background:rgba(14,55,95,.08);border:1px solid rgba(14,55,95,.2);border-radius:8px;cursor:pointer;transition:background .15s}.drf-btn-add:hover{background:rgba(14,55,95,.15)}.drf-tiers{display:flex;flex-direction:column;gap:8px}.drf-tier-row{display:flex;align-items:center;gap:10px}.drf-tier-row input{flex:1;min-width:0}.drf-tier-row input:first-of-type{max-width:120px}.drf-btn-remove{width:32px;height:32px;background:none;border:none;color:#dc2626;padding:0;cursor:pointer;border-radius:8px;transition:color .15s,background .15s;display:inline-flex;align-items:center;justify-content:center}.drf-btn-remove:hover:not(:disabled){color:#dc2626;background:rgba(239,68,68,.12)}.drf-btn-remove:disabled{opacity:.4;cursor:not-allowed}.drf-error{color:#dc2626;font-size:.875rem;margin:12px 0 0}.drf-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px 16px;border-top:1px solid #e2e8f0}.drf-btn{padding:10px 20px;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .15s;border:none;display:inline-flex;align-items:center;gap:8px}.drf-btn-cancel{background:#f1f5f9;color:#475569}.drf-btn-cancel:hover{background:#e2e8f0}.drf-btn-save{background:linear-gradient(135deg,#0E375F 0%,#1a5490 100%);color:#fff}.drf-btn-save:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.drf-btn-save:disabled{opacity:.7;cursor:not-allowed}.drf-input-error{border-color:#dc2626!important}.drf-field-error{color:#dc2626;font-size:.8rem;margin-top:6px;line-height:1.2}@media (max-width: 768px){.drf-scroll{padding:18px}.drf-tiers-section{padding:14px;margin:14px 0}.drf-tiers-column-labels{grid-template-columns:1fr 1fr 32px;gap:6px}.drf-tiers-column-labels span{font-size:.7rem}.drf-add-tier-btn,.drf-btn-add{padding:7px 10px;font-size:.8rem}.drf-modal{max-width:100%;width:100%;border-radius:14px}.drf-tier-row{gap:8px}.drf-tier-row input:first-of-type{max-width:100px}}@media (max-width: 480px){.drf-overlay{padding:12px}.drf-modal{max-width:100%;width:100%;max-height:95vh;border-radius:12px 12px 0 0}.drf-header,.drf-scroll{padding:16px}.drf-footer{padding:20px 16px 16px;flex-direction:column;gap:10px}.drf-tiers-column-labels{grid-template-columns:1fr 1fr 28px;display:none}.drf-tier-row{flex-wrap:wrap;gap:6px}.drf-tier-row input{min-width:0;flex:1 1 calc(50% - 6px)}.drf-tier-row input:first-of-type{max-width:none;flex:1 1 calc(50% - 6px)}.drf-footer .drf-btn{width:100%;justify-content:center}}.drapr-row:hover td{background:#f0f9ff}.drapr-row td{color:#333}.drapr-col-check input[type=checkbox]{width:20px;height:20px;accent-color:#0E375F}.drapr-cell{display:flex;align-items:center;gap:10px;min-width:0}.drapr-product-name{font-weight:500;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:120px;word-break:break-word}.drapr-product-code{color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drapr-product-gamme{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#f1f5f9;color:#1a1a1a;font-size:.8rem;white-space:nowrap}.drapr-rule{display:flex;flex-direction:column;gap:6px;min-width:0}.drapr-current-rule{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-flex;align-items:center;max-width:100%;padding:3px 10px;border-radius:999px;background:#f1f5f9;color:#475569;border:1px solid rgba(14,55,95,.12)}.drapr-warning{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:#fef3c7;color:#b45309;border:1px solid rgba(180,83,9,.25);font-size:.85rem;font-weight:600;line-height:1.2;white-space:nowrap}.dra-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);z-index:3000;display:flex;align-items:center;justify-content:center;padding:16px}.dra-modal{background:#fff;border-radius:16px;width:90%;max-width:950px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 60px rgba(0,0,0,.25);overflow:hidden;position:relative;z-index:10001}.dra-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#0e375f 0%,#1a5490 100%);color:#fff;flex-shrink:0}.dra-header h2{font-size:1.1rem;font-weight:700;margin:0}.dra-close{background:rgba(255,255,255,.15);border:none;border-radius:8px;color:#fff;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}.dra-close:hover{background:rgba(255,255,255,.25)}.dra-body{padding:16px 24px 0;flex:1;min-height:0;display:flex;flex-direction:column}.dra-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px;color:#64748b}.dra-error{background:#fef2f2;color:#dc2626;padding:12px 16px;border-radius:10px;margin-bottom:12px;font-size:.9rem}.dra-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.dra-search,.dra-select{padding:10px 12px;border:1px solid #ddd;border-radius:10px;font-size:.9rem;box-sizing:border-box;background:#fff;color:#333}.dra-search{flex:1;min-width:240px}.dra-select{flex:0 0 240px;min-width:220px}.dra-search:focus,.dra-select:focus{outline:none;border-color:#0e375f}.dra-table-wrapper{overflow-x:auto;border-radius:8px;box-shadow:0 2px 12px rgba(0,0,0,.07);background:#fff;flex:1;min-height:0}.dra-table{width:100%;border-collapse:collapse;font-size:.875rem;table-layout:auto}.dra-table thead tr{background:#f8fafc;border-bottom:2px solid #e2e8f0}.dra-table th{padding:12px 14px;text-align:left;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#64748b;white-space:nowrap}.dra-table thead{display:block;width:100%}.dra-table thead tr{display:table;width:100%;table-layout:auto}.dra-table td{padding:12px 14px;border-bottom:1px solid #f1f5f9;vertical-align:middle;word-break:break-word;color:#333}.dra-table td,.dra-table th{color:#333}.assign-product-row td{color:#333;font-size:.9rem}.dra-tbody{display:block;max-height:420px;overflow-y:auto;scrollbar-gutter:stable}.dra-tbody tr{display:table;width:100%;table-layout:auto}.dra-table thead{display:block;width:100%;overflow-y:scroll;scrollbar-gutter:stable;visibility:visible}.dra-table tbody tr:last-child td{border-bottom:none}.dra-table tbody tr:hover td{background:#f0f9ff}.dra-col-check{width:50px;min-width:50px;text-align:center}.dra-col-check input[type=checkbox]{width:20px;height:20px;accent-color:#0E375F}.dra-col-product{width:40%;min-width:200px}.dra-col-code{width:15%;min-width:80px}.dra-col-gamme,.dra-col-current-rule{width:20%;min-width:100px}.drapr-col-check{width:50px;min-width:50px;text-align:center}.drapr-col-product{width:40%;min-width:200px}.drapr-col-code{width:15%;min-width:80px}.drapr-col-gamme,.drapr-col-current-rule{width:20%;min-width:100px}.dra-empty-row{text-align:center;color:#64748b;padding:24px 14px;white-space:normal;word-break:normal;overflow-wrap:normal;min-width:240px}.dra-pagination{display:flex;justify-content:center;align-items:center;gap:12px;padding:14px 0 16px}.dra-pagination-btn{padding:10px 16px;border-radius:10px;font-size:.9rem;font-weight:700;cursor:pointer;border:none;background:#f1f5f9;color:#475569;transition:background .15s}.dra-pagination-btn:hover:not(:disabled){background:#e2e8f0;transform:translateY(-1px)}.dra-pagination-btn:disabled{opacity:.65;cursor:not-allowed}.dra-page-label{color:#334155;font-weight:600;font-size:.9rem;white-space:nowrap}.dra-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid #e2e8f0;flex-shrink:0}.dra-footer-counter{font-size:.9rem;color:#475569;font-weight:700;white-space:nowrap}.dra-footer-actions{display:flex;align-items:center;gap:12px}.dra-btn{padding:10px 20px;border-radius:10px;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .15s;border:none;display:inline-flex;align-items:center;gap:8px}.dra-btn-cancel{background:#f1f5f9;color:#475569}.dra-btn-cancel:hover:not(:disabled){background:#e2e8f0}.dra-btn-save{background:linear-gradient(135deg,#0e375f 0%,#1a5490 100%);color:#fff}.dra-btn-save:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.dra-btn-save:disabled,.dra-btn-cancel:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 768px){.dra-table th,.dra-table td{padding:10px 12px}.dra-col-product,.drapr-col-product{min-width:180px}.dra-col-code,.drapr-col-code{min-width:70px}.dra-col-gamme,.dra-col-current-rule,.drapr-col-gamme,.drapr-col-current-rule{min-width:90px}.dra-tbody{max-height:52vh}.dra-modal{width:95%;max-width:100%}.dra-filters{flex-direction:column}.dra-search,.dra-select{width:100%;min-width:0;flex:none}.dra-footer{flex-direction:column;align-items:stretch;gap:10px}.dra-footer-counter{text-align:center}.dra-footer-actions{justify-content:center}}@media (max-width: 480px){.dra-overlay{padding:12px}.dra-modal{width:100%;max-height:95vh;border-radius:14px 14px 0 0}.dra-header{padding:16px}.dra-body{padding:16px 16px 0}.dra-filters{gap:10px;margin-bottom:10px}.dra-search{min-width:0}.dra-select{flex:1 1 160px;min-width:0}.dra-table-wrapper{border-radius:10px}.dra-table th,.dra-table td{padding:8px 10px}.dra-table{font-size:.8rem}.dra-col-product,.drapr-col-product{min-width:160px}.dra-col-code,.drapr-col-code{min-width:60px}.dra-col-gamme,.dra-col-current-rule,.drapr-col-gamme,.drapr-col-current-rule{min-width:80px}.dra-footer{padding:16px}.dra-col-gamme,.drapr-col-gamme,.dra-table th.dra-col-gamme{display:none}.dra-footer-actions{flex-direction:column;width:100%}.dra-footer-actions .dra-btn{width:100%;justify-content:center}}.react-joyride__tooltip{max-width:420px}.react-joyride__spotlight{border-radius:8px}.tour-tooltip{background:#fff;border-radius:10px;padding:20px;max-width:420px;min-width:320px;box-shadow:0 4px 20px rgba(0,0,0,.15);position:relative}.tour-tooltip-title{font-size:1.05rem;font-weight:700;color:#0e375f;margin:0 0 10px;padding-right:28px}.tour-tooltip-content{font-size:.9rem;line-height:1.6;color:#444;margin-bottom:16px}.tour-btn-close{position:absolute;top:8px;right:8px;background:none;border:none;font-size:1.3rem;color:#999;cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s}.tour-btn-close:hover{color:#333}.tour-tooltip-footer{display:flex;flex-direction:column;gap:8px;border-top:1px solid #eee;padding-top:12px;margin-top:4px;align-items:stretch}.tour-tooltip-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.tour-tooltip-progress{font-size:.8rem;color:#999;white-space:nowrap;margin-right:auto}.tour-btn-next{background:#0E375F;color:#fff;border:none;border-radius:6px;padding:8px 20px;font-size:.9rem;cursor:pointer;transition:background .2s;white-space:nowrap}.tour-btn-next:hover{background:#15497a}.tour-btn-back{background:none;border:none;color:#0e375f;font-size:.9rem;cursor:pointer;padding:8px 10px;white-space:nowrap}.tour-btn-back:hover{text-decoration:underline}.tour-btn-skip{background:none;border:none;color:#999;font-size:.8rem;cursor:pointer;padding:0;white-space:nowrap;align-self:flex-start}.tour-btn-skip:hover{color:#666}.drl-page{min-height:100vh;background:#f1f5f9;padding-bottom:80px}.drl-header{background:linear-gradient(135deg,#0e375f 0%,#1a5490 100%);color:#fff;padding:20px 0;position:sticky;top:0;z-index:100;box-shadow:0 4px 16px rgba(14,55,95,.35)}.drl-header-inner{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.drl-btn-back{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:10px;padding:9px 16px;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s;flex-shrink:0}.drl-btn-back:hover{background:rgba(255,255,255,.25)}.drl-title{flex:1;font-size:1.25rem;font-weight:700;margin:0;min-width:0}.drl-btn-create{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#0e375f 0%,#1a5490 100%);color:#fff;border:none;border-radius:10px;padding:10px 18px;font-size:.875rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:filter .15s;flex-shrink:0}.drl-btn-create:hover{filter:brightness(1.07)}.drl-content{max-width:1200px;margin:0 auto;padding:24px 20px}.drl-error{background:#fef2f2;color:#dc2626;padding:12px 16px;border-radius:10px;margin-bottom:16px;font-size:.9rem}.drl-loading,.drl-empty{text-align:center;padding:60px 20px;color:#475569;font-size:1rem;display:flex;flex-direction:column;align-items:center;gap:16px}.drl-empty p{margin:0;color:#334155;font-weight:500}.drl-loading .drl-spin,.drl-empty svg{font-size:40px;opacity:.5;color:#64748b}.drl-spin{animation:drl-spin .8s linear infinite}.discount-rules-help-icon{margin-left:8px;vertical-align:middle;cursor:pointer;opacity:.8;transition:opacity .2s;font-size:1rem;color:rgba(255,255,255,.8)}.discount-rules-help-icon:hover{opacity:1}@keyframes drl-spin{to{transform:rotate(360deg)}}.drl-table-wrapper{overflow-x:auto;border-radius:8px;box-shadow:0 2px 12px rgba(0,0,0,.07);background:#fff}.drl-table{width:100%;border-collapse:collapse;font-size:.875rem}.drl-table thead tr{background:#f8fafc;border-bottom:2px solid #e2e8f0}.drl-table th{padding:12px 14px;text-align:left;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#64748b;white-space:nowrap}.drl-table td{padding:12px 14px;border-bottom:1px solid #f1f5f9;vertical-align:middle;color:#333!important}.drl-table tbody tr:last-child td{border-bottom:none}.drl-table tbody tr:hover{background:#f0f9ff}.drl-col-name{min-width:140px;font-weight:600}.drl-col-desc{max-width:240px;color:#64748b}.drl-col-tiers,.drl-col-products{white-space:nowrap}.drl-col-actions{width:120px}.drl-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600}.drl-badge-active{background:#dcfce7;color:#166534}.drl-badge-inactive{background:#f1f5f9;color:#334155}.drl-actions{display:flex;align-items:center;gap:6px}.drl-btn-action{width:34px;height:34px;border:none;border-radius:8px;background:#f1f5f9;color:#475569;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.drl-btn-action:hover{background:#e2e8f0;color:#0e375f}.drl-btn-edit:hover,.drl-btn-assign:hover{color:#0e375f}.drl-btn-delete:hover{color:#dc2626;background:#fef2f2}@media (max-width: 768px){.drl-col-desc,.drl-col-tiers,.drl-table .drl-col-desc,.drl-table .drl-col-tiers{display:none}.drl-header-inner{justify-content:center;gap:12px}.drl-title{width:100%;text-align:center;font-size:1.1rem}.drl-btn-create{width:100%;justify-content:center}}@media (max-width: 480px){.drl-header{padding:16px 0}.drl-header-inner{padding:0 16px}.drl-content{padding:16px 12px}.drl-btn-back{padding:8px 12px;font-size:.8rem}.drl-btn-create{padding:9px 14px;font-size:.8rem}.drl-table th,.drl-table td{padding:10px;font-size:.8rem}.drl-col-products,.drl-table .drl-col-products{display:none}.drl-btn-action{width:30px;height:30px}.drl-actions{gap:4px}}.admin-catalogue{min-height:100vh;background:#f1f5f9;padding-bottom:80px}.ac-header{background:linear-gradient(135deg,#0E375F 0%,#1a5490 100%);color:#fff;padding:20px 0;position:sticky;top:0;z-index:100;box-shadow:0 4px 16px rgba(14,55,95,.35)}.ac-header-inner{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.ac-header-title{flex:1;min-width:0}.ac-header-title h1{font-size:1.25rem;font-weight:700;margin:0 0 2px;display:flex;align-items:center;gap:10px}.ac-header-title p{margin:0;font-size:.85rem;opacity:.75}.btn-back{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:10px;padding:9px 16px;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s;flex-shrink:0}.btn-back:hover{background:rgba(255,255,255,.25)}.btn-add-product{display:flex;align-items:center;gap:8px;background:#fff;color:#0e375f;border:none;border-radius:10px;padding:10px 18px;font-size:.875rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .15s;flex-shrink:0;box-shadow:0 2px 8px rgba(0,0,0,.15)}.btn-add-product:hover{background:#f0f9ff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.2)}.ac-header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.btn-manage-discounts{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.2);color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:10px;padding:9px 16px;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.btn-manage-discounts:hover{background:rgba(255,255,255,.3);border-color:rgba(255,255,255,.5)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.ac-stats{display:flex;gap:16px;padding:20px 0 8px;flex-wrap:wrap}.ac-stat{display:flex;align-items:center;gap:12px;background:#fff;border-radius:12px;padding:14px 20px;box-shadow:0 1px 4px rgba(0,0,0,.06);min-width:130px}.ac-stat svg{font-size:22px;color:#64748b;flex-shrink:0}.ac-stat-ok svg{color:#22c55e}.ac-stat-warn svg{color:#f59e0b}.ac-stat div{display:flex;flex-direction:column;gap:1px}.ac-stat-val{font-size:1.4rem;font-weight:800;color:#1e293b;line-height:1}.ac-stat-label{font-size:.75rem;color:#64748b;font-weight:500}.ac-filters{display:flex;align-items:center;gap:12px;padding:16px 0 12px;flex-wrap:wrap}.ac-search{position:relative;flex:1;min-width:200px}.ac-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:14px;pointer-events:none}.ac-search input{width:100%;padding:10px 12px 10px 38px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:.875rem;background:#fff;color:#1e293b;outline:none;box-sizing:border-box;transition:border-color .15s}.ac-search input:focus{border-color:#0e375f}.btn-reset-filters{background:none;border:1.5px solid #e2e8f0;border-radius:10px;padding:9px 14px;font-size:.8rem;color:#64748b;cursor:pointer;white-space:nowrap;transition:all .15s}.btn-reset-filters:hover{border-color:#ef4444;color:#ef4444}.ac-results-count{font-size:.8rem;color:#64748b;margin:0 0 8px}.ac-loading,.ac-empty{text-align:center;padding:60px 20px;color:#475569;font-size:1rem;display:flex;flex-direction:column;align-items:center;gap:12px}.ac-empty p{color:#334155;font-weight:500;margin:0}.ac-loading svg,.ac-empty svg{font-size:40px;opacity:.5;color:#64748b}.spin{animation:spin .8s linear infinite}.ac-table-wrapper{overflow-x:auto;border-radius:14px;box-shadow:0 2px 12px rgba(0,0,0,.07);background:#fff;margin-bottom:24px}.ac-table{width:100%;border-collapse:collapse;font-size:.875rem}.ac-table thead tr{background:#f8fafc;border-bottom:2px solid #e2e8f0}.ac-table th{padding:12px 14px;text-align:left;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#64748b;white-space:nowrap}.ac-table td{padding:12px 14px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.ac-table tbody tr:last-child td{border-bottom:none}.ac-table tbody tr:hover{background:#fafcff}.ac-table tbody tr.row-rupture{background:#fff7f7}.ac-table tbody tr.row-rupture:hover{background:#fff0f0}.col-image{width:60px}.col-name{min-width:180px}.col-gamme{width:120px}.col-price{width:90px;text-align:right;color:#1e293b}.col-stock{width:130px}.col-actions{width:90px}.product-thumb{width:48px;height:48px;border-radius:8px;overflow:hidden;border:1px solid #e2e8f0;background:#f8fafc;flex-shrink:0}.product-thumb img{width:100%;height:100%;object-fit:cover}.product-thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#cbd5e1;font-size:18px}.product-name-cell{display:flex;flex-direction:column;gap:3px}.product-name{font-weight:600;color:#1e293b;line-height:1.3}.product-code{font-size:.75rem;color:#94a3b8;font-family:monospace}.gamme-badge{display:inline-block;background:rgba(14,55,95,.08);color:#0e375f;border-radius:100px;padding:3px 10px;font-size:.75rem;font-weight:600;white-space:nowrap}.stock-toggle{display:inline-flex;align-items:center;gap:6px;border:none;border-radius:100px;padding:5px 12px;font-size:.75rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .15s}.stock-dispo{background:rgba(34,197,94,.1);color:#16a34a}.stock-dispo:hover,.stock-rupture{background:rgba(239,68,68,.1);color:#dc2626}.stock-rupture:hover{background:rgba(34,197,94,.1);color:#16a34a}.actions-group{display:flex;gap:6px}.btn-action{width:34px;height:34px;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:all .15s}.btn-edit{background:rgba(14,55,95,.08);color:#0e375f}.btn-edit:hover{background:#0E375F;color:#fff}.btn-delete{background:rgba(239,68,68,.08);color:#ef4444}.btn-delete:hover{background:#ef4444;color:#fff}.btn-discounts{background:rgba(245,158,11,.12);color:#b45309}.btn-discounts:hover{background:#f59e0b;color:#fff}.ac-save-error{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:#ef4444;color:#fff;padding:12px 20px;border-radius:10px;font-size:.875rem;z-index:4000;box-shadow:0 4px 16px rgba(239,68,68,.35)}.ac-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);padding:12px 20px;border-radius:10px;font-size:.875rem;font-weight:600;z-index:4000;display:flex;align-items:center;gap:8px;box-shadow:0 4px 16px rgba(0,0,0,.15);animation:toast-in .2s ease;white-space:nowrap}@keyframes toast-in{0%{transform:translate(-50%) translateY(10px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.ac-toast-success{background:#0E375F;color:#fff}.ac-toast-error{background:#ef4444;color:#fff}@media (max-width: 768px){.ac-header-inner{flex-wrap:wrap}.ac-header-title h1{font-size:1.1rem}.ac-table th.col-price:last-of-type,.ac-table td.col-price:last-of-type{display:none}.ac-filters{gap:8px}.ac-search{min-width:160px}}@media (max-width: 480px){.container{padding:0 12px}.ac-stats{gap:10px}.ac-stat{flex:1;min-width:100px;padding:12px 14px}}.setup-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0a1628 0%,#0e375f 50%,#1a5a8a 100%);padding:24px}.setup-card{background:#fff;border-radius:16px;padding:48px 40px;width:100%;max-width:460px;box-shadow:0 24px 60px rgba(0,0,0,.3);text-align:center}.setup-card--error h2,.setup-card--success h2{margin:16px 0 8px;color:#1a1a1a}.setup-card--error p,.setup-card--success p{color:#666;margin-bottom:24px}.setup-logo{font-size:1.5rem;font-weight:800;color:#0e375f;letter-spacing:-.5px;margin-bottom:8px}.setup-header h2{font-size:1.4rem;font-weight:700;color:#1a1a1a;margin:0 0 6px}.setup-subtitle{color:#666;font-size:.9rem;margin:0 0 32px}.setup-form{text-align:left;display:flex;flex-direction:column;gap:20px}.setup-field{display:flex;flex-direction:column;gap:6px}.setup-field label{font-size:.85rem;font-weight:600;color:#333;display:flex;align-items:center;gap:6px}.setup-field input{border:1.5px solid #ddd;border-radius:8px;padding:11px 14px;font-size:.95rem;color:#1a1a1a;transition:border-color .2s;outline:none;width:100%;box-sizing:border-box}.setup-field input:focus{border-color:#0e375f}.setup-field small{color:#999;font-size:.78rem}.setup-password-wrapper{position:relative}.setup-password-wrapper input{padding-right:44px}.setup-eye{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#888;padding:4px;font-size:1rem;line-height:1}.setup-eye:hover{color:#0e375f}.setup-error{background:#fff5f5;border:1px solid #ffcdd2;border-radius:8px;padding:10px 14px;color:#c62828;font-size:.88rem;display:flex;align-items:center;gap:8px}.setup-submit{background:linear-gradient(135deg,#0e375f,#1a5a8a);color:#fff;border:none;border-radius:10px;padding:13px 20px;font-size:.95rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:opacity .2s,transform .1s;margin-top:4px}.setup-submit:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.setup-submit:disabled{opacity:.6;cursor:not-allowed}.setup-btn{background:#0e375f;color:#fff;border:none;border-radius:8px;padding:10px 24px;font-size:.9rem;cursor:pointer;transition:opacity .2s}.setup-btn:hover{opacity:.85}.setup-success-icon{font-size:3rem;color:#2e7d32;margin-bottom:8px}.setup-spinner{width:36px;height:36px;border:3px solid #ddd;border-top-color:#0e375f;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 16px}.setup-spinner-sm{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 480px){.setup-card{padding:32px 24px}}.error-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-lg);padding-top:120px;background:transparent}.error-content{text-align:center;max-width:600px}.error-content h1{font-size:clamp(4rem,10vw,8rem);color:var(--color-text-primary);margin-bottom:var(--spacing-md);font-weight:800}.error-content p{color:var(--color-text-secondary);font-size:1.25rem;margin-bottom:var(--spacing-2xl)}.error-content a{display:inline-block;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:var(--color-text-primary);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--border-radius-md);text-decoration:none;font-weight:600;transition:all var(--transition-normal)}.error-content a:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(14,55,95,.4)}
