*{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}:root{--app-sidebar-width:240px;--app-sidebar-collapsed-width:64px}.app-shell-body{display:flex;min-height:100vh}.app-sidebar-col{flex:0 0 240px;flex:0 0 var(--app-sidebar-width);max-width:240px;max-width:var(--app-sidebar-width);transition:width .3s ease,flex-basis .3s ease,max-width .3s ease;width:240px;width:var(--app-sidebar-width)}.booking-management-system.sidebar-collapsed .app-sidebar-col{flex-basis:64px;flex-basis:var(--app-sidebar-collapsed-width);max-width:64px;max-width:var(--app-sidebar-collapsed-width);width:64px;width:var(--app-sidebar-collapsed-width)}.app-main-col{flex:1 1 auto;min-width:0}.sidebar{background:#2c3e50;display:flex;flex-direction:column;height:100vh;left:0;min-height:100vh;overflow:hidden;position:fixed;top:0;transition:width .3s ease,box-shadow .3s ease;width:240px;width:var(--app-sidebar-width);z-index:1040}.sidebar.is-demo-mode{background:#5a57bd}.sidebar-brand{min-width:0;overflow:hidden}.sidebar-brand-title{white-space:nowrap}.sidebar-brand-sub{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-x:hidden;overflow-y:auto}.sidebar-logout{border-top:1px solid #ffffff1f;margin-top:auto}.sidebar .nav-link{border-radius:0;color:#ecf0f1;overflow:hidden;padding:1rem 1.5rem;position:relative;transition:all .2s;white-space:nowrap}.sidebar .nav-link:hover{background-color:#34495e;color:#fff}.sidebar .nav-link.active{background-color:#3498db;color:#fff}.sidebar-nav-icon{flex-shrink:0}.sidebar-nav-label{overflow:hidden;text-overflow:ellipsis}.booking-management-system.sidebar-collapsed .sidebar{width:64px;width:var(--app-sidebar-collapsed-width)}.booking-management-system.sidebar-collapsed .sidebar:hover{box-shadow:4px 0 24px #00000040;width:240px;width:var(--app-sidebar-width);z-index:1100}.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .sidebar-brand,.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .sidebar-nav-label{margin:0;opacity:0;overflow:hidden;padding:0;pointer-events:none;width:0}.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .sidebar-header{justify-content:center;padding-left:.5rem;padding-right:.5rem}.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .nav-link{justify-content:center;padding-left:.75rem;padding-right:.75rem}.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .sidebar-nav-icon{margin-right:0!important}.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .nav-count-badge,.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .update-status-alert-badge{font-size:.6rem;height:1rem;margin:0!important;min-width:1rem;position:absolute;right:8px;top:8px}.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}.dashboard-auto-update-badge{font-size:.7rem;font-weight:600;vertical-align:middle}.dashboard-auto-update-badge-offhours{background-color:#6c757d!important}.app-header-auto-update-btn{align-items:center;animation:app-header-auto-pulse 2.4s ease-in-out infinite;background:#e7f5ff;border:none;border-radius:8px;color:#0d6efd;cursor:pointer;display:inline-flex;height:36px;justify-content:center;position:relative;transition:background-color .2s,box-shadow .2s;width:36px}.app-header-auto-update-btn:hover{background:#d0ebff;box-shadow:0 2px 6px #0d6efd40}.app-header-auto-update-icon{transform-origin:center}.app-header-auto-update-results{border-top:1px solid #dee2e6;padding-top:.75rem}.app-header-auto-update-results-title{color:#495057;font-size:.8rem;font-weight:600;margin-bottom:.5rem}.app-header-auto-update-results-list{display:flex;flex-direction:column;gap:.4rem;max-height:280px;overflow-y:auto}.app-header-auto-update-result-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;cursor:pointer;display:flex;gap:.5rem;padding:.45rem .55rem;text-align:left;width:100%}.app-header-auto-update-result-item:hover{background:#eef5ff;border-color:#c5dbff}.app-header-auto-update-result-main{display:flex;flex:1 1;flex-direction:column;min-width:0}.app-header-auto-update-result-line{color:#212529;font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-header-auto-update-result-id{color:#0d6efd;font-weight:700;margin-right:.4rem;text-decoration:underline}.app-header-auto-update-result-time{color:#6c757d;font-size:.72rem}@keyframes app-header-auto-pulse{0%,to{box-shadow:0 0 0 0 #0d6efd47}50%{box-shadow:0 0 0 6px #0d6efd00}}.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-maintenance-btn{align-items:center;background:#e7f5ff;border:none;border-radius:8px;color:#1098ad;cursor:pointer;display:inline-flex;height:36px;justify-content:center;position:relative;transition:background-color .2s,box-shadow .2s,transform .2s;width:36px}.app-header-maintenance-btn.has-today,.app-header-maintenance-btn:hover{background:#d0ebff;box-shadow:0 2px 8px #1098ad2e}.app-header-maintenance-today-badge{background:#dc3545;border-radius:999px;color:#fff;font-size:.72rem;font-weight:700;height:1.1rem;line-height:1.1rem;min-width:1.1rem;padding:0 .15rem;position:absolute;right:-8px;text-align:center;top:-6px}.app-header-maintenance-bang-badge{pointer-events:none;position:absolute;right:-6px;top:-4px}.app-header-maintenance-bang-badge .maintenance-notice-exclamation{font-size:.58rem;height:.85rem;width:.85rem}.app-header-maintenance-dropdown{min-width:360px;right:0}.app-header-maintenance-today-chip{align-items:center;background:#e7f5ff;border-radius:999px;color:#1098ad;display:inline-flex;font-size:.72rem;font-weight:700;padding:.1rem .45rem}.maintenance-notice-meta{color:#1864ab;display:flex;flex-wrap:wrap;font-size:.8125rem;gap:.35rem .5rem;margin-bottom:.35rem}.maintenance-notice-meta-label{font-weight:700}.maintenance-admin-meta,.maintenance-notice-meta{line-height:1.5}.app-header-maintenance-item{border-bottom:1px solid #f1f3f5;padding:.85rem 1rem}.app-header-maintenance-item.is-alt{background:#fafbfc}.app-header-maintenance-item-head{align-items:center;display:flex;gap:.5rem;margin-bottom:.35rem}.app-header-maintenance-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.68rem;font-weight:700;padding:.1rem .45rem}.app-header-maintenance-badge.is-failure{background:#ffe3e3;color:#c92a2a}.app-header-maintenance-badge.is-maintenance{background:#fff3bf;color:#e67700}.app-header-maintenance-badge.is-info{background:#d0ebff;color:#1864ab}.app-header-maintenance-completed-chip{align-items:center;background:#e9ecef;border-radius:999px;color:#495057;display:inline-flex;font-size:.68rem;font-weight:700;padding:.1rem .45rem}.app-header-maintenance-item.is-completed{opacity:.92}.app-header-maintenance-date{color:#868e96;font-size:.75rem}.app-header-maintenance-title{color:#212529;font-size:.875rem;font-weight:700;margin-bottom:.25rem}.app-header-maintenance-body{color:#495057;font-size:.8125rem;line-height:1.5;white-space:pre-wrap}.app-maintenance-banner{align-items:center;background:linear-gradient(90deg,#fff5f5,#ffe3e3);border-bottom:1px solid #ffc9c9;color:#c92a2a;display:flex;font-size:.875rem;font-weight:600;gap:.65rem;padding:.65rem 1rem}.app-maintenance-banner-icon{flex-shrink:0}.maintenance-admin-card{border:none;box-shadow:0 8px 24px #0f172a14}.maintenance-admin-list{grid-gap:.85rem;display:grid;gap:.85rem}.maintenance-admin-table{--bs-table-bg:#0000;margin-bottom:0}.maintenance-admin-table thead th{background:#f8f9fa;border-bottom-width:1px;color:#6c757d;font-size:.78rem;font-weight:700;white-space:nowrap}.maintenance-admin-table td{font-size:.9rem;vertical-align:middle}.maintenance-admin-table tr.is-today td{background:#fff5f5}.maintenance-admin-table tr.is-hidden td{background:#f8f9fa;color:#868e96}.maintenance-admin-visible-col{min-width:8.5rem}.maintenance-admin-table-title{color:#212529;font-weight:700;line-height:1.4}.maintenance-admin-table-chips{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.3rem}.maintenance-admin-table-date{color:#495057;font-size:.84rem;white-space:nowrap}.maintenance-admin-visible-control{align-items:center;display:inline-flex;gap:.4rem;justify-content:center}.maintenance-admin-visible-label{font-size:.78rem;font-weight:700;min-width:2.6rem;text-align:left}.maintenance-admin-visible-label.is-on{color:#198754}.maintenance-admin-visible-label.is-off{color:#868e96}.maintenance-admin-detail-row td{background:#fafbfc;padding-bottom:1rem;padding-top:.85rem}.maintenance-admin-item{background:#fff;border:1px solid #edf2f7;border-radius:12px;padding:1rem 1.1rem}.maintenance-admin-item.is-today{background:linear-gradient(180deg,#fff5f5,#fff);border-color:#ffc9c9}.maintenance-admin-item.is-completed{opacity:.82}.maintenance-admin-item.is-hidden{background:#f8f9fa;opacity:.72}.maintenance-admin-item-head{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.maintenance-admin-item-head .form-check-label{color:#495057;font-size:.82rem}.maintenance-admin-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.72rem;font-weight:700;padding:.15rem .55rem}.maintenance-admin-badge.is-failure{background:#ffe3e3;color:#c92a2a}.maintenance-admin-badge.is-maintenance{background:#fff3bf;color:#e67700}.maintenance-admin-badge.is-info{background:#d0ebff;color:#1864ab}.maintenance-notice-exclamation{align-items:center;background:#dc3545;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:.85rem;font-weight:700;height:1.25rem;justify-content:center;line-height:1;width:1.25rem}.maintenance-admin-table-title-row{align-items:flex-start;display:flex;gap:.4rem}.maintenance-admin-form{background:#fafbfc;border:1px solid #edf2f7;border-radius:12px;margin-bottom:1.1rem;padding:1rem 1.1rem}.maintenance-admin-form-actions{display:flex;flex-wrap:wrap;gap:.5rem}.maintenance-admin-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.maintenance-admin-today-chip{background:#dc3545}.maintenance-admin-hidden-chip,.maintenance-admin-today-chip{align-items:center;border-radius:999px;color:#fff;display:inline-flex;font-size:.68rem;font-weight:700;padding:.1rem .45rem}.maintenance-admin-hidden-chip{background:#868e96}.maintenance-admin-date{color:#868e96;font-size:.78rem;margin-left:auto}.maintenance-admin-title{font-size:1rem;font-weight:700;margin-bottom:.35rem}.maintenance-admin-body{color:#495057;line-height:1.6;white-space:pre-wrap}.maintenance-admin-original{border-top:1px dashed #dee2e6;margin-top:.85rem;padding-top:.85rem}.maintenance-admin-original-label{color:#868e96;font-size:.72rem;font-weight:700;letter-spacing:.04em;margin-bottom:.45rem}.maintenance-admin-original-title{color:#343a40;font-size:.9rem;font-weight:600;margin-bottom:.35rem;white-space:pre-wrap}.maintenance-admin-original-body{background:#f8f9fa;border-radius:8px;color:#495057;font-size:.84rem;line-height:1.65;padding:.75rem .85rem;white-space:pre-wrap}.maintenance-admin-empty{background:#fafbfc;border:1px dashed #dee2e6;border-radius:12px;padding:1.5rem;text-align:center}.maintenance-admin-monitor-url a{align-items:center;display:inline-flex;font-size:.9rem;gap:.35rem;word-break:break-all}.memory-monitor-headline{align-items:baseline;display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:.75rem}.memory-monitor-headline-title{color:#1f2937;font-size:1.05rem;font-weight:700}.memory-monitor-headline-meta{color:#64748b;font-size:.875rem}.memory-monitor-bar{background:#eef2f7;border-radius:999px;height:10px;margin-bottom:.75rem;overflow:hidden}.memory-monitor-date-row{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.65rem}.memory-monitor-date-input{max-width:11rem;width:auto}.memory-monitor-date-note{color:#64748b;font-size:.85rem}.memory-monitor-bar-fill{background:#3b82f6;border-radius:inherit;height:100%;transition:width .3s ease}.memory-monitor-bar-fill.is-warn{background:#f59e0b}.memory-monitor-bar-fill.is-critical{background:#dc2626}.memory-monitor-range{display:flex;gap:.35rem;margin-bottom:.5rem}.memory-monitor-range button{background:#fff;border:1px solid #dbe3ee;border-radius:999px;color:#475569;font-size:.8rem;font-weight:600;padding:.2rem .7rem}.memory-monitor-range button.is-active{background:#1f2937;border-color:#1f2937;color:#fff}.memory-monitor-chart-svg{background:#fbfcfe;border:1px solid #e8eef5;border-radius:12px;display:block;height:auto;max-height:220px;width:100%}.memory-monitor-chart-empty{background:#fafbfc;border:1px dashed #dee2e6;border-radius:12px;color:#64748b;font-size:.875rem;padding:1.25rem;text-align:center}.memory-monitor-grid{stroke:#edf2f7;stroke-width:1}.memory-monitor-threshold.is-warn{stroke:#f59e0b;stroke-width:1.25;stroke-dasharray:4 3}.memory-monitor-threshold.is-critical{stroke:#dc2626;stroke-width:1.25;stroke-dasharray:4 3}.memory-monitor-line{stroke:#2563eb;stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round}.memory-monitor-axis{fill:#94a3b8;font-size:11px}.memory-monitor-legend{color:#64748b;display:flex;flex-wrap:wrap;font-size:.8rem;gap:.75rem 1rem;margin-top:.5rem}.memory-monitor-legend span:before{content:"";display:inline-block;height:2px;margin-right:.35rem;vertical-align:middle;width:14px}.memory-monitor-legend .is-usage:before{background:#2563eb}.memory-monitor-legend .is-warn:before{background:#f59e0b}.memory-monitor-legend .is-critical:before{background:#dc2626}.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:flex-start;color:#6c757d;display:flex;flex-wrap:wrap;font-size:.75rem;gap:.25rem .5rem;justify-content:space-between;margin-top:.15rem}.app-header-unhandled-site{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.app-header-unhandled-status{flex:0 1 auto;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){.app-sidebar-col,.booking-management-system.sidebar-collapsed .app-sidebar-col{flex:0 0;max-width:0;overflow:visible;width:0}.booking-management-system.sidebar-collapsed .sidebar,.booking-management-system.sidebar-collapsed .sidebar:hover{box-shadow:none;width:250px}.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .sidebar-brand,.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .sidebar-nav-label{opacity:1;pointer-events:auto;width:auto}.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .sidebar-header{justify-content:space-between;padding-left:1rem;padding-right:1rem}.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .nav-link{justify-content:flex-start;padding-left:1.5rem;padding-right:1.5rem}.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .sidebar-nav-icon{margin-right:.5rem!important}.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .nav-count-badge,.booking-management-system.sidebar-collapsed .sidebar:not(:hover) .update-status-alert-badge{font-size:.65rem;height:1.1rem;margin-left:.5rem!important;min-width:1.1rem;position:static}.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;padding:var(--tt-head-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;max-width:var(--tt-name-col,160px)!important;min-width:160px!important;min-width:var(--tt-name-col,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;height:var(--tt-photo,40px);object-fit:cover;width:40px;width:var(--tt-photo,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;font-size:var(--tt-name-font,13px);line-height:1.3;word-break:break-all}.woman-schedule-time{color:#666;font-size:11px;font-size:var(--tt-sub-font,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;height:var(--tt-badge,18px);justify-content:center;left:-4px;line-height:1;top:-4px;width:18px;width:var(--tt-badge,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{align-items:center;display:flex!important;justify-content:center;padding:12px}.booking-modal>.modal-dialog{margin:0;max-height:calc(100vh - 24px);max-width:min(520px,calc(100vw - 24px));width:min(520px,calc(100vw - 24px))}.booking-modal>.modal-dialog>.modal-content{display:flex;flex-direction:column;max-height:calc(100vh - 24px)}.booking-modal>.modal-dialog>.modal-content>.modal-header{flex-shrink:0}.booking-modal>.modal-dialog>.modal-content>.modal-body{flex:1 1 auto;overflow-y:auto;padding:16px 20px 20px}.booking-info{background-color:#f8f9fa;border-radius:8px;margin-bottom:16px;padding:14px 16px}.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}.booking-memo-block{margin-bottom:16px;margin-top:8px}.booking-memo-block__label{font-weight:600;margin-bottom:6px}.booking-memo-block__body{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;max-height:220px;overflow-y:auto;padding:10px 12px}.booking-memo-block__body pre{font-family:inherit;font-size:.9rem;margin:0;white-space:pre-wrap;word-break:break-word}.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}.save-btn small{display:block;font-size:.75rem;font-weight:400;margin-top:4px;opacity:.9}.booking-action-group{margin-top:16px}.booking-action-group__title{color:#6c757d;font-size:.75rem;font-weight:700;letter-spacing:.06em;margin-bottom:8px;text-transform:uppercase}.booking-action-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr}.booking-action-btn{align-items:flex-start;border:none;border-radius:8px;color:#fff;display:flex;flex-direction:column;font-weight:600;line-height:1.3;padding:12px 14px;text-align:left;width:100%}.booking-action-btn small{display:block;font-size:.75rem;font-weight:400;margin-top:4px;opacity:.9}.booking-action-btn--primary{background-color:#28a745}.booking-action-btn--primary:hover:not(:disabled){background-color:#218838}.booking-action-btn--warning{background-color:#0d6efd}.booking-action-btn--warning:hover:not(:disabled){background-color:#0b5ed7}.booking-action-btn--danger{background-color:#dc3545}.booking-action-btn--danger:hover:not(:disabled){background-color:#c82333}.booking-action-btn:disabled{cursor:not-allowed;opacity:.65}.booking-action-group--danger{border-top:1px solid #e9ecef;margin-top:20px;padding-top:16px}.time-change-banner{align-items:center;background:#fff3cd;border:1px solid #ffecb5;border-radius:8px;color:#664d03;display:flex;font-size:.9rem;gap:12px;justify-content:space-between;margin-bottom:12px;padding:10px 14px}.time-change-banner__text{min-width:0}.time-change-banner__error{color:#dc3545;font-weight:600;margin-right:.5em}.time-change-banner__warning{color:#b45309;font-weight:600;margin-right:.5em}.time-change-banner__actions{display:flex;flex-shrink:0;gap:8px}.time-change-float{background:#fff;border-radius:8px;bottom:20px;box-shadow:0 8px 24px #0f172a33;max-width:min(360px,calc(100vw - 32px));min-width:240px;padding:12px 14px;position:fixed;right:20px;z-index:1060}.time-change-float--error{border:1px solid #f5c2c7}.time-change-float--warning{border:1px solid #ffecb5}.time-change-float__error{color:#dc3545;font-weight:600;margin-bottom:10px}.time-change-float__warning{color:#b45309;font-weight:600;margin-bottom:10px}.time-change-float__actions{display:flex;gap:8px;justify-content:flex-end}.booking-bar--time-change-source{cursor:grab!important;outline:2px dashed #0d6efdcc}.booking-bar--time-change-ghost{box-shadow:0 0 0 2px #0d6efd;cursor:grab;opacity:.88;pointer-events:auto}.booking-bar--time-change-invalid{box-shadow:0 0 0 2px #dc3545!important;opacity:.55}.time-table--time-change{cursor:default!important}.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:min(160px,150px)!important;max-width:min(var(--tt-name-col,160px),150px)!important;min-width:min(160px,150px)!important;min-width:min(var(--tt-name-col,160px),150px)!important}.woman-photo{height:min(40px,32px);height:min(var(--tt-photo,40px),32px);width:min(40px,32px);width:min(var(--tt-photo,40px),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-booking-link{background:none;border:none;color:#0d6efd;cursor:pointer;display:inline;font-weight:700;padding:0;text-decoration:underline}.update-status-booking-link:hover{color:#0a58ca}.update-status-booking-info-link{background:none;border:none;color:#6c757d;cursor:pointer;display:block;font-size:.8125rem;margin-top:.15rem;padding:0;text-align:left;text-decoration:underline}.update-status-booking-info-link:hover{color:#0d6efd}.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-skipped{background:#f8f9fa}.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}.line-connect-help-btn{align-items:center;background:#eef2ff;border:none;border-radius:50%;color:#4c6fff;cursor:pointer;display:inline-flex;height:28px;justify-content:center;padding:0;width:28px}.line-connect-help-btn:hover,.line-connect-help-btn[aria-expanded=true]{background:#4c6fff;color:#fff}.line-connect-guide{background:#f8f9fc;border:1px solid #e2e6f0;border-radius:8px;padding:16px 18px}.line-connect-guide ol{line-height:1.6}.line-notify-table th{font-size:13px;font-weight:600;white-space:nowrap}.line-notify-table td{vertical-align:middle}.line-notify-qr{align-items:flex-start;background:#f8f9fc;border:1px solid #e2e6f0;border-radius:8px;display:flex;flex-wrap:wrap;gap:16px;padding:16px}.line-notify-qr img{background:#fff;border-radius:8px;display:block}.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.is-default{background:#dbeafe;box-shadow:inset 0 0 0 1px #3b82f6}.duration-preset-chip__default{background:#fff;border:1px solid #93c5fd;border-radius:999px;color:#2563eb;cursor:pointer;font-size:.7rem;font-weight:700;line-height:1;padding:.2rem .4rem}.duration-preset-chip__default.is-active{background:#2563eb;border-color:#2563eb;color:#fff}.duration-preset-chip__default:hover{border-color:#2563eb}.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}.time-dropdown-item.is-disabled{cursor:not-allowed}.time-dropdown-item.is-disabled,.time-dropdown-item.is-disabled:hover{background-color:#f8f9fa;color:#adb5bd}.time-dropdown-item.is-disabled.is-selected,.time-dropdown-item.is-disabled.is-selected:hover{background-color:#ced4da;color:#6c757d}.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.is-selected{background:#0d6efd;border-color:#0d6efd;color:#fff}.duration-preset-btn.is-selected:hover:not(:disabled){background:#0b5ed7;border-color:#0b5ed7;color:#fff}.duration-preset-btn:disabled{cursor:not-allowed;opacity:.45}.duration-preset-btn.is-selected:disabled{cursor:not-allowed;opacity:.75}.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}}.timetable-size-control{align-items:center;display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.timetable-size-control-label{color:#6c757d;font-size:.85rem;white-space:nowrap}.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;min-height:var(--tt-bar-min-h,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-bar--updating{gap:3px}.booking-bar-spinner{flex-shrink:0}.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}.master-store-impersonate-link{background:none;border:none;color:#0d6efd;cursor:pointer;display:inline;padding:0;text-align:left;text-decoration:underline}.master-store-impersonate-link:hover{color:#0a58ca}.master-store-impersonate-link:disabled{color:inherit;cursor:default;text-decoration:none}.sidebar-back-to-master{border-top:1px solid #ffffff1f;color:#93c5fd;margin-top:auto}.sidebar-back-to-master:hover{color:#bfdbfe}.sidebar-back-to-master+.sidebar-logout{border-top:none;margin-top:0}.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}}.line-official-tabs{margin-top:0}.line-official-tokens{align-items:center;display:flex;flex-wrap:wrap;gap:.35rem .5rem}.line-official-tokens code{background:#f1f5f9;border-radius:4px;padding:.1rem .35rem}.line-official-template textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875rem;line-height:1.5}.line-official-toggle{align-items:center;color:#334155;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.4rem;margin:0;-webkit-user-select:none;user-select:none}.line-official-quota{background:#f8f9fc;border:1px solid #e2e6f0;border-radius:12px;margin-bottom:1.25rem;padding:16px 18px}.line-official-quota.is-warn{background:#fffbeb;border-color:#f6d38b}.line-official-quota.is-empty{background:#fef2f2;border-color:#fecaca}.line-official-quota-head{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.line-official-quota-title{font-size:.95rem;font-weight:700;margin:0}.line-official-quota-period{color:#64748b;font-size:12px}.line-official-quota-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:12px}.line-official-quota-bar{background:#e2e8f0;border-radius:999px;height:8px;margin-bottom:8px;overflow:hidden}.line-official-quota-bar span{background:#4c6fff;border-radius:999px;display:block;height:100%}.line-official-quota.is-warn .line-official-quota-bar span{background:#d97706}.line-official-quota.is-empty .line-official-quota-bar span{background:#dc2626}.line-official-summary{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:1.25rem}.line-official-stat{background:#f8f9fc;border:1px solid #e2e6f0;border-radius:10px;padding:14px 16px}.line-official-stat-label{color:#64748b;display:block;font-size:12px;font-weight:600;margin-bottom:4px}.line-official-stat-value{color:#0f172a;display:block;font-size:1.15rem;font-weight:700}.line-official-stat-note{color:#94a3b8;display:block;font-size:11px;line-height:1.4;margin-top:4px}.line-official-shop{background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:14px;padding:14px 16px 8px}.line-official-shop-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.line-official-shop-name{font-size:1rem;font-weight:700;margin:0 0 2px}.line-official-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;padding:4px 10px;white-space:nowrap}.line-official-badge.is-on{background:#dcfce7;color:#166534}.line-official-badge.is-off{background:#f1f5f9;color:#64748b}.line-official-friend{display:inline-block;font-size:12px;font-weight:700;white-space:nowrap}.line-official-friend.is-friend{color:#166534}.line-official-friend.is-not-friend{color:#b45309}.line-official-loading-preview-wrap{margin-top:.25rem}.line-official-loading-preview{background:#fff;border:1px solid #e2e6f0;border-radius:8px;display:block;height:72px;margin-bottom:.35rem;object-fit:contain;width:72px}.tutorial-root{font-family:inherit;inset:0;pointer-events:none;position:fixed;z-index:20000}.tutorial-root *{box-sizing:border-box}.tutorial-spotlight-svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}.tutorial-hole-ring{fill:none;stroke:url(#tutorialHighlightGrad);stroke-width:3.5;filter:drop-shadow(0 0 2px rgba(255,204,51,.95)) drop-shadow(0 0 10px rgba(255,138,0,.75));opacity:1;pointer-events:none}.tutorial-hole-ring-pulse{fill:none;stroke:#ffaa008c;stroke-width:2.5;animation:tutorialRingPulse 2.4s ease-in-out infinite;transform-box:fill-box;transform-origin:center}@keyframes tutorialRingPulse{0%,to{stroke-width:2.5;opacity:.55}50%{stroke-width:6;opacity:.2}}.tutorial-card{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:linear-gradient(145deg,#121c34eb,#0c1224e0);background-clip:padding-box;border:1px solid #0000;border-radius:18px;bottom:72px;box-shadow:0 0 0 1px #00e5ff40,0 20px 50px #00000073,inset 0 1px 0 #ffffff14;color:#eaf6ff;display:flex;flex-direction:column;left:auto;max-height:min(50vh,420px);overflow:hidden;padding:0;pointer-events:auto;position:absolute;right:16px;top:auto;width:min(400px,calc(100vw - 32px));z-index:2}.tutorial-card:before{background:linear-gradient(135deg,#00e5ffe6,#a855f7d9,#00e5ff80);border-radius:19px;content:"";inset:-1px;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px;pointer-events:none;position:absolute}.tutorial-card-header{align-items:center;background:#080e1c59;border-bottom:1px solid #00e5ff24;display:flex;flex-shrink:0;gap:8px;justify-content:space-between;padding:14px 16px 10px}.tutorial-card-scroll{-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:12px 16px 8px}.tutorial-card-footer{background:#080e1c73;border-top:1px solid #00e5ff24;flex-shrink:0;padding:10px 12px 12px}.tutorial-minimize-btn{border-radius:8px;flex-shrink:0;font-size:1.2rem;height:32px;line-height:1;padding:0!important;width:32px}.tutorial-phase-chip{align-items:center;background:#00e5ff1a;border:1px solid #00e5ff59;border-radius:999px;color:#7dd3fc;display:inline-flex;flex-wrap:wrap;font-size:11px;gap:6px;letter-spacing:.08em;margin:0;min-width:0;padding:3px 10px;text-transform:uppercase}.tutorial-card-title{color:#f8fbff;font-size:1.15rem;font-weight:700;letter-spacing:.01em;margin:0 0 8px}.tutorial-card-body{color:#eaf6ffe0;font-size:.92rem;line-height:1.65;margin:0 0 14px;white-space:pre-wrap}.tutorial-try-hint{background:#eab3081f;border:1px solid #eab30859;border-radius:10px;color:#fef3c7;font-size:.82rem}.tutorial-focus-note,.tutorial-try-hint{line-height:1.5;margin:-6px 0 12px;padding:8px 10px}.tutorial-focus-note{background:#22c55e24;border:1px solid #22c55e66;border-radius:10px;color:#bbf7d0;font-size:.84rem}.tutorial-progress-dots{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px}.tutorial-progress-dot{background:#ffffff2e;border-radius:50%;height:7px;width:7px}.tutorial-progress-dot.is-done{background:#00e5ff8c}.tutorial-progress-dot.is-current{background:#00e5ff;box-shadow:0 0 8px #00e5ffcc}.tutorial-toc{margin-bottom:12px}.tutorial-toc-toggle{font-size:.8rem!important;padding:5px 10px!important}.tutorial-toc-panel{background:#040a168c;border:1px solid #00e5ff33;border-radius:12px;margin-top:8px;max-height:180px;overflow:auto;padding:8px}.tutorial-toc-phase+.tutorial-toc-phase{margin-top:10px}.tutorial-toc-phase-label{color:#7dd3fc;font-size:11px;letter-spacing:.06em;margin-bottom:4px;padding:0 4px;text-transform:uppercase}.tutorial-toc-list{list-style:none;margin:0;padding:0}.tutorial-toc-item{align-items:flex-start;appearance:none;background:#0000;border:0;border-radius:8px;color:#eaf6ffc7;cursor:pointer;display:flex;font-size:.8rem;gap:8px;line-height:1.4;padding:5px 6px;text-align:left;width:100%}.tutorial-toc-item:hover{background:#00e5ff1a;color:#fff}.tutorial-toc-item.is-current{background:#00e5ff2e;color:#fff;font-weight:600}.tutorial-toc-item.is-done{color:#7dd3fcd9}.tutorial-toc-num{font-feature-settings:"tnum";flex-shrink:0;font-variant-numeric:tabular-nums;min-width:1.4em;opacity:.65}.tutorial-toc-title{flex:1 1}.tutorial-card-actions{align-items:center;display:flex;flex-wrap:nowrap;gap:6px;justify-content:flex-end}.tutorial-card-actions .tutorial-btn{flex:0 1 auto;font-size:.8rem;padding:7px 10px;white-space:nowrap}.tutorial-card-actions .tutorial-btn--ghost:first-child{margin-right:auto}.tutorial-btn{appearance:none;background:#ffffff0f;border:1px solid #ffffff2e;border-radius:10px;color:#eaf6ff;cursor:pointer;font-size:.85rem;font-weight:600;padding:7px 12px;transition:background .15s ease,border-color .15s ease,transform .12s ease}.tutorial-btn:hover{background:#ffffff1f;border-color:#00e5ff73}.tutorial-btn:active{transform:translateY(1px)}.tutorial-btn--primary{background:linear-gradient(135deg,#00c6ff,#7b5cff);border-color:#0000;box-shadow:0 6px 18px #00c6ff4d;color:#fff}.tutorial-btn--primary:hover{background:linear-gradient(135deg,#22d3ff,#9478ff)}.tutorial-btn--ghost{background:#0000;border-color:#ffffff1f;color:#eaf6ffbf}.tutorial-btn--danger{background:#dc35452e;border-color:#dc354573;color:#ffb4bc}.tutorial-status-bar{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a1020e6;border:1px solid #00e5ff59;border-radius:999px;bottom:16px;box-shadow:0 8px 28px #0006;color:#dff6ff;display:flex;font-size:.85rem;gap:12px;left:50%;padding:8px 14px;pointer-events:auto;position:fixed;transform:translateX(-50%);z-index:20001}.tutorial-root.is-minimized .tutorial-status-bar{display:none}.tutorial-status-bar-dot{animation:tutorialStatusBlink 1.6s ease-in-out infinite;background:#00e5ff;border-radius:50%;box-shadow:0 0 10px #00e5ff;flex-shrink:0;height:8px;width:8px}@keyframes tutorialStatusBlink{0%,to{opacity:1}50%{opacity:.35}}.tutorial-pill{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a1020eb;border:1px solid #00e5ff66;border-radius:999px;bottom:16px;box-shadow:0 8px 28px #00000073;color:#dff6ff;display:flex;font-size:.85rem;gap:10px;padding:8px 12px;pointer-events:auto;position:fixed;right:16px;z-index:20001}.tutorial-pill-text{max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tutorial-modal-backdrop{align-items:center;background:#040812a6;display:flex;inset:0;justify-content:center;padding:16px;pointer-events:auto;position:fixed;z-index:20010}.tutorial-modal{background:linear-gradient(160deg,#141e36,#0c1224);border-radius:16px;box-shadow:0 0 0 1px #00e5ff4d,0 24px 48px #00000080;color:#eaf6ff;padding:20px;width:min(420px,100%)}.tutorial-modal h3{font-size:1.1rem;margin:0 0 8px}.tutorial-modal p{color:#eaf6ffd9;line-height:1.6;margin:0 0 16px;white-space:pre-wrap}.tutorial-modal-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.tutorial-root--demo-only{pointer-events:none}.tutorial-status-bar--demo{border-radius:16px;flex-wrap:wrap;gap:10px;justify-content:center;max-width:min(920px,calc(100vw - 24px))}.tutorial-chapter-menu{max-height:min(86vh,760px);overflow:auto;width:min(640px,100%)}.tutorial-chapter-menu-lead{color:#eaf6ffd9;font-size:.92rem;line-height:1.6;margin:0 0 14px;white-space:pre-wrap}.tutorial-chapter-all-done{background:#00e5ff1f;border:1px solid #00e5ff59;border-radius:10px;color:#dff6ff;font-size:.88rem;line-height:1.55;margin:0 0 14px;padding:10px 12px;white-space:pre-wrap}.tutorial-chapter-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:16px}.tutorial-chapter-card{background:#ffffff0a;border:1px solid #00e5ff38;border-radius:12px;display:flex;flex-direction:column;gap:8px;padding:12px}.tutorial-chapter-card.is-done{background:#50dc8c14;border-color:#50dc8c73}.tutorial-chapter-card.is-progress{background:#ffaa3c14;border-color:#ffaa3c80}.tutorial-chapter-card-head{align-items:flex-start;display:flex;gap:8px;justify-content:space-between}.tutorial-chapter-card-title{color:#eaf6ff;font-size:.98rem;font-weight:700;margin:0}.tutorial-chapter-badge{background:#ffffff14;border-radius:999px;color:#eaf6ffd9;flex-shrink:0;font-size:.72rem;padding:2px 8px;white-space:nowrap}.tutorial-chapter-badge.is-done{background:#50dc8c33;color:#b8f5d0}.tutorial-chapter-badge.is-progress{background:#ffaa3c38;color:#ffe0ad}.tutorial-menu-tabs{background:#ffffff0d;border-radius:12px;display:flex;gap:6px;margin:0 0 14px;padding:4px}.tutorial-menu-tab{background:#0000;border:0;border-radius:9px;color:#eaf6ffb8;cursor:pointer;flex:1 1;font-size:.86rem;font-weight:600;padding:8px 10px}.tutorial-menu-tab.is-active{background:#00e5ff2e;box-shadow:0 0 0 1px #00e5ff59;color:#eaf6ff}.tutorial-chapter-card-summary{color:#eaf6ffb8;flex:1 1;font-size:.82rem;line-height:1.5;margin:0}.tutorial-chapter-card-meta{color:#eaf6ff8c;font-size:.74rem;margin:0}.tutorial-chapter-card-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.tutorial-chapter-card-actions .tutorial-btn{font-size:.78rem;padding:6px 10px}@media (max-width:1100px){.tutorial-card{bottom:68px;left:12px;max-height:min(42vh,320px);right:12px;width:calc(100vw - 24px)}.tutorial-card-header{padding:12px 12px 8px}.tutorial-card-scroll{padding:10px 12px 6px}.tutorial-card-footer{padding:8px 10px 10px}.tutorial-card-actions{gap:5px}.tutorial-card-actions .tutorial-btn{font-size:.75rem;padding:6px 8px}.tutorial-card-body{font-size:.86rem}.tutorial-card-title{font-size:1.05rem}.tutorial-status-bar{font-size:.8rem;gap:8px;padding:7px 10px;width:calc(100vw - 20px)}.tutorial-pill,.tutorial-status-bar{bottom:10px;justify-content:space-between}.tutorial-pill{left:10px;right:10px}.tutorial-pill-text{flex:1 1;max-width:none}.tutorial-progress-dots{display:none}.tutorial-toc-panel{max-height:120px}.tutorial-chapter-grid{grid-template-columns:1fr}.tutorial-status-bar--demo{border-radius:14px;width:calc(100vw - 20px)}.tutorial-chapter-menu{max-height:90vh}}@media (prefers-reduced-motion:reduce){.tutorial-hole-ring-pulse,.tutorial-status-bar-dot{animation:none}}.App{text-align:left}.booking-management-system{background-color:#f8f9fa;min-height:100vh}
/*# sourceMappingURL=main.7c9949f4.css.map*/