*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Nunito Sans,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}body{--tw-bg-opacity: 1;background-color:rgb(250 248 245 / var(--tw-bg-opacity, 1));font-family:Nunito Sans,sans-serif;--tw-text-opacity: 1;color:rgb(62 62 62 / var(--tw-text-opacity, 1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;min-width:320px;min-height:100vh}h1,h2,h3,h4{font-family:Cormorant Garamond,serif;--tw-text-opacity: 1;color:rgb(62 62 62 / var(--tw-text-opacity, 1))}h1{font-size:3.2em;line-height:1.1}button{border-radius:1.5rem;--tw-shadow: 0 4px 8px rgba(0,0,0,.05);--tw-shadow-colored: 0 4px 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer}a{--tw-text-opacity: 1;color:rgb(209 160 84 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}a:hover{--tw-text-opacity: 1;color:rgb(168 181 160 / var(--tw-text-opacity, 1))}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.visible{visibility:visible}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.ml-5{margin-left:1.25rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-6{margin-top:1.5rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-2{height:.5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.w-0{width:0px}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-full{width:100%}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-t{border-top-width:1px}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.bg-\[\#A8B5A0\]{--tw-bg-opacity: 1;background-color:rgb(168 181 160 / var(--tw-bg-opacity, 1))}.bg-\[\#D1A054\]{--tw-bg-opacity: 1;background-color:rgb(209 160 84 / var(--tw-bg-opacity, 1))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.p-3{padding:.75rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.pt-6{padding-top:1.5rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.italic{font-style:italic}.text-\[\#A8B5A0\]{--tw-text-opacity: 1;color:rgb(168 181 160 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-orange-600{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}:root{font-family:Nunito Sans,system-ui,sans-serif;line-height:1.5;font-weight:400;color:#3e3e3e;background-color:#faf8f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#d1a054;text-decoration:inherit}a:hover{color:#a8b5a0}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-700:hover{--tw-bg-opacity: 1;background-color:rgb(67 56 202 / var(--tw-bg-opacity, 1))}.focus\:border-indigo-500:focus{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-indigo-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}@media (min-width: 640px){.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width: 768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.modal-overlay{position:fixed;inset:0;background:#2c3e5073;z-index:1000;display:flex;align-items:center;justify-content:center}.modal-content{background:#fff;border-radius:1em;box-shadow:0 8px 32px #2c3e502e;padding:2em 1.5em 1.5em;max-width:420px!important;min-width:320px!important;width:auto!important;max-height:90vh!important;overflow-y:auto;margin:auto;position:relative;z-index:1001;animation:modalIn .25s cubic-bezier(.4,2,.6,1) both}@media (max-width: 600px){.modal-content{padding:1em .5em;min-width:90vw;max-width:98vw}}button,.btn{font-family:Nunito Sans,sans-serif!important;background:#a8b5a0;color:#fff;border:none;border-radius:1em;padding:.6em 1.2em;font-size:1em!important;font-weight:600!important;cursor:pointer;transition:background .2s,box-shadow .2s,transform .1s;box-shadow:0 2px 8px #0000001a;margin:0;display:inline-flex!important;align-items:center;justify-content:center;height:2.5em!important;line-height:1;box-sizing:border-box;vertical-align:middle}button:hover:not(:disabled),.btn:hover:not(:disabled){transform:translateY(-2px) scale(1.03);box-shadow:0 4px 16px #00000026}button[type=submit]:hover:not(:disabled),button[type=button]:hover:not(:disabled){background:#9baa94}button:active:not(:disabled),.btn:active:not(:disabled){transform:scale(.98)}.delete-btn{background:linear-gradient(135deg,#c18f45,#b87d35)!important;color:#fff!important;border-radius:1em!important;font-family:Nunito Sans,sans-serif!important;padding:.6em 1.2em!important;font-size:1em!important;font-weight:600!important;box-shadow:0 2px 8px #0000001a!important}.delete-btn:hover:not(:disabled){background:linear-gradient(135deg,#b87d35,#a86d25)!important;transform:translateY(-2px) scale(1.03);box-shadow:0 4px 16px #c18f454d!important}.delete-btn:active:not(:disabled){transform:scale(.98)}.close-boutique-btn{background:#ff9800;color:#fff}.close-boutique-btn:hover:not(:disabled){background:#f57c00;transform:translateY(-2px) scale(1.03);box-shadow:0 4px 16px #ff980033}.close-boutique-btn:active:not(:disabled){background:#ef6c00;transform:scale(.98)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e1e5e9}.modal-header h2{font-family:Dancing Script,cursive;margin:0;color:#333;font-size:24px;font-weight:600}.close-btn{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .3s}.close-btn:hover{background-color:#f5f5f5;color:#333}.modal-content form{padding:24px}.form-group label{font-family:Nunito Sans,sans-serif;display:block;margin-bottom:8px;font-weight:600;color:#3e3e3e;font-size:14px}.form-group input,.form-group select{font-family:Nunito Sans,sans-serif;width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:14px;color:#3e3e3e;background:#fff;transition:all .3s;box-sizing:border-box}.form-group input:focus,.form-group select:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a}.form-group select{background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:40px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.form-group small{font-family:Nunito Sans,sans-serif;display:block;margin-top:6px;font-size:12px;color:#666;font-style:italic}.type-buttons{display:flex;flex-direction:column;gap:10px;margin-top:10px}.type-btn{font-family:Nunito Sans,sans-serif;background-color:#f8f9fa;border:2px solid #e1e5e9;color:#666;padding:12px 16px;border-radius:8px;font-size:14px;cursor:pointer;transition:all .3s;text-align:left;font-weight:500}.type-btn:hover{border-color:#a8b5a0;background-color:#a8b5a00d}.type-btn.active{background-color:#a8b5a0;border-color:#a8b5a0;color:#fff}.modal-actions{display:flex;justify-content:flex-end;align-items:center;align-content:center;gap:12px;margin-top:30px;padding-top:20px;border-top:1px solid #e1e5e9;flex-wrap:wrap}.modal-actions>button,.modal-actions>.action-buttons{display:inline-flex!important;align-items:center!important;align-self:center!important;height:2.5em!important;vertical-align:middle!important;margin-top:0!important;margin-bottom:0!important}.modal-actions>.action-buttons{height:2.5em!important;display:inline-flex!important;align-items:center!important;align-self:center!important;margin-top:0!important;margin-bottom:0!important;vertical-align:middle!important}.modal-actions>button{height:2.5em!important;align-self:center!important;vertical-align:middle!important;margin:0!important}.action-buttons{display:inline-flex!important;align-items:center!important;align-self:center!important;gap:12px;height:2.5em!important;vertical-align:middle!important;margin-top:0!important;margin-bottom:0!important}.action-buttons button:first-child{background-color:#6c757d;margin:0;font-family:Nunito Sans,sans-serif!important;font-size:1em!important;font-weight:600!important;height:2.5em!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;vertical-align:middle!important}.action-buttons button:first-child:hover:not(:disabled){background-color:#5a6268;transform:translateY(-2px) scale(1.03);box-shadow:0 4px 16px #6c757d33}.action-buttons button[type=submit]{background-color:#a8b5a0;margin:0;font-family:Nunito Sans,sans-serif!important;font-size:1em!important;font-weight:600!important;height:2.5em!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;vertical-align:middle!important}.action-buttons button[type=submit]:hover:not(:disabled){background-color:#9baa94;transform:translateY(-2px) scale(1.03);box-shadow:0 4px 16px #a8b5a033}.action-buttons button{font-family:Nunito Sans,sans-serif!important;font-size:1em!important;font-weight:600!important;height:2.5em!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;vertical-align:middle!important}.close-boutique-btn{font-family:Nunito Sans,sans-serif!important;border:none;border-radius:1em;padding:.6em 1.2em;font-size:1em!important;font-weight:600!important;cursor:pointer;transition:background .2s,box-shadow .2s,transform .1s;box-shadow:0 2px 8px #0000001a;margin:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;height:2.5em!important;line-height:1!important;box-sizing:border-box;vertical-align:middle!important;align-self:center!important}.delete-btn{margin:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;height:2.5em!important;line-height:1!important;box-sizing:border-box;vertical-align:middle!important;align-self:center!important}.delete-btn:disabled,.close-boutique-btn:disabled,.action-buttons button:disabled{opacity:.6;cursor:not-allowed;transform:none}.delete-btn:disabled:hover,.close-boutique-btn:disabled:hover,.action-buttons button:disabled:hover{transform:none;background:inherit}@media (max-width: 768px){.modal-content{margin:10px;max-width:420px;min-width:280px;width:auto}.modal-actions{flex-direction:column;gap:15px}.action-buttons{width:100%;justify-content:space-between}}.modal-overlay{position:fixed;inset:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;padding:2rem;border-radius:8px;min-width:320px;max-width:90vw;box-shadow:0 2px 16px #0003}.modal-content h2,.form-group{margin-bottom:1rem}.modal-actions{display:flex;justify-content:flex-end;gap:1rem}.horaires-custom{border:1px solid #e1e5e9;border-radius:8px;padding:1em;margin:1em 0;background:#f8f9fa}.horaires-inputs{display:flex;align-items:center;gap:.5em;margin-top:.5em}.horaires-inputs input[type=time]{padding:.5em;border:1px solid #ddd;border-radius:4px;font-size:.9em}.horaires-inputs span{color:#666;font-weight:500}.form-group input[type=checkbox]{margin-right:.5em}.form-group label{display:flex;align-items:center;cursor:pointer}.toast{position:fixed;top:10px;right:20px;min-width:320px;max-width:480px;background:#fff;border-radius:12px;box-shadow:0 10px 30px #00000026;border:1px solid;z-index:999999;animation:toast-slide-in .4s ease-out;position:relative;overflow:hidden}.toast-success{border-color:#10b981;background:linear-gradient(135deg,#ecfdf5,#f0fdf4)}.toast-error{border-color:#ef4444;background:linear-gradient(135deg,#fef2f2,#fef1f1)}.toast-warning{border-color:#f59e0b;background:linear-gradient(135deg,#fffbeb,#fefce8)}.toast-info{border-color:#a8b5a0;background:linear-gradient(135deg,#eff6ff,#f0f9ff)}.toast-content{display:flex;align-items:flex-start;gap:12px;padding:16px 50px 16px 20px}.toast-icon{width:24px;height:24px;flex-shrink:0;margin-top:2px}.toast-success .toast-icon{color:#10b981}.toast-error .toast-icon{color:#ef4444}.toast-warning .toast-icon{color:#f59e0b}.toast-info .toast-icon{color:#a8b5a0}.toast-icon svg{width:100%;height:100%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.toast-message{display:flex;align-items:center;gap:8px;flex-grow:1;font-size:14px;line-height:1.4;color:#374151;font-weight:500}.toast-emoji{font-size:16px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.toast-close{position:absolute;top:12px;right:12px;width:32px;height:32px;background:#0000000d;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:#6b7280}.toast-close:hover{background:#0000001a;color:#374151;transform:scale(1.05)}.toast-close svg{width:14px;height:14px}.toast-progress{position:absolute;bottom:0;left:0;height:3px;background:linear-gradient(90deg,transparent 0%,currentColor 50%,transparent 100%);animation:toast-progress 4s linear}.toast-success .toast-progress{color:#10b981}.toast-error .toast-progress{color:#ef4444}.toast-warning .toast-progress{color:#f59e0b}.toast-info .toast-progress{color:#a8b5a0}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toast-progress{0%{width:100%;opacity:1}90%{opacity:1}to{width:0%;opacity:0}}.toast-container{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast-container .toast{position:relative;top:auto;right:auto;pointer-events:auto}@media (max-width: 768px){.toast{top:60px;right:10px;left:10px;min-width:auto;max-width:none}.toast-content{padding:14px 45px 14px 16px}.toast-message{font-size:13px}.toast-close{top:10px;right:10px;width:28px;height:28px}.toast-close svg{width:12px;height:12px}}.mobile-calendar{background:var(--surface-color, #fff);border-radius:var(--border-radius-medium, 12px);box-shadow:var(--shadow-small, 0 2px 8px rgba(0, 0, 0, .1));padding:16px;max-width:600px;margin:0 auto;width:100%;box-sizing:border-box;overflow-x:hidden}.mobile-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:8px 0}.month-year-label{font-size:20px;font-weight:600;font-family:Dancing Script,cursive;color:var(--text-primary, #333);margin:0;flex:1;text-align:center}.month-nav-btn{background:var(--primary-color, #A8B5A0);color:#fff;border:none;border-radius:50%;width:40px;height:40px;font-size:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.month-nav-btn:hover{background:var(--primary-dark, #9BAA94);transform:scale(1.05)}.month-nav-btn:active{transform:scale(.95)}.today-btn{background:var(--accent-color, #FF9800);color:#fff;border:none;border-radius:20px;padding:8px 20px;font-size:14px;font-weight:500;cursor:pointer;margin-bottom:16px;width:100%;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.today-btn:hover{background:var(--accent-dark, #F57C00);transform:translateY(-1px);box-shadow:0 2px 8px #ff98004d}.today-btn:active{transform:translateY(0)}.weekday-labels{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:8px;padding:0;width:100%;box-sizing:border-box}.weekday-label{text-align:center;font-size:12px;font-weight:600;color:var(--text-secondary, #666);padding:8px 0;text-transform:uppercase;box-sizing:border-box}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:20px;width:100%;box-sizing:border-box}.calendar-day{aspect-ratio:1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:6px 2px;border-radius:8px;background:var(--surface-light, #f9f9f9);cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent;min-height:60px}.calendar-day:active{transform:scale(.95)}.calendar-day.other-month{opacity:.3;background:transparent}.calendar-day.today{background:var(--primary-light, #E3F2FD);border:2px solid var(--primary-color, #A8B5A0)}.calendar-day.selected{background:var(--primary-color, #A8B5A0)}.calendar-day.selected .day-number{color:#fff}.calendar-day.selected .event-dot,.calendar-day.selected .event-more{filter:brightness(1.5)}.day-number{font-size:14px;font-weight:500;color:var(--text-primary, #333);margin-bottom:4px;padding:4px 8px;border-radius:6px;min-width:24px;text-align:center}.day-number.badge-complete{background:#4caf5026;color:#4caf50;font-weight:600}.day-number.badge-fulfilled{background:#a8b5a026;color:#a8b5a0;font-weight:600}.day-number.badge-unfulfilled{background:#f4433626;color:#f44336;font-weight:600}.event-indicators{display:flex;gap:3px;align-items:center;flex-wrap:wrap;justify-content:center;margin-top:auto}.event-dot{width:6px;height:6px;border-radius:50%;background:var(--primary-color, #A8B5A0)}.event-dot.permanence{background:#a8b5a0}.event-dot.boutiquefermee{background:#f44336}.event-dot.ouvertureexceptionnelle{background:#ff9800}.coverage-indicator{display:flex;align-items:center;justify-content:center;margin-top:auto;padding-top:2px}.coverage-ratio{font-size:10px;font-weight:600;padding:2px 4px;border-radius:4px;line-height:1.2}.coverage-ratio.full{background:#4caf50;color:#fff}.coverage-ratio.half{background:#ff9800;color:#fff}.coverage-ratio.none{background:#f44336;color:#fff}.event-more{font-size:9px;font-weight:600;color:var(--text-secondary, #666)}.special-star{position:absolute;top:2px;right:2px;font-size:10px}.selected-day-events{background:var(--surface-light, #f9f9f9);border-radius:12px;padding:16px;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.selected-day-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding-bottom:12px;border-bottom:2px solid var(--border-color, #e0e0e0)}.selected-day-title{font-size:16px;font-weight:600;color:var(--text-primary, #333);margin:0;text-transform:capitalize;flex:1}.add-event-btn{background:var(--primary-color, #A8B5A0);color:#fff;border:none;border-radius:50%;width:36px;height:36px;font-size:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent;flex-shrink:0;box-shadow:0 2px 4px #a8b5a04d}.add-event-btn:hover{background:var(--primary-dark, #9BAA94);transform:scale(1.1);box-shadow:0 4px 8px #a8b5a066}.add-event-btn:active{transform:scale(.95)}.no-events-message{text-align:center;color:var(--text-secondary, #666);font-size:14px;padding:20px;margin:0}.events-list{display:flex;flex-direction:column;gap:12px}.event-item{background:#fff;border-radius:10px;padding:12px;display:flex;gap:12px;align-items:center;box-shadow:0 2px 4px #00000014;transition:all .2s ease;border-left:4px solid var(--primary-color, #A8B5A0);-webkit-tap-highlight-color:transparent}.event-item:active{transform:scale(.98);box-shadow:0 1px 2px #0000001a}.event-content{display:flex;gap:12px;flex:1}.event-item.permanence{border-left-color:#a8b5a0}.event-item.boutiquefermee{border-left-color:#f44336}.event-item.ouvertureexceptionnelle{border-left-color:#ff9800}.event-time{font-size:13px;font-weight:600;color:var(--text-secondary, #666);min-width:90px;white-space:nowrap}.event-details{flex:1;display:flex;flex-direction:column;gap:4px}.event-title{font-size:14px;font-weight:500;color:var(--text-primary, #333)}.event-type{font-size:12px;color:var(--text-secondary, #666);padding:2px 8px;background:var(--surface-light, #f0f0f0);border-radius:4px;display:inline-block;width:-moz-fit-content;width:fit-content}.delete-event-btn{background:linear-gradient(135deg,#c18f45,#b87d35);color:#fff;border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent;flex-shrink:0;font-size:16px;box-shadow:0 2px 4px #c18f454d}.delete-event-btn:hover{background:linear-gradient(135deg,#b87d35,#a86d25);transform:scale(1.05);box-shadow:0 4px 8px #c18f4566}.delete-event-btn:active{transform:scale(.95)}@media (max-width: 360px){.mobile-calendar{padding:12px}.month-year-label{font-size:18px;font-family:Dancing Script,cursive}.month-nav-btn{width:36px;height:36px;font-size:20px}.calendar-day{min-height:50px;padding:4px 2px}.day-number{font-size:12px;padding:3px 6px}.event-dot{width:5px;height:5px}.event-time{font-size:12px;min-width:80px}.event-title{font-size:13px}}@media (prefers-color-scheme: dark){.mobile-calendar{background:#1e1e1e}.month-year-label{color:#e0e0e0;font-family:Dancing Script,cursive}.calendar-day{background:#2a2a2a}.day-number{color:#e0e0e0}.selected-day-events{background:#2a2a2a}.selected-day-title{color:#e0e0e0;border-bottom-color:#444}.event-item{background:#333}.event-title{color:#e0e0e0}.event-time{color:#aaa}.event-type{background:#444;color:#ccc}}.planning-container{max-width:900px;margin:0 auto;padding:20px;background:var(--surface-color);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--border-radius);box-shadow:var(--shadow-medium);position:relative;overflow:hidden}.planning-container:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.03),transparent);transition:left .8s}.planning-container:hover:before{left:100%}.planning-title{font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:24px;font-weight:700;color:var(--text-primary);margin-bottom:20px;text-align:center;letter-spacing:-.02em;text-shadow:0 2px 10px rgba(0,0,0,.1)}.planning-legend{display:flex;justify-content:center;gap:24px;margin-bottom:20px;padding:12px 20px;background:#fff9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--border-radius-small);box-shadow:var(--shadow-light);font-size:14px;font-weight:500;color:var(--text-secondary)}.legend-item{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px;vertical-align:middle;box-shadow:0 2px 8px #00000026;transition:var(--transition)}.legend-item:hover{transform:scale(1.1);box-shadow:0 4px 12px #0003}.legend-item.assuree{background:linear-gradient(135deg,#4caf50,#45a049)}.legend-item.nonassuree{background:linear-gradient(135deg,#ff9800,#f57c00)}.legend-item.holiday{background:linear-gradient(135deg,#e53935,#b71c1c)}.legend-item.closed,.legend-item.special{background:linear-gradient(135deg,#bdbdbd,#9e9e9e)}.planning-legend-creneaux{display:flex;justify-content:center;gap:20px;margin-bottom:15px;padding:8px 16px;background:#fff6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--glass-border);border-radius:var(--border-radius-small);box-shadow:var(--shadow-light);font-size:13px;font-weight:500;color:var(--text-secondary)}.legend-item-creneau{display:inline-block;width:14px;height:14px;border-radius:3px;margin-right:6px;vertical-align:middle;box-shadow:0 2px 6px #00000026;transition:var(--transition);border-left:2px solid rgba(0,0,0,.2)}.legend-item-creneau:hover{transform:scale(1.1);box-shadow:0 3px 10px #0003}.legend-item-creneau.matin{background:linear-gradient(135deg,#ff9800,#f57c00);border-left-color:#e65100}.legend-item-creneau.apresmidi{background:linear-gradient(135deg,#a8b5a0,#9baa94);border-left-color:#0d47a1}.legend-item-creneau.journee{background:linear-gradient(135deg,#9c27b0,#7b1fa2);border-left-color:#4a148c}.legend-item-creneau.user{background:linear-gradient(135deg,#4caf50,#45a049);border-left-color:#2e7d32}.fc{font-family:Nunito Sans,Segoe UI,system-ui,-apple-system,sans-serif}.fc .fc-toolbar{margin-bottom:16px;padding:12px 16px;background:#fff6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--border-radius-small);border:1px solid var(--glass-border);box-shadow:var(--shadow-light)}.fc .fc-toolbar-title{color:#a8b5a0;font-family:Dancing Script,cursive;font-weight:600;font-size:28px;letter-spacing:-.01em;text-shadow:0 1px 3px rgba(0,0,0,.1)}.fc .fc-button{background:linear-gradient(135deg,#a8b5a0,#9baa94)!important;border:none!important;border-radius:var(--border-radius-small);color:#fff!important;font-weight:600;font-size:14px;padding:8px 16px;transition:var(--transition);box-shadow:var(--shadow-light);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.fc .fc-button:not(:disabled):hover,.fc .fc-button:not(:disabled):focus{background:linear-gradient(135deg,#9baa94,#8a9a84);transform:translateY(-1px);box-shadow:var(--shadow-medium)}.fc .fc-button:not(:disabled):active{transform:translateY(0);box-shadow:var(--shadow-light)}.fc .fc-button:disabled{background:#bdbdbd99;color:#ffffffb3;cursor:not-allowed}.fc .fc-button-today,.fc .fc-toolbar-chunk .fc-button-today,.fc-button-group .fc-button-today{background:linear-gradient(135deg,#a8b5a0,#9baa94)!important;color:#fff!important;border:none!important}.fc .fc-button.fc-button-active,.fc .fc-button-today.fc-button-active,.fc .fc-toolbar-chunk .fc-button.fc-button-active,.fc .fc-toolbar-chunk .fc-button-today.fc-button-active,.fc-button-group .fc-button.fc-button-active,.fc-button-group .fc-button-today.fc-button-active{background:linear-gradient(135deg,#d1a054,#c18f45)!important;color:#fff!important;font-weight:700!important;box-shadow:0 4px 12px #d1a05466!important;border:none!important}.fc .fc-button-today.fc-button-active:hover,.fc .fc-button.fc-button-active:hover,.fc .fc-toolbar-chunk .fc-button.fc-button-active:hover,.fc .fc-toolbar-chunk .fc-button-today.fc-button-active:hover,.fc-button-group .fc-button.fc-button-active:hover,.fc-button-group .fc-button-today.fc-button-active:hover{background:linear-gradient(135deg,#c18f45,#b5803e)!important;box-shadow:0 6px 16px #d1a05480!important;border:none!important}.fc .fc-button-group>.fc-button{margin:0 2px}.fc .fc-daygrid-day{transition:var(--transition);border:1px solid rgba(255,255,255,.1);background:#ffffff0d;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);position:relative;overflow:hidden}.fc .fc-daygrid-day:hover{background:#ffffff26;transform:scale(1.02);box-shadow:var(--shadow-light);z-index:10;border-color:var(--border-focus)}.fc .fc-daygrid-day-number{color:var(--text-secondary);font-weight:600;font-size:14px;padding:8px;transition:var(--transition)}.fc .fc-day-today{background:linear-gradient(135deg,#a8b5a026,#9baa941a)!important;border:2px solid var(--border-focus)!important;box-shadow:0 0 20px #a8b5a04d}.fc .fc-day-today .fc-daygrid-day-number{color:var(--border-focus);font-weight:700}.fc-day-fulfilled-v2{background:linear-gradient(135deg,#4caf5026,#45a0491a)!important;border-color:#4caf504d!important}.fc-day-unfulfilled{background:linear-gradient(135deg,#ff980026,#f57c001a)!important;border-color:#ff98004d!important}.fc-day-past-or-closed{background:linear-gradient(135deg,#bdbdbd1a,#9e9e9e0d)!important;border-color:#bdbdbd33!important;opacity:.7}.fc-day-holiday{background:linear-gradient(135deg,#e5393526,#b71c1c1a)!important;border:2px solid rgba(229,57,53,.4)!important;position:relative}.fc-day-holiday:hover{background:linear-gradient(135deg,#e5393533,#b71c1c26)!important;border-color:#e5393599!important}.fc-day-locked{background-color:#f8f9fa!important;opacity:.6;position:relative}.fc-day-locked .fc-daygrid-day-number{color:#6c757d}.fc-day-locked:after{content:"🔒";position:absolute;top:5px;right:5px;font-size:12px;color:#dc3545;z-index:10}.fc-day-locked:hover{background-color:#e9ecef!important;cursor:not-allowed}.fc-day-partial{background-color:#fff3cd!important;position:relative}.fc-day-partial:after{content:"⚠️";position:absolute;top:5px;right:5px;font-size:12px;color:#ffc107;z-index:10}.fc-day-partial:hover{background-color:#ffeaa7!important}.custom-day-badge{display:inline-block;min-width:24px;padding:4px 8px;border-radius:20px;text-align:center;font-weight:600;font-size:11px;margin:2px auto;box-shadow:var(--shadow-light);transition:var(--transition);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);letter-spacing:.5px}.custom-day-badge:hover{transform:scale(1.05);box-shadow:var(--shadow-medium)}.badge-fulfilled{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.badge-unfulfilled{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.badge-closed{background:linear-gradient(135deg,#bdbdbd,#9e9e9e);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.badge-holiday{background:linear-gradient(135deg,#e53935,#b71c1c)!important;color:#fff!important;border:2px solid rgba(183,28,28,.5)!important;text-shadow:0 1px 2px rgba(0,0,0,.4);box-shadow:0 4px 12px #e539354d!important}.holiday-label{font-size:9px;color:#fff;margin-top:2px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.6);text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.special-badge{display:inline-block;margin-left:6px;font-size:12px;color:#ff9800;vertical-align:middle;text-shadow:0 1px 2px rgba(0,0,0,.1);filter:drop-shadow(0 0 3px rgba(255,152,0,.5));animation:specialGlow 2s ease-in-out infinite alternate}@keyframes specialGlow{0%{filter:drop-shadow(0 0 3px rgba(255,152,0,.5))}to{filter:drop-shadow(0 0 6px rgba(255,152,0,.8))}}.fc .fc-col-header-cell{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);color:var(--text-secondary);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:1px;padding:12px 8px}.fc .fc-daygrid-day-frame{min-height:65px;padding:4px}.fc .fc-daygrid-day-events{margin-top:4px}.planning-container.loading{opacity:.7;pointer-events:none}.planning-container.loading:after{content:"";position:absolute;top:50%;left:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border:3px solid transparent;border-top:3px solid var(--border-focus);border-radius:50%;animation:spin 1s linear infinite}.error-message{padding:16px 20px;background:linear-gradient(135deg,#e53e3e1a,#b71c1c0d);border:1px solid rgba(229,62,62,.2);border-radius:var(--border-radius-small);color:var(--error-color);font-weight:500;margin-bottom:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-light)}.toast{position:fixed;top:20px;right:20px;padding:16px 20px;background:var(--surface-color);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--border-radius-small);box-shadow:var(--shadow-heavy);z-index:1000;animation:slideInRight .3s ease-out;max-width:300px;font-weight:500}.toast.success{border-left:4px solid var(--success-color);color:var(--success-color)}.toast.error{border-left:4px solid var(--error-color);color:var(--error-color)}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media (max-width: 768px){.planning-container{padding:16px;margin:16px;border-radius:var(--border-radius-small)}.planning-title{font-size:22px;margin-bottom:16px}.planning-legend{flex-direction:column;gap:12px;font-size:13px;padding:12px 16px}.planning-legend-creneaux{flex-direction:column;gap:8px;font-size:12px;padding:8px 12px}.fc .fc-toolbar{flex-direction:column;gap:12px;padding:12px}.fc .fc-toolbar-title{font-size:24px;font-family:Dancing Script,cursive;color:#a8b5a0}.fc .fc-button{font-size:12px;padding:6px 12px}.fc .fc-daygrid-day-frame{min-height:60px;padding:2px}.custom-day-badge{font-size:10px;min-width:20px;padding:2px 6px}.fc .fc-daygrid-day-number{font-size:12px;padding:4px}}@media (max-width: 480px){.planning-container{margin:8px;padding:12px}.planning-legend{gap:8px;padding:8px 12px}.fc .fc-toolbar{padding:8px}.fc .fc-toolbar-title{font-size:22px;font-family:Dancing Script,cursive;color:#a8b5a0}.fc .fc-daygrid-day-frame{min-height:50px}.custom-day-badge{font-size:9px;min-width:18px;padding:1px 4px}}.fc .fc-event{border-radius:6px;font-size:12px;font-weight:500;padding:2px 6px;margin:1px 0;box-shadow:0 2px 4px #0000001a;transition:all .2s ease;cursor:pointer;border:none}.fc .fc-event:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.fc-timeGridWeek .fc-event,.fc-timeGridDay .fc-event{font-size:11px;padding:1px 4px;margin:.5px 0;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fc-event[style*="background-color: rgb(255, 152, 0)"]{background:linear-gradient(135deg,#ff9800,#f57c00)!important;border-left:3px solid #E65100!important}.fc-event[style*="background-color: rgb(33, 150, 243)"]{background:linear-gradient(135deg,#a8b5a0,#9baa94)!important;border-left:3px solid #0D47A1!important}.fc-event[style*="background-color: rgb(156, 39, 176)"]{background:linear-gradient(135deg,#9c27b0,#7b1fa2)!important;border-left:3px solid #4A148C!important}.fc-event[style*="background-color: rgb(76, 175, 80)"]{background:linear-gradient(135deg,#4caf50,#45a049)!important;border-left:3px solid #2E7D32!important}.fc .fc-daygrid-day-events{min-height:20px}.fc .fc-daygrid-event-dot{display:none}.fc-timeGridWeek .fc-timegrid-slot{height:30px}.fc-timeGridWeek .fc-timegrid-slot-label{font-size:11px;color:var(--text-secondary)}.fc-timeGridWeek .fc-event-main{font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3)}@media (max-width: 768px){.fc-timeGridWeek .fc-event{font-size:10px;padding:1px 3px}.fc-timeGridWeek .fc-event-main{font-weight:500}}@keyframes eventPulse{0%{opacity:.8}50%{opacity:1}to{opacity:.8}}.fc-event:hover{animation:eventPulse 1s ease-in-out}.fc-timeGridWeek .fc-event{border-radius:4px;font-size:11px;font-weight:600;padding:2px 4px;margin:1px 0;box-shadow:0 2px 4px #00000026;transition:all .2s ease;cursor:pointer;border:none;min-height:20px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.2}.fc-timeGridWeek .fc-event:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0003;z-index:10}.fc-timeGridWeek .fc-event[style*="background-color: rgb(255, 152, 0)"]{background:linear-gradient(135deg,#ff9800,#f57c00)!important;border-left:4px solid #E65100!important;border-right:2px solid #E65100!important}.fc-timeGridWeek .fc-event[style*="background-color: rgb(33, 150, 243)"]{background:linear-gradient(135deg,#a8b5a0,#9baa94)!important;border-left:4px solid #0D47A1!important;border-right:2px solid #0D47A1!important}.fc-timeGridWeek .fc-event[style*="background-color: rgb(156, 39, 176)"]{background:linear-gradient(135deg,#9c27b0,#7b1fa2)!important;border-left:4px solid #4A148C!important;border-right:2px solid #4A148C!important}.fc-timeGridWeek .fc-event[style*="background-color: rgb(76, 175, 80)"]{background:linear-gradient(135deg,#4caf50,#45a049)!important;border-left:4px solid #2E7D32!important;border-right:2px solid #2E7D32!important}.fc-timeGridWeek .fc-timegrid-slot{height:25px;border-bottom:1px solid rgba(0,0,0,.1)}.fc-timeGridWeek .fc-timegrid-slot-label{font-size:10px;color:var(--text-secondary);font-weight:500}.fc-timeGridWeek .fc-timegrid-slot:not(:has(.fc-event)){background:#00000005}.fc-timeGridWeek .fc-event-main{font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fc-event{cursor:pointer!important;pointer-events:auto!important}.fc-event:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 4px 8px #0003}@media (max-width: 768px){.fc-timeGridWeek .fc-event{font-size:10px;padding:1px 3px;min-height:18px}.fc-timeGridWeek .fc-event-main{font-weight:500}.fc-timeGridWeek .fc-timegrid-slot{height:22px}}.modal-overlay{position:fixed;inset:0;background:#a8b5a026;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{opacity:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}.user-modal{background:var(--surface-color);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--border-radius);box-shadow:var(--shadow-large);padding:0;max-width:520px;width:90%;max-height:90vh;overflow-y:auto;position:relative;animation:slideIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes slideIn{0%{transform:translateY(-50px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.modal-header{background:linear-gradient(135deg,#a8b5a01a,#7877c60d);border-bottom:1px solid var(--glass-border);padding:24px 32px;display:flex;justify-content:space-between;align-items:center;border-radius:var(--border-radius) var(--border-radius) 0 0}.modal-header h2{color:var(--text-primary);font-size:24px;font-weight:600;margin:0;display:flex;align-items:center;gap:12px}.modal-header h2 svg{width:20px;height:20px}.close-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--text-primary);font-size:18px;cursor:pointer;transition:var(--transition);line-height:1}.close-btn:hover{background:#fff3;transform:scale(1.1)}.user-modal form{padding:32px}.form-group{margin-bottom:24px}.form-group label{display:block;color:var(--text-primary);font-weight:600;font-size:14px;margin-bottom:8px;position:relative}.form-group label:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--border-focus);transition:width .3s ease}.form-group:focus-within label:after{width:30px}.form-group input,.form-group select{width:100%;padding:14px 16px;border:2px solid var(--border-color);border-radius:var(--border-radius-small);font-size:16px;color:var(--text-primary);background:#fffffff2;transition:var(--transition);box-sizing:border-box}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #a8b5a01a;background:#fff}.form-group select{background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:40px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.user-info{background:#a8b5a00d;border:1px solid rgba(168,181,160,.1);border-radius:var(--border-radius-small);padding:20px;margin:24px 0;position:relative;overflow:hidden}.user-info:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--border-focus)}.user-info p{margin:8px 0;color:var(--text-primary);font-size:14px;display:flex;justify-content:space-between;align-items:center}.user-info strong{color:var(--text-primary);font-weight:600}.modal-actions{background:#a8b5a005;border-top:1px solid var(--glass-border);padding:24px 32px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;border-radius:0 0 var(--border-radius) var(--border-radius);min-height:80px}.secondary-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;flex:0 0 auto}.primary-actions{display:flex;gap:12px;align-items:center;flex:0 0 auto;margin-left:auto}.secondary-actions button,.primary-actions button{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border:none;border-radius:var(--border-radius-small);font-weight:600;font-size:14px;cursor:pointer;transition:var(--transition);position:relative;overflow:hidden;text-decoration:none}.secondary-actions button svg,.primary-actions button svg,.confirm-actions button svg{width:16px;height:16px;flex-shrink:0}.secondary-actions button:disabled svg:first-child,.primary-actions button:disabled svg:first-child,.confirm-actions button:disabled svg:first-child{animation:spin 1s linear infinite}.secondary-actions button:before,.primary-actions button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.secondary-actions button:hover:not(:disabled):before,.primary-actions button:hover:not(:disabled):before{left:100%}.primary-actions button[type=submit]{background:linear-gradient(135deg,#a8b5a0,#9baa94)!important;color:#fff!important;box-shadow:var(--shadow-light);border:none!important}.primary-actions button[type=submit]:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-medium)}.primary-actions button[type=button]{background:#6c757d1a;color:var(--text-primary);border:1px solid rgba(108,117,125,.2)}.primary-actions button[type=button]:hover:not(:disabled){background:#6c757d33}.reset-password-btn{background:#ffc1071a;color:#ff8f00;border:1px solid rgba(255,193,7,.2);align-self:center;white-space:nowrap;min-width:-moz-fit-content;min-width:fit-content;padding:12px 16px!important}.reset-password-btn:hover:not(:disabled){background:#ffc10733;transform:translateY(-1px)}.delete-btn{background:#e53e3e1a;color:var(--error-color);border:1px solid rgba(229,62,62,.2);align-self:center}.delete-btn:hover:not(:disabled){background:#e53e3e33;transform:translateY(-1px)}.secondary-actions button:disabled,.primary-actions button:disabled{opacity:.6;cursor:not-allowed;transform:none}.delete-confirm-overlay{position:fixed;inset:0;background:#e53e3e26;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:1100;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease-out}.delete-confirm-modal{background:var(--surface-color);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(229,62,62,.2);border-radius:var(--border-radius);box-shadow:var(--shadow-large);padding:32px;max-width:440px;width:90%;text-align:center;position:relative;animation:slideIn .4s cubic-bezier(.34,1.56,.64,1)}.delete-confirm-modal h3{color:var(--error-color);font-size:20px;font-weight:600;margin-bottom:16px;display:flex;align-items:center;justify-content:center;gap:8px}.delete-confirm-modal h3 svg{width:20px;height:20px}.delete-confirm-modal p{color:var(--text-primary);line-height:1.6;margin:12px 0;font-size:14px}.delete-confirm-modal p strong{color:var(--error-color);font-weight:600}.confirm-actions{display:flex;gap:12px;justify-content:center;margin-top:24px}.confirm-actions button{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border:none;border-radius:var(--border-radius-small);font-weight:600;font-size:14px;cursor:pointer;transition:var(--transition);min-width:120px;justify-content:center}.confirm-actions button:first-child{background:#6c757d1a;color:var(--text-primary);border:1px solid rgba(108,117,125,.2)}.confirm-actions button:first-child:hover:not(:disabled){background:#6c757d33}.confirm-actions .delete-btn{background:var(--error-color);color:#fff;box-shadow:var(--shadow-light)}.confirm-actions .delete-btn:hover:not(:disabled){background:#c53030;transform:translateY(-2px);box-shadow:var(--shadow-medium)}.confirm-actions button:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.user-modal{width:95%;max-height:95vh}.modal-header{padding:20px 24px}.modal-header h2{font-size:20px}.user-modal form{padding:24px 20px}.modal-actions{padding:20px 24px;flex-direction:column;align-items:stretch;gap:20px;min-height:auto}.secondary-actions{order:2;flex-direction:column;width:100%;margin-left:0}.primary-actions{order:1;flex-direction:column;margin-left:0;width:100%}.secondary-actions button,.primary-actions button{width:100%;justify-content:center}.reset-password-btn{white-space:normal;text-align:center;padding:12px!important}.delete-confirm-modal{width:95%;padding:24px}.confirm-actions{flex-direction:column}.confirm-actions button{width:100%}}@media (max-width: 480px){.modal-header{padding:16px 20px}.modal-header h2{font-size:18px}.user-modal form{padding:20px 16px}.modal-actions{padding:16px 20px}.form-group input,.form-group select{padding:12px 14px;font-size:16px}}.form-group .form-help{font-size:12px;color:#fff9;margin-top:4px;font-style:italic}.form-group input[type=text]#shop_name{background:linear-gradient(135deg,#4caf500d,#45a04905);border-color:#4caf5033}.form-group input[type=text]#shop_name:focus{border-color:#4caf5066;box-shadow:0 0 0 3px #4caf501a}.form-group input[type=text]#shop_name::-moz-placeholder{color:#fff6}.form-group input[type=text]#shop_name::placeholder{color:#fff6}.form-group input[type=text]#siret{background:linear-gradient(135deg,#a8b5a00d,#9baa9405);border-color:#a8b5a033;font-family:Courier New,monospace;letter-spacing:.5px}.form-group input[type=text]#siret:focus{border-color:#a8b5a066;box-shadow:0 0 0 3px #a8b5a01a}.form-group input[type=text]#siret::-moz-placeholder{color:#fff6;font-family:Courier New,monospace;letter-spacing:.5px}.form-group input[type=text]#siret::placeholder{color:#fff6;font-family:Courier New,monospace;letter-spacing:.5px}.admin-container{max-width:1200px;margin:0 auto;padding:24px;background:transparent}.admin-title{color:var(--surface-color);font-size:32px;font-weight:700;text-align:center;margin-bottom:32px;text-shadow:0 2px 10px rgba(0,0,0,.1);letter-spacing:-.02em}.admin-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-bottom:32px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--border-radius);padding:12px;border:1px solid rgba(255,255,255,.2);box-shadow:var(--shadow-light);max-width:100%}.tab-btn{padding:12px 16px;background:#fff6;border:1px solid rgba(168,181,160,.2);border-radius:var(--border-radius-small);color:#3e3e3e;font-weight:600;font-size:12px;cursor:pointer;transition:var(--transition);position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;white-space:nowrap;min-height:60px;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tab-btn svg{width:18px;height:18px;flex-shrink:0;color:#3e3e3e}.tab-btn span{font-size:11px;line-height:1.2;text-align:center;color:#3e3e3e;font-weight:600}.tab-btn:hover{color:#3e3e3e;background:#ffffffb3;border-color:#a8b5a066;transform:translateY(-1px)}.tab-btn.active{background:#fff;color:#3e3e3e;border-color:#a8b5a0;box-shadow:var(--shadow-light);transform:translateY(-2px)}@media (max-width: 1200px){.admin-tabs{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}@media (max-width: 768px){.admin-tabs{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:6px;padding:8px}.tab-btn{padding:10px 12px;min-height:50px;font-size:11px}.tab-btn svg{width:16px;height:16px}.tab-btn span{font-size:10px}}@media (max-width: 480px){.admin-tabs{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:4px;padding:6px}.tab-btn{padding:8px 6px;min-height:45px}.tab-btn svg{width:14px;height:14px}.tab-btn span{font-size:9px}}.section-card{background:var(--surface-color);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--border-radius);box-shadow:var(--shadow-medium);padding:32px;margin-bottom:24px;position:relative;overflow:hidden}.section-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent);transition:left .5s}.section-card:hover:before{left:100%}.section-card h2{color:var(--text-primary);font-size:24px;font-weight:600;margin-bottom:24px;display:flex;align-items:center;gap:12px}.section-card h2 svg{width:24px;height:24px;color:var(--border-focus)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.section-header h2{margin-bottom:0}.admin-form,.special-days-form{display:flex;flex-direction:column;gap:24px}.horaires-section{background:#a8b5a00d;border:1px solid rgba(168,181,160,.1);border-radius:var(--border-radius-small);padding:20px;margin-bottom:16px}.horaires-section h3{color:var(--text-primary);font-size:18px;font-weight:600;margin-bottom:16px;display:flex;align-items:center;gap:8px}.horaires-section h3 svg{width:20px;height:20px;color:var(--border-focus)}.horaires-section h3:before{content:"";width:4px;height:20px;background:var(--border-focus);border-radius:2px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.form-group label{color:var(--text-primary);font-weight:600;font-size:14px;margin-bottom:4px}.form-group input[type=text],.form-group input[type=date],.form-group input[type=email],.form-group select{padding:14px 16px;border:2px solid var(--border-color);border-radius:var(--border-radius-small);font-size:16px;color:var(--text-primary);background:#fff;transition:var(--transition);box-sizing:border-box}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #a8b5a01a}.days-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-top:12px}.days-selector-modern{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:16px 0}.day-card{display:flex;align-items:center;gap:12px;padding:16px;border-radius:12px;cursor:pointer;transition:all .3s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:2px solid;position:relative;overflow:hidden}.day-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.day-card:hover:before{left:100%}.day-open{background:linear-gradient(135deg,#10b981,#059669);border-color:#047857;color:#fff;box-shadow:0 4px 12px #10b9814d}.day-open:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166;background:linear-gradient(135deg,#059669,#047857)}.day-closed{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#b91c1c;color:#fff;box-shadow:0 4px 12px #ef44444d}.day-closed:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ef444466;background:linear-gradient(135deg,#dc2626,#b91c1c)}.day-icon{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.day-icon svg{width:24px;height:24px;filter:drop-shadow(0 1px 3px rgba(0,0,0,.2))}.day-label{display:flex;flex-direction:column;gap:2px;flex-grow:1}.day-name{font-size:14px;font-weight:600;line-height:1.2}.day-status{font-size:12px;opacity:.9;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.day-open .day-icon svg{animation:gentle-pulse 2s ease-in-out infinite alternate}@keyframes gentle-pulse{0%{transform:scale(1)}to{transform:scale(1.05)}}@media (max-width: 768px){.days-selector-modern{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.day-card{padding:12px;gap:8px}.day-icon{width:28px;height:28px}.day-icon svg{width:20px;height:20px}.day-name{font-size:13px}.day-status{font-size:11px}}@media (max-width: 480px){.days-selector-modern{grid-template-columns:1fr}.day-card{justify-content:center;text-align:center}}.admin-table,.special-days-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:20px;background:#fff;border-radius:var(--border-radius-small);overflow:hidden;box-shadow:0 2px 10px #0000000d}.table-container{width:100%;overflow-x:auto;border-radius:var(--border-radius-small);box-shadow:0 2px 10px #0000000d}.table-container .admin-table,.table-container .special-days-table{min-width:1000px;margin-top:0;box-shadow:none}.table-container::-webkit-scrollbar{height:8px}.table-container::-webkit-scrollbar-track{background:#0000000d;border-radius:4px}.table-container::-webkit-scrollbar-thumb{background:#a8b5a04d;border-radius:4px}.table-container::-webkit-scrollbar-thumb:hover{background:#a8b5a080}.table-scroll-hint{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#a8b5a00d;border-bottom:1px solid rgba(168,181,160,.1);color:var(--text-muted);font-size:12px;font-weight:500}.table-scroll-hint svg{width:16px;height:16px;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(0)}40%{transform:translate(-3px)}60%{transform:translate(3px)}}.admin-table th,.special-days-table th{text-align:left;padding:16px 20px;background:#a8b5a014;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border-color);font-size:14px}.admin-table td,.special-days-table td{padding:16px 20px;border-bottom:1px solid rgba(0,0,0,.05);vertical-align:middle}.admin-table tr:last-child td,.special-days-table tr:last-child td{border-bottom:none}.admin-table tr:hover,.special-days-table tr:hover{background:#a8b5a005}.role-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-badge.admin{background:#e53e3e1a;color:var(--error-color);border:1px solid rgba(229,62,62,.2)}.role-badge.artisan{background:#a8b5a01a;color:var(--border-focus);border:1px solid rgba(168,181,160,.2)}.status-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.pending{background:#ffc1071a;color:#ff8f00;border:1px solid rgba(255,193,7,.2)}.status-badge.connected{background:#38a1691a;color:var(--success-color);border:1px solid rgba(56,161,105,.2)}.status-badge.archived{background:#6c757d1a;color:#6c757d;border:1px solid rgba(108,117,125,.2)}.admin-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:var(--primary-gradient);color:#fff;border:none;border-radius:var(--border-radius-small);font-weight:600;font-size:14px;cursor:pointer;transition:var(--transition);text-decoration:none;position:relative;overflow:hidden}.admin-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.admin-btn:hover:not(:disabled):before{left:100%}.admin-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-medium)}.admin-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.admin-btn svg{width:16px;height:16px}.admin-btn .loading-spinner svg{animation:spin 1s linear infinite}.add-user-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;background:var(--success-color);color:#fff;border:none;border-radius:var(--border-radius-small);font-weight:500;font-size:14px;cursor:pointer;transition:var(--transition)}.add-user-btn:hover{background:#2f855a;transform:translateY(-1px)}.edit-btn,.archive-btn,.restore-btn,.supplement-btn{padding:6px 8px;border:none;border-radius:6px;cursor:pointer;transition:var(--transition);font-size:12px;margin-left:4px}.edit-btn{background:#a8b5a01a;color:var(--border-focus);border:1px solid rgba(168,181,160,.2)}.edit-btn:hover:not(:disabled){background:#a8b5a033}.edit-btn:disabled{opacity:.5;cursor:not-allowed}.archive-btn{background:#ffc1071a;color:#ff8f00;border:1px solid rgba(255,193,7,.2)}.archive-btn:hover{background:#ffc10733}.restore-btn{background:#38a1691a;color:var(--success-color);border:1px solid rgba(56,161,105,.2)}.restore-btn:hover{background:#38a16933}.supplement-btn{background:#ffc1071a;color:#f39c12;border:1px solid rgba(255,193,7,.2)}.supplement-btn:hover{background:#ffc10733}.empty-state{text-align:center;padding:48px 24px;color:var(--text-muted);background:#a8b5a005;border-radius:var(--border-radius-small);border:2px dashed rgba(168,181,160,.2)}.empty-state p{font-size:16px;margin-bottom:16px}.empty-state button{background:var(--border-focus);color:#fff;border:none;padding:12px 20px;border-radius:var(--border-radius-small);font-weight:500;cursor:pointer;transition:var(--transition)}.empty-state button:hover{background:#5a67d8;transform:translateY(-1px)}.loading{text-align:center;padding:48px;color:var(--surface-color);font-size:18px;font-weight:500}@media (max-width: 768px){.admin-container{padding:16px}.admin-title{font-size:28px;margin-bottom:24px}.section-card{padding:20px}.section-header{flex-direction:column;align-items:stretch}.form-row{grid-template-columns:1fr}.days-selector{grid-template-columns:repeat(2,1fr)}.admin-table,.special-days-table{font-size:14px}.admin-table th,.admin-table td,.special-days-table th,.special-days-table td{padding:12px 8px}}@media (max-width: 480px){.admin-container{padding:12px}.admin-title{font-size:24px}.admin-tabs{gap:1px;padding:3px}.tab-btn{padding:6px 10px;font-size:11px;gap:3px}.section-card{padding:16px}.days-selector{grid-template-columns:1fr}.admin-table,.special-days-table{display:block;overflow-x:auto;white-space:nowrap}}.special-days-list{display:flex;flex-direction:column;gap:16px}.special-day-item{background:#fff;border:1px solid var(--border-color);border-radius:var(--border-radius-small);padding:20px;display:flex;justify-content:space-between;align-items:center;transition:var(--transition);box-shadow:0 2px 8px #0000000d}.special-day-item:hover{border-color:var(--border-focus);box-shadow:var(--shadow-light)}.special-day-info{flex:1}.special-day-date{display:flex;align-items:center;gap:12px;margin-bottom:8px}.special-day-date .status{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase}.special-day-date .status.open{background:#38a1691a;color:var(--success-color);border:1px solid rgba(56,161,105,.2)}.special-day-date .status.closed{background:#e53e3e1a;color:var(--error-color);border:1px solid rgba(229,62,62,.2)}.special-day-label{font-weight:600;color:var(--text-primary);margin-bottom:4px}.special-day-horaires{font-size:14px;color:var(--text-muted)}.special-day-actions{display:flex;gap:8px}.edit-form{display:flex;flex-direction:column;gap:16px;min-width:300px;background:#a8b5a00d;padding:20px;border-radius:var(--border-radius);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-light)}.edit-form-group{display:flex;flex-direction:column;gap:8px}.edit-form-group label{font-size:14px;color:var(--text-primary);font-weight:500}.edit-input{padding:12px 16px;border:2px solid var(--border-color);border-radius:var(--border-radius-small);background:#ffffff0d;color:var(--text-primary);font-size:14px;transition:var(--transition)}.edit-input:focus{border-color:var(--border-focus);outline:none;background:#ffffff1a;box-shadow:0 0 0 3px #a8b5a01a}.checkbox-label{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--text-primary);font-weight:500;cursor:pointer;padding:8px 0}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-color);cursor:pointer}.horaires-custom{border:2px solid var(--glass-border);border-radius:var(--border-radius);padding:16px;margin:8px 0;background:#a8b5a005;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.horaires-inputs{display:flex;align-items:center;gap:12px;margin-top:8px}.time-input{flex:1;padding:10px 12px;border:2px solid var(--border-color);border-radius:var(--border-radius-small);background:#ffffff0d;color:var(--text-primary);font-size:14px;transition:var(--transition)}.time-input:focus{border-color:var(--border-focus);outline:none;background:#ffffff1a;box-shadow:0 0 0 3px #a8b5a01a}.horaires-inputs span{color:var(--text-secondary);font-weight:600;font-size:14px;min-width:20px;text-align:center}.edit-actions{display:flex;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--glass-border)}.save-btn{padding:12px 24px;background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border:none;border-radius:var(--border-radius-small);font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:0 4px 12px #2ecc714d}.save-btn:hover{background:linear-gradient(135deg,#229954,#27ae60);transform:translateY(-1px);box-shadow:0 6px 16px #2ecc7166}.cancel-btn{padding:12px 24px;background:#ffffff1a;color:var(--text-primary);border:2px solid var(--glass-border);border-radius:var(--border-radius-small);font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition)}.cancel-btn:hover{background:#ffffff26;border-color:var(--border-color);transform:translateY(-1px)}.archive-modal-content{background:var(--surface-color);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--border-radius);width:90%;max-width:500px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:var(--shadow-medium);animation:modalSlideIn .3s ease-out}.archive-modal-header{background:#a8b5a005;border-bottom:1px solid var(--glass-border);padding:24px 32px;display:flex;align-items:center;justify-content:space-between;border-radius:var(--border-radius) var(--border-radius) 0 0}.archive-modal-header h2{margin:0;font-size:22px;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:12px}.archive-modal-header h2 svg{width:24px;height:24px;color:var(--primary-color)}.archive-modal-header .close-btn{background:none;border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);color:var(--text-muted)}.archive-modal-header .close-btn:hover{background:#ef44441a;color:#ef4444}.archive-modal-header .close-btn svg{width:16px;height:16px}.archive-modal-body{padding:32px}.user-info-card{background:#a8b5a008;border:1px solid var(--glass-border);border-radius:var(--border-radius-small);padding:20px;display:flex;align-items:center;gap:16px;margin-bottom:24px}.user-avatar{width:56px;height:56px;background:var(--primary-gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-avatar svg{width:28px;height:28px;color:#fff}.user-details h3{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--text-primary)}.user-details .user-email{margin:0 0 8px;font-size:14px;color:var(--text-muted)}.role-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.role-badge.admin{background:#ef44441a;color:#ef4444}.role-badge.artisan{background:#22c55e1a;color:#22c55e}.archive-warning{background:#fbbf240d;border:1px solid rgba(251,191,36,.2);border-radius:var(--border-radius-small);padding:20px;display:flex;gap:16px}.warning-icon{width:24px;height:24px;color:#f59e0b;flex-shrink:0}.warning-icon svg{width:100%;height:100%}.warning-content h4{margin:0 0 12px;font-size:16px;font-weight:600;color:var(--text-primary)}.warning-content ul{margin:0;padding:0;list-style:none}.warning-content li{font-size:14px;color:var(--text-secondary);position:relative;padding:4px 0 4px 20px}.warning-content li:before{content:"•";position:absolute;left:0;color:#f59e0b;font-weight:700}.archive-modal-actions{background:#a8b5a005;border-top:1px solid var(--glass-border);padding:24px 32px;display:flex;gap:12px;justify-content:flex-end;border-radius:0 0 var(--border-radius) var(--border-radius)}.archive-modal-actions button{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border:none;border-radius:var(--border-radius-small);font-weight:600;font-size:14px;cursor:pointer;transition:var(--transition);position:relative;overflow:hidden}.archive-modal-actions button svg{width:16px;height:16px;flex-shrink:0}.cancel-btn{background:#6c757d1a;color:var(--text-primary);border:1px solid rgba(108,117,125,.2)!important}.cancel-btn:hover{background:#6c757d33;transform:translateY(-1px)}.confirm-btn.archive{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:var(--shadow-light)}.confirm-btn.archive:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px);box-shadow:var(--shadow-medium)}.confirm-btn.restore{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;box-shadow:var(--shadow-light)}.confirm-btn.restore:hover{background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-2px);box-shadow:var(--shadow-medium)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.archive-modal-content{width:95%;margin:20px}.archive-modal-header,.archive-modal-body,.archive-modal-actions{padding:20px 24px}.user-info-card{padding:16px}.archive-warning{flex-direction:column;gap:12px}.archive-modal-actions{flex-direction:column}.archive-modal-actions button{width:100%;justify-content:center}}.danger-tab{position:relative}.danger-tab:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#dc2626,#ef4444);border-radius:2px 2px 0 0;opacity:0;transition:opacity .3s ease}.danger-tab.active:before{opacity:1}.danger-header{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff}.danger-header h2{color:#fff}.danger-zone{padding:24px}.warning-notice{background:linear-gradient(135deg,#fee2e2,#fecaca);border:2px solid #f87171;border-radius:12px;padding:20px;margin-bottom:24px;text-align:center}.warning-notice h3{color:#dc2626;font-size:20px;font-weight:700;margin:0 0 8px}.warning-notice p{color:#7f1d1d;margin:0;font-size:16px}.bulk-actions{display:grid;gap:24px}.bulk-action-card{background:#fff;border:2px solid #e5e7eb;border-radius:16px;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a;transition:all .3s ease;display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:24px;gap:20px}.bulk-action-card:hover{border-color:#dc2626;box-shadow:0 10px 25px -3px #dc26261a}.bulk-icon{font-size:48px;width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fee2e2,#fecaca);border-radius:50%;border:3px solid #f87171}.bulk-content h4{color:#1f2937;font-size:20px;font-weight:700;margin:0 0 8px}.bulk-content p{color:#6b7280;margin:0 0 16px;line-height:1.5}.bulk-content ul{list-style:none;padding:0;margin:0}.bulk-content li{color:#059669;font-size:14px;font-weight:500;margin-bottom:4px}.danger-btn{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;border:none;padding:16px 24px;border-radius:12px;font-weight:700;font-size:16px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 14px #dc26264d;min-width:200px}.danger-btn:hover{background:linear-gradient(135deg,#b91c1c,#991b1b);transform:translateY(-2px);box-shadow:0 8px 25px #dc262666}.bulk-help{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.bulk-help h4{color:#334155;font-size:18px;font-weight:600;margin:0 0 16px}.help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.help-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.help-item strong{color:#1e293b;font-size:16px;display:block;margin-bottom:8px}.help-item p{color:#64748b;margin:0;font-size:14px;line-height:1.4}.services-status{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.service-item{display:flex;align-items:center;justify-content:space-between;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 16px}.service-info{display:flex;align-items:center;gap:10px;font-weight:500}.service-info svg{width:18px;height:18px;color:#6b7280}.service-loading{color:#6b7280;font-weight:500}.service-ok{color:#16a34a;font-weight:600}.service-ko{color:#dc2626;font-weight:600}.service-maintenance-on{color:#f59e0b;font-weight:600}.service-maintenance-off{color:#16a34a;font-weight:600}.service-btn{background:#e5e7eb;color:#374151;border:none;padding:6px 12px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.service-btn:hover:not(:disabled){background:#d1d5db}.service-btn:disabled{opacity:.5;cursor:not-allowed}.maintenance-btn-start{background:#fbbf24;color:#92400e}.maintenance-btn-start:hover:not(:disabled){background:#f59e0b}.maintenance-btn-stop{background:#16a34a;color:#fff}.maintenance-btn-stop:hover:not(:disabled){background:#15803d}@media (max-width: 768px){.bulk-action-card{grid-template-columns:1fr;text-align:center;gap:16px}.bulk-icon{justify-self:center}.help-grid{grid-template-columns:1fr}.danger-btn{width:100%;min-width:auto}.service-item{flex-direction:column;align-items:stretch;gap:12px}.service-info{justify-content:center}}.audit-stats{background:#f8f9fa;border-radius:8px;padding:1.5rem;margin-bottom:2rem;border:1px solid #e9ecef}.audit-stats .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.audit-stats .stat-card{background:#fff;padding:1rem;border-radius:6px;border:1px solid #dee2e6;text-align:center}.audit-stats .stat-card h4{margin:0 0 .5rem;color:#495057;font-size:.9rem;font-weight:600}.audit-stats .stat-number{font-size:1.5rem;font-weight:700;color:#212529;display:block}.audit-stats .stat-date{font-size:.9rem;color:#6c757d;display:block}.audit-stats .stat-card.warning{border-color:#ffc107;background:#fff3cd}.audit-stats .stat-card.warning h4,.audit-stats .stat-card.warning .stat-number{color:#856404}.audit-stats .stat-card small{font-size:.75rem;color:#6c757d;display:block;margin-top:.25rem}.cleanup-section{border-top:1px solid #dee2e6;padding-top:1rem;text-align:center}.cleanup-info{margin:0 0 1rem;color:#6c757d;font-size:.9rem;line-height:1.4}.cleanup-btn{background:#dc3545;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s}.cleanup-btn:hover:not(:disabled){background:#c82333}.cleanup-btn:disabled{background:#6c757d;cursor:not-allowed}.message{padding:1rem;border-radius:6px;margin-bottom:1rem;font-weight:500}.logs-section{margin-top:2rem}.logs-section h3{margin-bottom:1rem;color:#495057}.shop-name{display:inline-block;padding:4px 8px;background:linear-gradient(135deg,#4caf501a,#45a0490d);border:1px solid rgba(76,175,80,.2);border-radius:var(--border-radius-small);color:var(--text-primary);font-weight:500;font-size:13px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-shop-name{color:#ffffff80;font-style:italic;font-size:13px}.siret-number{display:inline-block;padding:4px 8px;background:linear-gradient(135deg,#a8b5a01a,#9baa940d);border:1px solid rgba(168,181,160,.2);border-radius:var(--border-radius-small);color:var(--text-primary);font-weight:500;font-size:13px;font-family:Courier New,monospace;letter-spacing:.5px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-siret{color:#ffffff80;font-style:italic;font-size:13px}@media (max-width: 768px){.shop-name,.siret-number{max-width:150px;font-size:12px}}@media (max-width: 480px){.shop-name,.siret-number{max-width:120px;font-size:11px}}.dashboard-widget{background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px;padding:1.5rem;margin-top:1rem}.dashboard-widget h3{margin-top:0;border-bottom:2px solid #eee;padding-bottom:.5rem;margin-bottom:1rem}.stats-table{width:100%;border-collapse:collapse}.stats-table th,.stats-table td{padding:.75rem;text-align:left;border-bottom:1px solid #eee}.stats-table th{background-color:#f2f2f2;font-weight:600}.quota-badge{padding:4px 8px;border-radius:12px;font-weight:700;color:#fff}.quota-badge.ok{background-color:#4caf50}.quota-badge.warning{background-color:#f44336}.uncovered-list{list-style:none;padding:0;margin:0}.alert-day{background:#ffe0b2;color:#a65c00;border-left:5px solid #ff9800;margin-bottom:8px;padding:8px 12px;border-radius:4px;font-weight:500}.ok-message{color:#388e3c;background:#e8f5e9;border-left:5px solid #4caf50;padding:8px 12px;border-radius:4px;font-weight:500}.uncovered-months{display:flex;flex-direction:column;gap:1.5rem}.month-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1rem}.month-title{margin:0 0 1rem;color:#333;font-size:1.1rem;font-weight:600;border-bottom:2px solid #f0f0f0;padding-bottom:.5rem}.month-section .uncovered-list{margin:0}.month-section .alert-day{margin-bottom:6px;font-size:.95rem}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:24px}.kpi-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 10px #0000000d;border:1px solid #e9ecef;transition:all .3s ease;position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#a8b5a0,#9baa94)}.kpi-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.kpi-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:16px}.kpi-icon{font-size:2rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#a8b5a0,#9baa94);border-radius:12px;color:#fff;flex-shrink:0}.kpi-title h3{margin:0 0 4px;font-size:1.1rem;font-weight:600;color:#2c3e50;line-height:1.3}.kpi-subtitle{margin:0;font-size:.85rem;color:#6c757d;font-weight:400}.kpi-value{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.value-main{font-size:2rem;font-weight:700;color:#2c3e50;line-height:1}.trend-indicator{display:flex;align-items:center;gap:4px;font-size:.9rem;font-weight:500;padding:4px 8px;border-radius:6px;white-space:nowrap}.trend-up{background:#d4edda;color:#155724}.trend-down{background:#f8d7da;color:#721c24}.trend-stable{background:#e2e3e5;color:#383d41}.kpi-card.loading{pointer-events:none}.kpi-skeleton{width:100%;height:120px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:8px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 1200px){.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}}@media (max-width: 768px){.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.kpi-card{padding:16px}.kpi-header{gap:12px;margin-bottom:12px}.kpi-icon{font-size:1.5rem;width:40px;height:40px}.kpi-title h3{font-size:1rem}.value-main{font-size:1.5rem}.trend-indicator{font-size:.8rem;padding:3px 6px}}@media (max-width: 480px){.kpi-grid{grid-template-columns:1fr;gap:12px}.kpi-card{padding:12px}.kpi-header{gap:8px;margin-bottom:8px}.kpi-icon{font-size:1.2rem;width:32px;height:32px}.kpi-title h3{font-size:.9rem}.kpi-subtitle{font-size:.75rem}.value-main{font-size:1.3rem}.kpi-value{gap:8px}}.chart-wrapper{height:100%;display:flex;flex-direction:column}.chart-wrapper h3{margin:0 0 16px;color:#2c3e50;font-size:1.2rem;font-weight:600}.chart-placeholder{flex:1;display:flex;align-items:center;justify-content:center;color:#6c757d;font-style:italic}.chart-content{flex:1;display:flex;flex-direction:column;gap:16px}.chart-summary{display:flex;gap:24px;padding:12px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.summary-item{display:flex;flex-direction:column;gap:4px}.summary-label{font-size:.85rem;color:#6c757d;font-weight:500}.summary-value{font-size:1.1rem;font-weight:600;color:#2c3e50}.chart-data{flex:1;display:flex;gap:8px;min-height:200px}.data-labels{display:flex;flex-direction:column;justify-content:space-between;width:80px;font-size:.8rem;color:#6c757d;text-align:center}.data-label{padding:4px;font-weight:500}.data-bars{flex:1;display:flex;align-items:end;gap:8px;padding:0 8px}.data-bar-container{flex:1;height:100%;display:flex;align-items:end;position:relative}.data-bar{width:100%;background:linear-gradient(135deg,#4caf50,#45a049);border-radius:4px 4px 0 0;position:relative;min-height:20px;transition:all .3s ease;cursor:pointer}.data-bar:hover{transform:scaleY(1.05);box-shadow:0 2px 8px #4caf504d}.bar-value{position:absolute;top:-25px;left:50%;transform:translate(-50%);background:#2c3e50;color:#fff;padding:2px 6px;border-radius:4px;font-size:.75rem;font-weight:500;white-space:nowrap;opacity:0;transition:opacity .3s ease}.data-bar:hover .bar-value{opacity:1}@media (max-width: 768px){.chart-summary{flex-direction:column;gap:12px}.data-labels{width:60px;font-size:.7rem}.bar-value{font-size:.65rem;padding:1px 4px}}.ranking-content{height:100%;display:flex;flex-direction:column}.ranking-header{display:grid;grid-template-columns:50px 2fr 1fr 1fr 1fr;gap:12px;padding:12px 16px;background:#f8f9fa;border-radius:8px 8px 0 0;border:1px solid #e9ecef;border-bottom:none;font-weight:600;color:#2c3e50;font-size:.9rem}.ranking-list{flex:1;overflow-y:auto;border:1px solid #e9ecef;border-radius:0 0 8px 8px}.ranking-item{display:grid;grid-template-columns:50px 2fr 1fr 1fr 1fr;gap:12px;padding:12px 16px;border-bottom:1px solid #e9ecef;transition:all .3s ease;align-items:center}.ranking-item:last-child{border-bottom:none}.ranking-item:hover{background:#f8f9fa}.ranking-item.top-1{background:linear-gradient(135deg,gold,orange);color:#fff}.ranking-item.top-2{background:linear-gradient(135deg,silver,#a9a9a9);color:#fff}.ranking-item.top-3{background:linear-gradient(135deg,#cd7f32,#b8860b);color:#fff}.rank-col{display:flex;align-items:center;gap:4px;justify-content:center}.rank-number{font-weight:700;font-size:1.1rem}.rank-medal{font-size:1.2rem}.name-col{display:flex;flex-direction:column;gap:2px}.artisan-name{font-weight:600;font-size:.95rem}.artisan-username{font-size:.8rem;color:#6c757d;font-style:italic}.sales-col{display:flex;flex-direction:column;align-items:center;gap:2px}.sales-count{font-weight:600;font-size:1.1rem}.sales-label{font-size:.75rem;color:#6c757d}.amount-col{display:flex;flex-direction:column;gap:4px}.amount-value{font-weight:600;font-size:.95rem}.payment-distribution{display:flex;gap:8px;font-size:.75rem}.cb-percent{color:#a8b5a0}.cash-percent{color:#28a745}.commission-col{text-align:center}.commission-value{font-weight:600;font-size:.9rem;color:#ff9800}@media (max-width: 768px){.ranking-header,.ranking-item{grid-template-columns:40px 1.5fr .8fr 1fr;gap:8px;padding:8px 12px;font-size:.8rem}.commission-col{display:none}.payment-distribution{flex-direction:column;gap:2px}}.filters-container{display:flex;flex-direction:column;gap:16px}.filters-row{display:flex;gap:16px;align-items:end;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:6px;min-width:150px}.filter-label{font-size:.85rem;font-weight:600;color:#2c3e50}.filter-input,.filter-select{padding:8px 12px;border:1px solid #ced4da;border-radius:6px;font-size:.9rem;background:#fff;transition:all .3s ease}.filter-input:focus,.filter-select:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a}.period-buttons{display:flex;gap:8px;flex-wrap:wrap}.period-button{padding:6px 12px;border:1px solid #ced4da;border-radius:6px;background:#fff;color:#6c757d;font-size:.85rem;cursor:pointer;transition:all .3s ease;white-space:nowrap}.period-button:hover{background:#f8f9fa;border-color:#adb5bd}.period-button.active{background:#a8b5a0;border-color:#a8b5a0;color:#fff}@media (max-width: 768px){.filters-row{flex-direction:column;gap:12px}.filter-group{min-width:auto;width:100%}.period-buttons{justify-content:center}.period-button{flex:1;text-align:center;min-width:80px}}.export-button{background:#28a745;color:#fff;border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;display:flex;align-items:center;gap:8px;transition:all .3s ease}.export-button:hover{background:#218838;transform:translateY(-1px)}.export-button:disabled{background:#6c757d;cursor:not-allowed;transform:none}.export-spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.analytics-dashboard{max-width:1400px;margin:0 auto;padding:20px;background:#f8f9fa;min-height:100vh}.dashboard-header{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 4px 20px #0000001a}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.dashboard-header h1{margin:0;font-size:2rem;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.2)}.dashboard-header p{margin:4px 0 0;font-size:1.1rem;opacity:.9}.header-actions{display:flex;gap:12px;align-items:center}.refresh-button{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .3s ease}.refresh-button:hover{background:#ffffff4d;transform:translateY(-1px)}.dashboard-filters{background:#fff;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 2px 10px #0000000d}.dashboard-content{display:flex;flex-direction:column;gap:24px}.kpi-section{margin-bottom:24px}.charts-section{display:flex;flex-direction:column;gap:24px}.chart-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.chart-container{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 10px #0000000d;min-height:400px}.anomalies-section{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 10px #0000000d}.anomalies-section h3{margin:0 0 16px;color:#dc3545;font-size:1.3rem}.anomalies-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.anomaly-card{padding:16px;border-radius:8px;border-left:4px solid}.anomaly-card.warning{background:#fff3cd;border-left-color:#ffc107;color:#856404}.anomaly-card.info{background:#d1ecf1;border-left-color:#17a2b8;color:#0c5460}.anomaly-card h4{margin:0 0 8px;font-size:1.1rem}.anomaly-card p{margin:0 0 12px;font-weight:500}.anomaly-card ul{margin:0;padding-left:20px}.anomaly-card li{margin-bottom:4px;font-size:.9rem}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;background:#fff;border-radius:12px;padding:40px;box-shadow:0 2px 10px #0000000d}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #A8B5A0;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.error-message{text-align:center;color:#dc3545}.error-icon{font-size:3rem;margin-bottom:16px;display:block}.retry-button{background:#dc3545;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:1rem;margin-top:16px;transition:background-color .3s ease}.retry-button:hover{background:#c82333}@media (max-width: 1200px){.chart-row{grid-template-columns:1fr}}@media (max-width: 768px){.analytics-dashboard{padding:12px}.dashboard-header{padding:16px}.header-content{flex-direction:column;text-align:center}.dashboard-header h1{font-size:1.5rem}.header-actions{width:100%;justify-content:center}.chart-container{padding:16px;min-height:300px}.anomalies-grid{grid-template-columns:1fr}}@media (max-width: 480px){.analytics-dashboard{padding:8px}.dashboard-header{padding:12px}.dashboard-header h1{font-size:1.3rem}.chart-container{padding:12px;min-height:250px}}:root{--primary-color: #A8B5A0;--success-color: #10b981;--warning-color: #f59e0b;--danger-color: #ef4444;--dark-bg: #1f2937;--card-bg: #ffffff;--border-color: #e5e7eb;--text-primary: #111827;--text-secondary: #6b7280;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--gradient-primary: linear-gradient(135deg, #A8B5A0 0%, #9BAA94 100%);--gradient-success: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--gradient-warning: linear-gradient(135deg, #fa709a 0%, #fee140 100%);--gradient-danger: linear-gradient(135deg, #ff9a9e 0%, #fecfef 100%)}.modern-monitoring-dashboard{max-width:1400px;margin:0 auto;padding:20px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh}.dashboard-header{display:flex;justify-content:space-between;align-items:center;background:var(--card-bg);padding:24px 32px;border-radius:16px;box-shadow:var(--shadow-lg);margin-bottom:24px;border:1px solid var(--border-color)}.header-left{display:flex;align-items:center;gap:16px}.header-left h1{margin:0;font-size:2rem;font-weight:700;color:var(--text-primary);background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.status-badge{padding:8px 16px;border-radius:20px;color:#fff;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;box-shadow:var(--shadow-md)}.header-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.refresh-controls{display:flex;align-items:center;gap:12px}.refresh-select{padding:8px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--card-bg);font-size:.875rem;color:var(--text-primary)}.refresh-btn{padding:8px 16px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.refresh-btn:hover{background:#9baa94;transform:translateY(-1px);box-shadow:var(--shadow-md)}.last-update{font-size:.875rem;color:var(--text-secondary)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:32px}.metric-card{background:var(--card-bg);padding:24px;border-radius:16px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);transition:all .3s ease;position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary)}.metric-card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #0000001a}.metric-card.cpu-card:before{background:var(--gradient-primary)}.metric-card.memory-card:before{background:var(--gradient-success)}.metric-card.disk-card:before{background:var(--gradient-warning)}.metric-card.load-card:before{background:var(--gradient-danger)}.metric-icon{font-size:2rem;margin-bottom:16px}.metric-content h3{margin:0 0 8px;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.metric-value{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:12px}.metric-subtitle{font-size:.875rem;color:var(--text-secondary);margin-top:4px}.metric-bar{width:100%;height:8px;background:#f3f4f6;border-radius:4px;overflow:hidden}.metric-bar-fill{height:100%;border-radius:4px;transition:width .5s ease}.chart-container{background:var(--card-bg);padding:24px;border-radius:16px;box-shadow:var(--shadow-lg);margin-bottom:32px;border:1px solid var(--border-color)}.chart-container h3{margin:0 0 20px;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.metrics-chart{width:100%;height:200px;border-radius:8px;background:#f8fafc}.services-section{background:var(--card-bg);padding:24px;border-radius:16px;box-shadow:var(--shadow-lg);margin-bottom:32px;border:1px solid var(--border-color)}.services-section h3{margin:0 0 20px;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:20px}.service-card{display:flex;align-items:center;gap:12px;padding:16px;border-radius:12px;border:1px solid var(--border-color);transition:all .2s ease}.service-card.up{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:var(--success-color)}.service-card.down{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:var(--danger-color)}.service-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.service-icon{font-size:1.5rem}.service-info h4{margin:0 0 4px;font-size:1rem;font-weight:600;color:var(--text-primary)}.service-info p{margin:0;font-size:.875rem;color:var(--text-secondary)}.services-summary{display:flex;justify-content:space-between;padding:16px;background:#f8fafc;border-radius:8px;font-weight:500;color:var(--text-primary)}.connectivity-section{background:var(--card-bg);padding:24px;border-radius:16px;box-shadow:var(--shadow-lg);margin-bottom:32px;border:1px solid var(--border-color)}.connectivity-section h3{margin:0 0 20px;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.connectivity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:20px}.connectivity-card{display:flex;align-items:center;gap:12px;padding:16px;border-radius:12px;border:1px solid var(--border-color);transition:all .2s ease}.connectivity-card.ok{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:var(--success-color)}.connectivity-card.error{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:var(--danger-color)}.connectivity-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.connectivity-icon{font-size:1.5rem}.connectivity-info h4{margin:0 0 4px;font-size:1rem;font-weight:600;color:var(--text-primary)}.connectivity-info p{margin:0;font-size:.875rem;color:var(--text-secondary)}.connectivity-summary{padding:16px;background:#f8fafc;border-radius:8px;font-weight:500;color:var(--text-primary);text-align:center}.security-section{background:var(--card-bg);padding:24px;border-radius:16px;box-shadow:var(--shadow-lg);margin-bottom:32px;border:1px solid var(--border-color)}.security-section h3{margin:0 0 20px;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.security-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.security-card{display:flex;align-items:center;gap:12px;padding:16px;border-radius:12px;border:1px solid var(--border-color);transition:all .2s ease}.security-card.active{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:var(--success-color)}.security-card.inactive{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:var(--danger-color)}.security-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.security-icon{font-size:1.5rem}.security-info h4{margin:0 0 4px;font-size:1rem;font-weight:600;color:var(--text-primary)}.security-info p{margin:0;font-size:.875rem;color:var(--text-secondary)}.logs-section{background:var(--card-bg);padding:24px;border-radius:16px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color)}.logs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.logs-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.logs-controls{display:flex;gap:12px}.toggle-logs-btn,.refresh-logs-btn,.clear-logs-btn{padding:8px 16px;border:1px solid var(--border-color);border-radius:8px;background:var(--card-bg);color:var(--text-primary);font-weight:500;cursor:pointer;transition:all .2s ease}.toggle-logs-btn:hover,.refresh-logs-btn:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.clear-logs-btn:hover{background:var(--danger-color);color:#fff;border-color:var(--danger-color)}.logs-container{max-height:400px;overflow-y:auto;border:1px solid var(--border-color);border-radius:8px;background:#f8fafc}.logs-list{padding:16px}.log-entry{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid #e5e7eb;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem}.log-entry:last-child{border-bottom:none}.log-timestamp{color:var(--text-secondary);min-width:150px}.log-message{color:var(--text-primary);flex:1}.no-logs{padding:32px;text-align:center;color:var(--text-secondary)}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.loading-spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top:4px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.error-icon{font-size:3rem;margin-bottom:16px}.error-container h3{margin:0 0 8px;color:var(--text-primary)}.error-container p{margin:0 0 20px;color:var(--text-secondary)}.retry-btn{padding:12px 24px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease}.retry-btn:hover{background:#9baa94;transform:translateY(-1px)}@media (max-width: 768px){.modern-monitoring-dashboard{padding:12px}.dashboard-header{flex-direction:column;gap:16px;text-align:center}.header-right{align-items:center}.metrics-grid,.services-grid,.connectivity-grid,.security-grid{grid-template-columns:1fr}.logs-header{flex-direction:column;gap:16px;align-items:stretch}.logs-controls{justify-content:center}.log-entry{flex-direction:column;gap:4px}.log-timestamp{min-width:auto}}.security-dashboard{padding:20px;background:linear-gradient(135deg,#a8b5a0,#9baa94);min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.dashboard-header{background:#fff;border-radius:15px;padding:25px;margin-bottom:20px;box-shadow:0 8px 25px #0000001a;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.header-left h1{margin:0;font-size:2.2em;font-weight:700;color:#2d3748}.security-score{font-size:1.5em;font-weight:700;margin-top:10px;padding:8px 16px;background:#f7fafc;border-radius:8px;display:inline-block}.header-right{display:flex;flex-direction:column;gap:15px;align-items:flex-end}.refresh-controls{display:flex;gap:10px;align-items:center}.refresh-select,.filter-select{padding:8px 12px;border:2px solid #e2e8f0;border-radius:8px;background:#fff;font-size:14px;color:#4a5568}.refresh-btn,.check-btn{padding:8px 16px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:14px}.refresh-btn{background:#4299e1;color:#fff}.refresh-btn:hover{background:#3182ce;transform:translateY(-2px)}.check-btn{background:#48bb78;color:#fff}.check-btn:hover{background:#38a169;transform:translateY(-2px)}.last-update{font-size:14px;color:#718096;font-style:italic}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.stat-card{background:#fff;border-radius:15px;padding:25px;box-shadow:0 8px 25px #0000001a;display:flex;align-items:center;gap:20px;transition:all .3s ease;border-left:5px solid}.stat-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #00000026}.stat-card.critical{border-left-color:#ef4444}.stat-card.high{border-left-color:#f97316}.stat-card.total{border-left-color:#a8b5a0}.stat-card.score{border-left-color:#10b981}.stat-icon{font-size:2.5em;width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#f7fafc}.stat-content h3{margin:0 0 8px;font-size:1.1em;color:#4a5568;font-weight:600}.stat-value{font-size:2.2em;font-weight:700;color:#2d3748}.filters-section{background:#fff;border-radius:15px;padding:25px;margin-bottom:20px;box-shadow:0 8px 25px #0000001a}.filters-section h3{margin:0 0 20px;font-size:1.3em;color:#2d3748;font-weight:600}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;align-items:end}.clear-filters-btn{padding:8px 16px;border:2px solid #e53e3e;border-radius:8px;background:#fff;color:#e53e3e;font-weight:600;cursor:pointer;transition:all .3s ease}.clear-filters-btn:hover{background:#e53e3e;color:#fff}.alerts-section{background:#fff;border-radius:15px;padding:25px;box-shadow:0 8px 25px #0000001a}.alerts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.alerts-header h3{margin:0;font-size:1.3em;color:#2d3748;font-weight:600}.alerts-summary{display:flex;gap:15px;font-size:14px;color:#718096}.alerts-summary span{padding:4px 8px;background:#f7fafc;border-radius:6px}.alerts-list{display:flex;flex-direction:column;gap:15px}.alert-card{border:2px solid #e2e8f0;border-radius:12px;padding:20px;cursor:pointer;transition:all .3s ease;background:#fafafa}.alert-card:hover{transform:translate(5px);box-shadow:0 5px 15px #0000001a}.alert-card.critical{border-color:#ef4444;background:#fef2f2}.alert-card.high{border-color:#f97316;background:#fff7ed}.alert-card.medium{border-color:#f59e0b;background:#fffbeb}.alert-card.low{border-color:#a8b5a0;background:#eff6ff}.alert-header{display:flex;gap:15px;align-items:flex-start}.alert-level{width:50px;height:50px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.5em;color:#fff;flex-shrink:0}.alert-info{flex:1}.alert-info h4{margin:0 0 8px;font-size:1.1em;color:#2d3748;font-weight:600}.alert-info p{margin:0 0 12px;color:#4a5568;line-height:1.5}.alert-meta{display:flex;gap:15px;flex-wrap:wrap;font-size:12px;color:#718096}.alert-source,.alert-type,.alert-time{padding:4px 8px;background:#fff;border-radius:6px;border:1px solid #e2e8f0}.no-alerts{text-align:center;padding:60px 20px;color:#718096}.no-alerts-icon{font-size:4em;margin-bottom:20px}.no-alerts h4{margin:0 0 10px;font-size:1.3em;color:#4a5568}.no-alerts p{margin:0;font-size:1.1em}.alert-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.alert-modal{background:#fff;border-radius:15px;max-width:600px;width:100%;max-height:80vh;overflow:hidden;box-shadow:0 20px 60px #0000004d}.modal-header{padding:25px;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:1.3em;color:#2d3748;font-weight:600}.close-btn{background:none;border:none;font-size:2em;color:#718096;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.close-btn:hover{background:#f7fafc;color:#4a5568}.modal-content{padding:25px;max-height:60vh;overflow-y:auto}.alert-details{display:flex;flex-direction:column;gap:15px}.detail-item{display:flex;flex-direction:column;gap:8px}.detail-item strong{color:#2d3748;font-weight:600}.detail-item p{margin:0;color:#4a5568;line-height:1.5}.level-badge{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:8px;font-weight:600;font-size:12px;text-transform:uppercase}.level-badge.critical{background:#fef2f2;color:#ef4444;border:1px solid #fecaca}.level-badge.high{background:#fff7ed;color:#f97316;border:1px solid #fed7aa}.level-badge.medium{background:#fffbeb;color:#f59e0b;border:1px solid #fde68a}.level-badge.low{background:#eff6ff;color:#a8b5a0;border:1px solid #bfdbfe}.details-pre{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px;font-family:Courier New,monospace;font-size:12px;color:#4a5568;white-space:pre-wrap;word-break:break-all;max-height:200px;overflow-y:auto}.modal-footer{padding:20px 25px;border-top:2px solid #e2e8f0;display:flex;justify-content:flex-end}.close-modal-btn{padding:10px 20px;border:none;border-radius:8px;background:#4299e1;color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease}.close-modal-btn:hover{background:#3182ce}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;background:#fff;border-radius:15px;padding:40px;box-shadow:0 8px 25px #0000001a}.loading-spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top:4px solid #4299e1;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.error-icon{font-size:3em;margin-bottom:20px}.error-container h3{margin:0 0 10px;color:#2d3748}.error-container p{margin:0 0 20px;color:#718096;text-align:center}.retry-btn{padding:10px 20px;border:none;border-radius:8px;background:#4299e1;color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease}.retry-btn:hover{background:#3182ce}@media (max-width: 768px){.security-dashboard{padding:10px}.dashboard-header{flex-direction:column;align-items:stretch;text-align:center}.header-right{align-items:center}.refresh-controls{flex-wrap:wrap;justify-content:center}.stats-grid,.filters-grid{grid-template-columns:1fr}.alerts-header{flex-direction:column;align-items:stretch}.alerts-summary{justify-content:center}.alert-meta{flex-direction:column;gap:8px}.alert-modal{margin:10px;max-height:90vh}}.bulk-delete-overlay{position:fixed;inset:0;background:#dc26264d;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.bulk-delete-modal{background:#fff;border-radius:16px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #dc262680;border:3px solid #dc2626;animation:dangerModalSlide .3s ease-out}@keyframes dangerModalSlide{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.bulk-delete-header{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;padding:20px 24px;border-radius:13px 13px 0 0;position:relative;display:flex;align-items:center;justify-content:space-between}.bulk-delete-header h2{margin:0;font-size:24px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3)}.close-btn{background:#fff3;border:none;color:#fff;font-size:24px;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.close-btn:hover{background:#ffffff4d}.warning-section{padding:24px;background:#fef2f2;border-bottom:1px solid #fecaca}.warning-box{background:linear-gradient(135deg,#fee2e2,#fecaca);border:2px solid #f87171;border-radius:12px;padding:20px;text-align:center}.warning-box h3{color:#dc2626;margin:0 0 12px;font-size:18px;font-weight:700}.warning-box p{color:#7f1d1d;margin:0;font-size:16px;line-height:1.5}.stats-section{padding:24px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.stats-section h3{margin:0 0 16px;color:#334155;font-size:18px;font-weight:600}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.stat-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px;text-align:center;transition:border-color .2s ease}.stat-item:hover{border-color:#cbd5e1}.stat-number{display:block;font-size:24px;font-weight:700;color:#1e293b;margin-bottom:4px}.stat-label{font-size:12px;color:#64748b;font-weight:500}.bulk-delete-form{padding:24px}.selection-section{margin-bottom:24px}.selection-section h3{margin:0 0 16px;color:#334155;font-size:18px;font-weight:600}.checkbox-group{margin-bottom:24px;padding:16px;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.checkbox-group h4{margin:0 0 12px;color:#475569;font-size:16px;font-weight:600;display:flex;align-items:center;gap:8px}.checkbox-group:last-child{margin-bottom:0}.checkbox-label{display:block;background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:16px;margin-bottom:12px;cursor:pointer;transition:all .2s ease;position:relative}.checkbox-label:last-child{margin-bottom:0}.checkbox-label:hover{border-color:#cbd5e1;box-shadow:0 4px 6px -1px #0000001a}.checkbox-label input[type=checkbox]:checked+.checkbox-text{color:#dc2626}.checkbox-label input[type=checkbox]:checked~*{border-color:#dc2626}.checkbox-label:has(input:checked){border-color:#dc2626;background:#fef2f2}.checkbox-label input[type=checkbox]{margin-right:12px;transform:scale(1.2)}.checkbox-text{display:block;margin-left:24px}.checkbox-text strong{display:block;font-size:16px;margin-bottom:4px;color:#1e293b}.checkbox-text small{color:#64748b;font-size:14px;line-height:1.4}.confirmation-section{background:#fef2f2;border:2px solid #fecaca;border-radius:12px;padding:20px;margin-bottom:20px}.confirmation-section h3{margin:0 0 16px;color:#dc2626;font-size:18px;font-weight:600}.summary-box{background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;padding:12px 16px;margin-bottom:20px}.summary-box p{margin:0;color:#7f1d1d;font-size:15px;font-weight:500}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#374151;font-size:14px}.confirmation-input,.password-input{width:100%;padding:12px 16px;border:2px solid #d1d5db;border-radius:8px;font-size:16px;font-family:Courier New,monospace;transition:border-color .2s ease;background:#fff}.confirmation-input:focus,.password-input:focus{outline:none;border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.confirmation-input{text-align:center;font-weight:700;letter-spacing:1px;text-transform:uppercase}.error-message{background:#fee2e2;border:1px solid #fca5a5;color:#dc2626;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-weight:500;text-align:center}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid #e2e8f0}.btn-cancel,.btn-danger{padding:12px 24px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease;border:2px solid;min-width:140px}.btn-cancel{background:#fff;color:#6b7280;border-color:#d1d5db}.btn-cancel:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-danger{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;border-color:#dc2626;font-weight:700}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#b91c1c,#991b1b);box-shadow:0 4px 14px #dc262666;transform:translateY(-1px)}.btn-danger:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.help-section{padding:16px 24px;background:#f1f5f9;border-radius:0 0 13px 13px;text-align:center}.help-section small{color:#64748b;font-size:13px;line-height:1.4}@media (max-width: 640px){.bulk-delete-modal{margin:0;border-radius:0;max-height:100vh}.stats-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-cancel,.btn-danger{width:100%}}.sales-admin{padding:20px;max-width:1200px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;border-radius:12px;box-shadow:0 4px 15px #a8b5a04d}.header h1{margin:0;font-size:2em;font-weight:600}.header-actions{display:flex;gap:10px}.header-actions .btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-weight:600;min-width:140px;height:44px;display:flex;align-items:center;justify-content:center;text-align:center}.header-actions .btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px);box-shadow:0 4px 15px #0003}.header-actions .btn:disabled{background:#ffffff1a;color:#fff9;border-color:#fff3;cursor:not-allowed;transform:none;box-shadow:none}.btn{padding:10px 16px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.btn-primary:hover:not(:disabled){background:#5a67d8}.btn-success{background:#48bb78;color:#fff}.btn-success:hover:not(:disabled){background:#38a169}.btn-secondary{background:#e2e8f0;color:#4a5568}.btn-secondary:hover:not(:disabled){background:#cbd5e0}.btn-icon{background:none;border:none;padding:6px;border-radius:4px;cursor:pointer;font-size:16px;transition:background-color .2s ease}.btn-icon:hover{background:#0000001a}.alert{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-weight:500}.alert-error{background:#fed7d7;color:#c53030;border:1px solid #feb2b2}.alert-success{background:#c6f6d5;color:#22543d;border:1px solid #9ae6b4}.alert button{background:none;border:none;font-size:18px;cursor:pointer;opacity:.7}.alert button:hover{opacity:1}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat{background:#fff;padding:20px;border-radius:12px;text-align:center;box-shadow:0 2px 10px #0000001a;border:1px solid #e2e8f0}.stat-value{font-size:2em;font-weight:700;color:#2d3748;margin-bottom:8px}.stat-label{font-size:.9em;color:#718096;font-weight:500}.filters{display:flex;gap:20px;margin-bottom:20px;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef;flex-wrap:wrap;align-items:end}.filter-group{display:flex;flex-direction:column;gap:8px;min-width:180px}.filter-group label{font-weight:600;color:#495057;font-size:14px}.filter-group input,.filter-group select{padding:10px 12px;border:1px solid #ced4da;border-radius:6px;font-size:14px;background:#fff;transition:border-color .2s ease}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 2px #007bff40}.btn-clear-filters{background:#dc3545;color:#fff;border:none;padding:10px 16px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease;align-self:flex-end}.btn-clear-filters:hover{background:#c82333}.sales-list{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;border:1px solid #e2e8f0;overflow:hidden}.list-header{padding:20px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.list-header h2{margin:0;color:#2d3748;font-size:1.3em;font-weight:600}.empty-state{padding:60px 20px;text-align:center;color:#718096;font-size:1.1em}.sales-table-wrapper{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.sales-table-clean{width:100%;border-collapse:collapse;font-size:14px}.sales-table-clean thead{background:#f8fafc;border-bottom:2px solid #e2e8f0}.sales-table-clean th{padding:16px 12px;text-align:left;font-weight:600;color:#374151;font-size:13px;text-transform:uppercase;letter-spacing:.5px;border-right:1px solid #e2e8f0}.sales-table-clean th:last-child{border-right:none}.sale-row-clean{border-bottom:1px solid #f1f5f9;transition:background-color .2s ease}.sale-row-clean:hover{background:#f8fafc}.sale-row-clean:last-child{border-bottom:none}.sales-table-clean td{padding:12px;vertical-align:middle;border-right:1px solid #f1f5f9;height:50px}.sales-table-clean td:last-child{border-right:none}.date-cell{color:#64748b;font-weight:500;white-space:nowrap;width:100px}.artisan-cell{font-weight:600;color:#1e293b;white-space:nowrap;width:120px}.description-cell{color:#374151;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-cell{text-align:center;width:80px}.photo-cell img{width:40px;height:40px;-o-object-fit:cover;object-fit:cover;border-radius:4px;cursor:pointer;border:1px solid #e2e8f0;transition:all .2s ease}.photo-cell img:hover{border-color:#a8b5a0;transform:scale(1.1)}.payment-cell{text-align:center;width:100px}.payment-type{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;white-space:nowrap}.payment-type.especes{background:#c6f6d5;color:#22543d}.payment-type.cb{background:#bee3f8;color:#2a4365}.ttc-cell,.commission-cell,.net-cell{text-align:right;font-weight:600;white-space:nowrap;width:80px}.ttc-cell{color:#1e293b}.commission-cell{color:#dc2626}.net-cell{color:#059669;background:#f0fdf4;border-radius:4px}.actions-cell{text-align:center;width:100px;white-space:nowrap}.btn-edit,.btn-delete{width:36px;height:36px;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:16px;margin:0 2px;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;background:#fff;vertical-align:middle}.btn-edit{color:#059669;border-color:#bbf7d0}.btn-edit:hover{background:#f0fdf4;border-color:#059669;transform:translateY(-1px);box-shadow:0 2px 4px #05966933}.btn-delete{color:#dc2626;border-color:#fecaca}.btn-delete:hover{background:#fef2f2;border-color:#dc2626;transform:translateY(-1px);box-shadow:0 2px 4px #dc262633}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.modal-header h3{margin:0;color:#2d3748;font-size:1.3em;font-weight:600}.btn-close{background:none;border:none;font-size:24px;color:#718096;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.btn-close:hover{background:#e2e8f0;color:#4a5568}.modal-content{padding:20px;flex:1;display:flex;flex-direction:column}.form-group{margin-bottom:20px;display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#4a5568;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;transition:all .2s ease;background:#fff;color:#2d3748;box-sizing:border-box;height:44px}.form-group textarea{resize:vertical;min-height:80px;height:auto}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.modal-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:auto;padding-top:20px;border-top:1px solid #e2e8f0}@media (max-width: 768px){.sales-admin{padding:15px}.header{flex-direction:column;gap:15px;text-align:center}.header-actions{justify-content:center}.stats{grid-template-columns:repeat(2,1fr);gap:15px}.filters{flex-direction:column;align-items:stretch;gap:15px}.filter-group{min-width:auto}.sales-table-wrapper{overflow-x:auto}.sales-table-clean{font-size:12px;min-width:800px}.sales-table-clean th,.sales-table-clean td{padding:8px 6px}.description-cell{max-width:150px}.photo-cell img{width:30px;height:30px}.btn-edit,.btn-delete{width:32px;height:32px;font-size:14px;margin:0 1px}.form-row{grid-template-columns:1fr;gap:15px}.modal-actions{flex-direction:column}}@media (max-width: 480px){.stats{grid-template-columns:1fr}.header h1{font-size:1.5em}.stat-value{font-size:1.6em}}.photo-viewer-overlay{position:fixed;inset:0;background-color:#000000e6;display:flex;justify-content:center;align-items:center;z-index:2000;padding:20px}.photo-viewer-modal{background:#fff;border-radius:12px;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 40px #0000004d;position:relative}.photo-viewer-close{position:absolute;top:15px;right:15px;background:#000000b3;border:none;color:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s ease}.photo-viewer-close:hover{background:#000000e6;transform:scale(1.1)}.photo-viewer-close svg{width:20px;height:20px}.photo-viewer-content{flex:1;display:flex;justify-content:center;align-items:center;padding:20px;min-height:300px;background:#f8f9fa}.photo-viewer-image{max-width:100%;max-height:70vh;-o-object-fit:contain;object-fit:contain;border-radius:8px;box-shadow:0 4px 12px #0000001a;transition:transform .3s ease}.photo-viewer-image:hover{transform:scale(1.02)}.photo-viewer-footer{padding:20px;background:#fff;border-top:1px solid #e9ecef;display:flex;justify-content:center;gap:10px}.photo-viewer-download{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:8px}.photo-viewer-download:hover{transform:translateY(-2px);box-shadow:0 8px 16px #a8b5a04d}.photo-viewer-download:active{transform:translateY(0)}.photo-viewer-overlay{animation:fadeIn .3s ease}.photo-viewer-modal{animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width: 768px){.photo-viewer-overlay{padding:10px}.photo-viewer-modal{max-width:95vw;max-height:95vh}.photo-viewer-content{padding:10px;min-height:200px}.photo-viewer-image{max-height:60vh}.photo-viewer-close{top:10px;right:10px;width:35px;height:35px}.photo-viewer-close svg{width:16px;height:16px}.photo-viewer-footer{padding:15px}.photo-viewer-download{padding:10px 20px;font-size:14px}}@media (max-width: 480px){.photo-viewer-content{min-height:150px}.photo-viewer-image{max-height:50vh}.photo-viewer-download{padding:8px 16px;font-size:13px}}.sales-settings{padding:20px;max-width:800px;margin:0 auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.settings-header{text-align:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a}.settings-header h1{margin:0 0 10px;font-size:2.2em;font-weight:600}.settings-header p{margin:0;font-size:1.1em;opacity:.9}.settings-section{background:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 15px #0000001a;margin-bottom:25px;border:1px solid #e1e5e9}.settings-section h3{margin:0 0 20px;color:#2d3748;font-size:1.3em;font-weight:600;display:flex;align-items:center;gap:8px}.setting-group{margin-bottom:20px}.setting-group:last-child{margin-bottom:0}.setting-group label{display:block;font-weight:600;color:#4a5568;margin-bottom:8px;font-size:.95em}.commission-input-group{display:flex;align-items:center;gap:8px;max-width:200px}.commission-input{flex:1;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:16px;font-weight:600;text-align:center;transition:border-color .2s ease;background:#fff}.commission-input:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a}.commission-suffix{font-weight:600;color:#4a5568;font-size:16px}.setting-description{margin:12px 0 0;color:#718096;font-size:.9em;line-height:1.5}.email-input-group{display:flex;gap:10px;margin-bottom:15px}.email-input{flex:1;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;transition:border-color .2s ease;background:#fff}.email-input:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a}.add-email-btn{padding:12px 20px;background:#a8b5a0;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background-color .2s ease;white-space:nowrap}.add-email-btn:hover:not(:disabled){background:#5a67d8}.add-email-btn:disabled{background:#a0aec0;cursor:not-allowed}.email-list{margin-bottom:15px}.email-item{display:flex;align-items:center;justify-content:space-between;padding:10px 15px;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px}.email-text{font-weight:500;color:#2d3748}.remove-email-btn{background:none;border:none;font-size:1.1em;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .2s ease;color:#e53e3e}.remove-email-btn:hover{background:#fed7d7}.no-emails{color:#a0aec0;font-style:italic;text-align:center;padding:20px;background:#f7fafc;border-radius:8px;border:2px dashed #e2e8f0}.settings-actions{display:flex;gap:15px;margin-bottom:30px;flex-wrap:wrap}.save-btn{padding:15px 30px;background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:1em;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 15px #48bb784d}.save-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #48bb7866}.save-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.test-btn{padding:15px 30px;background:linear-gradient(135deg,#4299e1,#3182ce);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:1em;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 15px #4299e14d}.test-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #4299e166}.test-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.test-email-group{display:flex;gap:1rem;align-items:flex-end;margin-bottom:1rem}.test-email-input{flex:1;padding:.75rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .2s ease;background:#fff}.test-email-input:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a}.test-email-input::-moz-placeholder{color:#9ca3af}.test-email-input::placeholder{color:#9ca3af}.test-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;white-space:nowrap;box-shadow:0 2px 8px #10b9814d}.test-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b98166;background:linear-gradient(135deg,#059669,#047857)}.test-btn:disabled{background:#9ca3af;cursor:not-allowed;transform:none;box-shadow:none}.test-btn:active:not(:disabled){transform:translateY(0)}.settings-info{background:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 15px #0000001a;border:1px solid #e1e5e9}.settings-info h3{margin:0 0 20px;color:#2d3748;font-size:1.3em;font-weight:600}.info-item h4{margin:0 0 10px;color:#2d3748;font-size:1.1em;font-weight:600}.info-item p{margin:0;color:#718096;font-size:.9em;line-height:1.5}.loading{text-align:center;padding:60px;color:#718096;font-size:1.1em}@media (max-width: 768px){.sales-settings,.settings-header{padding:15px}.settings-header h1{font-size:1.8em}.settings-section{padding:20px}.email-input-group{flex-direction:column}.add-email-btn{width:100%}.settings-actions{flex-direction:column}.save-btn,.test-btn{width:100%}.info-grid{grid-template-columns:1fr;gap:15px}.commission-input-group{max-width:100%}}@media (max-width: 480px){.settings-header h1{font-size:1.6em}.settings-section,.info-item{padding:15px}}.scheduled-tasks-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.refresh-btn{background:#4caf50;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem}.refresh-btn:hover{background:#45a049}.refresh-btn:disabled{background:#ccc;cursor:not-allowed}.loading-tasks{color:#666;font-style:italic;text-align:center;padding:1rem}.no-tasks{color:#666;font-style:italic;text-align:center;padding:1rem;border:1px dashed #ccc;border-radius:4px}.scheduled-tasks-list{max-height:300px;overflow-y:auto;border:1px solid #ddd;border-radius:4px;margin-bottom:1rem}.scheduled-task-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border-bottom:1px solid #eee}.task-actions{display:flex;gap:.5rem;align-items:center}.scheduled-task-item:last-child{border-bottom:none}.task-info,.task-date-time{display:flex;flex-direction:column;gap:.25rem}.task-date{font-weight:500;color:#333}.task-time{font-size:.85rem;color:#666;font-weight:400}.task-status{font-size:.85rem;color:#666}.reschedule-btn{background:#a8b5a0;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.85rem}.reschedule-btn:hover{background:#9baa94}.send-now-btn{background:#ff9800;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.85rem;transition:background-color .2s ease}.send-now-btn:hover{background:#f57c00}.toggle-label{display:flex;align-items:center;gap:12px;cursor:pointer;padding:12px;border-radius:8px;transition:background-color .2s ease}.toggle-label:hover{background-color:#a8b5a01a}.toggle-checkbox{width:24px;height:24px;cursor:pointer;accent-color:#A8B5A0}.toggle-text{font-size:1.1em;font-weight:500;color:#3e3e3e;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sales-authorizations{padding:20px;max-width:1200px;margin:0 auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.authorizations-header{text-align:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a}.authorizations-header h1{margin:0 0 10px;font-size:2.2em;font-weight:600}.authorizations-header p{margin:0;font-size:1.1em;opacity:.9}.error-message{background:#fed7d7;color:#c53030;padding:15px 20px;border-radius:8px;margin-bottom:20px;border:1px solid #feb2b2}.success-message{background:#c6f6d5;color:#22543d;padding:15px 20px;border-radius:8px;margin-bottom:20px;border:1px solid #9ae6b4}.actions-section{margin-bottom:30px;text-align:center}.create-btn{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #a8b5a04d}.create-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #a8b5a066}.form-section{background:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 15px #0000001a;margin-bottom:30px;border:1px solid #e1e5e9}.form-section h3{margin:0 0 20px;color:#2d3748;font-size:1.3em;font-weight:600}.authorization-form{display:grid;gap:20px}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:600;color:#4a5568;margin-bottom:8px;font-size:.9em;display:flex;align-items:center;gap:6px}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;transition:all .2s ease;background:#fff;color:#2d3748}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a;transform:translateY(-1px)}.form-actions{display:flex;justify-content:flex-end;padding-top:10px}.save-btn{background:#48bb78;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.save-btn:hover:not(:disabled){background:#38a169;transform:translateY(-1px)}.save-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.authorizations-list-section{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;border:1px solid #e1e5e9;overflow:hidden;margin-bottom:30px}.section-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #e2e8f0;background:#f7fafc}.section-header h3{margin:0;color:#2d3748;font-size:1.3em;font-weight:600}.authorizations-count{background:#a8b5a0;color:#fff;padding:6px 12px;border-radius:20px;font-size:.9em;font-weight:600}.empty-state{text-align:center;padding:60px 25px;color:#718096}.empty-state p{font-size:1.1em;margin:0}.authorizations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px;padding:25px}.authorization-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .2s ease;position:relative}.authorization-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001a;border-color:#cbd5e0}.authorization-card.passed{border-color:#fed7d7;background:#fef5f5}.authorization-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.authorization-info h4{margin:0 0 8px;color:#2d3748;font-size:1.1em;font-weight:600}.authorization-date{color:#4a5568;font-size:.9em;margin-bottom:8px}.passed-badge{background:#fed7d7;color:#c53030;padding:4px 8px;border-radius:12px;font-size:.8em;font-weight:600;display:inline-block}.delete-btn{background:#fed7d7;color:#c53030;border:none;padding:8px;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:14px}.delete-btn:hover{background:#feb2b2;transform:scale(1.1)}.authorization-motif{background:#f7fafc;padding:12px;border-radius:8px;margin-bottom:15px;border-left:4px solid #A8B5A0}.authorization-motif strong{color:#2d3748}.authorization-meta{color:#718096;font-size:.85em;border-top:1px solid #e2e8f0;padding-top:12px}.info-section{background:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 15px #0000001a;border:1px solid #e1e5e9}.info-section h3{margin:0 0 20px;color:#2d3748;font-size:1.3em;font-weight:600}.info-item{padding:20px;background:#f7fafc;border-radius:8px;border:1px solid #e2e8f0}.info-item h4{margin:0 0 10px;color:#2d3748;font-size:1em;font-weight:600}.info-item p{margin:0;color:#4a5568;font-size:.9em;line-height:1.5}.loading{display:flex;justify-content:center;align-items:center;height:200px;font-size:1.2em;color:#4a5568}@media (max-width: 768px){.sales-authorizations,.authorizations-header{padding:15px}.authorizations-header h1{font-size:1.8em}.authorizations-grid{grid-template-columns:1fr;gap:15px;padding:20px}.authorization-card{padding:15px}.form-section,.authorizations-list-section,.info-section{padding:20px}.section-header{flex-direction:column;gap:10px;align-items:flex-start}.info-grid{grid-template-columns:1fr;gap:15px}}@media (max-width: 480px){.authorization-header{flex-direction:column;gap:10px}.delete-btn{align-self:flex-end}.form-actions{justify-content:center}.save-btn{width:100%;justify-content:center}}.messages{max-width:1200px;margin:0 auto;padding:20px}.messages-header{text-align:center;margin-bottom:30px}.messages-header h1{color:#2d3748;margin-bottom:10px;font-size:2.5rem}.messages-header p{color:#718096;font-size:1.1rem}.messages-content{display:grid;grid-template-columns:2fr 1fr;gap:30px;align-items:start}.message-form-section{background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 6px #0000001a}.message-form-section h2{color:#2d3748;margin-bottom:25px;font-size:1.5rem}.message-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-weight:600;color:#4a5568;font-size:.95rem}.form-input,.form-textarea{padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .2s ease;background:#fff}.form-input:focus,.form-textarea:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a}.form-textarea{resize:vertical;min-height:120px;font-family:inherit}.form-actions{display:flex;gap:15px;margin-top:10px}.send-btn,.test-btn{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.send-btn{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;flex:2}.send-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #a8b5a066}.send-btn:disabled{background:#a0aec0;cursor:not-allowed;transform:none;box-shadow:none}.test-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;flex:1}.test-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.test-btn:disabled{background:#a0aec0;cursor:not-allowed;transform:none;box-shadow:none}.messages-info{background:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 6px #0000001a;height:-moz-fit-content;height:fit-content}.messages-info h3{color:#2d3748;margin-bottom:20px;font-size:1.3rem}.info-grid{display:flex;flex-direction:column;gap:20px}.info-item{padding:15px;background:#f7fafc;border-radius:8px;border-left:4px solid #A8B5A0}.info-item h4{color:#2d3748;margin:0 0 8px;font-size:1rem}.info-item p{color:#4a5568;margin:0;font-size:.9rem;line-height:1.4}.error-message,.success-message{padding:15px 20px;border-radius:8px;margin-bottom:20px;font-weight:500}.error-message{background:#fed7d7;color:#c53030;border:1px solid #feb2b2}.success-message{background:#c6f6d5;color:#2f855a;border:1px solid #9ae6b4}@media (max-width: 768px){.messages-content{grid-template-columns:1fr;gap:20px}.form-actions{flex-direction:column}.send-btn,.test-btn{flex:none}.messages-header h1{font-size:2rem}}.cotisations{padding:20px;max-width:1400px;margin:0 auto}.cotisations-header{margin-bottom:20px}.cotisations-header h1{color:#2c3e50;margin:0 0 8px;font-size:1.8rem;font-weight:700}.cotisations-header p{color:#6c757d;margin:0;font-size:.9rem}.error-message,.success-message{padding:12px 16px;border-radius:8px;margin-bottom:20px;font-weight:500}.error-message{background-color:#fee;color:#c53030;border:1px solid #fed7d7}.success-message{background-color:#f0fff4;color:#2f855a;border:1px solid #c6f6d5}.stats-section{margin-bottom:20px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.stat-card{background:#fff;padding:16px;border-radius:12px;border:1px solid #e9ecef;box-shadow:0 2px 12px #0000000f;text-align:center;transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.stat-value{font-size:1.5rem;font-weight:700;color:#2c3e50;margin-bottom:4px}.stat-label{font-size:.8rem;color:#6c757d;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.actions-section{background:#fff;padding:16px 20px;border-radius:12px;margin-bottom:20px;border:1px solid #e9ecef;box-shadow:0 2px 12px #0000000f}.actions-section h3{margin:0 0 12px;color:#2c3e50;font-size:1.1rem;font-weight:600}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-bottom:12px}.action-btn{background:linear-gradient(135deg,#a8b5a0,#c18f45);color:#fff;border:none;padding:10px 16px;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.action-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #007bff4d}.info-text{font-size:.8rem;color:#6c757d;margin:6px 0;line-height:1.4}.filters-section{background:#fff;padding:16px 20px;border-radius:12px;margin-bottom:20px;border:1px solid #e9ecef;box-shadow:0 2px 12px #0000000f;transition:all .3s ease}.filters-section:hover{box-shadow:0 4px 16px #0000001a}.filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.filters-title{display:flex;align-items:center;gap:8px}.filters-title h3{margin:0;color:#2c3e50;font-size:1.1rem;font-weight:600}.filters-count{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;padding:3px 8px;border-radius:16px;font-size:.75rem;font-weight:500;min-width:50px;text-align:center}.default-filter-indicator{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;padding:3px 8px;border-radius:16px;font-size:.75rem;font-weight:500;text-align:center}.clear-filters-btn{background:#f8f9fa;color:#6c757d;border:1px solid #dee2e6;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:4px}.clear-filters-btn:hover{background:#e9ecef;color:#495057;border-color:#adb5bd;transform:translateY(-1px)}.filters-container{display:flex;flex-direction:column;gap:10px}.filters-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-label{font-size:.8rem;font-weight:600;color:#495057;margin:0;text-transform:uppercase;letter-spacing:.3px}.filter-select-wrapper{position:relative;display:flex;align-items:center}.filter-select{width:100%;padding:8px 32px 8px 12px;border:1.5px solid #e9ecef;border-radius:8px;background:#fff;font-size:.85rem;font-weight:500;color:#495057;transition:all .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.filter-select:hover{border-color:#a8b5a0;background:#f8f9ff}.filter-select:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 2px #007bff1a;background:#fff}.filter-select-arrow{position:absolute;right:10px;color:#6c757d;pointer-events:none;transition:transform .2s ease}.filter-select:focus+.filter-select-arrow{transform:rotate(180deg);color:#a8b5a0}.active-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0;border-top:1px solid #f1f3f4;margin-top:6px}.active-filters-label{font-size:.8rem;font-weight:600;color:#6c757d;text-transform:uppercase;letter-spacing:.3px}.filter-tag{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,#28a745,#20c997);color:#fff;padding:4px 8px;border-radius:16px;font-size:.75rem;font-weight:500;transition:all .2s ease}.filter-tag:hover{transform:translateY(-1px);box-shadow:0 3px 8px #28a7454d}.filter-tag-remove{background:#fff3;color:#fff;border:none;border-radius:50%;width:16px;height:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:10px;font-weight:700;transition:all .2s ease;margin-left:2px}.filter-tag-remove:hover{background:#ffffff4d;transform:scale(1.1)}.cotisations-list{background:#fff;border-radius:12px;border:1px solid #e9ecef;overflow:hidden;box-shadow:0 2px 12px #0000000f}.cotisations-list h3{margin:0;padding:16px 20px;background:#f8f9fa;border-bottom:1px solid #dee2e6;color:#2c3e50;font-size:1.1rem;font-weight:600}.no-cotisations{padding:30px;text-align:center;color:#6c757d;font-style:italic}.cotisations-table{overflow-x:auto}.cotisations-table table{width:100%;border-collapse:collapse}.cotisations-table th,.cotisations-table td{padding:10px 14px;text-align:left;border-bottom:1px solid #dee2e6}.cotisations-table th{background:#f8f9fa;font-weight:600;color:#495057;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}.cotisations-table tr:hover{background:#f8f9fa}.cotisations-table td{font-size:.85rem}.status-badge{padding:4px 8px;border-radius:12px;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.status-paid{background:#d4edda;color:#155724}.status-pending{background:#fff3cd;color:#856404}.status-overdue{background:#f8d7da;color:#721c24}.status-unknown{background:#e2e3e5;color:#383d41}.cotisation-detail{font-size:.8rem;line-height:1.3}.detail-line{display:flex;justify-content:space-between;margin-bottom:2px}.detail-label{color:#666;font-weight:500}.detail-value{color:#333;font-weight:600}.detail-loading{color:#999;font-style:italic}.calculation-result{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px;margin:16px 0}.calculation-result h4{margin:0 0 12px;color:#495057;font-size:1rem}.calculation-detail{display:flex;flex-direction:column;gap:8px}.calculation-detail .detail-line{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.calculation-detail .detail-line.total{border-top:1px solid #dee2e6;padding-top:8px;margin-top:8px;font-size:1.1rem}.pay-btn{background:#28a745;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:500;transition:all .2s ease}.pay-btn:hover{background:#218838;transform:translateY(-1px)}.actions-buttons{display:flex;gap:8px;align-items:center;justify-content:center}.edit-btn{background:#ffc107;color:#212529;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:500;transition:all .2s ease}.edit-btn:hover{background:#e0a800;transform:translateY(-1px);box-shadow:0 2px 8px #ffc1074d}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:#fff;border-radius:12px;padding:30px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 30px #0000004d}.modal h3{margin:0 0 20px;color:#2c3e50;font-size:1.3rem}.modal p{margin:0 0 20px;color:#6c757d;font-size:.9rem}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#495057}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #ced4da;border-radius:6px;font-size:.9rem;transition:border-color .2s ease;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 2px #007bff40}.form-group input[type=checkbox]{width:auto;margin-right:8px}.form-group label:has(input[type=checkbox]){display:flex;align-items:center;cursor:pointer}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:30px}.btn-primary,.btn-secondary{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease}.btn-primary{background:#a8b5a0;color:#fff}.btn-primary:hover{background:#c18f45}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268}.loading{text-align:center;padding:40px;color:#6c757d;font-size:1.1rem}@media (max-width: 768px){.cotisations{padding:15px}.stats-grid{grid-template-columns:repeat(2,1fr)}.actions-grid,.filters-row{grid-template-columns:1fr}.filters-section,.actions-section{padding:14px 16px}.filters-header{flex-direction:column;align-items:flex-start;gap:8px}.filters-title{width:100%;justify-content:space-between}.clear-filters-btn{width:100%;justify-content:center}.active-filters{flex-direction:column;align-items:flex-start;gap:6px}.filter-tag{font-size:.7rem;padding:3px 6px}.cotisations-table{font-size:.75rem}.cotisations-table th,.cotisations-table td{padding:8px 10px}.modal{margin:10px;padding:20px}.modal-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}.filters-section,.actions-section{padding:12px 14px}.filter-select{padding:6px 10px;font-size:.8rem}.cotisations-table th,.cotisations-table td{padding:6px 8px;font-size:.7rem}.filter-tag{font-size:.65rem;padding:2px 6px}.filter-tag-remove{width:14px;height:14px;font-size:9px}}.etageres-info{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;padding:4px 8px;border-radius:12px;font-size:.8rem;font-weight:500;display:inline-block}.montant-input-group{display:flex;gap:8px;align-items:center}.montant-input-group input{flex:1}.calc-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:500;transition:all .2s ease;white-space:nowrap}.calc-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #28a7454d}.calc-btn:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.form-help{font-size:.8rem;color:#6c757d;margin-top:4px;font-style:italic}.info-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px;margin-bottom:20px}.info-section h4{margin:0 0 12px;color:#2c3e50;font-size:1rem;font-weight:600}.info-section p{margin:8px 0;color:#495057;font-size:.9rem}.info-section ul{margin:8px 0 12px 20px;color:#495057;font-size:.9rem}.info-section li{margin:4px 0}.info-section strong{color:#2c3e50;font-weight:600}.info-section em{color:#6c757d;font-style:italic}.etageres-pricing{padding:20px;max-width:1200px;margin:0 auto}.etageres-pricing-header{text-align:center;margin-bottom:30px}.etageres-pricing-header h2{display:flex;align-items:center;justify-content:center;gap:12px;font-size:1.8rem;color:#2c3e50;margin-bottom:8px}.etageres-pricing-header h2 svg{width:24px;height:24px;color:#3498db}.etageres-pricing-header p{color:#7f8c8d;font-size:1rem;margin:0}.success-message{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;padding:12px 20px;border-radius:8px;margin-bottom:20px;text-align:center;font-weight:500}.error-message{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;padding:12px 20px;border-radius:8px;margin-bottom:20px;text-align:center;font-weight:500}.pricing-form{background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 6px #0000001a}.pricing-form .form-group{margin-bottom:24px}.pricing-form label{display:block;font-weight:600;color:#2c3e50;margin-bottom:8px;font-size:1rem}.pricing-form select{width:100%;padding:12px 16px;border:2px solid #e1e8ed;border-radius:8px;font-size:1rem;background:#fff;transition:all .2s ease}.pricing-form select:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.global-pricing-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #e1e8ed;border-radius:12px;padding:32px;margin-bottom:24px;text-align:center;box-shadow:0 4px 6px #0000000d}.global-pricing-section h3{color:#2c3e50;font-size:1.5rem;margin:0 0 24px;font-weight:600}.price-input-large{position:relative;margin-bottom:16px;max-width:300px;margin-left:auto;margin-right:auto}.price-input-large input{width:100%;padding:18px 90px 18px 24px;border:3px solid #e1e8ed;border-radius:12px;font-size:1.4rem;font-weight:600;text-align:center;background:#fff;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.price-input-large input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 4px #3498db1a,0 2px 4px #0000001a}.price-input-large .currency{position:absolute;right:24px;top:50%;transform:translateY(-50%);color:#7f8c8d;font-weight:600;font-size:1.1rem}.global-pricing-section small{color:#7f8c8d;font-size:.95rem;display:block;margin-bottom:24px}.options-preview{margin-bottom:24px}.options-preview h3{color:#2c3e50;font-size:1.2rem;margin:0 0 16px;font-weight:600;text-align:center}.options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:24px}.option-card{background:#fff;border:2px solid #e1e8ed;border-radius:8px;padding:16px;text-align:center;transition:all .2s ease}.option-card:hover{border-color:#3498db;transform:translateY(-1px)}.option-card h4{color:#2c3e50;font-size:1rem;margin:0 0 8px;font-weight:600}.option-price{color:#27ae60;font-size:1.2rem;font-weight:700}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:24px}.pricing-card{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #e1e8ed;border-radius:12px;padding:20px;text-align:center;transition:all .3s ease}.pricing-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0000001a;border-color:#3498db}.pricing-card h3{color:#2c3e50;font-size:1.2rem;margin:0 0 16px;font-weight:600}.price-input{position:relative;margin-bottom:12px}.price-input input{width:100%;padding:12px 40px 12px 16px;border:2px solid #e1e8ed;border-radius:8px;font-size:1.1rem;font-weight:500;text-align:center;background:#fff;transition:all .2s ease}.price-input input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.price-input .currency{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#7f8c8d;font-weight:600;font-size:1rem}.pricing-card small{color:#7f8c8d;font-size:.85rem;display:block}.form-actions{text-align:center;margin-top:24px}.save-btn{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border:none;padding:16px 40px;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:220px;box-shadow:0 4px 8px #27ae604d;display:inline-flex;align-items:center;justify-content:center;gap:8px}.save-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #27ae6066}.save-btn:active:not(:disabled){transform:translateY(0)}.save-btn:disabled{background:#bdc3c7;cursor:not-allowed;transform:none;box-shadow:none}.save-icon{width:20px;height:20px}.loading-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}#prix-etagere-input{background:linear-gradient(135deg,#fff,#f8f9fa)}#prix-etagere-input:focus{background:#fff;transform:scale(1.02)}@media (max-width: 768px){.etageres-pricing,.pricing-form{padding:16px}.pricing-grid{grid-template-columns:1fr;gap:16px}.etageres-pricing-header h2{font-size:1.5rem}}.etageres-pricing-enhanced{max-width:1200px;margin:0 auto;padding:20px;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a}.pricing-header{text-align:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e9ecef}.pricing-header h2{color:#2c3e50;margin-bottom:10px;font-size:2rem;font-weight:600}.pricing-header p{color:#6c757d;font-size:1.1rem;margin:0}.etageres-pricing-enhanced .pricing-alert{padding:12px 16px;border-radius:8px;margin-bottom:20px;font-weight:500}.etageres-pricing-enhanced .pricing-alert-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.etageres-pricing-enhanced .pricing-alert-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.etageres-pricing-enhanced .pricing-tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid #e9ecef}.etageres-pricing-enhanced .pricing-tab-btn{padding:12px 24px;border:none;background:transparent;color:#6c757d;font-size:1rem;font-weight:500;cursor:pointer;border-radius:8px 8px 0 0;transition:all .3s ease;position:relative}.etageres-pricing-enhanced .pricing-tab-btn:hover{background-color:#f8f9fa;color:#495057}.etageres-pricing-enhanced .pricing-tab-btn.active{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;box-shadow:0 2px 4px #a8b5a04d}.etageres-pricing-enhanced .pricing-tab-btn.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:linear-gradient(135deg,#a8b5a0,#9baa94)}.etageres-pricing-enhanced .pricing-tab-content{animation:pricingFadeIn .3s ease-in-out}@keyframes pricingFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.etageres-pricing-enhanced .pricing-section{background:#f8f9fa;padding:25px;border-radius:12px;border:1px solid #e9ecef}.etageres-pricing-enhanced .pricing-section h3{color:#2c3e50;margin-bottom:10px;font-size:1.5rem;font-weight:600}.etageres-pricing-enhanced .pricing-section p{color:#6c757d;margin-bottom:25px;font-size:1rem}.etageres-pricing-enhanced .pricing-form{background:#fff;padding:25px;border-radius:10px;box-shadow:0 2px 4px #0000000d}.etageres-pricing-enhanced .pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:25px}.etageres-pricing-enhanced .pricing-item{display:flex;flex-direction:column;gap:8px}.etageres-pricing-enhanced .pricing-item label{font-weight:600;color:#495057;font-size:.95rem}.etageres-pricing-enhanced .pricing-item input{padding:12px 16px;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:all .3s ease;position:relative}.etageres-pricing-enhanced .pricing-item input:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a}.etageres-pricing-enhanced .pricing-item .currency{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#6c757d;font-weight:500;pointer-events:none}.etageres-pricing-enhanced .pricing-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:25px}.etageres-pricing-enhanced .pricing-form-group{display:flex;flex-direction:column;gap:8px}.etageres-pricing-enhanced .pricing-form-group label{font-weight:600;color:#495057;font-size:.95rem}.etageres-pricing-enhanced .pricing-form-group input,.etageres-pricing-enhanced .pricing-form-group select{padding:12px 16px;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:all .3s ease}.etageres-pricing-enhanced .pricing-form-group input:focus,.etageres-pricing-enhanced .pricing-form-group select:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a}.etageres-pricing-enhanced .pricing-btn{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px;text-decoration:none}.etageres-pricing-enhanced .pricing-btn:disabled{opacity:.6;cursor:not-allowed}.etageres-pricing-enhanced .pricing-btn-primary{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;box-shadow:0 2px 4px #a8b5a04d}.etageres-pricing-enhanced .pricing-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #a8b5a066}.etageres-pricing-enhanced .pricing-btn-danger{background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;box-shadow:0 2px 4px #ff6b6b4d}.etageres-pricing-enhanced .pricing-btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #ff6b6b66}.etageres-pricing-enhanced .pricing-btn-sm{padding:8px 16px;font-size:.9rem}.etageres-pricing-enhanced .pricing-table{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 4px #0000000d}.etageres-pricing-enhanced .pricing-table table{width:100%;border-collapse:collapse}.etageres-pricing-enhanced .pricing-table th{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;padding:15px 12px;text-align:left;font-weight:600;font-size:.95rem}.etageres-pricing-enhanced .pricing-table td{padding:12px;border-bottom:1px solid #e9ecef;vertical-align:middle}.etageres-pricing-enhanced .pricing-table tr:hover{background-color:#f8f9fa}.etageres-pricing-enhanced .pricing-table .price{font-weight:600;color:#28a745;font-size:1.1rem}.etageres-pricing-enhanced .pricing-badge{padding:4px 12px;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.etageres-pricing-enhanced .pricing-badge-global{background-color:#e3f2fd;color:#1976d2}.etageres-pricing-enhanced .pricing-badge-specific{background-color:#fff3e0;color:#f57c00}@media (max-width: 768px){.etageres-pricing-enhanced{padding:15px}.pricing-tabs{flex-direction:column;gap:5px}.tab-btn{border-radius:8px}.tab-btn.active:after{display:none}.pricing-grid,.form-row{grid-template-columns:1fr}.pricing-table{overflow-x:auto}.pricing-table table{min-width:600px}}@media (max-width: 480px){.pricing-header h2{font-size:1.5rem}.pricing-section,.pricing-form{padding:20px}}.admin-reports{max-width:1400px;margin:0 auto;padding:30px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.reports-header{display:flex;align-items:center;gap:20px;margin-bottom:40px;padding:30px;background:linear-gradient(135deg,#a8b5a0,#9baa94);border-radius:20px;color:#fff;box-shadow:0 10px 30px #0000001a}.header-icon{font-size:3rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2))}.header-content h1{margin:0 0 8px;font-size:2.5rem;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.2)}.header-content p{margin:0;font-size:1.1rem;opacity:.9;font-weight:300}.report-type-tabs{display:flex;justify-content:center;margin-bottom:40px;gap:20px}.type-tab{display:flex;flex-direction:column;align-items:center;gap:12px;padding:25px 30px;border:2px solid #e5e7eb;background:#fff;color:#6b7280;border-radius:16px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);min-width:200px;box-shadow:0 4px 6px #0000000d}.type-tab:hover{border-color:#a8b5a0;color:#a8b5a0;transform:translateY(-2px);box-shadow:0 8px 25px #a8b5a026}.type-tab.active{border-color:#a8b5a0;background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;transform:translateY(-2px);box-shadow:0 8px 25px #a8b5a04d}.tab-icon{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.tab-text{font-size:1.1rem;font-weight:700}.tab-description{font-size:.85rem;opacity:.8;text-align:center;line-height:1.3}.report-configuration{background:#fff;border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 4px 20px #00000014;border:1px solid #f3f4f6}.config-header{text-align:center;margin-bottom:30px}.config-header h3{margin:0 0 8px;font-size:1.5rem;color:#1f2937;font-weight:700}.config-header p{margin:0;color:#6b7280;font-size:1rem}.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px;align-items:end}.config-item{display:flex;flex-direction:column;gap:12px}.config-label{display:flex;align-items:center;gap:8px;font-weight:600;color:#374151;font-size:.95rem}.label-icon{font-size:1.1rem}.config-select{padding:14px 18px;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;background:#fff;transition:all .2s;font-weight:500}.config-select:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a}.report-actions{background:#fff;border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 4px 20px #00000014;border:1px solid #f3f4f6}.actions-header{text-align:center;margin-bottom:30px}.actions-header h3{margin:0 0 8px;font-size:1.5rem;color:#1f2937;font-weight:700}.actions-header p{margin:0;color:#6b7280;font-size:1rem}.action-buttons{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.action-btn{display:flex;flex-direction:column;align-items:center;gap:12px;padding:25px 30px;border:none;border-radius:16px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);min-width:200px;box-shadow:0 4px 6px #0000000d}.action-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.action-btn:not(:disabled):hover{transform:translateY(-3px)}.test-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.test-btn:not(:disabled):hover{box-shadow:0 8px 25px #10b9814d}.send-btn{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff}.send-btn:not(:disabled):hover{box-shadow:0 8px 25px #a8b5a04d}.btn-icon{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.btn-text{font-size:1.1rem;font-weight:700}.btn-description{font-size:.85rem;opacity:.9;text-align:center;line-height:1.3}.status-message{display:flex;align-items:flex-start;gap:15px;padding:20px 25px;border-radius:16px;margin-bottom:25px;box-shadow:0 4px 15px #0000001a}.status-message.error{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;color:#dc2626}.status-message.success{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0;color:#16a34a}.message-icon{font-size:1.5rem;margin-top:2px}.message-content h4{margin:0 0 5px;font-size:1.1rem;font-weight:700}.message-content p{margin:0;font-size:1rem;line-height:1.4}.test-report-preview{background:#fff;border-radius:20px;padding:30px;margin-top:30px;box-shadow:0 8px 30px #0000001f;border:1px solid #f3f4f6}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid #f3f4f6}.preview-header h3{margin:0;color:#1f2937;font-size:1.6rem;font-weight:700}.close-btn{background:#f3f4f6;border:none;border-radius:50%;width:40px;height:40px;font-size:1.2rem;cursor:pointer;transition:all .2s;color:#6b7280}.admin-summary .summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid #f3f4f6}.admin-summary .summary-header h4{margin:0;color:#1f2937;font-size:1.4rem;font-weight:700}.summary-stats{display:flex;gap:20px}.stat-item{display:flex;flex-direction:column;align-items:center;gap:5px}.stat-value{font-size:2rem;font-weight:700;color:#a8b5a0}.stat-label{font-size:.9rem;color:#6b7280;font-weight:500}.artisans-detail h5{color:#374151;margin:25px 0 20px;font-size:1.2rem;font-weight:600}.artisans-table-container{overflow-x:auto;background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 2px 8px #0000000d}.artisans-table{width:100%;border-collapse:collapse;min-width:900px}.artisans-table th{background:#f9fafb;padding:18px 20px;text-align:left;font-weight:600;color:#374151;font-size:.9rem;border-bottom:2px solid #e5e7eb}.artisans-table td{padding:16px 20px;border-bottom:1px solid #f3f4f6;font-size:.95rem}.artisans-table tr.even{background:#fafafa}.artisans-table tr:hover{background:#f3f4f6}.artisan-name{font-weight:600;color:#1f2937}.amount{font-weight:600;font-family:SF Mono,Monaco,Cascadia Code,monospace}.amount.positive{color:#059669}.amount.negative{color:#dc2626}.artisan-summary .summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid #f3f4f6}.artisan-summary .summary-header h4{margin:0;color:#1f2937;font-size:1.4rem;font-weight:700}.period-badge{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;padding:8px 16px;border-radius:20px;font-size:.9rem;font-weight:600}.artisan-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.detail-card{display:flex;align-items:center;gap:15px;padding:20px;background:#f9fafb;border-radius:16px;border:1px solid #e5e7eb;transition:all .2s}.detail-card:hover{transform:translateY(-2px);box-shadow:0 4px 15px #0000001a}.detail-card.highlight{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.card-icon{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.card-content h5{margin:0 0 5px;font-size:.9rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.card-value{font-size:1.3rem;font-weight:700;font-family:SF Mono,Monaco,Cascadia Code,monospace}.card-value.positive{color:#059669}.card-value.negative{color:#dc2626}.artisan-loading{display:flex;align-items:center;gap:12px;padding:15px;background:#f3f4f6;border-radius:12px;color:#6b7280;font-size:.9rem}.loading-spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top:2px solid #A8B5A0;border-radius:50%;animation:spin 1s linear infinite}.artisan-error{display:flex;align-items:center;gap:12px;padding:15px;background:#fef2f2;border-radius:12px;color:#dc2626;font-size:.9rem}.reload-btn{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:4px;border-radius:6px;transition:background-color .2s;color:inherit}.reload-btn:hover{background:#0000001a}@media (max-width: 768px){.admin-reports{padding:20px}.reports-header{flex-direction:column;text-align:center;padding:25px}.header-content h1{font-size:2rem}.type-tab{min-width:160px;padding:20px}.config-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column;align-items:center}.action-btn{width:100%;max-width:300px}.artisan-detail-grid{grid-template-columns:1fr}.artisans-table{font-size:.8rem}.artisans-table th,.artisans-table td{padding:12px 15px}}@media (max-width: 480px){.reports-header{padding:20px}.header-content h1{font-size:1.8rem}.type-tab{min-width:140px;padding:15px}.tab-text{font-size:1rem}.tab-description{font-size:.8rem}}.backup-manager{max-width:1200px;margin:0 auto;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.backup-header{margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}.backup-header h2{color:#2c3e50;margin-bottom:15px;font-size:1.8em}.backup-stats{display:flex;gap:20px;margin-bottom:15px;flex-wrap:wrap}.stat{background:#f8f9fa;padding:8px 12px;border-radius:6px;font-size:.9em;color:#495057}.backup-schedule{display:flex;flex-direction:column;gap:8px;margin-top:12px}.schedule-info,.rotation-info{background:#fff3cd;padding:6px 10px;border-radius:4px;font-size:.85rem;color:#856404;border-left:3px solid #ffc107}.system-health{margin-bottom:25px;padding:20px;border-radius:8px;border-left:4px solid}.system-health.excellent{background:#d4edda;border-left-color:#28a745}.system-health.good{background:#d1ecf1;border-left-color:#17a2b8}.system-health.warning{background:#fff3cd;border-left-color:#ffc107}.system-health.critical{background:#f8d7da;border-left-color:#dc3545}.system-health h3{margin:0 0 15px;color:#2c3e50;font-size:1.2em}.health-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.metric{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#ffffffb3;border-radius:4px}.metric .label{font-weight:500;color:#495057}.metric .value{font-weight:700;padding:2px 8px;border-radius:3px}.metric .value.success{background:#d4edda;color:#155724}.metric .value.warning{background:#fff3cd;color:#856404}.metric .value.error{background:#f8d7da;color:#721c24}.backup-tabs{display:flex;margin-bottom:20px;border-bottom:2px solid #e9ecef}.tab{padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1em;color:#6c757d;transition:all .3s ease}.tab:hover{color:#495057;background:#f8f9fa}.tab.active{color:#a8b5a0;border-bottom-color:#a8b5a0;font-weight:500}.backup-actions{display:flex;gap:10px;margin-bottom:25px;flex-wrap:wrap}.btn-create-backup,.btn-sync-nas,.btn-refresh{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:.9em;font-weight:500;transition:all .3s ease}.btn-create-backup{background:#28a745;color:#fff}.btn-create-backup:hover:not(:disabled){background:#218838}.btn-sync-nas{background:#17a2b8;color:#fff}.btn-sync-nas:hover:not(:disabled){background:#138496}.btn-refresh{background:#6c757d;color:#fff}.btn-refresh:hover:not(:disabled){background:#5a6268}.btn-create-backup:disabled,.btn-sync-nas:disabled,.btn-refresh:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#f8d7da;color:#721c24;padding:12px;border-radius:6px;margin-bottom:20px;border-left:4px solid #dc3545}.loading{text-align:center;padding:40px;color:#6c757d;font-size:1.1em}.no-backups{text-align:center;padding:40px;color:#6c757d;font-style:italic}.backups-list{display:flex;flex-direction:column;gap:15px}.backup-item{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#f8f9fa;border-radius:8px;border-left:4px solid #A8B5A0;transition:all .3s ease}.backup-item:hover{background:#e9ecef;transform:translate(5px)}.backup-item.nas-backup{border-left-color:#17a2b8;background:#f0f8ff}.backup-item.nas-backup:hover{background:#e6f3ff}.backup-info{flex:1}.backup-name{font-weight:600;color:#2c3e50;margin-bottom:5px;font-size:1.1em}.backup-details{display:flex;gap:15px;flex-wrap:wrap;font-size:.9em;color:#6c757d}.backup-size,.backup-date,.backup-location{display:flex;align-items:center;gap:5px}.backup-location{color:#17a2b8;font-weight:500}.backup-actions{display:flex;gap:8px}.btn-download,.btn-delete{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:.85em;transition:all .3s ease}.btn-download{background:#a8b5a0;color:#fff}.btn-download:hover{background:#c18f45}.btn-delete{background:#dc3545;color:#fff}.btn-delete:hover{background:#c82333}.backup-info-panel{margin-top:30px;padding:20px;background:#f8f9fa;border-radius:8px;border-left:4px solid #17a2b8}.backup-info-panel h3{margin:0 0 15px;color:#2c3e50;font-size:1.2em}.backup-info-panel ul{margin:0;padding-left:20px;color:#495057;line-height:1.6}.backup-info-panel li{margin-bottom:8px}@media (max-width: 768px){.backup-manager{padding:15px}.backup-stats{flex-direction:column;gap:10px}.health-metrics{grid-template-columns:1fr}.backup-tabs{flex-direction:column}.tab{text-align:center;border-bottom:none;border-right:3px solid transparent}.tab.active{border-bottom:none;border-right-color:#a8b5a0}.backup-item{flex-direction:column;align-items:flex-start;gap:15px}.backup-details{flex-direction:column;gap:8px}.backup-actions{width:100%;justify-content:flex-end}}.supplement-settings{max-width:800px;margin:0 auto;padding:20px;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a}.header{margin-bottom:30px;text-align:center}.header h2{color:#2c3e50;margin-bottom:10px;font-size:1.8rem}.header p{color:#7f8c8d;font-size:1rem}.settings-form{display:flex;flex-direction:column;gap:30px}.form-section{background:#f8f9fa;padding:25px;border-radius:10px;border:1px solid #e9ecef}.form-section h3{color:#2c3e50;margin-bottom:20px;font-size:1.3rem;border-bottom:2px solid #3498db;padding-bottom:8px}.form-group input,.form-group textarea{width:100%;padding:12px;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.form-group small{display:block;margin-top:5px;color:#7f8c8d;font-size:.9rem}.checkbox-label{display:flex;align-items:center;cursor:pointer;font-weight:600;color:#2c3e50}.info-section{background:#e8f4fd;padding:25px;border-radius:10px;border:1px solid #bee5eb}.info-section h3{color:#0c5460;margin-bottom:20px;font-size:1.3rem}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.info-card{background:#fff;padding:20px;border-radius:8px;border:1px solid #d1ecf1}.info-card h4{color:#0c5460;margin-bottom:10px;font-size:1.1rem}.info-card p{color:#0c5460;font-size:.95rem;line-height:1.4}.form-actions{display:flex;gap:15px;justify-content:center;padding-top:20px;border-top:2px solid #e9ecef}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;gap:8px}.btn-primary:hover:not(:disabled){background:#2980b9;transform:translateY(-2px);box-shadow:0 4px 8px #3498db4d}.btn-secondary:hover:not(:disabled){background:#7f8c8d;transform:translateY(-2px);box-shadow:0 4px 8px #95a5a64d}@media (max-width: 768px){.supplement-settings{padding:15px}.info-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn{width:100%;justify-content:center}}.artisan-supplement-override{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.artisan-supplement-override>div{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative;z-index:10000;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}.header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:2px solid #e9ecef;background:#f8f9fa;border-radius:12px 12px 0 0}.header h3{color:#2c3e50;margin:0;font-size:1.4rem}.close-btn{background:#e74c3c;color:#fff;border:none;border-radius:50%;width:35px;height:35px;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:background .3s ease}.close-btn:hover{background:#c0392b}.current-config{padding:20px 25px;background:#e8f4fd;border-bottom:1px solid #bee5eb}.current-config h4{color:#0c5460;margin-bottom:15px;font-size:1.1rem}.config-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.config-item{padding:8px 12px;background:#fff;border-radius:6px;border:1px solid #d1ecf1;font-size:.9rem}.config-item strong{color:#0c5460}.override-form{padding:25px}.form-section{margin-bottom:25px}.form-section h4{color:#2c3e50;margin-bottom:15px;font-size:1.1rem;border-bottom:1px solid #e9ecef;padding-bottom:8px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50}.form-group input{width:100%;padding:10px;border:2px solid #e9ecef;border-radius:6px;font-size:1rem;transition:border-color .3s ease}.form-group input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.form-group small{display:block;margin-top:5px;color:#7f8c8d;font-size:.85rem}.checkbox-label{display:flex;align-items:center;cursor:pointer;font-weight:600;color:#2c3e50;padding:10px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.checkbox-label input[type=checkbox]{width:auto;margin-right:10px;transform:scale(1.2)}.message{padding:12px 16px;border-radius:8px;margin-bottom:20px;font-weight:500}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.form-actions{display:flex;gap:10px;justify-content:center;padding-top:20px;border-top:1px solid #e9ecef;flex-wrap:wrap}.btn{padding:10px 20px;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.btn-primary{background:#3498db;color:#fff}.btn-primary:hover:not(:disabled){background:#2980b9;transform:translateY(-1px);box-shadow:0 3px 6px #3498db4d}.btn-secondary{background:#95a5a6;color:#fff}.btn-secondary:hover:not(:disabled){background:#7f8c8d;transform:translateY(-1px);box-shadow:0 3px 6px #95a5a64d}.loading{text-align:center;padding:40px;font-size:1.1rem;color:#7f8c8d}@media (max-width: 768px){.artisan-supplement-override{padding:10px}.config-info{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn{width:100%;justify-content:center}}.navbar{position:sticky;top:0;z-index:1000;background:#faf8f5f2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(168,181,160,.2);box-shadow:0 4px 8px #0000000d}.nav-background{overflow:visible}.nav-content{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:12px 20px;height:60px;width:100%;box-sizing:border-box;overflow:visible}@media (max-width: 480px){.nav-content{padding:12px 10px}}.nav-brand{display:flex;align-items:center;flex:0 1 auto;min-width:0;max-width:50%}.brand-link{display:flex;align-items:center;gap:10px;text-decoration:none;transition:var(--transition)}.brand-logo{width:32px;height:32px;background:#a8b5a0;border-radius:1rem;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .2s ease}.brand-logo svg{width:16px;height:16px}.brand-text{display:flex;flex-direction:column;gap:2px}.brand-name{font-family:Dancing Script,cursive;font-size:24px;font-weight:600;color:#a8b5a0;letter-spacing:.5px;transition:all .2s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.2}@media (max-width: 480px){.brand-name{font-size:20px}}.brand-subtitle{font-family:Cormorant Garamond,serif;font-size:14px;color:#d1a054;line-height:1;transition:all .2s ease}.brand-link:hover .brand-name{color:#9baa94}.brand-link:hover .brand-subtitle{color:#c18f45}.nav-menu{display:flex;gap:20px}.nav-link{display:flex;align-items:center;gap:6px;color:#3e3e3e;text-decoration:none;font-weight:500;font-family:Nunito Sans,sans-serif;padding:8px 12px;border-radius:1.5rem;transition:all .2s ease}.nav-link svg{width:16px;height:16px}.nav-link span{font-size:14px}.nav-link:hover{color:#a8b5a0;background:#a8b5a01a}.nav-link.admin-link{background:#d1a05426;border:1px solid rgba(209,160,84,.3);color:#d1a054}.nav-link.admin-link:hover{background:#d1a05433;border-color:#d1a05466;color:#c18f45}.nav-link.manual-link{background:linear-gradient(135deg,#10b9811a,#10b9810d);border:1px solid rgba(16,185,129,.2);color:#059669;cursor:pointer;border-radius:20px}.nav-link.manual-link:hover{background:linear-gradient(135deg,#10b98126,#10b98114);border-color:#10b9814d;color:#047857;transform:translateY(-1px);box-shadow:0 4px 12px #10b98133}.nav-link.sales-link{background:#10b9811a;color:#10b981;border:1px solid rgba(16,185,129,.2)}.nav-link.sales-link:hover{background:#10b98126;color:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b98133}.nav-user{position:relative;display:flex;align-items:center;gap:12px}.user-info{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 12px;border-radius:8px;transition:var(--transition);touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none}.user-info:hover{background:#a8b5a014}.user-avatar{width:28px;height:28px;background:#a8b5a0;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .2s ease}.user-avatar.admin-avatar{background:#d1a054;box-shadow:0 0 0 2px #d1a0544d}.user-avatar svg{width:14px;height:14px}.user-details{display:flex;flex-direction:column;gap:2px}.user-name-row{display:flex;align-items:center;gap:6px}.user-name{color:var(--text-primary);font-family:Dancing Script,cursive;font-weight:500;font-size:18px;line-height:1.2}.user-role{color:var(--text-muted);font-family:Dancing Script,cursive;font-size:14px;line-height:1.2}.admin-badge{display:flex;align-items:center;gap:2px;background:linear-gradient(135deg,#d1a054,#c18f45);color:#fff;font-family:Nunito Sans,sans-serif;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:2px 6px;border-radius:8px;box-shadow:0 1px 3px #d1a0544d;animation:adminGlow 2s ease-in-out infinite alternate}.admin-badge svg{width:8px;height:8px;filter:drop-shadow(0 0 2px rgba(255,255,255,.3))}@keyframes adminGlow{0%{box-shadow:0 1px 3px #d1a0544d}to{box-shadow:0 1px 6px #d1a05480}}.dropdown-arrow{width:14px;height:14px;color:var(--text-secondary);transition:var(--transition);margin-left:4px}.user-info:hover .dropdown-arrow{color:var(--border-focus)}.user-dropdown{position:absolute;top:100%;right:0;background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000001a;border:1px solid rgba(0,0,0,.1);min-width:220px;z-index:1001;padding:8px 0;margin-top:8px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.dropdown-item{width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;background:none;border:none;color:var(--text-primary);font-family:Nunito Sans,sans-serif;font-size:14px;font-weight:500;text-align:left;cursor:pointer;transition:var(--transition);touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none}.dropdown-item:hover{background:#a8b5a014;color:var(--border-focus)}.dropdown-item svg{width:16px;height:16px}.dropdown-item.logout-item{color:var(--error-color);border-top:1px solid rgba(0,0,0,.05);margin-top:8px;padding-top:12px}.dropdown-item.logout-item:hover{background:#e53e3e14;color:var(--error-color)}.logout-btn{display:flex;align-items:center;gap:6px;background:transparent;color:var(--error-color);border:1px solid rgba(229,62,62,.2);padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:var(--transition)}.logout-btn svg{width:14px;height:14px}.logout-btn:hover{background:#e53e3e14;border-color:#e53e3e4d}@media (max-width: 768px){.nav-content{padding:10px 16px;height:50px}.brand-text{font-size:18px}.brand-logo{width:28px;height:28px}.brand-logo svg{width:14px;height:14px}.nav-menu{gap:12px}.nav-link span,.user-details,.dropdown-arrow{display:none}.user-dropdown{min-width:180px;right:-20px}.dropdown-item{padding:10px 12px;font-size:13px}}@media (max-width: 480px){.nav-content{padding:8px 12px;height:45px}.brand-text{font-size:16px}.nav-menu{gap:8px}}.change-password-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.change-password-modal{background:#fff;border-radius:12px;padding:30px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.change-password-header{text-align:center;margin-bottom:30px}.change-password-header h2{color:#2d3748;margin:0 0 10px;font-size:1.5rem;font-family:Dancing Script,cursive}.change-password-header p{color:#718096;margin:0;font-size:.95rem}.change-password-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-weight:600;color:#2d3748;font-size:.9rem}.form-group input{padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:border-color .2s ease}.form-group small{color:#718096;font-size:.8rem;margin-top:4px}.error-message{background-color:#fed7d7;color:#c53030;padding:12px 16px;border-radius:8px;font-size:.9rem;border:1px solid #feb2b2}.form-actions{margin-top:10px}.btn-primary{width:100%;padding:12px 24px;background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 20px #a8b5a04d}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.change-password-footer{margin-top:20px;padding:15px;background-color:#fff5f5;border:1px solid #fed7d7;border-radius:8px;text-align:center}.change-password-footer p{color:#c53030;margin:0;font-size:.9rem;font-weight:500}@media (max-width: 640px){.change-password-modal{padding:20px;margin:20px}.change-password-header h2{font-size:1.3rem}}.manual-modal-overlay{position:fixed;inset:0;background-color:#000000bf;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.manual-modal{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.manual-header{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;padding:20px 30px;display:flex;justify-content:space-between;align-items:center;position:relative}.manual-header h1{font-family:Dancing Script,cursive;margin:0;font-size:1.8rem;font-weight:600;display:flex;align-items:center;gap:10px}.first-login-badge{background:#fff3;color:#fff;padding:4px 12px;border-radius:20px;font-size:.7rem;font-weight:500;border:1px solid rgba(255,255,255,.3)}.close-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:8px;border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#fff3;transform:scale(1.05)}.close-btn svg{width:18px;height:18px}.manual-content{display:flex;flex-direction:column;flex:1;overflow:hidden}.manual-navigation{background:#f8f9fa;border-bottom:1px solid #e9ecef;padding:0 20px}.section-tabs{display:flex;gap:5px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.section-tabs::-webkit-scrollbar{display:none}.section-tab{background:transparent;border:none;padding:12px 16px;font-size:.85rem;color:#6c757d;cursor:pointer;border-radius:8px 8px 0 0;transition:all .2s ease;white-space:nowrap;font-weight:500}.section-tab:hover{background:#a8b5a01a;color:#a8b5a0}.section-tab.active{background:#fff;color:#a8b5a0;border-bottom:2px solid #A8B5A0;font-weight:600}.manual-body{flex:1;overflow-y:auto;padding:30px}.section-content{max-width:none;line-height:1.6}.section-content h2{color:#2c3e50;font-size:1.5rem;margin-bottom:20px;font-weight:600;border-bottom:2px solid #f8f9fa;padding-bottom:10px}.section-content h3{color:#34495e;font-size:1.2rem;margin:20px 0 12px;font-weight:600}.section-content p{margin-bottom:16px;color:#5a6c7d}.section-content ul,.section-content ol{margin-bottom:20px;padding-left:20px}.section-content li{margin-bottom:8px;color:#5a6c7d;line-height:1.5}.section-content strong{color:#2c3e50;font-weight:600}.color-indicator{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px;vertical-align:middle}.color-indicator.green{background-color:#28a745}.color-indicator.orange{background-color:#fd7e14}.color-indicator.gray{background-color:#6c757d}.color-indicator.blue{background-color:#a8b5a0}.warning-box{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;padding:16px;margin:16px 0;color:#856404}.example-box{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px;margin:16px 0;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9rem;line-height:1.4}.manual-footer{background:#f8f9fa;border-top:1px solid #e9ecef;padding:20px 30px;display:flex;flex-direction:column;gap:15px}.navigation-buttons{display:flex;justify-content:space-between;align-items:center}.nav-btn{background:#a8b5a0;color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;font-weight:500}.nav-btn:hover:not(:disabled){background:#5a67d8;transform:translateY(-1px)}.nav-btn:disabled{background:#e9ecef;color:#6c757d;cursor:not-allowed;transform:none}.nav-btn svg{width:16px;height:16px}.page-indicator{color:#6c757d;font-weight:500;font-size:.9rem}.first-login-actions{text-align:center}.start-using-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:12px 30px;border-radius:25px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s ease;box-shadow:0 4px 12px #28a7454d}.start-using-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #28a74566}@media (max-width: 768px){.manual-modal-overlay{padding:10px}.manual-modal{max-height:95vh;border-radius:12px}.manual-header{padding:15px 20px}.manual-header h1{font-size:1.4rem}.first-login-badge{font-size:.6rem;padding:3px 8px}.section-tabs{padding:0 10px}.section-tab{padding:10px 12px;font-size:.8rem}.manual-body{padding:20px}.section-content h2{font-size:1.3rem}.section-content h3{font-size:1.1rem}.manual-footer{padding:15px 20px}.navigation-buttons{flex-direction:column;gap:10px}.nav-btn{width:100%;justify-content:center}.page-indicator{order:-1}}@media (max-width: 480px){.manual-header h1{font-size:1.2rem;flex-direction:column;gap:5px}.section-content{font-size:.9rem}.manual-body{padding:15px}}:root{--primary-color: #A8B5A0;--accent-color: #D1A054;--neutral-color: #E7E1D4;--base-color: #FAF8F5;--text-color: #3E3E3E;--surface-color: rgba(250, 248, 245, .98);--glass-border: rgba(168, 181, 160, .2);--shadow-light: 0 4px 8px rgba(0, 0, 0, .05);--shadow-medium: 0 8px 16px rgba(0, 0, 0, .08);--shadow-heavy: 0 12px 24px rgba(0, 0, 0, .1);--text-primary: #3E3E3E;--text-secondary: #5a5a5a;--text-muted: #888;--border-color: #E7E1D4;--border-focus: #A8B5A0;--error-color: #c62828;--success-color: #2e7d32;--border-radius: 1.5rem;--border-radius-small: 1rem;--transition: all .2s ease}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#faf8f5,#e7e1d4);position:relative;overflow:hidden}.login-background{position:relative;width:100%;max-width:420px;z-index:1}.login-background:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.05) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(168,181,160,.1) 0%,transparent 50%);animation:floating 6s ease-in-out infinite;z-index:-1}@keyframes floating{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(1deg)}}.login-card{background:var(--surface-color);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:1.5rem;padding:40px 32px;box-shadow:0 4px 8px #0000000d;position:relative;animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:32px}.logo-container{display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:16px}.logo-icon{width:48px;height:48px;background:#a8b5a0;border-radius:1rem;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:var(--shadow-light);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.logo-icon svg{width:24px;height:24px}.login-brand{display:flex;flex-direction:column;gap:4px;align-items:center}.login-brand-name{font-family:Dancing Script,cursive;font-size:28px;font-weight:600;color:#a8b5a0;letter-spacing:1px;margin:0}.login-brand-subtitle{font-family:Cormorant Garamond,serif;font-size:18px;color:#d1a054;margin:0;line-height:1}.login-subtitle{color:var(--text-secondary);font-size:16px;margin:0;line-height:1.5}.login-form{display:flex;flex-direction:column;gap:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:var(--text-primary);font-size:14px;font-weight:600;margin-bottom:4px}.input-container{position:relative;display:flex;align-items:center}.input-container input{width:100%;padding:16px;border:2px solid var(--border-color);border-radius:var(--border-radius-small);font-size:16px;color:var(--text-primary);background:#fff;transition:var(--transition);box-sizing:border-box}.input-container input[type=password],.input-container input[type=text]:not([name=email]){padding-right:48px}.input-container input:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #a8b5a01a}.input-container input::-moz-placeholder{color:var(--text-muted)}.input-container input::placeholder{color:var(--text-muted)}.password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);width:20px;height:20px;cursor:pointer;transition:var(--transition);z-index:2;padding:4px;border-radius:4px}.password-toggle:hover{color:var(--border-focus)}.password-toggle svg{width:100%;height:100%}.error-message{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#e53e3e1a;border:1px solid rgba(229,62,62,.2);border-radius:var(--border-radius-small);color:var(--error-color);font-size:14px;animation:shake .4s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.error-icon{width:16px;height:16px;flex-shrink:0}.error-icon svg{width:100%;height:100%}.success-message{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#38a1691a;border:1px solid rgba(56,161,105,.2);border-radius:var(--border-radius-small);color:var(--success-color);font-size:14px;animation:slideIn .4s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.success-icon{width:16px;height:16px;flex-shrink:0}.success-icon svg{width:100%;height:100%}.login-btn{background:#a8b5a0;color:#fff;border:none;padding:16px 24px;border-radius:1.5rem;font-size:16px;font-weight:600;font-family:Cormorant Garamond,serif;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden;box-shadow:0 4px 8px #0000000d}.login-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.login-btn:hover:not(:disabled):before{left:100%}.login-btn:hover:not(:disabled){background:#9baa94;transform:translateY(-2px);box-shadow:0 6px 12px #0000001a}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.loading-spinner{width:20px;height:20px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner svg{width:100%;height:100%}.loading-message{display:flex;align-items:center;justify-content:center;gap:12px;padding:24px 16px;color:var(--text-secondary);font-size:16px;text-align:center}.loading-message .loading-spinner{width:24px;height:24px}.login-footer{text-align:center;margin-top:8px}.forgot-link{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);text-decoration:none;font-size:14px;padding:8px 12px;border-radius:8px;transition:var(--transition)}.forgot-link:hover{color:var(--border-focus);background:#a8b5a00d}.forgot-link svg{width:16px;height:16px}@media (max-width: 480px){.login-container{padding:16px}.login-card{padding:32px 24px}.login-brand-name{font-size:24px}.login-subtitle{font-size:15px}.input-container input{padding:14px;font-size:16px}.input-container input[type=password],.input-container input[type=text]:not([name=email]){padding-right:44px}.login-btn{padding:14px 20px}}@media (max-width: 360px){.login-card{padding:24px 20px}.login-brand-name{font-size:22px}}.app-layout{min-height:100vh;background:linear-gradient(135deg,#a8b5a0,#9baa94);display:flex;flex-direction:column;position:relative}.app-layout:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.05) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.03) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(168,181,160,.08) 0%,transparent 50%);pointer-events:none;z-index:-1}.main-content{flex:1;max-width:100vw!important;margin:0 auto;width:100%!important;padding:24px 20px;position:relative;z-index:1}.main-content.login-centered{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 120px);padding:20px}@media (min-width: 1024px){.main-content{max-width:100vw!important;padding:24px 20px}}@media (min-width: 768px) and (max-width: 1024px){.main-content{max-width:100vw!important;padding:20px 16px}}@media (max-width: 768px){.main-content{max-width:100vw!important;padding:16px}.main-content.login-centered{min-height:calc(100vh - 100px);padding:16px}}@media (max-width: 480px){.main-content{padding:12px}.main-content.login-centered{min-height:calc(100vh - 80px);padding:12px}}.maintenance-container{min-height:100vh;background:linear-gradient(135deg,#a8b5a0,#9baa94);display:flex;align-items:center;justify-content:center;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.maintenance-content{background:#fff;border-radius:16px;padding:40px;max-width:500px;width:100%;text-align:center;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.maintenance-icon{font-size:64px;margin-bottom:24px;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.maintenance-content h1{color:#1f2937;font-size:32px;font-weight:700;margin-bottom:16px}.maintenance-message{color:#6b7280;font-size:18px;line-height:1.6;margin-bottom:32px}.maintenance-details{background:#f9fafb;border-radius:8px;padding:20px;margin-bottom:24px;text-align:left}.maintenance-details h3{color:#374151;font-size:18px;font-weight:600;margin-bottom:12px;text-align:center}.maintenance-details ul{list-style:none;padding:0;margin:0}.maintenance-details li{color:#6b7280;font-size:16px;position:relative;padding:6px 0 6px 24px}.maintenance-details li:before{content:"⚙️";position:absolute;left:0;top:6px}.maintenance-contact{background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;padding:20px;margin-bottom:24px}.maintenance-contact h3{color:#1e40af;font-size:16px;font-weight:600;margin-bottom:8px}.maintenance-contact p{color:#1e40af;font-size:14px;margin:0}.maintenance-footer{border-top:1px solid #e5e7eb;padding-top:20px;margin-top:20px}.maintenance-footer p{color:#6b7280;font-size:14px;margin:0;line-height:1.5}@media (max-width: 640px){.maintenance-content{padding:24px;margin:20px}.maintenance-content h1{font-size:24px}.maintenance-message{font-size:16px}.maintenance-icon{font-size:48px}}.my-sales-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.my-sales-page{max-width:1200px;margin:0 auto;padding:2rem}.my-sales-content{background:linear-gradient(135deg,#a8b5a0,#9baa94);border-radius:20px;box-shadow:0 25px 50px #0000004d;max-width:1200px;width:100%;max-height:90vh;overflow-y:auto;position:relative}.my-sales-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid rgba(255,255,255,.2);background:#fffffff2;border-radius:20px 20px 0 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-actions{display:flex;align-items:center;gap:1rem}.excel-download-btn{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;border:none;padding:.6rem 1.2rem;border-radius:1em;font-size:.95rem;font-weight:600;font-family:Nunito Sans,sans-serif;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 8px #0000001a}.excel-download-btn:hover{background:linear-gradient(135deg,#9baa94,#8a9a84);transform:translateY(-2px);box-shadow:0 4px 12px #a8b5a04d}.excel-download-btn:active{transform:translateY(0);box-shadow:0 2px 6px #a8b5a033}.my-sales-header h2{margin:0;background:linear-gradient(135deg,#a8b5a0,#9baa94);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.8rem;font-weight:600;font-family:Dancing Script,cursive}.close-btn{background:#ef4444;color:#fff;border:none;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:50%;transition:all .3s ease;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#dc2626;transform:scale(1.1)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#6c757d}.loading-spinner{width:48px;height:48px;border:4px solid #e9ecef;border-top:4px solid #A8B5A0;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.error-message{background:#f8d7da;color:#721c24;padding:1rem 2rem;border:1px solid #f5c6cb;border-radius:6px;margin:1rem 2rem}.filters-section{display:flex;gap:1rem;padding:1.5rem 2rem;background:#fffffff2;border-bottom:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-weight:600;color:#495057;font-size:.9rem}.filter-group select{padding:.5rem;border:2px solid #e5e7eb;border-radius:8px;background:#fff;font-size:.9rem;min-width:120px;transition:all .3s ease}.filter-group select:hover{border-color:#a8b5a0;box-shadow:0 2px 8px #a8b5a026}.stats-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;padding:1.5rem 2rem;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffffe6;border-radius:12px;border:1px solid rgba(255,255,255,.3);box-shadow:0 4px 12px #0000001a;transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.stat-icon{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;border-radius:10px;box-shadow:0 4px 8px #a8b5a04d}.stat-content{flex:1}.stat-label{font-size:.8rem;color:#6c757d;font-weight:500;margin-bottom:.25rem}.stat-value{font-size:1.1rem;font-weight:700;color:#2c3e50}.sales-list{padding:1.5rem 2rem;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sales-list h3{margin:0 0 1rem;background:linear-gradient(135deg,#a8b5a0,#9baa94);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.4rem;font-weight:600;font-family:Dancing Script,cursive}.empty-state{text-align:center;padding:3rem;color:#6c757d}.empty-icon{font-size:3rem;margin-bottom:1rem}.sales-table{overflow-x:auto;border:1px solid rgba(255,255,255,.3);border-radius:12px;box-shadow:0 4px 12px #0000001a;background:#ffffffe6}.sales-table table{width:100%;border-collapse:collapse;font-size:.9rem}.sales-table th{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;padding:.75rem;text-align:left;font-weight:600;border-bottom:2px solid rgba(255,255,255,.2)}.sales-table td{padding:.75rem;border-bottom:1px solid rgba(255,255,255,.2);vertical-align:top;transition:background-color .2s ease}.sales-table tr:hover td{background-color:#a8b5a00d}.description-cell{max-width:300px}.sale-description{display:flex;align-items:center;gap:.5rem}.photo-indicator{font-size:.8rem;opacity:.7}.sale-photo-thumbnail{width:40px;height:40px;-o-object-fit:cover;object-fit:cover;border-radius:4px;cursor:pointer;border:1px solid #e9ecef;transition:all .2s ease}.sale-photo-thumbnail:hover{transform:scale(1.1);box-shadow:0 4px 8px #00000026;border-color:#a8b5a0}.price-cell,.commission-cell,.net-cell{text-align:right;font-weight:600;font-family:Courier New,monospace}.payment-cell{text-align:center}.payment-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.8rem;font-weight:600}.payment-badge.cb{background:#d4edda;color:#155724}.payment-badge.especes{background:#fff3cd;color:#856404}@media (max-width: 768px){.my-sales-content{margin:.5rem;max-height:95vh}.my-sales-header{padding:1rem}.my-sales-header h2{font-size:1.2rem}.filters-section{flex-direction:column;gap:.5rem;padding:1rem}.filter-group select{min-width:auto}.stats-section{grid-template-columns:repeat(2,1fr);gap:.5rem;padding:1rem}.stat-card{padding:.75rem}.stat-icon{width:32px;height:32px;font-size:1.2rem}.stat-value{font-size:1rem}.sales-list{padding:1rem}.sales-table{font-size:.8rem}.sales-table th,.sales-table td{padding:.5rem .25rem}.description-cell{max-width:150px}}@media (max-width: 480px){.stats-section{grid-template-columns:1fr}.sales-table{font-size:.75rem}.sales-table th,.sales-table td{padding:.25rem .125rem}.description-cell{max-width:100px}.sale-description{flex-direction:column;align-items:flex-start;gap:.25rem}.sale-photo-thumbnail{width:32px;height:32px}}.home-page{min-height:100vh;background:linear-gradient(135deg,#a8b5a0,#9baa94);display:flex;align-items:center;justify-content:center;padding:20px}.home-container{max-width:1200px;width:100%;background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;overflow:hidden}.welcome-section{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;padding:40px;text-align:center}.welcome-section h1{font-family:Dancing Script,cursive;font-size:2.5rem;font-weight:700;margin:0 0 10px;text-shadow:0 2px 4px rgba(0,0,0,.1)}.welcome-subtitle{font-family:Nunito Sans,sans-serif;font-size:1.2rem;opacity:.9;margin:0}.activity-overview{padding:40px;background:#faf8f580;border-bottom:1px solid rgba(168,181,160,.1)}.activity-overview h2{font-family:Dancing Script,cursive;font-size:1.8rem;color:#3e3e3e;margin:0 0 30px;text-align:center;font-weight:600}.activity-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px;max-width:900px;margin:0 auto}.activity-stat-card{background:#fff;border-radius:16px;padding:30px 25px;text-align:center;box-shadow:0 4px 8px #0000000d;border:1px solid rgba(168,181,160,.2);transition:all .3s ease}.activity-stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a;border-color:#a8b5a0}.stat-value{font-size:2.2rem;font-weight:700;color:#3e3e3e;font-family:Nunito Sans,sans-serif;line-height:1;margin-bottom:10px}.stat-label{font-size:.75rem;font-weight:600;color:#5a5a5a;text-transform:uppercase;letter-spacing:.5px;font-family:Nunito Sans,sans-serif;margin-bottom:5px}.stat-month-above{font-size:1rem;font-weight:600;color:#d1a054;font-family:Nunito Sans,sans-serif;margin-bottom:10px;text-transform:uppercase;letter-spacing:1px}.stat-month{font-size:.9rem;font-weight:600;color:#d1a054;font-family:Nunito Sans,sans-serif;margin-top:5px}.stat-period{font-size:.85rem;font-weight:500;color:#888;font-family:Nunito Sans,sans-serif;margin-top:5px}.choice-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:30px;padding:40px}.choice-card{background:#fff;border:2px solid #e5e7eb;border-radius:16px;padding:30px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:300px}.choice-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#a8b5a0,#9baa94);transform:scaleX(0);transition:transform .3s ease}.choice-card:hover:before{transform:scaleX(1)}.choice-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001a;border-color:#a8b5a0}.planning-card:hover{border-color:#a8b5a0;box-shadow:0 20px 40px #a8b5a026}.sales-card:hover{border-color:#10b981;box-shadow:0 20px 40px #10b98126}.card-icon{width:60px;height:60px;background:linear-gradient(135deg,#a8b5a0,#9baa94);border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:#fff}.planning-card .card-icon{background:linear-gradient(135deg,#a8b5a0,#9baa94)}.sales-card .card-icon{background:linear-gradient(135deg,#10b981,#059669)}.card-icon svg{width:32px;height:32px}.card-content h3{font-family:Nunito Sans,sans-serif;font-size:1.5rem;font-weight:700;margin:0 0 15px;color:#1f2937}.card-content p{font-family:Nunito Sans,sans-serif;color:#6b7280;margin:0 0 20px;line-height:1.6}.card-content ul{list-style:none;padding:0;margin:0}.card-content li{font-family:Nunito Sans,sans-serif;color:#4b5563;margin:8px 0;padding-left:20px;position:relative}.card-content li:before{content:"✓";position:absolute;left:0;color:#10b981;font-weight:700}.card-arrow{position:absolute;top:30px;right:30px;width:40px;height:40px;background:#a8b5a01a;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#a8b5a0;transition:all .3s ease}.choice-card:hover .card-arrow{background:#a8b5a0;color:#fff;transform:translate(5px)}.quick-actions{background:#f9fafb;padding:30px 40px;border-top:1px solid #e5e7eb}.quick-actions h3{font-family:Dancing Script,cursive;font-size:1.3rem;font-weight:600;margin:0 0 20px;color:#1f2937;text-align:center}.quick-buttons{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.quick-btn{font-family:Nunito Sans,sans-serif;background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:12px 24px;font-size:1rem;font-weight:500;color:#4b5563;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.quick-btn:hover{border-color:#a8b5a0;color:#a8b5a0;transform:translateY(-2px);box-shadow:0 8px 16px #0000001a}.choice-card.loading{opacity:.7;cursor:wait}.choice-card.disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #dee2e6}.choice-card.disabled:hover{transform:none;box-shadow:0 4px 12px #0000001a}.choice-card.disabled .card-icon{opacity:.5}.choice-card.disabled .card-arrow{opacity:.3}.access-info{margin:12px 0;padding:8px 12px;border-radius:6px;background:#0000000d}.access-badge{font-family:Nunito Sans,sans-serif;display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;margin-right:8px}.access-badge.access-granted{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.access-badge.access-permanence{background:#e6f9e6;color:#218838;border:1px solid #b7e4b7}.access-badge.access-authorization{background:#d1a0541a;color:#c18f45;border:1px solid rgba(209,160,84,.3)}.access-badge.access-admin{background:#e6f9e6;color:#218838;border:1px solid #b7e4b7}.access-badge.access-denied{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.access-reason{font-family:Nunito Sans,sans-serif;font-size:13px;color:#6c757d;font-style:italic}.disabled-list{opacity:.6}.disabled-list li{color:#6c757d}.loading-spinner{width:24px;height:24px;border:2px solid #e9ecef;border-top:2px solid #A8B5A0;border-radius:50%;animation:spin 1s linear infinite}.quick-btn.disabled{opacity:.6;cursor:not-allowed;background:#e9ecef;color:#6c757d}.quick-btn.disabled:hover{background:#e9ecef;transform:none}@media (max-width: 768px){.home-page{padding:10px}.welcome-section{padding:30px 20px}.welcome-section h1{font-size:2rem}.choice-cards{grid-template-columns:1fr;gap:20px;padding:20px}.choice-card{padding:25px;min-height:250px}.quick-actions{padding:20px}.quick-buttons{flex-direction:column;align-items:center}.quick-btn{width:100%;max-width:300px;justify-content:center}}@media (max-width: 480px){.welcome-section h1{font-size:1.8rem}.welcome-subtitle{font-size:1rem}.choice-card{padding:20px}.card-content h3{font-size:1.3rem}}@media (max-width: 768px){.access-info{padding:6px 10px;margin:8px 0}.access-badge{font-size:11px;padding:3px 6px}.access-reason{font-size:12px}}@media (max-width: 480px){.access-info{padding:4px 8px;margin:6px 0}.access-badge{font-size:10px;padding:2px 4px;margin-right:6px}.access-reason{font-size:11px}}.photo-capture-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.photo-capture-modal{background:#fff;border-radius:12px;max-width:500px;width:100%;max-height:90vh;overflow:hidden;box-shadow:0 20px 40px #0000004d;animation:modalSlideIn .3s ease-out}.photo-capture-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.photo-capture-header h3{margin:0;font-size:18px;font-weight:600;color:#111827}.photo-capture-content{padding:24px;position:relative}.upload-mode{text-align:center}.upload-mode p{margin:0 0 24px;color:#374151;font-size:16px}.upload-section{display:flex;justify-content:center}.upload-btn{padding:16px 32px;border:2px solid #8b5cf6;border-radius:8px;background:#fff;color:#7c3aed;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px;min-width:200px}.upload-btn:hover{border-color:#7c3aed;background:#faf5ff;color:#6d28d9;transform:translateY(-1px)}.upload-btn:active{transform:translateY(0)}.choice-mode{text-align:center}.choice-mode p{margin:0 0 24px;color:#374151;font-size:16px}.choice-buttons{display:flex;flex-direction:column;gap:12px}.choice-btn{padding:16px 24px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#374151;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.choice-btn:hover{border-color:#a8b5a0;background:#f0f9ff;color:#9baa94}.choice-btn:disabled{opacity:.6;cursor:not-allowed}.camera-btn{border-color:#10b981;color:#059669}.camera-btn:hover{border-color:#059669;background:#f0fdf4;color:#047857}.camera-mode{text-align:center}.camera-preview{margin-bottom:20px;border-radius:8px;overflow:hidden;background:#000;position:relative}.camera-video{width:100%;height:300px;-o-object-fit:cover;object-fit:cover}.camera-controls{display:flex;gap:12px;justify-content:center}.capture-btn{padding:12px 24px;background:#10b981;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.capture-btn:hover{background:#059669;transform:translateY(-1px)}.cancel-btn:hover{background:#4b5563}.preview-mode{text-align:center}.photo-preview{margin-bottom:20px;border-radius:8px;overflow:hidden;background:#f3f4f6;border:2px solid #e5e7eb}.preview-image{width:100%;height:300px;-o-object-fit:cover;object-fit:cover}.preview-controls{display:flex;gap:12px;justify-content:center}.confirm-btn{padding:12px 24px;background:#10b981;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.confirm-btn:hover{background:#059669;transform:translateY(-1px)}.retake-btn{padding:12px 24px;background:#f59e0b;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.retake-btn:hover{background:#d97706}.loading-overlay{position:absolute;inset:0;background:#ffffffe6;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10}.loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #A8B5A0;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.loading-overlay p{margin:0;color:#6b7280;font-size:14px}@media (max-width: 768px){.photo-capture-overlay{padding:10px}.photo-capture-modal{max-width:100%;max-height:95vh}.photo-capture-header{padding:16px 20px}.photo-capture-content{padding:20px}.camera-video,.preview-image{height:250px}.choice-buttons{gap:10px}.choice-btn{padding:14px 20px;font-size:15px}.camera-controls,.preview-controls{flex-direction:column;gap:10px}.capture-btn,.cancel-btn,.confirm-btn,.retake-btn{padding:14px 20px;font-size:15px}}@media (min-width: 768px) and (max-width: 1024px){.photo-capture-modal{max-width:600px}.camera-video,.preview-image{height:400px}.choice-btn{font-size:18px;padding:18px 28px}}.camera-unavailable{margin-top:10px;padding:8px;background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;text-align:center}.camera-unavailable small{color:#856404;font-size:.85em}.sales-form-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.sales-form-modal{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.sales-form-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#f9fafb;position:sticky;top:0;z-index:10}.sales-form-header h2{margin:0;font-size:20px;font-weight:600;color:#111827}.close-btn{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.close-btn:hover{background:#e5e7eb;color:#374151}.sales-form{padding:24px}.error-message{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.success-message{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#374151;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;transition:all .2s;box-sizing:border-box}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.calculation-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;margin-bottom:20px}.calc-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:14px}.calc-row.commission{color:#dc2626;font-weight:500}.calc-row.total{border-top:1px solid #e2e8f0;margin-top:8px;padding-top:12px;font-weight:600;font-size:16px;color:#059669}.photo-section{margin-top:8px}.add-photo-btn{width:100%;padding:16px;border:2px dashed #d1d5db;border-radius:8px;background:#f9fafb;color:#6b7280;font-size:16px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.add-photo-btn:hover:not(:disabled){border-color:#a8b5a0;background:#f0f9ff;color:#9baa94}.add-photo-btn:disabled{opacity:.6;cursor:not-allowed}.photo-preview{display:flex;align-items:center;gap:12px;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.preview-thumbnail{width:60px;height:60px;-o-object-fit:cover;object-fit:cover;border-radius:6px;border:1px solid #d1d5db}.remove-photo-btn{padding:8px 12px;background:#ef4444;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s}.remove-photo-btn:hover:not(:disabled){background:#dc2626}.remove-photo-btn:disabled{opacity:.6;cursor:not-allowed}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:32px;padding-top:20px;border-top:1px solid #e5e7eb}.cancel-btn{padding:12px 24px;background:#6b7280;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.cancel-btn:hover:not(:disabled){background:#4b5563}.cancel-btn:disabled{opacity:.6;cursor:not-allowed}.submit-btn{padding:12px 24px;background:#10b981;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.submit-btn:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.sales-form-overlay{padding:10px}.sales-form-modal{max-width:100%;max-height:95vh}.sales-form-header{padding:16px 20px}.sales-form{padding:20px}.form-row{grid-template-columns:1fr;gap:0}.form-actions{flex-direction:column;gap:10px}.cancel-btn,.submit-btn{width:100%;padding:14px 20px;font-size:15px}.form-group input,.form-group select,.form-group textarea{font-size:16px}}@media (min-width: 768px) and (max-width: 1024px){.sales-form-modal{max-width:700px}.form-group input,.form-group select,.form-group textarea{font-size:16px}.add-photo-btn{font-size:18px;padding:18px}}@media screen and (min-width: 768px) and (max-width: 1024px){.sales-form-container{max-width:800px;margin:0 auto;padding:2rem}.form-group input,.form-group select,.form-group textarea{font-size:16px;padding:12px 16px;min-height:48px}.form-group label{font-size:16px;margin-bottom:8px}.camera-button{min-height:60px;font-size:18px;padding:16px 24px}.submit-button{min-height:60px;font-size:18px;padding:16px 32px}.photo-capture-container{max-width:600px;margin:0 auto}.camera-preview{max-height:400px;border-radius:12px}.capture-button{width:80px;height:80px;border-radius:50%;font-size:24px}}@media screen and (min-width: 1024px) and (orientation: landscape){.sales-form-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1200px}.photo-section{grid-column:2;grid-row:1 / span 3}.form-section{grid-column:1}}@media (hover: none) and (pointer: coarse){.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:3px solid #A8B5A0;outline-offset:2px}.camera-button:active,.submit-button:active{transform:scale(.95)}}.sales-page{padding:20px;max-width:100vw!important;margin:0 auto;width:100%!important}.sales-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;background:linear-gradient(135deg,#a8b5a0,#9baa94);border-radius:12px;color:#fff;box-shadow:0 4px 12px #a8b5a04d}.header-content h1{font-family:Dancing Script,cursive;margin:0 0 .5rem;font-size:2.2rem;font-weight:700}.header-content p{margin:0;opacity:.9;font-size:1rem}.new-sale-btn{background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3);padding:12px 20px;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease;display:flex;align-items:center;gap:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.new-sale-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-2px)}.new-sale-btn svg{width:18px;height:18px}.sales-header .header-content p{font-size:1.1em;color:#666;margin-top:.5rem}.sales-header .header-content p:has(span){background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;padding:.5rem 1rem;border-radius:8px;display:inline-block;margin-top:.5rem;font-weight:500}.stats-section{margin:2rem 0;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;width:100%;max-width:100%;box-sizing:border-box}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;width:100%;max-width:100%;box-sizing:border-box;justify-items:stretch;align-items:stretch;grid-auto-columns:minmax(0,1fr)}.stat-card{display:flex;flex-direction:column;align-items:stretch;justify-content:center;padding:1.5rem;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:10px;transition:transform .2s ease;width:100%;box-sizing:border-box}.stat-card:hover{transform:translateY(-2px)}.stat-icon{font-size:2rem;margin-right:1rem}.stat-content{width:100%;display:flex;flex-direction:column}.stat-content h3{margin:0;font-size:.9rem;color:#666;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.stat-value{margin:.5rem 0 0;font-size:1.5rem;font-weight:700;color:#333}@media (max-width: 1024px){.stat-content h3{font-size:.95rem;font-weight:700}.stat-value{font-size:1.6rem;font-weight:700}}.filters-section{margin:2rem 0;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a}.filters-section h3{margin:0 0 1rem;color:#333;font-size:1.2rem}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;align-items:end}.filter-group{display:flex;flex-direction:column}.filter-group label{margin-bottom:.5rem;font-weight:500;color:#555}.filter-group input,.filter-group select{padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem}.filter-actions{display:flex;align-items:end}.clear-filters-btn{background:#f44336;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-size:1rem;transition:background .2s ease}.clear-filters-btn:hover{background:#d32f2f}.sales-list-section{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a}.sales-list-section h3{font-size:1.2rem;font-weight:600;margin:0 0 20px;color:#1f2937}.error-message{background:#ffebee;color:#c62828;padding:1rem;border-radius:6px;margin-bottom:1rem;border-left:4px solid #f44336}.loading-message{text-align:center;padding:40px;color:#6b7280;font-size:1.1rem}.empty-state{text-align:center;padding:60px 20px;color:#6b7280}.empty-icon{font-size:4rem;margin-bottom:20px}.empty-state h4{font-size:1.3rem;font-weight:600;margin:0 0 10px;color:#374151}.empty-state p{margin:0 0 30px;font-size:1.1rem}.empty-action-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;padding:12px 24px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.empty-action-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #10b9814d}.feature-preview{background:#f8fafc;border-radius:8px;padding:20px;margin:20px 0;border:1px solid #e2e8f0}.feature-preview h5{font-size:1.1rem;font-weight:600;margin:0 0 15px;color:#374151}.feature-preview ul{list-style:none;padding:0;margin:0}.feature-preview li{color:#4b5563;margin:8px 0;padding-left:0;font-size:1rem}.sales-history{margin-top:2rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a}.sales-history h3{font-family:Dancing Script,cursive;margin:0 0 1.5rem;color:#333;font-size:1.3rem;display:flex;align-items:center;gap:.5rem}.no-sales{text-align:center;padding:3rem 1rem;color:#666}.no-sales p{font-size:1.1rem;margin:0}.sales-table-container{overflow-x:auto;border-radius:8px;border:1px solid #e0e0e0}.sales-table{width:100%;border-collapse:collapse;background:#fff}.sales-table th{background:#f8f9fa;padding:1rem;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #e0e0e0}.sales-table td{padding:1rem;border-bottom:1px solid #f0f0f0;vertical-align:middle}.sales-table tr:hover{background:#f8f9fa}.description-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.price-cell{font-family:Courier New,monospace;font-weight:600;text-align:right}.net-price{color:#10b981;font-weight:700}.payment-badge{padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:500;display:inline-block}.payment-badge.cb{background:#e3f2fd;color:#1976d2}.payment-badge.especes{background:#f3e5f5;color:#7b1fa2}.action-buttons{display:flex;gap:.5rem}.view-photo-btn{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .3s ease;display:flex;align-items:center;gap:6px;box-shadow:0 2px 8px #a8b5a04d}.view-photo-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #a8b5a066;background:linear-gradient(135deg,#5a67d8,#6b46c1)}.sale-photo-thumbnail{width:40px;height:40px;border-radius:6px;-o-object-fit:cover;object-fit:cover;cursor:pointer;transition:transform .3s ease}.sale-photo-thumbnail:hover{transform:scale(1.2)}.no-photo{color:#9ca3af;font-style:italic}@media (min-width: 1024px){.sales-page{padding:20px;max-width:98vw}.stats-section{width:100%!important;max-width:100%!important}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:2rem;width:100%!important;max-width:100%!important;grid-auto-columns:minmax(0,1fr)!important}.sales-header{padding:2.5rem}.header-content h1{font-size:2.2rem}}@media (min-width: 768px) and (max-width: 1024px){.sales-page{padding:15px;max-width:98vw}.stats-section{width:100%!important;max-width:100%!important}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1.2rem;width:100%!important;max-width:100%!important;grid-auto-columns:minmax(0,1fr)!important}.sales-header{padding:2rem}.header-content h1{font-size:2rem}}@media (max-width: 768px){.sales-page{padding:0!important;max-width:100%!important;width:100%!important;margin:0!important}.sales-header{flex-direction:column;gap:20px;text-align:center}.header-content h1{font-size:1.8rem}.stats-section{padding:.75rem!important;margin:1rem 0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;display:block!important}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.75rem!important;width:100%!important;max-width:none!important;box-sizing:border-box!important;justify-items:stretch!important;align-items:stretch!important;grid-auto-columns:minmax(0,1fr)!important}.stat-card{width:100%!important;max-width:100%!important;padding:1rem!important;min-height:auto!important}.stat-icon{font-size:1.5rem}.stats-section .stat-card .stat-content h3,.stat-card .stat-content h3,.stat-content h3{font-size:.8rem!important;font-weight:700!important;color:#333!important;line-height:1.3!important;margin:0 0 .4rem!important;letter-spacing:.3px!important;text-transform:uppercase!important}.stats-section .stat-card .stat-content .stat-value,.stat-card .stat-content .stat-value,.stat-content .stat-value,p.stat-value{font-size:1.35rem!important;font-weight:700!important;color:#000!important;line-height:1.2!important;margin:0!important;letter-spacing:0!important}.filters-grid{grid-template-columns:1fr}.sales-table-container{font-size:.9rem}.sales-table th,.sales-table td{padding:.75rem .5rem}.description-cell{max-width:120px}}@media (max-width: 480px){.sales-page{padding:0!important;max-width:100%!important;width:100%!important;margin:0!important;box-sizing:border-box!important}.stats-section{padding:.75rem!important;margin:.75rem 0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;display:flex!important;justify-content:center!important}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.75rem!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;justify-items:stretch!important;align-items:stretch!important;grid-auto-columns:minmax(0,1fr)!important}.stat-card{padding:.9rem!important;min-height:auto!important;border-radius:10px;width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important}.stats-section .stat-card .stat-content h3,.stat-card .stat-content h3,.stat-content h3{font-size:.75rem!important;font-weight:700!important;color:#333!important;letter-spacing:.3px!important;margin:0 0 .35rem!important;line-height:1.25!important;text-transform:uppercase!important}.stats-section .stat-card .stat-content .stat-value,.stat-card .stat-content .stat-value,.stat-content .stat-value,p.stat-value{font-size:1.25rem!important;font-weight:700!important;color:#000!important;line-height:1.2!important;margin:0!important;letter-spacing:0!important}.sales-table{font-size:.7rem}.sales-table th,.sales-table td{padding:6px 8px}.payment-badge{min-width:60px;font-size:.7rem}}.sales-access-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding:2rem;text-align:center}.sales-access-loading .loading-spinner{width:48px;height:48px;border:4px solid #e9ecef;border-top:4px solid #A8B5A0;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.sales-access-loading p{color:#6c757d;font-size:16px;margin:0}.sales-access-denied{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:2rem}.access-denied-content{max-width:500px;text-align:center;background:#fff;padding:2rem;border-radius:12px;box-shadow:0 8px 32px #0000001a;border:1px solid #e9ecef}.access-denied-icon{width:64px;height:64px;margin:0 auto 1.5rem;color:#dc3545;opacity:.7}.access-denied-icon svg{width:100%;height:100%}.access-denied-content h2{color:#dc3545;margin:0 0 1rem;font-size:24px;font-weight:600}.access-message{color:#6c757d;font-size:16px;margin:0 0 1.5rem;line-height:1.5}.access-info-box{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem;margin:1.5rem 0;text-align:left}.access-info-box h3{color:#495057;margin:0 0 1rem;font-size:18px;font-weight:600}.access-info-box ul{margin:0;padding-left:1.5rem;color:#6c757d}.access-info-box li{margin:.5rem 0;line-height:1.4}.back-button{background:#a8b5a0;color:#fff;border:none;padding:12px 24px;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s ease;margin-top:1rem}.back-button:hover{background:#c18f45}.back-button:active{transform:translateY(1px)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.sales-access-loading,.sales-access-denied{padding:1rem}.access-denied-content{padding:1.5rem}.access-denied-icon{width:48px;height:48px;margin-bottom:1rem}.access-denied-content h2{font-size:20px}.access-message{font-size:14px}.access-info-box{padding:1rem}.access-info-box h3{font-size:16px}.back-button{padding:10px 20px;font-size:14px}}@media (max-width: 480px){.access-denied-content{padding:1rem}.access-denied-icon{width:40px;height:40px}.access-denied-content h2{font-size:18px}.access-message{font-size:13px}.access-info-box{padding:.75rem}.access-info-box h3{font-size:15px}.access-info-box ul{padding-left:1.25rem}.back-button{padding:8px 16px;font-size:13px}}.my-cotisations{max-width:1000px;margin:0 auto;padding:20px}.my-cotisations-header{text-align:center;margin-bottom:30px}.my-cotisations-header h1{color:#2d3748;margin-bottom:10px;font-size:2.5rem;font-family:Dancing Script,cursive}.my-cotisations-header p{color:#718096;font-size:1.1rem}.etageres-info-section{margin-bottom:30px}.etageres-card{background:#fff;color:#3e3e3e;border-radius:16px;padding:32px;box-shadow:0 4px 12px #00000014;border:1px solid rgba(168,181,160,.2);position:relative;overflow:hidden}.etageres-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;position:relative;z-index:1}.etageres-header h3{margin:0;font-size:1.8rem;font-weight:600;font-family:Dancing Script,cursive}.etageres-badge{background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;padding:10px 20px;border-radius:12px;font-weight:600;font-size:1rem;font-family:Nunito Sans,sans-serif;border:none;box-shadow:0 2px 8px #a8b5a04d}.etageres-badge.no-etageres{background:#ffc1074d;border-color:#ffc10780;color:#fbbf24}.etageres-details{position:relative;z-index:1}.etageres-price{display:flex;justify-content:space-between;align-items:center;background:#a8b5a014;padding:20px;border-radius:12px;margin-bottom:20px;border:1px solid rgba(168,181,160,.2)}.price-label{font-weight:600;font-size:1rem;color:#3e3e3e;font-family:Nunito Sans,sans-serif}.price-value{font-size:1.8rem;font-weight:700;color:#a8b5a0;font-family:Nunito Sans,sans-serif}.etageres-description{line-height:1.6}.etageres-description p{margin:8px 0;font-size:1rem;color:#3e3e3e;font-family:Nunito Sans,sans-serif}.etageres-description strong{color:#a8b5a0;font-weight:600}.year-selector{display:flex;align-items:center;gap:15px;margin-bottom:30px;justify-content:center}.year-selector label{font-weight:600;color:#4a5568}.year-selector select{padding:10px 15px;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;background:#fff;transition:all .2s ease}.year-selector select:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a}.summary-section{margin-bottom:30px}.summary-grid{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.summary-card{background:#fff;padding:12px 16px;border-radius:8px;box-shadow:0 2px 4px #0000001a;text-align:center;min-width:80px;flex:1;max-width:120px}.summary-value{font-size:1.2rem;font-weight:700;color:#2d3748;margin-bottom:4px}.summary-label{font-size:.8rem;color:#718096;font-weight:500}.cotisations-list{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;overflow:hidden;margin-bottom:30px}.cotisations-list h3{padding:20px;margin:0;color:#2d3748;border-bottom:1px solid #e2e8f0}.no-cotisations{padding:40px;text-align:center;color:#718096;font-style:italic}.cotisations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;padding:20px}.cotisation-card{border:1px solid #e2e8f0;border-radius:8px;padding:20px;transition:all .2s ease}.cotisation-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.cotisation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.cotisation-header h4{margin:0;color:#2d3748;font-size:1.2rem}.cotisation-details{display:flex;flex-direction:column;gap:10px}.detail-item{display:flex;justify-content:space-between;align-items:center}.detail-label{font-weight:600;color:#4a5568;font-size:.9rem}.detail-value{color:#2d3748;font-size:.9rem}.status-badge{padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase}.status-pending{background:#fef3c7;color:#92400e}.status-paid{background:#c6f6d5;color:#2f855a}.status-overdue{background:#fed7d7;color:#c53030}.status-unknown{background:#e2e8f0;color:#4a5568}.info-section{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:25px}.info-section h3{color:#2d3748;margin:0 0 15px;font-size:1.3rem}.info-content p{color:#4a5568;margin:0 0 10px;line-height:1.5}.info-content p:last-child{margin-bottom:0}.error-message{padding:15px 20px;border-radius:8px;margin-bottom:20px;font-weight:500;background:#fed7d7;color:#c53030;border:1px solid #feb2b2}.loading{display:flex;justify-content:center;align-items:center;height:200px;font-size:1.2rem;color:#718096}@media (max-width: 768px){.summary-grid{grid-template-columns:repeat(2,1fr)}.cotisations-grid{grid-template-columns:1fr}.cotisation-header{flex-direction:column;align-items:flex-start;gap:10px}.detail-item{flex-direction:column;align-items:flex-start;gap:5px}.my-cotisations-header h1{font-size:2rem}.year-selector{flex-direction:column;gap:10px}.etageres-header{flex-direction:column;align-items:flex-start;gap:12px}.etageres-price{flex-direction:column;align-items:flex-start;gap:8px}.price-value{font-size:1.3rem}}.privacy-policy{min-height:100vh;background:linear-gradient(135deg,#a8b5a0,#9baa94);padding:20px 0}.privacy-container{max-width:800px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000001a;padding:40px;line-height:1.6}.privacy-container h1{color:#2c3e50;text-align:center;margin-bottom:10px;font-size:2.5em;font-weight:700;font-family:Dancing Script,cursive}.last-updated{text-align:center;color:#7f8c8d;font-style:italic;margin-bottom:30px;font-size:.9em}.privacy-container section{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #ecf0f1}.privacy-container section:last-child{border-bottom:none}.privacy-container h2{color:#34495e;font-size:1.5em;margin-bottom:15px;font-weight:600;border-left:4px solid #3498db;padding-left:15px}.privacy-container h3{color:#2c3e50;font-size:1.2em;margin:20px 0 10px;font-weight:600}.privacy-container p{margin-bottom:15px;color:#2c3e50}.privacy-container ul{margin:15px 0;padding-left:20px}.privacy-container li{margin-bottom:8px;color:#2c3e50}.privacy-container strong{color:#34495e;font-weight:600}@media (max-width: 768px){.privacy-container{margin:10px;padding:20px}.privacy-container h1{font-size:2em}.privacy-container h2{font-size:1.3em}}.consent-banner{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(135deg,#a8b5a0,#9baa94);color:#fff;z-index:9999;box-shadow:0 -4px 20px #00000026;animation:slideUp .5s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.consent-content{max-width:1200px;margin:0 auto;padding:20px;display:flex;align-items:center;gap:20px}.consent-text{flex:1}.consent-text h3{margin:0 0 10px;font-size:1.2em;font-weight:600}.consent-text p{margin:8px 0;font-size:.9em;line-height:1.4;opacity:.95}.consent-text strong{font-weight:600}.consent-actions{display:flex;gap:10px;flex-shrink:0}.consent-btn{padding:10px 20px;border:none;border-radius:6px;font-weight:600;font-size:.9em;cursor:pointer;transition:all .2s ease;white-space:nowrap}.consent-btn.decline{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.3)}.consent-btn.decline:hover{background:#fff3}.consent-btn.customize{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.4)}.consent-btn.customize:hover{background:#ffffff4d}.consent-btn.accept{background:#27ae60;color:#fff;border:1px solid #27ae60}.consent-btn.accept:hover{background:#229954;transform:translateY(-1px)}@media (max-width: 768px){.consent-content{flex-direction:column;text-align:center;gap:15px}.consent-actions{width:100%;justify-content:center}.consent-btn{padding:12px 16px;font-size:.85em}}@media (max-width: 480px){.consent-actions{flex-direction:column;width:100%}.consent-btn{width:100%}}.cash-register{max-width:1200px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.action-buttons{margin-top:20px;display:flex;gap:10px;justify-content:center}.page-header{text-align:center;margin-bottom:30px}.page-header h1{color:#2c3e50;margin-bottom:10px;font-size:2.5rem}.page-header p{color:#7f8c8d;font-size:1.1rem}.alert{padding:15px;border-radius:8px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;font-weight:500}.alert-error{background-color:#fee;color:#c53030;border:1px solid #feb2b2}.alert-success{background-color:#f0fff4;color:#2f855a;border:1px solid #9ae6b4}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:inherit;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.tabs{display:flex;border-bottom:3px solid #e2e8f0;margin-bottom:30px;background:#f8fafc;border-radius:8px 8px 0 0;padding:5px}.tab{background:none;border:none;padding:18px 30px;cursor:pointer;font-size:1.1rem;color:#64748b;border-bottom:3px solid transparent;transition:all .3s ease;border-radius:6px;font-weight:500;min-width:120px;text-align:center}.tab:hover{color:#2c3e50;background-color:#fff;transform:translateY(-2px);box-shadow:0 2px 8px #0000001a}.tab.active{color:#fff;background-color:#a8b5a0;border-bottom-color:#a8b5a0;font-weight:700;box-shadow:0 4px 12px #a8b5a04d;transform:translateY(-2px)}.tab-content{min-height:400px}.today-status{max-width:600px;margin:0 auto}.status-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:30px;box-shadow:0 4px 6px -1px #0000001a}.status-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.status-label{font-size:1.5rem;font-weight:600}.status-blue{color:#a8b5a0}.status-green{color:#10b981}.status-red{color:#ef4444}.status-icon{font-size:2rem}.amounts{display:grid;gap:15px;margin-bottom:25px}.amount-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #f1f5f9}.amount-item:last-child{border-bottom:none}.amount-item .label{color:#64748b;font-weight:500}.amount-item .value{font-weight:600;font-size:1.1rem}.amount-item .value.positive{color:#10b981}.amount-item .value.negative{color:#ef4444}.amount-item .value.neutral{color:#6b7280}.stats-section{margin-bottom:30px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:20px}.stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:20px;text-align:center;box-shadow:0 2px 4px -1px #0000001a}.stat-value{font-size:2rem;font-weight:700;color:#2c3e50;margin-bottom:5px}.stat-label{color:#64748b;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.journal-section{margin-bottom:30px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.journal-table{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px -1px #0000001a}.journal-table table{width:100%;border-collapse:collapse}.journal-table th{background-color:#f8fafc;padding:15px;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e2e8f0}.journal-table td{padding:15px;border-bottom:1px solid #f1f5f9}.journal-table tr:last-child td{border-bottom:none}.journal-table tr:hover{background-color:#f8fafc}.difference{font-weight:600}.difference.positive{color:#10b981}.difference.negative{color:#ef4444}.difference.neutral{color:#6b7280}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:4px;font-size:.85rem;font-weight:500}.status-badge.status-blue{background-color:#dbeafe;color:#1e40af}.status-badge.status-green{background-color:#d1fae5;color:#065f46}.status-badge.status-red{background-color:#fee2e2;color:#991b1b}.empty-state{text-align:center;padding:60px 20px;color:#64748b}.btn{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:5px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:#a8b5a0;color:#fff}.btn-primary:hover:not(:disabled){background-color:#9baa94}.btn-secondary{background-color:#6b7280;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#4b5563}.btn-warning{background-color:#f59e0b;color:#fff}.btn-warning:hover:not(:disabled){background-color:#d97706}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:12px;padding:0;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #e2e8f0}.modal-header h3{margin:0;color:#2c3e50}.modal form{padding:25px}.form-group label{display:block;margin-bottom:5px;font-weight:500;color:#374151}.form-group input{width:100%;padding:10px;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;transition:border-color .2s ease}.form-group input:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:25px}.loading{text-align:center;padding:40px;color:#64748b;font-style:italic}.recheck-badge{display:inline-block;background-color:#e3f2fd;color:#9baa94;padding:2px 6px;border-radius:4px;font-size:.75em;margin-left:8px;font-weight:500}.btn-sm{padding:4px 8px;font-size:.8em;border-radius:4px}.btn-outline{background-color:transparent;border:1px solid #A8B5A0;color:#a8b5a0}.btn-outline:hover{background-color:#a8b5a0;color:#fff}.form-help{display:block;color:#64748b;font-size:.8em;margin-top:4px}.alert{padding:12px 16px;border-radius:6px;margin:15px 0;font-size:.9em}.alert-warning{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}@media (max-width: 768px){.cash-register{padding:15px}.page-header h1{font-size:2rem}.tabs{flex-wrap:wrap}.tab{padding:12px 20px;font-size:.9rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.journal-table{overflow-x:auto}.journal-table table{min-width:600px}.modal{width:95%;margin:20px}.modal-actions{flex-direction:column}.btn{width:100%}}:root{--primary-color: #A8B5A0;--primary-dark-color: #9BAA94;--primary-light-color: #B8C3B1;--primary-color-rgb: 168, 181, 160;--success-color: #10b981;--success-color-rgb: 16, 185, 129;--warning-color: #f59e0b;--warning-color-rgb: 245, 158, 11;--danger-color: #ef4444;--danger-color-rgb: 239, 68, 68;--info-color: #06b6d4;--info-color-rgb: 6, 182, 212;--background-color: #FAF8F5;--background-light: #FAF8F5;--background-dark: #E7E1D4;--surface-color: #FAF8F5;--text-color: #3E3E3E;--text-muted: #5a5a5a;--text-light: #888;--border-color: #E7E1D4;--border-color-light: #F5F3EF;--border-color-dark: #D1C9BB;--hover-background: rgba(168, 181, 160, .1);--hover-color: #A8B5A0;--button-primary-background: #A8B5A0;--button-primary-color: #ffffff;--button-primary-hover-background: #9BAA94;--button-secondary-background: #f1f5f9;--button-secondary-color: #475569;--button-secondary-border: #e2e8f0;--button-secondary-hover-background: #e2e8f0;--button-secondary-hover-color: #334155;--shadow-small: 0 1px 2px rgba(0, 0, 0, .05);--shadow-medium: 0 4px 6px rgba(0, 0, 0, .1);--shadow-large: 0 10px 15px rgba(0, 0, 0, .1);--shadow-hover: 0 4px 12px rgba(0, 0, 0, .15);--border-radius: 1.5rem;--border-radius-small: 1rem;--border-radius-large: 1.5rem;--transition: all .2s ease;--transition-fast: all .15s ease;--transition-slow: all .3s ease}*{margin:0;padding:0;box-sizing:border-box}html{-webkit-overflow-scrolling:touch;overflow-x:hidden}body{-webkit-overflow-scrolling:touch;overflow-x:hidden;position:relative;font-family:Nunito Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#faf8f5;color:#3e3e3e}.App{display:flex;flex-direction:column;min-height:100vh;-webkit-overflow-scrolling:touch;overflow-x:hidden}.main-content{flex-grow:1;width:100%;max-width:100%;box-sizing:border-box;-webkit-overflow-scrolling:touch;overflow-x:hidden}.loading{display:flex;justify-content:center;align-items:center;height:100vh;font-size:1.5em;color:#333}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:16px;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#a8b5a0;box-shadow:0 0 0 3px #a8b5a01a}button,.btn{background:#a8b5a0;color:#fff;border:none;border-radius:1.5rem;padding:.6em 1.2em;font-size:1em;font-weight:600;font-family:Cormorant Garamond,serif;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 8px #0000000d;margin:.2em .4em;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:hover,.btn:hover{background:#9baa94;transform:translateY(-2px) scale(1.03);box-shadow:0 6px 12px #0000001a}button:active,.btn:active{background:#9baa94;transform:scale(.98)}.delete-btn{background:#f44336;color:#fff}.delete-btn:hover{background:#b71c1c}.modal-backdrop{position:fixed;inset:0;background:#2c3e5073;z-index:1000;display:flex;align-items:center;justify-content:center}.modal{background:#fff;border-radius:1em;box-shadow:0 8px 32px #2c3e502e;padding:2em 1.5em 1.5em;max-width:95vw;min-width:320px;max-width:420px;margin:auto;position:relative;z-index:1001;animation:modalIn .25s cubic-bezier(.4,2,.6,1) both}@keyframes modalIn{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:none}}@media (max-width: 600px){.modal{padding:1em .5em;min-width:90vw;max-width:98vw}}@media (min-width: 768px) and (max-width: 1024px){.modal{width:80vw;max-width:600px;max-height:85vh;margin:7.5vh auto}.modal-content{padding:2rem}.form-group input,.form-group select,.form-group textarea{font-size:16px;padding:14px}.form-group{margin-bottom:1.5rem}.form-group label{font-size:1.1em;margin-bottom:.5rem}}.error-message{background-color:#ffebee;color:#c62828;padding:12px;border-radius:6px;margin-bottom:20px;border:1px solid #ffcdd2}.success-message{background-color:#e8f5e8;color:#2e7d32;padding:12px;border-radius:6px;margin-bottom:20px;border:1px solid #c8e6c9}.fc{font-size:1em}.planning-container{width:96vw;max-width:96vw;margin:0;padding-left:2vw;padding-right:2vw;padding-top:1rem;padding-bottom:1rem;box-sizing:border-box}.fc{width:100%!important;min-width:0}@media (min-width: 768px) and (max-width: 1024px){.planning-container{max-width:95vw;padding:1rem;margin:0 auto}.fc{font-size:1.1em}.fc-toolbar-title{font-size:1.4em}.fc-toolbar button{font-size:1em;padding:.8em 1.5em}.fc-daygrid-day{min-height:80px}.fc-daygrid-day-events{max-height:3.5em;overflow-y:auto}.fc-toolbar{flex-direction:row;gap:1rem;margin-bottom:1.5rem}.fc-toolbar-chunk{display:flex;align-items:center;gap:.5rem}}@media (max-width: 1300px){.planning-container{max-width:98vw;padding:.5rem}}@media (max-width: 900px){.planning-container{max-width:100vw;padding:.2rem}.fc{font-size:.9em}.fc-toolbar-title{font-size:1.1em}}@media (max-width: 600px){.planning-container{max-width:100vw;padding:.2rem}.fc{font-size:.8em}.fc-toolbar-title{font-size:1em}.fc-daygrid-day-events{max-height:2.5em;overflow-y:auto}}.planning-title{text-align:center;font-size:2.2rem;font-weight:700;margin-bottom:.5rem;color:#2d3a4a}.fc-daygrid-day{transition:background .18s,box-shadow .18s;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.fc-daygrid-day:hover{background:#e3f2fd;box-shadow:0 2px 8px #2196f31a;cursor:pointer}.fc-daygrid-day.fc-day-today{background:#fffde7!important;border:2px solid #ffb300!important}.fc-daygrid-day.fc-day-selected{outline:2px solid #1976d2!important;outline-offset:-2px}.fc-daygrid-day:focus{outline:2px solid #1976d2!important;outline-offset:-2px}@media (max-width: 900px){.fc{font-size:.9em}}@media (max-width: 600px){.fc{font-size:.8em}.fc-daygrid-day-events{max-height:2.5em;overflow-y:auto}}.toast{position:fixed;top:1.5rem;left:50%;transform:translate(-50%);min-width:220px;max-width:90vw;background:#fff;color:#222;border-radius:.7em;box-shadow:0 4px 24px #2c3e502e;padding:1em 2em;font-size:1.1em;font-weight:500;z-index:2000;opacity:.98;border-left:6px solid #A8B5A0;animation:toastIn .3s cubic-bezier(.4,2,.6,1) both}.toast-success{border-left-color:#4caf50}.toast-error{border-left-color:#f44336}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(-30px)}to{opacity:.98;transform:translate(-50%) translateY(0)}}.fc-day-fulfilled{background:#eafaf1!important}.fc-day-unfulfilled{background:#fff8e1!important}.fc-day-past-or-closed{background:#f5f5f5!important;color:#aaa!important}.fc-daygrid-day-frame{min-height:80px}.custom-day-badge{display:inline-block;min-width:2.1em;min-height:2.1em;line-height:2.1em;text-align:center;font-size:1.1em;font-weight:700;border-radius:50%;margin:.2em auto .1em;box-shadow:0 1px 4px #2c3e501a;border:2px solid #fff;background:#ffffffb3;color:#222;transition:background .18s,color .18s}.badge-fulfilled,.badge-unfulfilled,.badge-closed{background:none!important;color:#222!important}
