.totals-calendar-view[data-v-483fe25e]{display:flex;flex-direction:column;gap:1rem;height:100%}.calendar-container[data-v-483fe25e]{position:relative;flex:1;display:flex;flex-direction:column}.view-type-selector[data-v-483fe25e]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#fff;border:2px solid #e9ecef;border-radius:.5rem;gap:1rem}.selector-label[data-v-483fe25e]{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#495057}.selector-label svg[data-v-483fe25e]{color:#17a2b8}.selector-buttons[data-v-483fe25e]{display:flex;gap:.5rem}.btn-view-type[data-v-483fe25e]{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .875rem;border:2px solid #e9ecef;background:#fff;border-radius:.375rem;color:#6c757d;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-view-type[data-v-483fe25e]:hover{border-color:#17a2b8;color:#17a2b8;background:#f0f9fb;transform:translateY(-1px)}.btn-view-type.active[data-v-483fe25e]{border-color:#17a2b8;background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;box-shadow:0 2px 8px rgba(23,162,184,.25)}.btn-view-type.active svg[data-v-483fe25e]{color:#fff}.calendar-controls[data-v-483fe25e]{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #e9ecef;border-radius:.5rem;gap:1rem;flex-wrap:wrap}.controls-left[data-v-483fe25e]{display:flex;flex-direction:column;gap:.25rem}.controls-title[data-v-483fe25e]{margin:0;font-size:1rem;font-weight:600;color:#17a2b8;display:flex;align-items:center;gap:.375rem}.title-icon[data-v-483fe25e]{color:#17a2b8}.period-info[data-v-483fe25e]{font-size:.8125rem;color:#6c757d;font-weight:500}.controls-center[data-v-483fe25e]{display:flex;align-items:center;gap:.75rem}.btn-nav[data-v-483fe25e]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:2px solid #17a2b8;background:#fff;border-radius:.375rem;color:#17a2b8;cursor:pointer;transition:all .2s ease}.btn-nav[data-v-483fe25e]:hover{background:#17a2b8;color:#fff;transform:scale(1.05)}.date-range-inputs[data-v-483fe25e]{display:flex;align-items:center;gap:.5rem}.date-separator[data-v-483fe25e]{font-size:1rem;color:#6c757d;font-weight:600}.controls-right[data-v-483fe25e]{margin-left:auto}.btn-today[data-v-483fe25e]{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:2px solid #28a745;background:#fff;border-radius:.375rem;color:#28a745;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-today[data-v-483fe25e]:hover{background:#28a745;color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px rgba(40,167,69,.25)}.calendar-grid[data-v-483fe25e]{flex:1;display:flex;flex-direction:column;background:#fff;border:2px solid #e9ecef;border-radius:.5rem;overflow:hidden;min-height:204px;max-height:204px}.calendar-header[data-v-483fe25e]{display:grid;background:linear-gradient(135deg,#17a2b8,#138496);border-bottom:2px solid #117a8b;flex-shrink:0}.calendar-grid.view-DAY .calendar-header[data-v-483fe25e]{grid-template-columns:repeat(7,1fr)}.calendar-grid.view-WEEK .calendar-header[data-v-483fe25e]{grid-template-columns:repeat(8,1fr)}.calendar-grid.view-PAY_PERIOD .calendar-header[data-v-483fe25e]{grid-template-columns:repeat(6,1fr)}.header-cell[data-v-483fe25e]{padding:.75rem .5rem;text-align:center;border-right:1px solid hsla(0,0%,100%,.2);display:flex;flex-direction:column;gap:.25rem}.header-cell[data-v-483fe25e]:last-child{border-right:none}.header-label[data-v-483fe25e]{font-size:.8125rem;font-weight:700;color:#fff;text-transform:capitalize;letter-spacing:.025em}.calendar-grid.view-WEEK .header-label[data-v-483fe25e]{font-size:.75rem}.calendar-grid.view-WEEK .header-sublabel[data-v-483fe25e]{font-size:.625rem}.calendar-grid.view-WEEK .cell-date[data-v-483fe25e]{display:none}.header-sublabel[data-v-483fe25e]{font-size:.6875rem;color:hsla(0,0%,100%,.9);font-weight:500}.calendar-row[data-v-483fe25e]{display:grid;min-height:140px;flex:1}.calendar-grid.view-DAY .calendar-row[data-v-483fe25e]{grid-template-columns:repeat(7,1fr)}.calendar-grid.view-WEEK .calendar-row[data-v-483fe25e]{grid-template-columns:repeat(8,1fr)}.calendar-grid.view-PAY_PERIOD .calendar-row[data-v-483fe25e]{grid-template-columns:repeat(6,1fr)}.calendar-cell[data-v-483fe25e]{border:1px solid #e9ecef;border-top:none;border-left:none;cursor:pointer;transition:all .2s ease;position:relative;display:flex;align-items:center;justify-content:center;padding:.75rem}.calendar-row:first-of-type .calendar-cell[data-v-483fe25e]{border-top:1px solid #e9ecef}.calendar-cell[data-v-483fe25e]:first-child{border-left:1px solid #e9ecef}.calendar-cell.empty[data-v-483fe25e]{background:#f8f9fa;cursor:not-allowed}.calendar-cell.available[data-v-483fe25e]{background:#fff}.calendar-cell.available[data-v-483fe25e]:hover{background:#e7f7f9;border-color:#17a2b8;transform:scale(1.02);z-index:1}.calendar-cell.current[data-v-483fe25e]{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:2px solid #ffc107;position:relative}.calendar-cell.current[data-v-483fe25e]:hover{background:linear-gradient(135deg,#ffe69c,#ffd54f);box-shadow:0 4px 12px rgba(255,193,7,.3)}.calendar-cell.empty.current[data-v-483fe25e]{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:2px solid #ffc107;cursor:not-allowed}.calendar-cell.empty.current .empty-indicator[data-v-483fe25e]{color:#856404;font-weight:500}.calendar-cell.empty.current[data-v-483fe25e]:before{content:"";position:absolute;top:.375rem;right:.375rem;width:12px;height:12px;background:#ffc107;border-radius:50%;box-shadow:0 0 0 2px rgba(255,193,7,.3);animation:currentPulse-483fe25e 2s infinite}@keyframes currentPulse-483fe25e{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.7}}.calendar-cell.selected[data-v-483fe25e]{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #28a745;box-shadow:0 0 0 3px rgba(40,167,69,.15);z-index:2}.calendar-cell.selected[data-v-483fe25e]:hover{box-shadow:0 0 0 4px rgba(40,167,69,.25)}.calendar-cell.current.selected[data-v-483fe25e]{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #28a745;box-shadow:0 0 0 3px rgba(40,167,69,.15),0 0 0 5px rgba(255,193,7,.2)}.calendar-cell.current.selected[data-v-483fe25e]:after{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border:2px solid #ffc107;border-radius:.25rem;pointer-events:none}.cell-content[data-v-483fe25e]{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:100%;height:100%;position:relative}.cell-current-badge[data-v-483fe25e]{position:absolute;top:-.5rem;right:-.5rem;color:#ffc107;font-size:1rem;animation:starPulse-483fe25e 2s infinite;z-index:2}@keyframes starPulse-483fe25e{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.cell-date[data-v-483fe25e]{font-size:.875rem;font-weight:600;color:#495057;text-align:center}.cell-balance[data-v-483fe25e]{display:flex;align-items:baseline;gap:.25rem;padding:.375rem .625rem;background:rgba(23,162,184,.1);border-radius:.25rem}.calendar-cell.selected .cell-balance[data-v-483fe25e]{background:rgba(40,167,69,.15)}.balance-value[data-v-483fe25e]{font-size:1.125rem;font-weight:700;color:#17a2b8;font-family:Courier New,monospace}.calendar-cell.selected .balance-value[data-v-483fe25e]{color:#28a745}.balance-unit[data-v-483fe25e]{font-size:.75rem;color:#6c757d;font-weight:500}.cell-checkmark[data-v-483fe25e]{position:absolute;bottom:.25rem;right:.25rem;color:#28a745;font-size:1.25rem;animation:checkPop-483fe25e .3s cubic-bezier(.68,-.55,.265,1.55)}@keyframes checkPop-483fe25e{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.cell-empty[data-v-483fe25e]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.empty-indicator[data-v-483fe25e]{font-size:1.5rem;color:#dee2e6;font-weight:300}.loading-overlay-calendar[data-v-483fe25e]{position:absolute;top:0;left:0;right:0;bottom:0;background:hsla(0,0%,100%,.95);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;z-index:100;border-radius:.5rem;animation:fadeIn-483fe25e .2s ease}.loading-spinner[data-v-483fe25e]{width:48px;height:48px;display:flex;align-items:center;justify-content:center}.loading-spinner .spinner-border[data-v-483fe25e]{width:48px;height:48px;border-width:4px}.loading-text[data-v-483fe25e]{margin:0;font-size:.9375rem;font-weight:600;color:#17a2b8;background:#fff;padding:.5rem 1rem;border-radius:.375rem;box-shadow:0 2px 8px rgba(0,0,0,.1);animation:pulse-text-483fe25e 1.5s infinite}@keyframes fadeIn-483fe25e{0%{opacity:0}to{opacity:1}}@keyframes pulse-text-483fe25e{0%,to{opacity:1}50%{opacity:.6}}.calendar-loading[data-v-483fe25e]{opacity:.4;pointer-events:none;filter:grayscale(.3);transition:all .3s ease}.calendar-cell.empty-selectable[data-v-483fe25e]{cursor:pointer}.cell-empty-badge[data-v-483fe25e]{display:none}.calendar-cell.empty-value[data-v-483fe25e]{background:repeating-linear-gradient(135deg,#fff,#fff 10px,#f8f9fa 0,#f8f9fa 20px);cursor:not-allowed;opacity:.6;position:relative}.calendar-cell.empty-value[data-v-483fe25e]:hover{background:repeating-linear-gradient(135deg,#fff,#fff 10px,#f8f9fa 0,#f8f9fa 20px);transform:none;border-color:#e9ecef}.calendar-cell.empty-value .cell-content[data-v-483fe25e]{filter:grayscale(.5)}.calendar-cell.empty-value .balance-value[data-v-483fe25e]{color:#adb5bd}.calendar-cell.empty-value .cell-balance[data-v-483fe25e]{background:rgba(173,181,189,.1)}.calendar-cell.empty-value[data-v-483fe25e]:before{content:"∅";position:absolute;top:.25rem;right:.25rem;font-size:.875rem;color:#adb5bd;z-index:2;opacity:.7}.calendar-cell.empty-value.current[data-v-483fe25e]{background:repeating-linear-gradient(135deg,#fff3cd,#fff3cd 10px,#ffeaa7 0,#ffeaa7 20px);border:2px solid #ffc107;opacity:.7}.calendar-cell.empty-value.current[data-v-483fe25e]:hover{background:repeating-linear-gradient(135deg,#fff3cd,#fff3cd 10px,#ffeaa7 0,#ffeaa7 20px);box-shadow:none}.calendar-cell.empty-value.current .balance-value[data-v-483fe25e]{color:#856404}.calendar-cell.empty-value[data-v-483fe25e]:after{content:"Total vide (non sélectionnable)";position:absolute;bottom:-2rem;left:50%;transform:translateX(-50%);background:rgba(173,181,189,.95);color:#fff;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:10}.calendar-cell.empty-value[data-v-483fe25e]:hover:after{opacity:1}.calendar-cell.disabled[data-v-483fe25e]{background:repeating-linear-gradient(135deg,#fff,#fff 10px,#f8f9fa 0,#f8f9fa 20px);cursor:not-allowed;opacity:.6;position:relative}.calendar-cell.disabled[data-v-483fe25e]:hover{background:repeating-linear-gradient(135deg,#fff,#fff 10px,#f8f9fa 0,#f8f9fa 20px);transform:none;border-color:#e9ecef}.calendar-cell.disabled .cell-content[data-v-483fe25e]{filter:grayscale(.5)}.calendar-cell.disabled .balance-value[data-v-483fe25e]{color:#adb5bd}.calendar-cell.disabled .cell-balance[data-v-483fe25e]{background:rgba(173,181,189,.1)}.calendar-cell.disabled[data-v-483fe25e]:before{content:"⊘";position:absolute;top:.25rem;right:.25rem;font-size:1rem;color:#adb5bd;z-index:2;opacity:.7}.calendar-cell.disabled.current[data-v-483fe25e]{background:repeating-linear-gradient(135deg,#fff3cd,#fff3cd 10px,#ffeaa7 0,#ffeaa7 20px);border:2px solid #ffc107;opacity:.7}.calendar-cell.disabled.current[data-v-483fe25e]:hover{background:repeating-linear-gradient(135deg,#fff3cd,#fff3cd 10px,#ffeaa7 0,#ffeaa7 20px);box-shadow:none}.calendar-cell.disabled.current .balance-value[data-v-483fe25e]{color:#856404}.calendar-cell.disabled[data-v-483fe25e]:after{content:"Total vide (non sélectionnable)";position:absolute;bottom:-2rem;left:50%;transform:translateX(-50%);background:rgba(173,181,189,.95);color:#fff;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:10}.calendar-cell.disabled[data-v-483fe25e]:hover:after{opacity:1}.calendar-cell.fenced[data-v-483fe25e]{cursor:not-allowed;opacity:.5;position:relative}.calendar-cell.fenced[data-v-483fe25e],.calendar-cell.fenced[data-v-483fe25e]:hover{background:repeating-linear-gradient(-45deg,#f8f9fa,#f8f9fa 10px,#e9ecef 0,#e9ecef 20px)}.calendar-cell.fenced[data-v-483fe25e]:hover{transform:none;border-color:#dee2e6}.calendar-cell.fenced .cell-content[data-v-483fe25e]{filter:grayscale(.8)}.calendar-cell.fenced .balance-value[data-v-483fe25e]{color:#6c757d;text-decoration:line-through}.calendar-cell.fenced .cell-balance[data-v-483fe25e]{background:rgba(108,117,125,.15)}.calendar-cell.fenced[data-v-483fe25e]:before{content:"🔒";position:absolute;top:.25rem;left:.25rem;font-size:1rem;z-index:2;opacity:.8}.calendar-cell.fenced.current[data-v-483fe25e]{background:repeating-linear-gradient(-45deg,#fff3cd,#fff3cd 10px,#ffeaa7 0,#ffeaa7 20px);border:2px solid #ffc107;opacity:.6}.calendar-cell.fenced.current[data-v-483fe25e]:hover{background:repeating-linear-gradient(-45deg,#fff3cd,#fff3cd 10px,#ffeaa7 0,#ffeaa7 20px);box-shadow:none}.calendar-cell.fenced-empty[data-v-483fe25e]:before{content:"🔒⊘";font-size:.875rem}.calendar-cell.fenced[data-v-483fe25e]:after{content:"Période clôturée (non modifiable)";position:absolute;bottom:-2rem;left:50%;transform:translateX(-50%);background:rgba(108,117,125,.95);color:#fff;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:10}.calendar-cell.fenced[data-v-483fe25e]:hover:after{opacity:1}.calendar-cell.fenced-empty[data-v-483fe25e]:after{content:"Période clôturée - Total vide"}.calendar-legend[data-v-483fe25e]{display:flex;align-items:center;justify-content:center;gap:1.5rem;padding:.75rem 1rem;background:#f8f9fa;border-radius:.375rem}.legend-item[data-v-483fe25e]{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:#495057;font-weight:500}.legend-color[data-v-483fe25e]{width:24px;height:16px;border-radius:.25rem;border:1px solid #dee2e6}.legend-color.current[data-v-483fe25e]{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-color:#ffc107}.legend-color.selected[data-v-483fe25e]{background:linear-gradient(135deg,#d4edda,#c3e6cb);border-color:#28a745}.legend-color.available[data-v-483fe25e]{background:#fff;border-color:#17a2b8}.legend-color.fenced[data-v-483fe25e]{background:repeating-linear-gradient(-45deg,#f8f9fa,#f8f9fa 4px,#e9ecef 0,#e9ecef 8px);border-color:#6c757d;opacity:.5}.legend-color.disabled[data-v-483fe25e]{background:repeating-linear-gradient(135deg,#fff,#fff 4px,#f8f9fa 0,#f8f9fa 8px);border-color:#adb5bd;opacity:.6}@media (max-width:1200px){.calendar-grid[data-v-483fe25e]{min-height:180px;max-height:none}.calendar-row[data-v-483fe25e]{min-height:120px}.calendar-controls[data-v-483fe25e]{flex-direction:column;align-items:stretch}.controls-center[data-v-483fe25e]{justify-content:center}.controls-right[data-v-483fe25e]{margin-left:0;display:flex;justify-content:center}.cell-balance[data-v-483fe25e]{padding:.25rem .5rem}.balance-value[data-v-483fe25e]{font-size:1rem}}@media (max-width:768px){.calendar-grid.view-DAY .calendar-header[data-v-483fe25e],.calendar-grid.view-DAY .calendar-row[data-v-483fe25e]{grid-template-columns:repeat(7,1fr)}.calendar-grid[data-v-483fe25e]{min-height:140px;max-height:none}.calendar-row[data-v-483fe25e]{min-height:80px}.header-label[data-v-483fe25e]{font-size:.75rem}.header-sublabel[data-v-483fe25e]{display:none}.cell-balance[data-v-483fe25e]{padding:.25rem .375rem}.balance-value[data-v-483fe25e]{font-size:.875rem}.controls-left[data-v-483fe25e]{align-items:center;text-align:center}.date-range-inputs[data-v-483fe25e]{flex-direction:column;width:100%;gap:.5rem}.date-separator[data-v-483fe25e]{transform:rotate(90deg)}.btn-today[data-v-483fe25e]{width:100%;justify-content:center}}@media (max-width:1200px) and (orientation:landscape){.calendar-grid[data-v-483fe25e]{min-height:160px;max-height:none}.calendar-row[data-v-483fe25e]{min-height:100px}}