*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;color:#333;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6}.btn{border-radius:6px;font-weight:500;transition:all .2s ease-in-out}.btn:hover{box-shadow:0 2px 8px #00000026;transform:translateY(-1px)}.shadow-sm-custom{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)}.shadow-custom{box-shadow:0 .5rem 1rem #00000026}.login-container{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.login-card{background:#fff;border:none;border-radius:12px;box-shadow:0 10px 25px #0000001a}.sidebar{background:#2c3e50;display:flex;flex-direction:column;min-height:100vh;transition:all .3s}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;min-height:0}.sidebar-logout{border-top:1px solid #ffffff1f;margin-top:auto}.sidebar .nav-link{border-radius:0;color:#ecf0f1;padding:1rem 1.5rem;transition:all .2s}.sidebar .nav-link:hover{background-color:#34495e;color:#fff}.sidebar .nav-link.active{background-color:#3498db;color:#fff}.app-header{align-items:center;background:#fff;border-bottom:1px solid #dee2e6;display:flex;gap:1rem;justify-content:space-between;min-height:48px;padding:.5rem 1rem;position:sticky;top:0;z-index:1000}.app-header-center,.app-header-left,.app-header-right{align-items:center;display:flex;gap:.75rem}.app-header-center{flex:1 1;flex-wrap:wrap;justify-content:center}.app-header-icon-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#6c757d;cursor:pointer;display:inline-flex;justify-content:center;min-height:36px;min-width:36px;padding:.25rem}.app-header-icon-btn:hover{background:#f1f3f5;color:#343a40}.app-header-store-name{color:#495057;font-size:.875rem}.app-header-id-badge{background:#f1f3f5;border:1px solid #dee2e6;border-radius:4px;color:#495057;display:inline-block;font-size:.8rem;padding:.15rem .5rem}.app-header-status-btn{align-items:center;background:#fff3e6;border:none;border-radius:8px;color:#e67e22;cursor:pointer;display:inline-flex;height:36px;justify-content:center;transition:background-color .2s,box-shadow .2s;width:36px}.app-header-status-btn:hover{background:#ffe8cc;box-shadow:0 2px 6px #e67e2233}.app-header-status-btn.is-busy{background:#fff3e6}.app-header-status-icon-spin{animation:app-header-spin .9s linear infinite}@keyframes app-header-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.app-header-right{position:relative}.app-header-right-actions{align-items:center;display:flex;gap:.5rem}.app-header-dropdown-anchor{position:relative}.app-header-unhandled-btn{align-items:center;background:#fff5f5;border:none;border-radius:8px;color:#dc3545;cursor:pointer;display:inline-flex;height:36px;justify-content:center;position:relative;transition:background-color .2s,box-shadow .2s;width:36px}.app-header-unhandled-btn:hover{background:#ffe3e3;box-shadow:0 2px 6px #dc354533}.app-header-count-badge,.nav-count-badge{align-items:center;background:#dc3545;border-radius:999px;color:#fff;display:inline-flex;font-size:.65rem;font-weight:700;height:1.1rem;justify-content:center;line-height:1;min-width:1.1rem;padding:0 .25rem}.app-header-count-badge{font-size:.6rem;height:1rem;min-width:1rem;position:absolute;right:-4px;top:-4px}.app-header-unhandled-dropdown{right:0}.app-header-unhandled-item{align-items:flex-start;background:#0000;border:none;cursor:pointer;display:flex;gap:.75rem;padding:.75rem 1rem;text-align:left;width:100%}.app-header-unhandled-item:hover{background:#f1f3f5}.app-header-unhandled-item.is-alt{background:#f8f9fa}.app-header-unhandled-item.is-alt:hover{background:#f1f3f5}.app-header-unhandled-color{border-radius:50%;flex-shrink:0;height:.65rem;margin-top:.35rem;width:.65rem}.app-header-unhandled-item-text{flex:1 1;min-width:0}.app-header-unhandled-title{align-items:baseline;color:#212529;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:space-between}.app-header-unhandled-time{color:#495057;font-size:.8rem;font-weight:500}.app-header-unhandled-meta{align-items:center;color:#6c757d;display:flex;font-size:.75rem;gap:.5rem;justify-content:space-between;margin-top:.15rem}.app-header-unhandled-status{font-weight:600}.app-header-dropdown{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 8px 24px #0000001f;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);width:min(360px,calc(100vw - 2rem));z-index:1200}.app-header-dropdown-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:.75rem 1rem}.app-header-dropdown-body{max-height:320px;overflow-y:auto}.app-header-dropdown-empty{font-size:.875rem;padding:1.25rem 1rem;text-align:center}.app-header-dropdown-item{align-items:flex-start;display:flex;gap:.75rem;padding:.75rem 1rem}.app-header-dropdown-item.is-alt{background:#f8f9fa}.app-header-dropdown-item-text{min-width:0}.app-header-dropdown-message{color:#212529;font-size:.875rem;line-height:1.4}.app-header-dropdown-time{color:#6c757d;font-size:.75rem;margin-top:.15rem}.app-header-dropdown-footer{background:#fafafa;border-top:1px solid #eee;padding:.75rem 1rem}.app-header-notify-label{align-items:center;color:#495057;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;margin:0;-webkit-user-select:none;user-select:none}@media (max-width:767.98px){.app-header-center{justify-content:flex-start}.app-header-store-name{display:none}}.main-content{background-color:#ecf0f1;min-height:calc(100vh - 48px);padding:2rem}.card{border:none;border-radius:10px;box-shadow:0 2px 10px #0000001a;transition:all .3s}.card:hover{box-shadow:0 4px 20px #00000026;transform:translateY(-2px)}.table{background:#fff;border-radius:8px}.table thead th{background-color:#34495e;border:none;color:#fff;font-weight:600}.table tbody tr:hover{background-color:#f8f9fa}.booking-slot{background-color:#e3f2fd;color:#1976d2;font-size:.75rem;padding:.25rem .5rem;transition:all .2s}.booking-slot:hover{background-color:#bbdefb;transform:scale(1.05)}.error-item{background-color:#ffebee;border-left:4px solid #f44336;border-radius:4px;margin-bottom:.5rem;padding:1rem}.error-resolved{background-color:#e8f5e8;border-left-color:#4caf50}.settings-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:2rem}.settings-section h5{border-bottom:2px solid #ecf0f1;color:#2c3e50;margin-bottom:1rem;padding-bottom:.5rem}.text-primary-custom{color:#3498db!important}.text-success-custom{color:#27ae60!important}.text-danger-custom{color:#e74c3c!important}.text-warning-custom{color:#f39c12!important}@media (max-width:768px){.sidebar{height:100vh;min-height:100vh;position:fixed;transform:translateX(-100%);transition:transform .3s ease-in-out;width:250px;z-index:1100}.sidebar.show{transform:translateX(0)}.sidebar-overlay{background-color:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1050}.app-header{z-index:1200}.app-header,.app-header-dropdown-anchor,.app-header-right,.app-header-right-actions{overflow:visible}.app-header-dropdown{left:.75rem;max-height:calc(100vh - 4rem);position:fixed;right:.75rem;top:52px;width:auto;z-index:1300}.app-header-dropdown-body{max-height:min(320px,calc(100vh - 8rem))}.main-content{padding:1rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease-out}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}.save-btn:disabled{background-color:#6c757d;cursor:not-allowed}.save-btn.loading{color:#0000;position:relative}.save-btn.loading:after{animation:spin 1s linear infinite;border:2px solid #fff;border-radius:50%;border-top-color:#0000;content:"";height:16px;left:50%;margin-left:-8px;margin-top:-8px;position:absolute;top:50%;width:16px}@keyframes spin{to{transform:rotate(1turn)}}.booking-slot{align-items:center;background-color:#007bff;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:11px;justify-content:center;margin:2px;min-height:30px;padding:4px 8px;transition:background-color .2s}.booking-slot:hover{background-color:#0056b3}.empty-slot{border:1px dashed #ccc;border-radius:4px;cursor:pointer;margin:2px;min-height:30px;transition:background-color .2s}.empty-slot:hover{background-color:#f8f9fa}.time-table{max-height:calc(100vh - 300px);overflow:auto;position:relative;width:100%}.time-table table{min-width:1200px}.time-table td,.time-table th{max-width:80px;min-width:80px;padding:8px 4px;text-align:center;vertical-align:middle}.time-table thead th{background-color:#34495e;position:sticky;top:0;z-index:8}th.current-time-indicator{background-color:#ffeaa7!important;border:2px solid #fdcb6e!important;color:#836200!important}td.current-time-indicator{overflow:visible;position:relative}td.current-time-indicator:before{background-color:#ffeaa759;content:"";inset:0;pointer-events:none;position:absolute;z-index:5}td.current-time-indicator:after{background-color:#ffd68a!important;bottom:0!important;content:""!important;left:50%!important;pointer-events:none!important;position:absolute!important;top:0!important;transform:translateX(-50%)!important;width:10px!important;z-index:1!important}.time-table thead th.woman-name-column{left:0;z-index:12}.woman-name-column{background-color:#fff;border-right:2px solid #dee2e6;font-weight:500;left:0;max-width:160px!important;min-width:160px!important;overflow:visible;position:sticky;text-align:left;z-index:6}.woman-name-cell{align-items:center;display:flex;gap:8px;padding:4px 6px 4px 4px;position:relative}.woman-photo-wrap{flex-shrink:0;position:relative}.woman-photo{border-radius:6px;display:block;height:40px;object-fit:cover;width:40px}.woman-photo-placeholder{align-items:center;background-color:#e9ecef;color:#6c757d;display:flex;font-size:16px;font-weight:600;justify-content:center}.woman-info-text{flex:1 1;min-width:0}.woman-name-text{display:block;font-size:13px;line-height:1.3;word-break:break-all}.woman-schedule-time{color:#666;font-size:11px;line-height:1.2;margin-top:2px;white-space:nowrap}.woman-booking-count-badge{align-items:center;background-color:#009ad7cc;border-radius:50%;display:flex;font-size:11px;font-weight:700;height:18px;justify-content:center;left:-4px;line-height:1;top:-4px;width:18px;z-index:2}.woman-booking-count-badge,.woman-tooltip{color:#fff;pointer-events:none;position:absolute}.woman-tooltip{background-color:#212529eb;border-radius:4px;box-shadow:0 2px 8px #00000026;font-size:10px;left:calc(100% + 6px);line-height:1.4;max-width:200px;min-width:120px;opacity:0;padding:6px 8px;top:50%;transform:translateY(-50%);transition:opacity .15s ease,visibility .15s ease;visibility:hidden;z-index:20}.woman-name-cell:hover .woman-tooltip{opacity:1;visibility:visible}.woman-tooltip-sites{margin-bottom:2px}.woman-tooltip-time{color:#ced4da}.dashboard-women-search{flex:0 1 320px;max-width:320px;min-width:220px}.date-navigation{gap:20px;margin-bottom:20px}.date-navigation,.date-navigation .btn{align-items:center;display:flex;justify-content:center}.date-navigation .btn{border-radius:50%;height:40px;width:40px}.date-display{font-size:1.2rem;font-weight:600;min-width:200px;text-align:center}.date-navigation-week{flex-wrap:wrap;gap:12px}.date-navigation-week .week-date-tabs{flex:1 1 auto;min-width:0}.week-date-tabs{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:8px;justify-content:center}.week-date-tab{background-color:#fff;border:1px solid #dee2e6;border-radius:8px;color:#212529;cursor:pointer;font-size:.95rem;font-weight:600;line-height:1.2;min-width:88px;padding:10px 12px 8px;position:relative;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.week-date-tab:hover{border-color:#009ad7}.week-date-tab.is-selected{background-color:#009ad7;border-color:#009ad7;color:#fff}.week-date-tab.is-selected.week-date-tab-weekday-saturday,.week-date-tab.is-selected.week-date-tab-weekday-sunday{color:#fff}.week-date-tab-weekday-saturday:not(.is-selected){color:#0d6efd}.week-date-tab-weekday-sunday:not(.is-selected){color:#dc3545}.week-date-tab-count{background-color:#009ad7;border-radius:999px;color:#fff;font-size:.75rem;font-weight:700;height:22px;line-height:22px;min-width:22px;padding:0 5px;position:absolute;right:-6px;text-align:center;top:-8px}.week-date-tab.is-selected .week-date-tab-count{background-color:#fff;color:#009ad7}.week-date-tab-label{display:block;white-space:nowrap}.booking-modal .modal-body{padding:30px}.booking-info{background-color:#f8f9fa;border-radius:8px;margin-bottom:20px;padding:20px}.booking-info-item{align-items:center;display:flex;margin-bottom:15px}.booking-info-label{font-weight:600;margin-right:10px;min-width:120px}.booking-info-value{flex:1 1}.cancel-btn{background-color:#dc3545;border:none;border-radius:6px;color:#fff;font-weight:500;margin-bottom:10px;padding:12px 30px;transition:background-color .2s;width:100%}.cancel-btn:hover{background-color:#c82333}.save-btn{background-color:#28a745;border:none;border-radius:6px;color:#fff;font-weight:500;margin-bottom:10px;padding:12px 30px;transition:background-color .2s;width:100%}.save-btn:hover{background-color:#218838}.modal-note{color:#6c757d;font-size:.9rem;line-height:1.4;margin-top:10px;text-align:center}.booking-progress-note{color:#0d6efd;font-size:.85rem}.booking-site-status-list{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:8px}.booking-site-chip{background-color:#f8f9fa;border:1px dashed #adb5bd;border-radius:4px;color:#6c757d;display:inline-block;font-size:.68rem;line-height:1.2;padding:2px 6px;white-space:nowrap}.booking-site-chip--pending{background-color:#f8f9fa;border-color:#adb5bd;color:#6c757d}.booking-site-chip--running{background-color:#fff8e1;border-color:#ffc107;color:#856404}.booking-site-chip--success{background-color:#e8f5e9;border-color:#28a745;color:#1b5e20}.booking-site-chip--error{background-color:#fdecea;border-color:#dc3545;color:#842029}.booking-site-chip--warning{background-color:#fff3e0;border-color:#fd7e14;color:#e65100}.booking-site-chip--skipped{background-color:#e9ecef;border-color:#6c757d;color:#495057}@media (max-width:768px){.time-table{max-height:calc(100vh - 260px)}.time-table td,.time-table th{font-size:.8rem;max-width:60px;min-width:60px}.woman-name-column{max-width:150px!important;min-width:150px!important}.woman-photo{height:32px;width:32px}.date-navigation{gap:10px}.date-display{font-size:1rem;min-width:150px}}.error-logs-container{max-height:600px;overflow-y:auto}.update-status-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.update-status-tab{background:#fff;border:1px solid #dee2e6;border-radius:999px;color:#495057;font-weight:600;padding:.55rem .9rem;transition:all .2s ease}.update-status-tab:hover{background:#f8f9fa}.update-status-tab.is-active{background:#0d6efd;border-color:#0d6efd;color:#fff}.update-status-alert-badge,.update-status-error-icon{align-items:center;background:#dc3545;border-radius:50%;color:#fff;display:inline-flex;font-size:.85rem;font-weight:700;height:1.25rem;justify-content:center;line-height:1;width:1.25rem}.booking-bar--highlight{animation:booking-bar-highlight-pulse .8s ease-in-out 3;box-shadow:0 0 0 2px #fff,0 0 0 4px #dc3545}@keyframes booking-bar-highlight-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.update-status-log-item{cursor:default}.update-status-detail-overlay{align-items:flex-start;background:#0f172a73;display:flex;inset:0;justify-content:center;padding:2rem 1rem;position:fixed;z-index:2000}.update-status-detail-modal{background:#fff;border-radius:12px;box-shadow:0 20px 50px #0f172a40;max-height:calc(100vh - 4rem);overflow:auto;width:min(960px,100%)}.update-status-detail-header{align-items:flex-start;border-bottom:1px solid #e9ecef;display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.25rem}.update-status-detail-body{padding:1.25rem}.update-status-detail-message{font-weight:600}.update-status-detail-screenshot{margin-top:1rem}.update-status-detail-mail,.update-status-detail-shift{margin-top:.5rem}.update-status-shift-summary{color:#6c757d;font-size:.875rem}.update-status-shift-site-list{border:1px solid #dee2e6;border-radius:8px;list-style:none;margin:0;overflow:hidden;padding:0}.update-status-shift-site-list li{grid-gap:.5rem 1rem;align-items:center;background:#fff;border-bottom:1px solid #edf0f2;display:grid;gap:.5rem 1rem;grid-template-columns:minmax(8rem,1fr) auto;padding:.75rem 1rem}.update-status-shift-site-list li:last-child{border-bottom:none}.update-status-shift-site-success{background:#f8fff9}.update-status-shift-site-error{background:#fff8f8}.update-status-shift-site-label{font-weight:600}.update-status-shift-site-status{color:#198754;font-size:.875rem;white-space:nowrap}.update-status-shift-site-error .update-status-shift-site-status{color:#dc3545}.update-status-shift-site-reason{color:#6c757d;font-size:.8125rem;grid-column:1/-1}.update-status-mail-meta{color:#6c757d;font-size:.875rem}.update-status-mail-content{font-family:inherit;font-size:.875rem;line-height:1.6;margin-bottom:0;max-height:320px;overflow:auto;padding:.875rem 1rem;white-space:pre-wrap;word-break:break-word}.update-status-mail-content,.update-status-screenshot-image{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-top:.75rem}.update-status-screenshot-image{display:block;width:100%}.error-unread{background-color:#fff3cd!important;border-left:4px solid #ffc107!important}.error-unread:hover{background-color:#fff3a0!important}.list-group-item{transition:all .2s ease}.list-group-item:hover{background-color:#f8f9fa}.badge{font-size:.75rem}.error-stats-card{transition:transform .2s ease}.error-stats-card:hover{transform:translateY(-2px)}.settings-section{margin-bottom:2rem}.settings-section h5{color:#333;font-weight:600;margin-bottom:.75rem}.settings-section .form-select{max-width:400px}.settings-tabs{background:linear-gradient(135deg,#f8f9fb,#eef2f7);border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:.5rem;margin-bottom:1.5rem;padding:.35rem}.settings-tab{background:#0000;border:none;border-radius:8px;color:#64748b;flex:1 1;font-weight:600;padding:.75rem 1rem;transition:all .2s ease}.settings-tab:hover{background:#ffffffb3;color:#334155}.settings-tab.is-active{background:#fff;box-shadow:0 2px 8px #0f172a14;color:#0f172a}.duration-preset-list{display:flex;flex-wrap:wrap;gap:.5rem}.duration-preset-chip{align-items:center;background:#eef4ff;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:.9rem;font-weight:600;gap:.35rem;padding:.45rem .75rem}.duration-preset-chip__remove{background:#0000;border:none;color:#64748b;cursor:pointer;font-size:1rem;line-height:1;padding:0}.duration-preset-chip__remove:hover{color:#dc2626}.memo-template-list{display:flex;flex-direction:column;gap:.75rem}.memo-template-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;padding:.75rem 1rem}.memo-template-item__header{justify-content:space-between;margin-bottom:.35rem}.memo-template-item__actions,.memo-template-item__header{align-items:center;display:flex;gap:.5rem}.memo-template-item.is-editing{background:#eff6ff;border-color:#93c5fd}.memo-template-item__edit{color:#2563eb;text-decoration:none}.memo-template-item__edit:hover{color:#1d4ed8;text-decoration:underline}.memo-template-item__remove{background:#0000;border:none;color:#64748b;cursor:pointer;font-size:1.1rem;line-height:1;padding:0}.memo-template-item__remove:hover{color:#dc2626}.memo-template-item__body{white-space:pre-wrap;word-break:break-word}.booking-time-section{display:flex;flex-direction:column;gap:.5rem}.booking-selected-date{background:#f1f5f9;border-radius:999px;color:#0f172a;display:block;font-size:1rem;font-weight:700;margin-bottom:.15rem;padding:.4rem .9rem;width:fit-content}.booking-time-label{margin-bottom:0}.duration-preset-buttons{display:flex;flex-wrap:wrap;gap:.5rem;margin:.15rem 0 .35rem;width:100%}.booking-time-selects{margin-top:.15rem}.time-dropdown{position:relative;width:100%}.time-dropdown-toggle{cursor:pointer;display:block;text-align:left;width:100%}.time-dropdown-placeholder{color:#6c757d}.time-dropdown-menu{background:#fff;border:1px solid #ced4da;border-radius:.375rem;box-shadow:0 .5rem 1rem #00000026;left:0;list-style:none;margin:0;max-height:240px;overflow-y:auto;padding:.25rem 0;position:absolute;right:0;top:calc(100% + 2px);z-index:1060}.time-dropdown-item{cursor:pointer;padding:.375rem .75rem;white-space:nowrap}.time-dropdown-item:hover{background-color:#f8f9fa}.time-dropdown-item.is-selected{background-color:#0d6efd;color:#fff}.time-dropdown-item.is-selected:hover{background-color:#0b5ed7;color:#fff}.booking-time-validating{display:block;margin-top:.15rem}.booking-time-errors{display:flex;flex-direction:column;gap:.25rem;margin-top:.35rem}.booking-time-error{color:#dc2626;font-size:.875rem;font-weight:600;line-height:1.4}.duration-preset-btn{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#334155;font-size:.875rem;font-weight:600;min-width:4.5rem;padding:.45rem .9rem;transition:all .15s ease}.duration-preset-btn:hover:not(:disabled){background:#eff6ff;border-color:#3b82f6;color:#1d4ed8}.duration-preset-btn:disabled{cursor:not-allowed;opacity:.45}.booking-progress{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:20px;padding:20px}.booking-progress .progress-header{margin-bottom:15px}.booking-progress h6{color:#333;font-weight:600;margin-bottom:8px}.booking-progress .current-step{color:#007bff;font-size:.95rem}.progress-steps{display:flex;flex-direction:column;gap:12px}.progress-step{align-items:center;background-color:#fff;border:1px solid #e9ecef;border-radius:6px;display:flex;padding:10px 15px;transition:all .3s ease}.progress-step.active{background-color:#e3f2fd;border-color:#2196f3;box-shadow:0 2px 4px #2196f31a}.progress-step.completed{background-color:#e8f5e8;border-color:#28a745}.step-indicator{font-size:1.1rem;margin-right:12px;min-width:24px;text-align:center}.step-message{color:#555;flex:1 1;font-size:.9rem;line-height:1.4}.progress-step.active .step-message{color:#1976d2;font-weight:500}.progress-step.completed .step-message{color:#2e7d32}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.progress-step.active .step-indicator{animation:pulse 1.5s infinite}@media (max-width:768px){.booking-progress{margin-bottom:15px;padding:15px}.progress-step{padding:8px 12px}.step-indicator{font-size:1rem;margin-right:8px;min-width:20px}.step-message{font-size:.85rem}}.booking-bar{align-items:center;background-color:#007bff;border-radius:3px;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-size:11px;line-height:1.1;min-height:18px;overflow:hidden;padding:2px 6px;text-align:center;transition:background-color .2s;white-space:normal}.booking-bar:hover{background-color:#0056b3}.booking-bar.shift-bar{background-color:#6c757d;border:2px dashed #495057;color:#fff}.booking-bar.shift-bar:hover{background-color:#5a6268}.booking-bar--locked{cursor:default;opacity:.75}.booking-bar--locked,.booking-bar--locked:hover{background-color:#adb5bd!important}.booking-sync-legend{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;display:flex;flex-wrap:wrap;font-size:.875rem;gap:12px 20px;padding:10px 12px}.booking-sync-legend-item{align-items:center;display:inline-flex;gap:8px}.booking-sync-legend-swatch{border:1px solid #0000001a;border-radius:3px;display:inline-block;height:16px;width:16px}.transfer-mode-banner{border:1px solid #ffc107}.transfer-target-row .woman-name-column{background-color:#fff8e1}.working-time-slot.transfer-target-slot{box-shadow:inset 0 0 0 2px #ffc107;outline:1px solid #ffca2c}.working-time-slot.transfer-target-slot:hover{background-color:#ffe69c!important}.transfer-btn{background-color:#0d6efd}.women-list--embedded{background:#0000;border:none;box-shadow:none}.women-list-modal{background-color:#00000080;inset:0;overflow-x:hidden;overflow-y:auto;position:fixed;z-index:1060}.women-list-modal--nested{z-index:1070}.women-list .women-list-toolbar{background:linear-gradient(180deg,#fff,#f1f3f5);border:1px solid #dee2e6;border-radius:10px;box-shadow:inset 0 1px 0 #fffc;display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem}.women-list .women-list-toolbar .btn{border-radius:8px;border-width:1px;box-shadow:0 2px 4px #0000001a;font-size:.875rem;font-weight:600;min-height:2.5rem;padding:.45rem 1.1rem}.women-list .women-list-toolbar .btn:hover:not(:disabled){box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.women-list .women-list-toolbar .btn:active:not(:disabled){box-shadow:0 1px 2px #0000001f;transform:translateY(0)}.women-list .women-list-toolbar .btn-primary{background:linear-gradient(180deg,#0b5ed7,#0a58ca);border-color:#0a53be}.women-list .women-list-toolbar .btn-danger{background:linear-gradient(180deg,#dc3545,#bb2d3b);border-color:#b02a37;color:#fff}.women-list .women-list-toolbar .btn-outline-danger{background:#fff;border-color:#dc3545;color:#dc3545}.women-list .women-list-toolbar .btn-outline-secondary{background:#fff;border-color:#adb5bd;color:#495057}.women-list .women-name-search-input-wrap{max-width:420px;position:relative}.women-list .women-name-search-input-wrap .form-control{padding-right:2.5rem}.women-list .women-name-search-spinner{color:#0d6efd;pointer-events:none;position:absolute;right:.75rem;top:50%;transform:translateY(-50%)}.women-list .women-kana-tabs{background:#f8f9fa;border:1px solid #dee2e6;border-radius:10px;display:flex;flex-wrap:nowrap;gap:.4rem;margin-bottom:1rem;overflow-x:auto;padding:.65rem;scrollbar-width:thin}.women-list .women-kana-tab{align-items:center;background:#fff;border:1px solid #ced4da;border-radius:8px;box-shadow:0 1px 3px #00000014;color:#495057;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.8125rem;font-weight:600;gap:.35rem;min-height:2.25rem;padding:.35rem .85rem;transition:all .15s ease}.women-list .women-kana-tab:hover{background:#e9ecef;border-color:#adb5bd}.women-list .women-kana-tab.active{background:linear-gradient(180deg,#0b5ed7,#0a58ca);border-color:#0a53be;box-shadow:0 2px 6px #0d6efd59;color:#fff}.women-list .women-kana-tab.is-empty:not(.active){background:#f8f9fa;color:#adb5bd}.women-list .women-kana-tab .women-kana-badge{align-items:center;background:#e9ecef;border-radius:999px;color:#495057;display:inline-flex;font-size:.7rem;font-weight:700;height:1.35rem;justify-content:center;min-width:1.35rem;padding:0 .35rem}.women-list .women-kana-tab.active .women-kana-badge{background:#ffffff40;color:#fff}.women-list .women-card-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:768px){.women-list .women-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:992px){.women-list .women-card-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.women-list .women-card-col{min-width:0}.women-list .women-card-action{border-radius:8px;box-shadow:0 2px 4px #0000001f;font-size:.875rem;font-weight:600;min-height:2.5rem;padding:.5rem .75rem;transition:all .15s ease}.women-list .women-card-action:hover:not(:disabled){box-shadow:0 4px 8px #00000029;transform:translateY(-1px)}.women-list .women-card-action.btn-primary{background:linear-gradient(180deg,#0b5ed7,#0a58ca);border-color:#0a53be}.women-list .women-card-action.btn-danger{background:linear-gradient(180deg,#dc3545,#bb2d3b);border-color:#b02a37}.women-list .women-card-action.btn-outline-danger{background:#fff;border:1px solid #dc3545;color:#dc3545}.women-list .women-pagination .page-link{align-items:center;border-radius:8px!important;box-shadow:0 1px 2px #00000014;display:flex;font-weight:600;justify-content:center;margin:0 2px;min-height:2.25rem;min-width:2.25rem}.women-list .women-pagination .page-item.active .page-link{background:linear-gradient(180deg,#0b5ed7,#0a58ca);border-color:#0a53be;box-shadow:0 2px 4px #0d6efd4d}.aggregation-page{padding:1.25rem 1.5rem 2rem}.agg-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.25rem}.agg-header-intro{flex:1 1 auto;min-width:0}.agg-header-actions{align-items:center;display:flex;flex:0 0 auto;flex-shrink:0;flex-wrap:nowrap;gap:.5rem}.agg-header-actions .agg-month-nav,.agg-header-actions .btn{flex-shrink:0;white-space:nowrap}.agg-store-select{border-color:#e2e8f0;border-radius:10px;color:#0f172a;flex-shrink:0;font-weight:600;min-width:9.5rem;width:9.5rem}.agg-month-label{min-width:6.5rem;text-align:center;white-space:nowrap}.agg-month-label,.agg-title{color:#0f172a;font-weight:700}.agg-title{font-size:1.5rem;margin:0}.agg-subtitle{color:#64748b;font-size:.95rem;margin:.35rem 0 0}.agg-month-nav{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;display:inline-flex;gap:.5rem;padding:.25rem .5rem}.agg-kpi-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:.75rem}.agg-kpi-card{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:14px;padding:1rem 1.1rem}.agg-kpi-label{color:#64748b;font-size:.85rem;font-weight:600}.agg-kpi-value{color:#0f172a;font-size:1.75rem;font-weight:800;line-height:1.1;margin-top:.35rem}.agg-kpi-mom{font-size:.82rem;font-weight:600;margin-top:.45rem}.agg-kpi-mom.is-up{color:#059669}.agg-kpi-mom.is-down{color:#dc2626}.agg-kpi-mom.is-flat{color:#64748b}.agg-kpi-mom-label{color:#94a3b8;font-weight:500;margin-left:.35rem}.agg-tone-primary .agg-kpi-value{color:#1d4ed8}.agg-tone-secondary .agg-kpi-value{color:#0f766e}.agg-tone-muted .agg-kpi-value{color:#64748b}.agg-tone-emphasis .agg-kpi-value{color:#0f172a}.agg-summary-line{color:#475569;font-size:.92rem;margin-bottom:1rem}.aggregation-tabs{background:linear-gradient(135deg,#f8f9fb,#eef2f7);border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:.35rem;margin-bottom:1rem;overflow-x:auto;padding:.35rem}.aggregation-tab{background:#0000;border:none;border-radius:8px;color:#64748b;flex:0 0 auto;font-weight:600;padding:.65rem .9rem;transition:all .2s ease;white-space:nowrap}.aggregation-tab:hover{background:#ffffffb3;color:#334155}.aggregation-tab.is-active,.aggregation-tab.is-active:hover{background:#0095b7;box-shadow:0 2px 8px #0f172a14;color:#fff}.agg-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1rem}.agg-table{margin-bottom:0}.agg-table td,.agg-table th{vertical-align:middle}.agg-table .agg-totals-row td,.agg-table .agg-totals-row th{background:#f8fafc;border-bottom:2px solid #cbd5e1;font-weight:700}.agg-num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.agg-tone-muted{color:#94a3b8}.agg-tone-emphasis{font-weight:700}.agg-bar-cell{min-width:12rem}.agg-bar-wrap{align-items:center;display:flex;gap:.65rem}.agg-bar{background:#2563eb;border-radius:999px;height:.55rem;min-width:0}.agg-bar.agg-tone-secondary{background:#0d9488}.agg-bar-value{font-feature-settings:"tnum";color:#334155;font-variant-numeric:tabular-nums;font-weight:600}.agg-share-list{display:flex;flex-direction:column;gap:.85rem}.agg-share-row{background:#fafbfd;border:1px solid #eef2f7;border-radius:10px;padding:.75rem .85rem}.agg-share-head{display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.45rem}.agg-share-media{color:#0f172a;font-weight:700}.agg-share-meta{color:#64748b;font-size:.9rem}.agg-share-track{background:#e2e8f0;border-radius:999px;height:.65rem;overflow:hidden}.agg-share-fill{background:linear-gradient(90deg,#2563eb,#1d4ed8);border-radius:inherit;height:100%}.agg-heatmap-wrap{overflow-x:auto}.agg-heatmap{border-collapse:initial;border-spacing:2px;font-size:.82rem;width:100%}.agg-heatmap td,.agg-heatmap th{padding:.35rem .25rem;text-align:center}.agg-heatmap-cell{border-radius:4px;color:#0f172a;font-weight:600;min-width:2rem}.agg-heatmap-legend{align-items:center;color:#64748b;display:flex;font-size:.85rem;gap:.5rem;margin-top:.75rem}.agg-heatmap-legend-bar{background:linear-gradient(90deg,#2563eb14,#2563ebcc);border-radius:999px;flex:1 1;height:.5rem;max-width:12rem}.agg-repeat-note{color:#64748b;font-size:.9rem}.agg-repeat-kpis{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(4,minmax(0,1fr));margin:.75rem 0 1rem}.agg-repeat-kpi{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:.85rem}.agg-repeat-kpi-label{color:#64748b;display:block;font-size:.82rem;margin-bottom:.25rem}.agg-duration-summary{margin-bottom:1rem}.agg-duration-card{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;display:inline-flex;flex-direction:column;gap:.35rem;padding:1rem 1.25rem}.agg-duration-card strong{color:#1d4ed8;font-size:1.35rem}.agg-section-title{color:#0f172a;font-size:1rem;font-weight:700;margin:1rem 0 .65rem}.agg-loading{color:#64748b;padding:2rem;text-align:center}.agg-spin{animation:agg-spin 1s linear infinite}@keyframes agg-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:992px){.agg-kpi-grid,.agg-repeat-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.agg-header{align-items:stretch;flex-direction:column}.agg-header-actions{justify-content:flex-end;overflow-x:auto;padding-bottom:.15rem}}@media (max-width:576px){.aggregation-page{padding:1rem}.agg-kpi-grid,.agg-repeat-kpis{grid-template-columns:1fr}}.App{text-align:left}.booking-management-system{background-color:#f8f9fa;min-height:100vh}
/*# sourceMappingURL=main.82151833.css.map*/