:root{--primary:#0057d4;--primary-hover:#004bb8;--primary-light:#e8f3ff;--primary-border:#c8e0f8;--primary-gradient:linear-gradient(173deg, #0057d4 6%, #006afe 59%, #004bb8 94%);--accent-amber:#946000;--accent-amber-light:#fff8e6;--accent-amber-border:#fee2a6;--accent-amber-text:#946000;--accent-blue:#0057d4;--accent-blue-light:#e8f3ff;--accent-blue-border:#c8e0f8;--accent-blue-text:#0a4076;--accent-danger:#c0001a;--accent-danger-light:#fff0f2;--accent-danger-border:#eed8db;--accent-danger-text:#c0001a;--accent-success:#147a42;--accent-success-text:#147a42;--accent-success-light:#e8f6ee;--accent-success-border:#bfe5cf;--accent-category:#5c3fa3;--accent-category-light:#f0ebff;--border-control:#8a99a8;--bg-main:#f4f4f6;--surface:#fff;--surface-subtle:#f4f4f6;--text-main:#2b4152;--text-muted:#4b5a66;--text-light:#5f6e7b;--border-light:#dde2e8;--border-focus:#0057d4;--shadow-sm:0 1px 2px 0 #2b41520d;--shadow-md:0 2px 8px 0 #2b415212;--shadow-lg:0 4px 16px 0 #2b415217;--shadow-xl:0 12px 32px 0 #2b415224;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px;--font-family:"Heebo", "Rubik", system-ui, -apple-system, sans-serif;--transition:all .2s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #0057d426}body{font-family:var(--font-family);background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;direction:rtl;min-height:100vh;line-height:1.5}.app-container{max-width:900px;margin:0 auto;padding:24px 16px 48px}.app-header{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px 24px;display:flex}.brand-logo{align-items:center;gap:12px;display:flex}.brand-icon{background:var(--primary-light);width:44px;height:44px;color:var(--primary);border-radius:var(--radius-md);justify-content:center;align-items:center;display:flex}.brand-title h1{color:var(--text-main);font-size:1.25rem;font-weight:700}.brand-title p{color:var(--text-muted);font-size:.85rem}.user-profile{background:var(--surface-subtle);border-radius:var(--radius-full);align-items:center;gap:10px;padding:6px 14px;display:flex}.user-avatar{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;font-weight:600;display:flex}.stepper-bar{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;margin-bottom:24px;padding:20px 28px;display:flex;position:relative}.step-item{z-index:2;flex-direction:column;flex:1;align-items:center;gap:6px;display:flex;position:relative}.step-number{background:var(--surface-subtle);width:36px;height:36px;color:var(--text-muted);transition:var(--transition);border:2px solid var(--border-light);border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:flex}.step-item.active .step-number{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-light)}.step-item.completed .step-number{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}.step-item.completed:hover .step-number{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-light);cursor:pointer;transform:scale(1.1)}.step-item.completed:hover .step-label{color:var(--primary);font-weight:700}.step-label{color:var(--text-muted);transition:var(--transition);font-size:.85rem;font-weight:500}.step-item.completed .step-label{color:var(--primary);font-weight:500}.step-item.active .step-label{color:var(--primary);font-weight:700}.main-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-md);margin-bottom:24px;padding:32px}.card-title{color:var(--text-main);margin-bottom:8px;font-size:1.4rem;font-weight:700}.card-subtitle{color:var(--text-muted);margin-bottom:24px;font-size:.95rem}.service-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.service-card{background:var(--surface);border:2px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);flex-direction:column;gap:16px;padding:24px;display:flex;position:relative;overflow:hidden}.service-card:hover{border-color:var(--primary-border);box-shadow:var(--shadow-md);transform:translateY(-2px)}.service-card.selected{border-color:var(--primary);background:var(--primary-light);box-shadow:var(--shadow-md)}.service-icon-wrapper{border-radius:var(--radius-md);background:var(--surface-subtle);width:52px;height:52px;color:var(--text-main);transition:var(--transition);justify-content:center;align-items:center;display:flex}.service-card.selected .service-icon-wrapper{background:var(--primary);color:#fff}.service-details h3{margin-bottom:6px;font-size:1.15rem;font-weight:700}.service-details p{color:var(--text-muted);font-size:.9rem}.duration-pill{background:var(--surface-subtle);border-radius:var(--radius-full);color:var(--text-muted);align-items:center;gap:6px;width:fit-content;padding:4px 10px;font-size:.8rem;font-weight:600;display:inline-flex}.service-card.selected .duration-pill{background:var(--surface);color:var(--primary)}.pet-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;margin-bottom:24px;display:grid}.pet-card{background:var(--surface);border:2px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);align-items:center;gap:16px;padding:18px;display:flex;position:relative}.pet-card:hover:not(.disabled){border-color:var(--primary-border);transform:translateY(-2px)}.pet-card.selected{border-color:var(--primary);background:var(--primary-light)}.pet-card.disabled{opacity:.6;background:var(--surface-subtle);cursor:not-allowed;border-style:dashed}.pet-avatar-wrapper{background:var(--surface-subtle);border:2px solid var(--border-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.8rem;display:flex}.pet-info{flex:1}.pet-name{color:var(--text-main);font-size:1.05rem;font-weight:700}.pet-breed{color:var(--text-muted);margin-bottom:4px;font-size:.82rem}.pet-status-badge{border-radius:var(--radius-full);align-items:center;gap:4px;padding:3px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.pet-status-badge.pending{background:var(--accent-amber-light);color:var(--accent-amber)}.pet-status-badge.disabled-tag{color:var(--text-muted);background:#e2e8f0}.pet-checkbox{border:2px solid var(--border-focus);color:#fff;width:22px;height:22px;transition:var(--transition);border-radius:6px;justify-content:center;align-items:center;display:flex}.pet-card.selected .pet-checkbox{background:var(--primary);border-color:var(--primary)}.screening-section{flex-direction:column;gap:20px;display:flex}.screening-card{background:var(--surface-subtle);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-direction:column;gap:16px;padding:20px;display:flex}.screening-pet-header{align-items:center;gap:12px;display:flex}.screening-pet-avatar{width:40px;height:40px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:1.3rem;display:flex}.screening-pet-name{font-size:1.05rem;font-weight:700}.question-box{border-radius:var(--radius-sm);border:1px solid var(--border-light);background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.question-text{font-size:.95rem;font-weight:500}.btn-toggle-group{gap:8px;display:flex}.btn-toggle{border-radius:var(--radius-sm);border:1px solid var(--border-light);cursor:pointer;transition:var(--transition);background:#fff;padding:8px 18px;font-family:inherit;font-size:.9rem;font-weight:600}.btn-toggle.yes.active{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-toggle.no.active{background:var(--accent-danger);color:#fff;border-color:var(--accent-danger)}.resolution-banner{border-radius:var(--radius-md);align-items:flex-start;gap:14px;margin-top:16px;padding:16px 20px;display:flex}.resolution-banner.alert-warning{background:var(--accent-amber-light);color:#7a4f05;border:1px solid #fbd99d}.resolution-banner.alert-danger{background:var(--accent-danger-light);color:#70101d;border:1px solid #f5bcc4}.resolution-banner.alert-info{background:var(--accent-blue-light);color:#0a4076;border:1px solid #b8d9f9}.resolution-content h4{margin-bottom:4px;font-size:1rem;font-weight:700}.resolution-content p{font-size:.9rem}.slot-info-bar{background:var(--primary-light);border:1px solid var(--primary-border);border-radius:var(--radius-md);color:var(--primary);align-items:center;gap:12px;margin-bottom:24px;padding:14px 18px;font-weight:600;display:flex}.date-selector{gap:12px;margin-bottom:24px;padding-bottom:12px;display:flex;overflow-x:auto}.date-card{border-radius:var(--radius-md);border:1px solid var(--border-light);text-align:center;cursor:pointer;min-width:90px;transition:var(--transition);background:#fff;padding:12px 14px}.date-card:hover{border-color:var(--primary-border)}.date-card.selected{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:var(--shadow-sm)}.date-day{font-size:.8rem;font-weight:500}.date-num{margin:2px 0;font-size:1.2rem;font-weight:700}.date-month{opacity:.85;font-size:.75rem}.time-slots-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px;display:grid}.time-slot-btn{border-radius:var(--radius-md);border:1px solid var(--border-light);cursor:pointer;transition:var(--transition);background:#fff;justify-content:center;align-items:center;gap:6px;padding:12px;font-family:inherit;font-size:.95rem;font-weight:600;display:flex}.time-slot-btn:hover{border-color:var(--primary);color:var(--primary)}.time-slot-btn.selected{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:var(--shadow-sm)}.card-footer{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;margin-top:32px;padding-top:20px;display:flex}.btn-primary{background:var(--primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);border:none;align-items:center;gap:8px;padding:12px 28px;font-family:inherit;font-size:.95rem;font-weight:600;display:inline-flex}.btn-primary:hover:not(:disabled){background:var(--primary-hover);box-shadow:var(--shadow-md)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--surface-subtle);color:var(--text-main);border:1px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);padding:12px 24px;font-family:inherit;font-size:.95rem;font-weight:600}.btn-secondary:hover{background:#e2e8f0}.summary-box{background:var(--surface-subtle);border-radius:var(--radius-md);flex-direction:column;gap:16px;margin-bottom:24px;padding:24px;display:flex}.summary-row{border-bottom:1px dashed var(--border-light);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.summary-row:last-child{border-bottom:none;padding-bottom:0}.summary-label{color:var(--text-muted);font-weight:500}.summary-value{color:var(--text-main);font-weight:700}.success-badge-icon{background:var(--primary-light);width:64px;height:64px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;display:flex}@media (width<=640px){.app-header{flex-direction:column;align-items:flex-start;gap:12px}.user-profile{align-self:flex-end}.stepper-bar{padding:16px}.step-label{display:none}.main-card{padding:20px}.question-box{flex-direction:column;align-items:flex-start}.preview-row,.appointment-detail-row{flex-wrap:wrap}}.branch-select-row{color:var(--text-main);justify-content:flex-start;align-items:center;gap:12px;margin-bottom:20px;font-size:.95rem;font-weight:600;display:flex}.branch-pill-wrapper{position:relative}.branch-pill{background:var(--surface-subtle);border:1px solid var(--border-light);border-radius:var(--radius-full);color:var(--text-main);cursor:pointer;transition:var(--transition);align-items:center;gap:12px;padding:8px 18px;font-family:inherit;font-size:.95rem;font-weight:700;display:inline-flex}.branch-pill svg{color:var(--text-muted)}.branch-pill:hover{border-color:var(--primary-border)}.branch-dropdown{z-index:10;background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);min-width:220px;box-shadow:var(--shadow-lg);padding:8px;position:absolute;top:calc(100% + 8px);left:0}.branch-dropdown-header{color:var(--text-light);padding:6px 10px;font-size:.78rem;font-weight:600}.branch-option{border-radius:var(--radius-sm);cursor:pointer;color:var(--text-main);justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;font-size:.88rem;display:flex}.branch-option:hover{background:var(--surface-subtle)}.branch-option.active{background:var(--primary-light);color:var(--primary);font-weight:600}.branch-locked-note{color:var(--primary);justify-content:flex-start;align-items:center;gap:8px;margin-bottom:12px;font-size:.85rem;font-weight:600;display:flex}.pet-status-badge.exam-tag{background:var(--primary-light);color:var(--primary)}.reason-visit-note{color:var(--primary);font-size:.82rem;font-weight:600}.reason-label{color:var(--text-muted);font-size:.85rem;font-weight:600}.reason-textarea{resize:vertical;border-radius:var(--radius-sm);border:1px solid var(--border-light);width:100%;min-height:70px;color:var(--text-main);transition:var(--transition);background:#fff;padding:12px 14px;font-family:inherit;font-size:.9rem}.reason-textarea::placeholder{color:var(--text-light);font-style:italic}.reason-textarea:focus{border-color:var(--primary-border);box-shadow:0 0 0 3px var(--primary-light);outline:none}.preview-box{background:var(--surface-subtle);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:16px 20px}.preview-header{color:var(--primary);align-items:center;gap:8px;margin-bottom:12px;font-size:.95rem;font-weight:700;display:flex}.preview-rows{flex-direction:column;gap:8px;display:flex}.preview-row{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:#fff;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.preview-row-main{align-items:center;gap:10px;display:flex}.preview-order-badge{background:var(--primary-light);color:var(--primary);border-radius:var(--radius-full);flex-shrink:0;padding:2px 8px;font-size:.8rem;font-weight:700}.preview-pet{font-weight:400}.preview-label{color:var(--text-muted);font-size:.85rem}.preview-time{color:var(--text-main);font-size:.9rem;font-weight:700}.waitlist-box{background:var(--surface-subtle);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-main);cursor:pointer;transition:var(--transition);align-items:center;gap:12px;margin-top:16px;padding:14px 18px;font-size:.95rem;font-weight:600;display:flex}.waitlist-box input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.appointment-detail-row{background:var(--surface-subtle);border:1px solid var(--border-light);border-radius:var(--radius-md);align-items:center;gap:12px;margin-bottom:10px;padding:14px 18px;display:flex}.appointment-emoji{flex-shrink:0;font-size:1.4rem}.appointment-main{flex:1}.appointment-title{font-size:1rem;font-weight:700}.appointment-label{color:var(--text-muted);font-size:.85rem}.appointment-time{text-align:left}.appointment-time-range{color:var(--primary);font-size:1.05rem;font-weight:800}.appointment-duration{color:var(--text-muted);font-size:.75rem}.resolution-banner.alert-success{background:var(--primary-light);border:1px solid var(--primary-border);color:var(--primary-hover)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.admin-layout{background:var(--bg-main);min-height:100vh}.admin-sidebar{background:var(--surface);border-left:1px solid var(--border-light);width:260px;height:100vh;box-shadow:var(--shadow-md);z-index:100;flex-direction:column;display:flex;position:fixed;top:0;right:0}.sidebar-brand{border-bottom:1px solid var(--border-light);flex-direction:column;align-items:center;gap:8px;padding:20px 24px;display:flex}.sidebar-brand-logo{width:auto;height:32px}.sidebar-brand-text p{color:var(--text-muted);font-size:.75rem}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:16px 12px;display:flex}.sidebar-nav-item{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:var(--transition);text-align:right;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:10px 14px;font-family:inherit;font-size:.875rem;font-weight:500;display:flex;overflow:hidden}.sidebar-nav-item:hover{background:var(--surface-subtle);color:var(--text-main)}.sidebar-nav-item.active{background:var(--primary-light);color:var(--primary);font-weight:600}.sidebar-user{border-top:1px solid var(--border-light);align-items:center;gap:10px;padding:16px 20px;display:flex}.sidebar-user-avatar{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.875rem;font-weight:600;display:flex}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{color:var(--text-main);font-size:.875rem;font-weight:600}.sidebar-user-role{color:var(--text-muted);font-size:.75rem}.admin-main{scrollbar-gutter:stable;height:100vh;min-height:100vh;margin-right:260px;padding:24px 32px 48px;overflow:hidden auto}.kpi-tiles{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.kpi-tile{background:var(--surface-subtle);border-radius:var(--radius-sm);border:1px solid var(--border-light);text-align:center;cursor:pointer;min-width:120px;transition:var(--transition);flex:1;padding:16px}.kpi-tile:hover{box-shadow:var(--shadow-sm);background:var(--primary-light);border-color:var(--primary-border)}.kpi-tile-icon{color:var(--primary);margin-bottom:6px}.kpi-tile-value{color:var(--text-main);font-family:Rubik,sans-serif;font-size:1.5rem;font-weight:700;line-height:1}.kpi-tile-label{color:var(--text-muted);margin-top:4px;font-size:.75rem;font-weight:500}.management-container{flex-direction:column;gap:24px;display:flex}.management-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.management-title{color:var(--text-main);align-items:center;gap:10px;margin:0;font-size:1.5rem;font-weight:700;display:flex}.management-subtitle{color:var(--text-muted);margin:4px 0 0;font-size:.875rem}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.page-header h1{color:var(--text-main);font-size:1.5rem;font-weight:700}.page-header-actions{flex-wrap:wrap;gap:12px;display:flex}.filters-bar{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);flex-wrap:wrap;gap:12px;margin-bottom:24px;padding:16px 20px;display:flex}.filter-input,.filter-select{border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--surface);color:var(--text-main);transition:var(--transition);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:12px;background-repeat:no-repeat;min-width:160px;min-height:40px;padding:8px 14px 8px 32px;font-family:inherit;font-size:.875rem}.filter-input:focus,.filter-select:focus{border-color:var(--primary-border);box-shadow:0 0 0 3px var(--primary-light);outline:none}.filter-input::placeholder{color:var(--text-light)}.users-table{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);width:100%;box-shadow:var(--shadow-sm);overflow-x:auto}.users-table table{border-collapse:collapse;width:100%}.users-table th{text-align:right;color:var(--text-muted);background:var(--surface-subtle);border-bottom:1px solid var(--border-light);padding:14px 18px;font-size:.875rem;font-weight:600}.users-table td{border-bottom:1px solid var(--border-light);color:var(--text-main);padding:14px 18px;font-size:.875rem}.users-table tr:last-child td{border-bottom:none}.users-table tr:hover td{background:var(--surface-subtle);cursor:pointer}.user-name-cell{align-items:center;gap:10px;display:flex}.user-table-avatar{background:var(--primary-light);width:34px;height:34px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;display:flex}.status-badge,.task-status-badge,.hosp-status-badge,.branch-status-badge,.dash-apt-status{border-radius:var(--radius-full);white-space:nowrap;align-items:center;gap:4px;padding:2px 10px;font-size:12px;font-weight:600;line-height:18px;display:inline-flex}.status-badge.success{background:var(--primary-light);color:var(--primary)}.status-badge.warning{background:var(--accent-amber-light);color:var(--accent-amber-text)}.status-badge.danger{background:var(--accent-danger-light);color:var(--accent-danger)}.admin-form{max-width:720px}.form-section{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);margin-bottom:20px;padding:28px}.form-section-title{color:var(--text-main);align-items:center;gap:8px;margin-bottom:20px;font-size:1.125rem;font-weight:700;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.form-group{flex-direction:column;gap:6px;display:flex}.form-group.full-width{grid-column:1/-1}.form-label{color:var(--text-muted);font-size:.875rem;font-weight:600}.form-label .required{color:var(--accent-danger);margin-right:2px}.form-input,.form-select,.form-textarea{border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--surface);color:var(--text-main);transition:var(--transition);width:100%;padding:10px 14px;font-family:inherit;font-size:.875rem}.form-input,.form-select{min-height:40px}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:12px;background-repeat:no-repeat;padding-left:32px}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary-border);box-shadow:0 0 0 3px var(--primary-light);outline:none}.btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.form-input.error,.form-select.error{border-color:var(--accent-danger);box-shadow:0 0 0 3px var(--accent-danger-light)}.form-error{color:var(--accent-danger);font-size:.875rem;font-weight:500}.form-input::placeholder{color:var(--text-light)}.form-input[type=date],.form-input[type=time]{text-align:right;direction:ltr}.form-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.7;filter:none}.permissions-box{background:var(--surface-subtle);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:14px 18px}.permissions-title{color:var(--text-muted);align-items:center;gap:6px;margin-bottom:10px;font-size:.875rem;font-weight:600;display:flex}.permissions-list{flex-wrap:wrap;gap:8px;display:flex}.permission-tag{border-radius:var(--radius-full);background:var(--primary-light);color:var(--primary);border:1px solid var(--primary-border);align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:500;display:inline-flex}.branch-tags{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.branch-tag{border-radius:var(--radius-full);background:var(--surface-subtle);border:1px solid var(--border-light);color:var(--text-main);align-items:center;gap:6px;padding:5px 12px;font-size:.875rem;font-weight:500;display:inline-flex}.branch-tag .remove-btn{cursor:pointer;color:var(--text-muted);transition:var(--transition);background:0 0;border:none;align-items:center;padding:0;display:flex}.branch-tag .remove-btn:hover{color:var(--accent-danger)}.vet-skill-row{border-radius:var(--radius-md);background:var(--surface-subtle);border:1px solid var(--border-light);align-items:center;gap:12px;padding:10px 14px;display:flex}.vet-skill-name{color:var(--text-main);flex-shrink:0;align-items:center;gap:6px;min-width:150px;font-size:.875rem;font-weight:600;display:flex}.vet-skill-category{max-width:200px;font-size:.875rem}.vet-skill-row>.remove-btn{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);transition:var(--transition);background:0 0;border:none;align-items:center;margin-inline-start:auto;padding:4px;display:flex}.vet-skill-row>.remove-btn:hover{color:var(--accent-danger);background:var(--accent-danger-light)}.profile-layout{grid-template-columns:1fr 320px;align-items:start;gap:24px;display:grid}.profile-card{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);padding:28px}.profile-header{align-items:center;gap:16px;margin-bottom:24px;display:flex}.profile-avatar{background:var(--primary-light);width:64px;height:64px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.125rem;font-weight:700;display:flex}.profile-name{color:var(--text-main);font-size:1.125rem;font-weight:700}.profile-role{color:var(--text-muted);font-size:.875rem}.profile-info-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.profile-info-item{flex-direction:column;gap:4px;display:flex}.profile-info-label{color:var(--text-light);font-size:.875rem;font-weight:600}.profile-info-value{color:var(--text-main);font-size:.875rem;font-weight:500}.profile-actions{flex-direction:column;gap:10px;display:flex}.profile-action-btn{border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--surface);color:var(--text-main);cursor:pointer;transition:var(--transition);text-align:right;align-items:center;gap:10px;width:100%;padding:12px 16px;font-family:inherit;font-size:.875rem;font-weight:600;display:flex}.profile-action-btn:hover{background:var(--surface-subtle);border-color:var(--primary-border)}.profile-action-btn.danger{color:var(--accent-danger)}.profile-action-btn.danger:hover{background:var(--accent-danger-light);border-color:var(--accent-danger)}.profile-action-btn.success{color:var(--primary)}.profile-action-btn.success:hover{background:var(--primary-light);border-color:var(--primary)}.modal-overlay{z-index:200;background:#0006;justify-content:center;align-items:center;padding:24px;animation:.2s ease-out modalFadeIn;display:flex;position:fixed;inset:0}.modal-box{background:var(--surface);box-shadow:var(--shadow-xl);border:1px solid var(--primary-border);border-radius:28px;width:100%;max-width:480px;max-height:85vh;padding:32px;animation:.25s ease-out modalSlideUp;position:relative;overflow-y:auto}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.modal-box:has(.modal-close-btn){padding:0;overflow:visible}.modal-close-btn{background:var(--surface);border:1px solid var(--border-light);width:40px;height:40px;box-shadow:var(--shadow-md);z-index:1;cursor:pointer;color:var(--text-muted);transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-20px;left:50%;transform:translate(-50%)}.modal-close-btn:hover{color:var(--text-main);background:var(--surface-subtle)}.modal-scroll{border-radius:inherit;max-height:85vh;padding:32px;overflow-y:auto}.modal-icon{border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;display:flex}.modal-icon.warning{background:var(--accent-amber-light);color:var(--accent-amber)}.modal-icon.danger{background:var(--accent-danger-light);color:var(--accent-danger)}.modal-icon.success{background:var(--primary-light);color:var(--primary)}.modal-icon.info{background:var(--accent-blue-light);color:var(--accent-blue)}.modal-title{text-align:center;color:var(--text-main);margin-bottom:8px;font-size:1.125rem;font-weight:700}.modal-text{color:var(--text-muted);text-align:center;margin-bottom:24px;font-size:.875rem;line-height:1.6}.modal-actions{justify-content:center;gap:12px;display:flex}.btn{border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:10px 22px;font-family:inherit;font-size:.875rem;font-weight:600;display:inline-flex}.btn-sm{min-height:32px;padding:6px 14px;font-size:.875rem}.btn-icon{min-width:32px;min-height:32px;padding:6px}.btn-primary{background:var(--primary-gradient);color:#fff;border:none;font-weight:700}.btn-primary:hover:not(:disabled){filter:brightness(1.05);box-shadow:var(--shadow-md)}.btn-primary:disabled{background:var(--border-light);color:var(--text-light);cursor:not-allowed}.btn-outline{background:var(--surface);color:var(--text-main);border:1px solid var(--border-light)}.btn-outline:hover{background:var(--surface-subtle)}.btn-danger{background:var(--accent-danger);color:#fff}.btn-danger:hover{filter:brightness(.9)}.btn-ghost{color:var(--text-muted);background:0 0;border:none;padding:8px 12px}.btn-ghost:hover{color:var(--text-main);background:var(--surface-subtle)}.toast-container{z-index:300;flex-direction:column;gap:8px;display:flex;position:fixed;top:24px;left:50%;transform:translate(-50%)}.toast{border-radius:var(--radius-md);box-shadow:var(--shadow-lg);align-items:center;gap:10px;min-width:320px;padding:14px 24px;font-size:.875rem;font-weight:600;animation:.3s ease-out slideDown;display:flex}.toast.success{background:var(--primary);color:#fff}.toast.error{background:var(--accent-danger);color:#fff}.toast.warning{background:var(--accent-amber);color:#fff}.toast.info{background:var(--accent-blue);color:#fff}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.auth-page{background:var(--bg-main);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);width:100%;max-width:440px;padding:40px}.auth-brand{justify-content:center;align-items:center;margin-bottom:32px;display:flex}.auth-brand-logo{width:auto;height:40px}.auth-title{text-align:center;color:var(--text-main);margin-bottom:8px;font-size:1.125rem;font-weight:700}.auth-subtitle{color:var(--text-muted);text-align:center;margin-bottom:28px;font-size:.875rem}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-form .form-group{gap:6px}.auth-link{text-align:center;margin-top:16px}.auth-link button{color:var(--primary);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:.875rem;font-weight:600;text-decoration:underline}.auth-link button:hover{color:var(--primary-hover)}.otp-input-row{direction:ltr;justify-content:center;gap:10px;display:flex}.otp-digit{text-align:center;border-radius:var(--radius-sm);border:2px solid var(--border-light);width:48px;height:56px;transition:var(--transition);font-family:inherit;font-size:1.5rem;font-weight:700}.otp-digit:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);outline:none}.password-rules{flex-direction:column;gap:4px;margin-top:4px;display:flex}.password-rule{color:var(--text-muted);align-items:center;gap:6px;font-size:.75rem;display:flex}.password-rule.pass{color:var(--primary)}.password-rule.fail{color:var(--accent-danger)}.shift-user-list{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-direction:column;gap:10px;margin-bottom:20px;padding:16px;display:flex}.shift-user-card{border-radius:var(--radius-md);border:2px solid var(--border-light);background:var(--surface);cursor:pointer;transition:var(--transition);align-items:center;gap:12px;padding:14px 18px;display:flex}.shift-user-card:hover{border-color:var(--primary-border)}.shift-user-card.selected{border-color:var(--primary);background:var(--primary-light)}.shift-user-avatar{background:var(--surface-subtle);width:44px;height:44px;color:var(--primary);border:2px solid var(--border-light);border-radius:50%;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;display:flex}.shift-user-card.selected .shift-user-avatar{background:var(--primary);color:#fff;border-color:var(--primary)}.shift-user-card.blocked{color:var(--text-muted);border-color:var(--accent-danger-border);background:var(--surface-subtle)}.shift-user-card.blocked .shift-user-avatar{background:var(--accent-danger-light);color:var(--accent-danger);border-color:var(--accent-danger-border)}.shift-user-card.blocked.selected{border-color:var(--accent-danger);background:var(--accent-danger-light)}.shift-user-card.blocked.selected .shift-user-avatar{background:var(--accent-danger);color:#fff;border-color:var(--accent-danger)}.shift-user-name{font-size:1rem;font-weight:600}.shift-user-role{color:var(--text-muted);font-size:.875rem}.inactivity-overlay{z-index:500;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.inactivity-box{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);text-align:center;max-width:440px;padding:40px}.empty-state{text-align:center;color:var(--text-muted);padding:48px 24px}.empty-state-icon{background:var(--surface-subtle);width:64px;height:64px;color:var(--text-light);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.nav-tabs{gap:2px;margin-bottom:4px;padding-bottom:0;display:flex}.nav-tab{color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 18px;font-family:inherit;font-size:.875rem;font-weight:600}.nav-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.nav-tab:hover:not(.active){color:var(--text-main)}.mobile-topbar,.mobile-drawer-scrim,.mobile-drawer{display:none}@media (width<=900px){.admin-sidebar{display:none}.mobile-topbar{background:var(--surface);border-bottom:1px solid var(--border-light);z-index:80;justify-content:space-between;align-items:center;height:56px;padding:0 16px;display:flex;position:fixed;top:0;left:0;right:0}.mobile-menu-btn{justify-content:center;align-items:center;width:44px;height:44px;display:flex}.mobile-drawer-scrim{z-index:200;background:#0006;display:block;position:fixed;inset:0}.mobile-drawer{background:var(--surface);width:280px;box-shadow:var(--shadow-lg);z-index:201;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.admin-main{scrollbar-gutter:auto;margin-top:56px;margin-right:0;padding:16px}.profile-layout,.form-grid,.profile-info-grid{grid-template-columns:1fr}}@media (width<=640px){.filters-bar{flex-direction:column}.filters-bar .form-input,.filters-bar .form-select{width:100%;min-width:0}.page-header{flex-direction:column;align-items:flex-start}.page-header-actions{flex-wrap:wrap;width:100%}.page-header-actions .btn{white-space:nowrap}.tabs-bar{-webkit-overflow-scrolling:touch;overflow-x:auto}.tab-btn{white-space:nowrap;flex-shrink:0}.task-stats-row{flex-wrap:wrap}.management-header{flex-direction:column;align-items:stretch}.management-header>div{flex-wrap:wrap}}.cal-stats-bar{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.cal-stat{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);text-align:center;flex:1;min-width:100px;padding:14px 18px}.cal-stat-num{color:var(--text-main);font-size:1.5rem;font-weight:800}.cal-stat-label{color:var(--text-muted);margin-top:2px;font-size:.75rem;font-weight:600}.cal-view-controls{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:20px;padding:10px 16px;display:flex}.cal-nav-group{align-items:center;gap:8px;display:flex}.cal-view-tabs{background:var(--surface-subtle);border-radius:var(--radius-sm);gap:4px;padding:3px;display:flex}.cal-view-tab{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:none;padding:6px 16px;font-family:inherit;font-size:.875rem;font-weight:600}.cal-view-tab.active{background:var(--primary);color:#fff}.cal-view-tab:hover:not(.active){color:var(--text-main)}.cal-day-view{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);flex:auto;min-width:0;overflow-x:auto}.cal-timeline{flex-direction:column;display:flex}.cal-hour-row{border-bottom:1px solid var(--border-light);min-height:72px;display:flex}.cal-hour-row:last-child{border-bottom:none}.cal-hour-label{width:64px;color:var(--text-light);background:var(--surface-subtle);border-left:1px solid var(--border-light);text-align:center;z-index:2;flex-shrink:0;padding:10px 12px;font-size:.75rem;font-weight:600;position:sticky;inset-inline-start:0}.cal-hour-content{flex-direction:column;flex:1;gap:4px;padding:6px 10px;display:flex}.cal-appointment-block{border-radius:var(--radius-sm);transition:var(--transition);padding:8px 12px}.cal-appointment-block:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.cal-cancel-btn{width:28px;height:28px;color:var(--text-light);border-radius:var(--radius-sm);cursor:pointer;opacity:0;transition:var(--transition);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.cal-appointment-block:hover .cal-cancel-btn{opacity:1}.cal-cancel-btn:hover{background:var(--accent-danger-light);color:var(--accent-danger)}.cal-constraint-block{border-radius:var(--radius-sm);background:var(--accent-amber-light);border:1px dashed var(--accent-amber);cursor:pointer;align-items:center;gap:8px;padding:6px 10px;display:flex}.cal-constraint-block:hover{background:var(--accent-amber-border)}.cal-week-view{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:auto}.cal-week-room-grid{min-width:900px}.cal-week-room-corner{border-bottom:2px solid var(--border-light);border-left:1px solid var(--border-light);background:var(--surface-subtle);justify-content:center;align-items:center;padding:10px 8px;display:flex}.cal-week-day-header{text-align:center;cursor:pointer;transition:var(--transition);border-left:1px solid var(--border-light);border-bottom:2px solid var(--border-light);padding:10px 8px}.cal-week-day-header:hover{background:var(--surface-subtle)}.cal-week-day-header.today{background:var(--primary-light)}.cal-week-day-name{color:var(--text-muted);font-size:.75rem;font-weight:600}.cal-week-day-num{color:var(--text-main);font-size:1.125rem;font-weight:800}.cal-week-day-count{color:var(--text-light);font-size:.75rem}.cal-week-room-label{border-bottom:1px solid var(--border-light);border-left:1px solid var(--border-light);background:var(--surface-subtle);align-items:center;gap:6px;min-height:60px;padding:8px 10px;display:flex}.cal-week-room-cell{border-left:1px solid var(--border-light);border-bottom:1px solid var(--border-light);flex-direction:column;gap:3px;min-height:60px;padding:4px;display:flex}.cal-week-apt{border-radius:var(--radius-sm);transition:var(--transition);padding:5px 7px}.cal-week-apt:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.cal-month-view{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden}.cal-month-header-row{border-bottom:1px solid var(--border-light);background:var(--surface-subtle);grid-template-columns:repeat(7,1fr);display:grid}.cal-month-header-cell{text-align:center;color:var(--text-muted);padding:10px 8px;font-size:.75rem;font-weight:600}.cal-month-grid{grid-template-columns:repeat(7,1fr);display:grid}.cal-month-cell{border-bottom:1px solid var(--border-light);border-left:1px solid var(--border-light);cursor:pointer;min-height:80px;transition:var(--transition);padding:6px 8px}.cal-month-cell:nth-child(7n){border-left:none}.cal-month-cell:hover{background:var(--surface-subtle)}.cal-month-cell.outside{color:var(--text-light);background:var(--surface-subtle)}.cal-month-cell.today{background:var(--primary-light)}.cal-month-date{color:var(--text-main);margin-bottom:4px;font-size:.875rem;font-weight:700}.cal-month-count{margin-bottom:2px}.cal-month-dots{flex-wrap:wrap;align-items:center;gap:3px;display:flex}.cal-waitlist-sidebar{flex-shrink:0;width:320px}.cal-waitlist-overlay-scrim,.cal-waitlist-overlay-drawer{display:none}@media (width<=1199px){.cal-waitlist-sidebar{display:none}.cal-waitlist-overlay-scrim{z-index:90;background:#0006;display:block;position:fixed;inset:0}.cal-waitlist-overlay-drawer{z-index:91;background:var(--surface);width:320px;box-shadow:var(--shadow-lg);padding:16px;display:block;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}}.cal-waitlist-panel{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:16px}.cal-waitlist-item{border:1px solid var(--border-light);border-radius:var(--radius-sm);transition:var(--transition);margin-bottom:8px;padding:10px 14px}.cal-waitlist-item:hover{background:var(--surface-subtle)}.cal-notes-list{flex-direction:column;gap:8px;display:flex}.cal-note-item{background:var(--surface-subtle);border-radius:var(--radius-sm);border-right:3px solid var(--border-light);padding:10px 14px}.cal-note-item.urgent{background:var(--accent-danger-light);border-right-color:var(--accent-danger)}.cal-status-timeline{flex-direction:column;gap:16px;padding-right:20px;display:flex;position:relative}.cal-status-timeline:before{content:"";background:var(--border-light);width:2px;position:absolute;top:8px;bottom:8px;right:6px}.cal-timeline-item{align-items:flex-start;gap:12px;display:flex;position:relative}.cal-timeline-dot{border:2px solid var(--surface);border-radius:50%;flex-shrink:0;width:14px;height:14px;position:absolute;top:2px;right:-20px}.cal-steps-bar{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);gap:8px;margin-bottom:24px;padding:16px 20px;display:flex}.cal-step{border-radius:var(--radius-sm);color:var(--text-light);flex:1;align-items:center;gap:10px;padding:8px 14px;display:flex}.cal-step.active{color:var(--text-main);background:var(--primary-light)}.cal-step.done{color:var(--text-muted)}.cal-step-num{background:var(--surface-subtle);border:2px solid var(--border-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;font-weight:700;display:flex}.cal-step.active .cal-step-num{background:var(--primary);color:#fff;border-color:var(--primary)}.cal-step.done .cal-step-num{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}.cal-step-title{color:var(--text-main);font-size:.875rem;font-weight:600}.cal-customer-list{flex-direction:column;gap:6px;max-height:280px;display:flex;overflow-y:auto}.cal-customer-card{border:2px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.cal-customer-card:hover{border-color:var(--primary-border);background:var(--surface-subtle)}.cal-customer-card.selected{border-color:var(--primary);background:var(--primary-light)}.cal-pet-card{border:2px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);align-items:center;gap:10px;min-width:180px;padding:10px 16px;display:flex}.cal-pet-card:hover{border-color:var(--primary-border)}.cal-pet-card.selected{border-color:var(--primary);background:var(--primary-light)}.cal-slots-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;display:grid}.cal-slot-btn{border:2px solid var(--border-light);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;transition:var(--transition);flex-direction:column;align-items:center;padding:10px 8px;font-family:inherit;font-size:.875rem;display:flex}.cal-slot-btn:hover:not(:disabled){border-color:var(--primary-border);background:var(--surface-subtle)}.cal-slot-btn.selected{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.cal-slot-btn.conflict{background:var(--surface-subtle);color:var(--text-light);cursor:not-allowed;border-color:#0000}.cal-slot-btn:disabled{cursor:not-allowed}.cal-slot-btn.conflict-override{background:var(--accent-danger-light);border:1px dashed var(--accent-danger)!important;cursor:pointer!important}.cal-slot-btn.conflict-override:hover{background:var(--accent-danger-border);box-shadow:0 0 0 2px var(--accent-danger-border)}.cal-hour-row.cal-drag-over{background:var(--accent-blue-light);box-shadow:inset 0 0 0 2px var(--accent-blue);transition:background .15s,box-shadow .15s}.cal-appointment-block.cal-override{border-right:4px solid var(--accent-danger)!important;background:var(--accent-danger-light)!important}.cal-appointment-block.cal-affected-by-override{border:1px dashed var(--accent-amber);border-right:4px solid var(--accent-amber)!important;background:var(--accent-amber-light)!important;border-right:4px solid var(--accent-amber)!important}.cal-appointment-block[draggable=true]{cursor:grab}.cal-appointment-block[draggable=true]:active{cursor:grabbing;opacity:.6}.cal-room-grid{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:auto}.cal-room-header-corner{z-index:3;background:var(--surface-subtle);border-bottom:2px solid var(--border-light);border-left:1px solid var(--border-light);justify-content:center;align-items:center;padding:10px;display:flex;position:sticky;inset-inline-start:0}.cal-room-header{color:var(--text-main);background:var(--surface-subtle);border-bottom:2px solid var(--border-light);border-left:1px solid var(--border-light);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:10px 8px;font-size:.875rem;font-weight:700;display:flex}.cal-room-header:last-child{border-left:none}.cal-room-seq{background:var(--primary-light);color:var(--primary);border-radius:8px;padding:0 6px;font-size:.75rem;font-weight:600}.cal-room-hour-label{z-index:2;width:64px;color:var(--text-light);background:var(--surface-subtle);border-left:1px solid var(--border-light);border-bottom:1px solid var(--border-light);text-align:center;padding:10px 12px;font-size:.75rem;font-weight:600;position:sticky;inset-inline-start:0}.cal-room-cell{border-left:1px solid var(--border-light);border-bottom:1px solid var(--border-light);flex-direction:column;gap:4px;min-height:72px;padding:4px 6px;transition:background .15s;display:flex}.cal-room-cell:last-child{border-left:none}.cal-room-cell.cal-drag-over{background:var(--primary-light)}.cal-room-apt{border-radius:var(--radius-sm);transition:var(--transition);min-width:0;padding:8px 10px}.cal-room-apt span{white-space:nowrap}.cal-room-apt:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.cal-room-apt.cal-override{border-right:4px solid var(--accent-danger)!important;background:var(--accent-danger-light)!important}.cal-room-apt.cal-affected-by-override{border:1px dashed var(--accent-amber);border-right:4px solid var(--accent-amber)!important;background:var(--accent-amber-light)!important;border-right:4px solid var(--accent-amber)!important}.cal-room-apt[draggable=true]{cursor:grab}.cal-room-apt[draggable=true]:active{cursor:grabbing;opacity:.6}.cal-now-line{background:var(--accent-danger);z-index:5;pointer-events:none;height:2px;position:absolute;left:0;right:0}.cal-now-line:before{content:"";background:var(--accent-danger);border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;right:-5px}.cal-apt-header{justify-content:space-between;align-items:flex-start;gap:6px;display:flex}.cal-apt-customer{color:var(--text-main);align-items:center;gap:4px;min-width:0;font-size:.875rem;font-weight:700;display:flex}.cal-apt-meta{color:var(--text-muted);align-items:center;gap:3px;margin-top:2px;font-size:.75rem;display:flex}.cal-apt-service{color:var(--text-muted);align-items:center;gap:4px;margin-top:1px;font-size:.75rem;display:flex}.cal-apt-time{color:var(--text-light);flex-wrap:wrap;gap:8px;margin-top:3px;font-size:.75rem;display:flex}.cal-apt-time-value{align-items:center;gap:3px;display:inline-flex}.cal-apt-secondary{color:var(--text-main);align-items:center;gap:3px;font-weight:600;display:inline-flex}.cal-apt-badges{flex-wrap:wrap;gap:4px;margin-top:3px;display:flex}.cal-apt-badge{white-space:nowrap;border-radius:8px;align-items:center;gap:2px;padding:1px 6px;font-size:.75rem;display:inline-flex}.cal-apt-badge--combined{background:var(--accent-blue-light);color:var(--accent-blue)}.cal-apt-badge--walkin{background:var(--accent-amber-light);color:var(--accent-amber-text)}.cal-apt-badge--override{background:var(--accent-danger-border);color:var(--accent-danger-text)}.cal-apt-badge--affected{background:var(--accent-amber-light);color:var(--accent-amber-text)}.cal-filter-chips{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.cal-filter-chip{background:var(--primary-light);color:var(--primary);border:1px solid var(--primary-border);cursor:pointer;transition:var(--transition);border-radius:16px;align-items:center;gap:4px;padding:4px 10px;font-family:inherit;font-size:.75rem;font-weight:600;display:inline-flex}.cal-filter-chip:hover{background:var(--primary-border)}.cal-filter-chip-clear{background:var(--surface-subtle);color:var(--text-muted);border:1px solid var(--border-light);cursor:pointer;transition:var(--transition);border-radius:16px;align-items:center;gap:4px;padding:4px 10px;font-family:inherit;font-size:.75rem;font-weight:600;display:inline-flex}.cal-filter-chip-clear:hover{background:var(--accent-danger-light);color:var(--accent-danger-text);border-color:var(--accent-danger-border)}.cal-col-util{background:var(--border-light);border-radius:2px;width:100%;height:4px;margin-top:4px;overflow:hidden}.cal-col-util-fill{border-radius:2px;height:100%;transition:width .3s}.cal-slot-group{margin-bottom:16px}.cal-slot-group:last-child{margin-bottom:0}.cal-slot-period{color:var(--text-main);align-items:center;gap:8px;margin-bottom:8px;font-size:.813rem;font-weight:700;display:flex}.cal-slot-period:after{content:"";background:var(--border-light);flex:1;height:1px}.cal-slot-period-icon{color:var(--text-light);align-items:center;display:inline-flex}.cal-slot-vet-name{color:var(--text-light);white-space:nowrap;text-overflow:ellipsis;text-align:center;max-width:90px;margin-top:2px;font-size:.625rem;display:block;overflow:hidden}.cal-status-stepper{align-items:flex-start;gap:0;margin-top:8px;padding:16px 0;display:flex;overflow-x:auto}.cal-stepper-step{flex-direction:column;flex:1;align-items:center;gap:4px;min-width:0;display:flex;position:relative}.cal-stepper-dot{z-index:1;border:2px solid var(--border-light);background:var(--surface);width:28px;height:28px;color:var(--text-light);transition:var(--transition);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.cal-stepper-step.done .cal-stepper-dot{border-color:var(--accent-success-text);background:var(--accent-success-light);color:var(--accent-success-text)}.cal-stepper-step.current .cal-stepper-dot{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 0 0 3px var(--primary-light)}.cal-stepper-step.cancelled .cal-stepper-dot{border-color:var(--accent-danger);background:var(--accent-danger-light);color:var(--accent-danger)}.cal-stepper-line{background:var(--border-light);z-index:0;height:2px;position:absolute;top:14px;left:50%;right:-50%}.cal-stepper-step.done .cal-stepper-line,.cal-stepper-step.current .cal-stepper-line{background:var(--accent-success-text)}.cal-stepper-step.cancelled .cal-stepper-line{background:var(--accent-danger-border)}.cal-stepper-label{color:var(--text-light);text-align:center;white-space:nowrap;font-size:.688rem;font-weight:600}.cal-stepper-step.done .cal-stepper-label{color:var(--accent-success-text)}.cal-stepper-step.current .cal-stepper-label{color:var(--primary);font-weight:700}.cal-stepper-step.cancelled .cal-stepper-label{color:var(--accent-danger)}.cal-stepper-time{color:var(--text-light);font-size:.625rem}.cal-detail-actions{z-index:10;background:var(--surface);border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;gap:8px;margin:-16px -16px 0;padding:10px 20px;display:flex;position:sticky;top:0}.cal-detail-actions-right{align-items:center;gap:10px;display:flex}.cal-detail-actions-left{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.cal-detail-body{padding:20px 4px 0}.cal-detail-hero{background:var(--surface-subtle);border-radius:var(--radius-md);align-items:center;gap:16px;margin-bottom:20px;padding:16px 20px;display:flex}.cal-detail-avatar{background:var(--primary-light);width:52px;height:52px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.cal-detail-hero-info{flex:1;min-width:0}.cal-detail-hero-name{color:var(--text-main);margin-bottom:2px;font-size:1.05rem;font-weight:700}.cal-detail-hero-sub{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:.813rem;display:flex}.cal-detail-hero-sub span{align-items:center;gap:4px;display:inline-flex}.cal-detail-section{margin-bottom:20px}.cal-detail-section-title{color:var(--text-light);text-transform:uppercase;letter-spacing:.03em;align-items:center;gap:6px;margin-bottom:12px;font-size:.813rem;font-weight:700;display:flex}.cal-detail-grid{grid-template-columns:1fr 1fr;gap:0;display:grid}.cal-detail-field{border-bottom:1px solid var(--border-light);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.cal-detail-grid .cal-detail-field:nth-child(odd){border-left:1px solid var(--border-light)}.cal-detail-field-label{color:var(--text-light);align-items:center;gap:4px;font-size:.75rem;font-weight:600;display:flex}.cal-detail-field-value{color:var(--text-main);font-size:.875rem;font-weight:500}.cal-detail-edit-form{padding:16px}.cal-detail-edit-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.cal-detail-edit-field{flex-direction:column;gap:4px;display:flex}.cal-detail-edit-label{color:var(--text-muted);align-items:center;gap:4px;font-size:.75rem;font-weight:500;display:flex}.cal-detail-edit-field .form-select,.cal-detail-edit-field .form-input{border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--surface);transition:border-color var(--transition);padding:8px 10px;font-size:.875rem}.cal-detail-edit-field .form-select:focus,.cal-detail-edit-field .form-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light);outline:none}.cal-detail-card{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);margin-bottom:16px;overflow:hidden}.cal-detail-card-header{background:var(--surface-subtle);border-bottom:1px solid var(--border-light);color:var(--text-main);align-items:center;gap:6px;padding:10px 14px;font-size:.813rem;font-weight:700;display:flex}.cal-detail-card-body{padding:0}.cal-detail-note-input{background:var(--surface);padding:14px}.cal-detail-note-row{align-items:flex-start;gap:8px;display:flex}.cal-detail-note-row .form-textarea{resize:none;border-radius:var(--radius-md);border:1px solid var(--border-light);min-height:42px;transition:border-color var(--transition), box-shadow var(--transition);flex:1;padding:10px 12px;font-size:.813rem}.cal-detail-note-row .form-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.cal-detail-note-actions{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.cal-detail-notes-list{padding:6px 14px 14px}.cal-detail-note{border-bottom:1px solid var(--border-light);transition:var(--transition);gap:10px;padding:12px 0;display:flex}.cal-detail-note:last-child{border-bottom:none}.cal-detail-note.urgent{background:var(--accent-danger-light);border-radius:var(--radius-sm);border-bottom:none;margin:0 -8px;padding:12px}.cal-detail-note.urgent+.cal-detail-note{border-top:none}.cal-detail-note-avatar{background:var(--surface-subtle);width:32px;height:32px;color:var(--text-muted);border:1px solid var(--border-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.688rem;font-weight:700;display:flex}.cal-detail-note.urgent .cal-detail-note-avatar{background:var(--accent-danger-light);color:var(--accent-danger);border-color:var(--accent-danger-border)}.cal-detail-note-body{flex:1;min-width:0}.cal-detail-note-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.cal-detail-note-author{color:var(--text-main);align-items:center;gap:6px;font-size:.813rem;font-weight:600;display:flex}.cal-detail-note-date{color:var(--text-light);align-items:center;gap:4px;font-size:.688rem;display:flex}.cal-detail-note-content{color:var(--text-main);margin:0;font-size:.813rem;line-height:1.55}.cal-detail-note-tags{flex-wrap:wrap;gap:4px;margin-top:6px;font-size:.688rem;display:flex}.cal-detail-note-tags span{background:var(--accent-blue-light);color:var(--accent-blue-text);border-radius:10px;align-items:center;gap:2px;padding:1px 6px;font-weight:500;display:inline-flex}.cal-detail-note-empty{color:var(--text-light);text-align:center;flex-direction:column;align-items:center;gap:6px;padding:28px 20px;display:flex}.cal-detail-note-empty svg{opacity:.35}.cal-detail-timeline{padding-right:20px;position:relative}.cal-detail-timeline:before{content:"";background:var(--border-light);border-radius:1px;width:2px;position:absolute;top:4px;bottom:4px;right:6px}.cal-detail-timeline-item{padding:0 8px 14px 0;font-size:.813rem;position:relative}.cal-detail-timeline-item:last-child{padding-bottom:0}.cal-detail-timeline-dot{border:2px solid var(--surface);z-index:1;border-radius:50%;width:10px;height:10px;position:absolute;top:3px;right:-20px}.cal-detail-timeline-title{margin-bottom:1px;font-weight:600}.cal-detail-timeline-meta{color:var(--text-muted);font-size:.75rem}.cal-detail-timeline-excerpt{color:var(--text-light);text-overflow:ellipsis;white-space:nowrap;max-width:220px;margin-top:1px;font-size:.75rem;overflow:hidden}.cal-detail-badge-row{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.cal-detail-info-badge{border-radius:var(--radius-sm);align-items:center;gap:4px;padding:5px 10px;font-size:.813rem;font-weight:600;display:inline-flex}@media (width<=768px){.cal-detail-grid{grid-template-columns:1fr}.cal-detail-grid .cal-detail-field:nth-child(odd){border-left:none}.cal-detail-hero{text-align:center;flex-direction:column}.cal-detail-hero-sub{justify-content:center}}.cal-month-status-dots{flex-wrap:wrap;align-items:center;gap:2px;margin-top:2px;display:flex}.cal-month-status-count{border-radius:4px;align-items:center;gap:2px;padding:0 4px;font-size:.625rem;font-weight:600;display:inline-flex}.cal-day-view-wrapper{position:relative}.task-stats-row{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.task-stat-card{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);text-align:center;flex:1;min-width:120px;padding:16px}.task-stat-value{font-size:24px;font-weight:700;line-height:1}.task-stat-label{color:var(--text-muted);margin-top:4px;font-size:12px}.task-stat-urgent{animation:2s infinite pulse-border}@keyframes pulse-border{0%,to{box-shadow:none}50%{box-shadow:0 0 0 2px #ef444433}}.task-tabs{border-bottom:2px solid var(--border-light);gap:0;margin-bottom:16px;display:flex}.task-tab{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-2px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .15s;display:flex}.task-tab:hover{color:var(--primary)}.task-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.task-tab-count{background:var(--surface-subtle);color:var(--text-muted);border-radius:10px;padding:2px 8px;font-size:12px;font-weight:600}.task-tab.active .task-tab-count{background:var(--primary-light);color:var(--primary)}.task-toolbar{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding:16px 20px;display:flex}.task-search-box{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-sm);flex:1;align-items:center;gap:8px;padding:8px 12px;display:flex}.task-search-box input{background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:14px}.task-filter-toggle{align-items:center;gap:6px;display:flex;position:relative}.task-filter-toggle.active{color:var(--primary)}.task-filter-badge{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:12px;font-weight:700;display:flex}.task-filters-panel{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px;padding:16px;display:flex}.task-filter-group{flex-direction:column;gap:4px;min-width:140px;display:flex}.task-filter-group label{color:var(--text-muted);font-size:12px;font-weight:600}.task-filter-group select{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--surface);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:12px;background-repeat:no-repeat;min-height:40px;padding:8px 14px 8px 32px;font-family:inherit;font-size:.875rem}.task-table-wrap{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);overflow-x:auto}.task-table{border-collapse:collapse;width:100%;font-size:14px}.task-table th{text-align:right;color:var(--text-muted);border-bottom:1px solid var(--border-light);white-space:nowrap;background:var(--surface-subtle);padding:12px 14px;font-size:12px;font-weight:600}.task-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.task-th-sortable:hover{color:var(--primary)}.task-table td{border-bottom:1px solid var(--border-light);vertical-align:middle;padding:12px 14px}.task-row{cursor:pointer;transition:background .1s}.task-row:hover{background:var(--surface-subtle)}.task-row-completed{color:var(--text-light)}.task-row-cancelled{color:var(--text-light);text-decoration:line-through}.task-empty-row{text-align:center;color:var(--text-light);flex-direction:column;align-items:center;display:flex;padding:40px 0!important}.task-empty-state{text-align:center;color:var(--text-light);flex-direction:column;align-items:center;gap:8px;padding:40px;display:flex}.task-priority-badge{white-space:nowrap;border-radius:12px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.task-priority-badge.small{padding:2px 8px;font-size:12px}.priority-high{background:var(--accent-danger-light);color:var(--accent-danger)}.priority-medium{background:var(--accent-amber-light);color:var(--accent-amber-text)}.priority-normal{background:var(--surface-subtle);color:var(--text-muted)}.task-type-tag{border-radius:6px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-flex}.task-type-template,.task-type-adhoc{background:var(--surface-subtle);color:var(--text-light)}.task-title-cell{flex-direction:column;gap:4px;display:flex}.task-title-text{font-weight:500}.task-linked-tags{flex-wrap:wrap;gap:4px;display:flex}.task-linked-tag{background:var(--surface-subtle);color:var(--text-muted);border-radius:4px;padding:1px 6px;font-size:12px}.task-assignee{color:var(--text-muted);align-items:center;gap:4px;font-size:12px;display:inline-flex}.task-actions{gap:4px;display:flex}.btn-icon{border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:flex}.task-card-grid{grid-template-columns:1fr 320px;align-items:start;gap:20px;display:grid}.task-card-main{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);padding:24px}.task-card-title-row{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.task-card-title-row h2{margin:0;font-size:18px}.task-card-section{border-top:1px solid var(--border-light);margin-bottom:20px;padding-top:16px}.task-card-section h3{color:var(--text-muted);align-items:center;gap:6px;margin:0 0 8px;font-size:14px;display:flex}.task-card-section p{color:var(--text-main);margin:0;font-size:14px;line-height:1.6}.task-card-sidebar{flex-direction:column;gap:16px;display:flex}.task-meta-card{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);padding:16px}.task-meta-card h3{color:var(--text-muted);align-items:center;gap:6px;margin:0 0 12px;font-size:14px;display:flex}.task-meta-row{border-bottom:1px solid var(--surface-subtle);justify-content:space-between;align-items:center;padding:6px 0;font-size:12px;display:flex}.task-meta-label{color:var(--text-muted)}.task-assignee-card{align-items:center;gap:10px;padding:8px 0;display:flex}.task-assignee-avatar{background:var(--primary-light);width:32px;height:32px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.task-assignee-name{font-size:14px;font-weight:500}.task-linked-list{flex-direction:column;gap:6px;display:flex}.task-linked-item{background:var(--surface-subtle);border-radius:var(--radius-sm);align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:flex}.task-linked-type{background:var(--primary-light);color:var(--primary);border-radius:4px;padding:2px 6px;font-size:12px;font-weight:600}.task-history-timeline{flex-direction:column;gap:0;display:flex}.task-history-entry{align-items:flex-start;gap:10px;padding:8px 0;display:flex;position:relative}.task-history-entry:not(:last-child):after{content:"";background:var(--border-light);width:2px;position:absolute;top:22px;bottom:-8px;right:5px}.task-history-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px;margin-top:3px}.task-history-content{flex-direction:column;gap:2px;display:flex}.task-history-status{font-size:12px;font-weight:600}.task-history-meta{color:var(--text-light);font-size:12px}.task-cancel-form{background:var(--accent-danger-light);border:1px solid var(--accent-danger-border);border-radius:var(--radius-sm);margin-top:16px;padding:16px}.task-cancel-form label{margin-bottom:6px;font-size:12px;font-weight:600;display:block}.task-cancel-form textarea{border:1px solid var(--accent-danger-border);border-radius:var(--radius-sm);resize:vertical;width:100%;padding:8px;font-family:inherit;font-size:12px}.task-form{max-width:960px}.task-form-grid{grid-template-columns:1fr 1fr;align-items:start;gap:24px;display:grid}.task-form-col{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-direction:column;gap:16px;padding:20px;display:flex}.task-form-footer{border-top:1px solid var(--border-light);background:var(--surface);z-index:5;gap:12px;margin-top:24px;padding:16px 0 0;display:flex;position:sticky;bottom:0}.task-assignee-picker{border:1px solid var(--border-light);border-radius:var(--radius-sm);flex-direction:column;gap:6px;max-height:300px;padding:8px;display:flex;overflow-y:auto}.task-assignee-option{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:8px 10px;transition:background .1s;display:flex}.task-assignee-option:hover{background:var(--surface-subtle)}.task-assignee-option.selected{background:var(--primary-light)}.task-entity-dropdown{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:100;position:absolute;top:100%;left:0;right:0;overflow:hidden}.task-entity-option{cursor:pointer;text-align:right;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:10px 12px;font-family:inherit;font-size:12px;display:flex}.task-entity-option:hover{background:var(--surface-subtle)}.task-chip-group{flex-wrap:wrap;gap:6px;display:flex}.task-chip{border:1px solid var(--border-light);background:var(--surface);cursor:pointer;border-radius:20px;padding:6px 14px;font-family:inherit;font-size:12px;transition:all .15s}.task-chip:hover{border-color:var(--primary);color:var(--primary)}.task-chip.selected{background:var(--primary);color:#fff;border-color:var(--primary)}.task-template-grid{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:16px;display:grid}.task-template-card{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);flex-direction:column;padding:20px;transition:box-shadow .15s;display:flex}.task-template-card:hover{box-shadow:var(--shadow-md)}.task-template-card.inactive{color:var(--text-light);background:var(--surface-subtle)}.task-template-header{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.task-template-header h3{margin:0;font-size:16px}.task-template-desc{color:var(--text-muted);margin:4px 0 0;font-size:12px}.task-template-status{white-space:nowrap;border-radius:12px;flex-shrink:0;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.task-template-status.active{background:var(--primary-light);color:var(--primary)}.task-template-status.inactive{background:var(--surface-subtle);color:var(--text-muted)}.task-template-meta{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.task-template-tags{flex-wrap:wrap;gap:4px;display:flex}.task-template-tag{background:var(--surface-subtle);color:var(--text-muted);border-radius:4px;padding:2px 8px;font-size:12px}.task-template-tag.shift{background:var(--accent-blue-light);color:var(--accent-blue-text)}.task-template-task-count{color:var(--text-muted);align-items:center;gap:4px;font-size:12px;display:flex}.task-template-expand{justify-content:center;width:100%;margin-top:4px;font-size:12px}.task-template-tasks{border-top:1px solid var(--border-light);flex-direction:column;gap:6px;margin-top:8px;padding-top:10px;display:flex}.task-template-task-item{background:var(--surface-subtle);border-radius:var(--radius-sm);align-items:center;gap:10px;padding:8px 10px;display:flex}.task-template-task-order{background:var(--primary-light);width:22px;height:22px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.task-template-actions{border-top:1px solid var(--border-light);gap:8px;margin-top:auto;padding-top:12px;display:flex}.task-template-edit-list{border:1px solid var(--border-light);border-radius:var(--radius-sm);overflow:hidden}.task-template-edit-item{border-bottom:1px solid var(--border-light);align-items:flex-start;gap:12px;padding:14px;display:flex}.task-template-edit-item:last-child{border-bottom:none}.task-template-edit-order{flex-direction:column;align-items:center;gap:2px;padding-top:4px;display:flex}.task-template-edit-order span{color:var(--primary);font-size:14px;font-weight:700}.task-template-edit-fields{flex-direction:column;flex:1;gap:6px;display:flex}.shift-transfer-selectors{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);align-items:flex-end;gap:16px;margin-bottom:24px;padding:20px;display:flex}.shift-transfer-select{flex:1}.shift-transfer-select label{color:var(--text-muted);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.shift-transfer-arrow{color:var(--primary);justify-content:center;align-items:center;padding-bottom:6px;display:flex}.shift-transfer-section{margin-bottom:20px}.shift-transfer-section-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.shift-transfer-section-header h3{align-items:center;gap:6px;margin:0;font-size:16px;display:flex}.shift-transfer-list{flex-direction:column;gap:6px;display:flex}.shift-transfer-list.non-transferable{color:var(--text-light)}.shift-transfer-item{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:12px;padding:12px 14px;transition:all .15s;display:flex}.shift-transfer-item:hover{border-color:var(--primary)}.shift-transfer-item.selected{border-color:var(--primary);background:var(--primary-light)}.shift-transfer-item.disabled{cursor:default;color:var(--text-light);background:var(--surface-subtle)}.shift-transfer-item.disabled:hover{border-color:var(--border-light)}.shift-transfer-item input[type=checkbox]{flex-shrink:0}.shift-transfer-item-content{flex:1}.shift-transfer-item-title{align-items:center;gap:8px;margin-bottom:4px;font-weight:500;display:flex}.shift-transfer-item-meta{color:var(--text-muted);align-items:center;gap:12px;font-size:12px;display:flex}.shift-transfer-item-meta span{align-items:center;gap:4px;display:inline-flex}.shift-transfer-footer{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);padding:20px}.task-kpi-bar{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);align-items:center;gap:0;margin-bottom:16px;display:flex;overflow:hidden}.task-kpi-item{flex-direction:column;flex:1;align-items:center;padding:14px 12px;display:flex}.task-kpi-val{font-family:Rubik,sans-serif;font-size:20px;font-weight:600;line-height:1}.task-kpi-label{margin-top:2px;font-size:11px}.task-kpi-divider{background:var(--border-light);flex-shrink:0;width:1px;height:36px}.task-toolbar-v2{margin-bottom:16px}.task-toolbar-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.task-toolbar-right{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.task-toolbar-left{align-items:center;gap:8px;margin-right:auto;display:flex}.task-view-toggle{border:1px solid var(--border-light);border-radius:var(--radius-sm);display:flex;overflow:hidden}.task-view-btn{cursor:pointer;background:var(--surface);color:var(--text-muted);border:none;align-items:center;gap:4px;padding:6px 12px;font-family:inherit;font-size:12px;transition:all .15s;display:flex}.task-view-btn:not(:last-child){border-left:1px solid var(--border-light)}.task-view-btn.active{background:var(--primary-light);color:var(--primary);font-weight:600}.task-view-btn:hover:not(.active){background:var(--surface-subtle)}.task-quick-chip{border:1px solid var(--border-light);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:20px;align-items:center;gap:4px;padding:5px 12px;font-family:inherit;font-size:12px;transition:all .15s;display:inline-flex}.task-quick-chip:hover{border-color:var(--primary);color:var(--primary)}.task-quick-chip.active{border-color:var(--primary);background:var(--primary-light);color:var(--primary);font-weight:600}.task-priority-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.task-assignee-cell{align-items:center;gap:6px;display:flex}.task-row-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:10px;font-weight:700;display:flex}.task-assignee-text{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:12px;overflow:hidden}.task-row-meta{flex-wrap:wrap;gap:4px;margin-top:2px;display:flex}.task-row-overdue{background:color-mix(in srgb, var(--accent-danger-light) 40%, var(--surface))}.task-row-overdue:hover{background:color-mix(in srgb, var(--accent-danger-light) 60%, var(--surface))}.task-overdue-label{color:var(--accent-danger-text);white-space:nowrap;font-size:12px;font-weight:600}.task-date-label{color:var(--text-muted);white-space:nowrap;direction:ltr;font-size:12px}.task-action-start{color:var(--primary)!important}.task-action-complete{color:var(--accent-success-text)!important}.task-row.selected{background:var(--primary-light)}.task-row.selected:hover{background:color-mix(in srgb, var(--primary-light) 80%, var(--surface-subtle))}.task-board{grid-template-columns:repeat(3,1fr);gap:12px;min-height:400px;display:grid}.task-board-column{background:var(--surface-subtle);border-radius:var(--radius-md);flex-direction:column;min-height:300px;padding:12px;display:flex}.task-board-column-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;display:flex}.task-board-column-title{color:var(--text-main);align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.task-board-dot{border-radius:50%;width:8px;height:8px}.task-board-count{color:var(--text-muted);background:var(--surface);border-radius:10px;padding:1px 8px;font-size:11px}.task-board-cards{flex-direction:column;flex:1;gap:8px;display:flex}.task-board-empty{color:var(--text-light);text-align:center;padding:24px 0;font-size:12px}.task-board-card{background:var(--surface);border:1px solid var(--border-light);cursor:pointer;border-inline-start:3px solid var(--border-light);border-radius:8px;padding:10px 12px;transition:box-shadow .15s}.task-board-card:hover{box-shadow:0 2px 8px #0000000f}.task-board-card.overdue{border-color:var(--accent-danger-light)}.task-board-card.completed{opacity:.7}.task-board-card.completed .task-board-card-title{text-decoration:line-through;-webkit-text-decoration-color:var(--text-light);text-decoration-color:var(--text-light)}.task-board-card-title{color:var(--text-main);margin-bottom:6px;font-size:13px;font-weight:500;line-height:1.35}.task-board-card-chips{flex-wrap:wrap;gap:4px;margin-bottom:8px;display:flex}.task-board-chip{white-space:nowrap;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600}.task-board-chip.entity{background:var(--surface-subtle);color:var(--text-muted);font-weight:400}.task-board-card-footer{justify-content:space-between;align-items:center;display:flex}.task-board-assignee{align-items:center;gap:4px;display:flex}.task-board-avatar{border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:9px;font-weight:700;display:flex}.task-board-assignee-name{color:var(--text-muted);font-size:10px}.task-board-overdue{color:var(--accent-danger-text);font-size:10px;font-weight:600}.task-board-done-time{color:var(--accent-success-text);font-size:10px}.task-board-date{color:var(--text-muted);direction:ltr;font-size:10px}.task-batch-bar{background:var(--primary);color:#fff;border-radius:var(--radius-md);z-index:100;align-items:center;gap:16px;padding:12px 20px;animation:.2s batch-bar-in;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #00000026}@keyframes batch-bar-in{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.task-batch-count{white-space:nowrap;font-size:13px;font-weight:600}.task-batch-actions{gap:6px;display:flex}.task-batch-btn{border-radius:var(--radius-sm);color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff4d;align-items:center;gap:4px;padding:6px 14px;font-family:inherit;font-size:12px;transition:background .15s;display:inline-flex}.task-batch-btn:hover{background:#ffffff1a}.task-batch-btn.ghost{opacity:.7;border-color:#0000}.dash-task-stats-v2{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px;display:grid}.dash-task-stat-v2{border-radius:var(--radius-sm);flex-direction:column;align-items:center;padding:12px 8px;font-size:.75rem;font-weight:500;display:flex}.dash-task-stat-v2 .dash-task-stat-val{font-family:Rubik,sans-serif;font-size:1.25rem;font-weight:700;line-height:1.2}.dash-task-stat-v2.amber{background:var(--accent-amber-light);color:var(--accent-amber-text)}.dash-task-stat-v2.blue{background:var(--primary-light);color:var(--primary)}.dash-task-stat-v2.red{background:var(--accent-danger-light);color:var(--accent-danger-text)}.dash-task-stat-v2.green{background:var(--accent-success-light);color:var(--accent-success-text)}.dash-task-card-v2{border:1px solid var(--border-light);border-radius:8px;gap:0;margin-bottom:6px;transition:box-shadow .15s;display:flex;overflow:hidden}.dash-task-card-v2:hover{box-shadow:0 1px 4px #0000000f}.dash-task-card-v2.overdue{border-color:var(--accent-danger-light)}.dash-task-card-v2.completed{opacity:.65}.dash-task-card-v2.completed .dash-task-card-title{text-decoration:line-through;-webkit-text-decoration-color:var(--text-light);text-decoration-color:var(--text-light)}.dash-task-stripe{flex-shrink:0;width:4px}.dash-task-card-body{flex:1;align-items:center;gap:8px;min-width:0;padding:8px 10px;display:flex}.dash-task-card-top{cursor:pointer;flex:1;min-width:0}.dash-task-card-title{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px;font-size:13px;font-weight:500;overflow:hidden}.dash-task-card-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.dash-task-entity{white-space:nowrap}.dash-task-overdue-tag{color:var(--accent-danger-text);align-items:center;gap:2px;font-weight:600;display:inline-flex}.dash-task-date-tag{white-space:nowrap;direction:ltr}.dash-task-card-action{flex-shrink:0}.task-slideover-overlay{z-index:200;background:#0000004d;justify-content:center;align-items:center;padding:24px;animation:.2s task-modal-fade-in;display:flex;position:fixed;inset:0}@keyframes task-modal-fade-in{0%{opacity:0}to{opacity:1}}.task-slideover{background:var(--surface);border-radius:var(--radius-md);flex-direction:column;width:520px;max-width:100%;max-height:calc(100vh - 48px);animation:.2s task-modal-scale-in;display:flex;box-shadow:0 8px 32px #0000001f}@keyframes task-modal-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.task-slideover-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.task-slideover-title{color:var(--text-main);font-size:16px;font-weight:600}.task-slideover-close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px}.task-slideover-close:hover{background:var(--surface-subtle)}.task-slideover-body{flex-direction:column;flex:1;gap:14px;padding:16px 20px;display:flex;overflow-y:auto}.task-slideover-divider{border:none;border-top:1px solid var(--border-light);margin:2px 0}.task-slideover-footer{border-top:1px solid var(--border-light);gap:8px;padding:14px 20px;display:flex}.task-slideover-submit{flex:1;justify-content:center}.task-assign-self-btn{border:1px dashed var(--primary);border-radius:var(--radius-sm);width:100%;color:var(--primary);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;padding:9px 12px;font-family:inherit;font-size:13px;transition:background .15s;display:flex}.task-assign-self-btn:hover{background:var(--primary-light)}.task-priority-segments{border:1px solid var(--border-light);border-radius:var(--radius-sm);gap:0;display:flex;overflow:hidden}.task-priority-seg{border:none;border-left:1px solid var(--border-light);background:var(--surface);color:var(--text-muted);cursor:pointer;text-align:center;flex:1;padding:7px 4px;font-family:inherit;font-size:12px;transition:all .15s}.task-priority-seg:first-child{border-left:none}.task-priority-seg:hover:not(.active){background:var(--surface-subtle)}.task-assignment-toggle{border:1px solid var(--border-light);border-radius:var(--radius-sm);gap:0;display:flex;overflow:hidden}.task-assign-btn{cursor:pointer;background:var(--surface);color:var(--text-muted);border:none;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-family:inherit;font-size:13px;font-weight:400;transition:all .15s;display:flex}.task-assign-btn:not(:last-child){border-left:1px solid var(--border-light)}.task-assign-btn.active{background:var(--primary-light);color:var(--primary);font-weight:600}.task-assignee-picker.compact{max-height:200px;padding:4px}.task-assignee-picker.compact .task-assignee-option{padding:6px 8px}.task-assignee-picker.compact .task-assignee-avatar{width:26px;height:26px;font-size:12px}@media (width<=900px){.task-board{grid-template-columns:1fr;gap:16px}.task-board-column{min-height:200px}}@media (width<=768px){.task-kpi-bar{flex-wrap:wrap}.task-kpi-item{min-width:60px;padding:10px 8px}.task-kpi-val{font-size:16px}.task-toolbar-row{flex-direction:column;align-items:stretch}.task-toolbar-right,.task-toolbar-left{flex-wrap:wrap}.task-toolbar-left{margin-right:0}.task-batch-bar{flex-direction:column;gap:8px;left:16px;right:16px;transform:none}@keyframes batch-bar-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.task-slideover-overlay{padding:12px}.task-slideover{width:100%;max-height:calc(100vh - 24px)}}.hosp-stats-row{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.hosp-stat-card{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);text-align:center;flex:1;min-width:140px;padding:16px 24px}.hosp-stat-value{font-family:Rubik,sans-serif;font-size:24px;font-weight:700}.hosp-stat-label{color:var(--text-muted);margin-top:2px;font-size:12px}.hosp-full-banner{background:var(--accent-danger-light);color:var(--accent-danger);border-radius:var(--radius-sm);border:1px solid var(--accent-danger-border);align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:500;display:flex}.hosp-board-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.hosp-slot{border-radius:var(--radius-md);border:1px solid var(--border-light);min-height:100px;padding:14px;transition:box-shadow .15s;position:relative}.hosp-slot-empty{background:var(--surface-subtle);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.hosp-slot-empty-content{color:var(--text-light);flex-direction:column;align-items:center;gap:4px;font-size:12px;display:flex}.hosp-slot-add{font-size:12px!important}.hosp-slot-occupied{background:var(--surface);cursor:pointer}.hosp-slot-occupied:hover{box-shadow:var(--shadow-md)}.hosp-slot-critical{border-color:var(--accent-danger);background:var(--accent-danger-light);animation:2s ease-in-out infinite criticalPulse}@keyframes criticalPulse{0%,to{box-shadow:0 0 #dc262600}50%{box-shadow:0 0 0 4px #dc262626}}.hosp-slot-number{background:var(--surface-subtle);width:22px;height:22px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex;position:absolute;top:8px;left:8px}.hosp-slot-top{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.hosp-slot-pet{align-items:center;gap:6px;margin-bottom:4px;font-size:14px;display:flex}.hosp-slot-pet-info{color:var(--text-muted);font-size:12px}.hosp-slot-owner{color:var(--text-muted);align-items:center;gap:4px;margin-bottom:6px;font-size:12px;display:flex}.hosp-slot-meta{color:var(--text-light);align-items:center;gap:8px;font-size:12px;display:flex}.hosp-subscriber-badge{background:var(--primary-light);color:var(--primary);border-radius:4px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.hosp-consent-warning{color:var(--accent-amber-text);align-items:center;gap:4px;margin-top:6px;font-size:12px;font-weight:600;display:flex}.hosp-admit-form{padding-top:8px}.hosp-form-grid{grid-template-columns:1.2fr .8fr;gap:24px;margin-bottom:24px;display:grid}.hosp-form-main,.hosp-form-sidebar{flex-direction:column;gap:16px;display:flex}.hosp-dropdown{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:50;max-height:240px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.hosp-dropdown-item{text-align:right;cursor:pointer;background:0 0;border:none;width:100%;padding:10px 14px;display:block}.hosp-dropdown-item:hover{background:var(--surface-subtle)}.hosp-dropdown-name{font-size:14px;font-weight:500}.hosp-dropdown-meta{color:var(--text-muted);font-size:12px}.hosp-no-pets{text-align:center;color:var(--accent-amber-text);background:var(--accent-amber-light);border-radius:var(--radius-sm);padding:16px;font-size:12px}.hosp-pet-list{flex-direction:column;gap:8px;display:flex}.hosp-pet-option{border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:10px;padding:10px 14px;transition:border-color .15s;display:flex}.hosp-pet-option:hover{border-color:var(--primary)}.hosp-pet-option.selected{border-color:var(--primary);background:var(--primary-light)}.hosp-pet-option input[type=radio]{accent-color:var(--primary)}.hosp-pet-name{font-size:14px;font-weight:500}.hosp-pet-info{color:var(--text-muted);font-size:12px}.hosp-consent-section{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:16px}.hosp-consent-section h3{margin-bottom:12px;font-size:14px}.hosp-consent-toggle{cursor:pointer;align-items:center;gap:8px;padding:8px 0;display:flex}.hosp-consent-toggle input[type=checkbox]{width:auto;min-width:0;height:auto;min-height:0;display:none}.hosp-consent-text{align-items:center;gap:6px;font-size:14px;display:flex}.hosp-consent-yes{color:var(--primary)}.hosp-consent-no{color:var(--accent-danger)}.hosp-consent-note{color:var(--text-muted);margin-top:8px;font-size:12px;line-height:1.5}.hosp-summary-card{background:var(--surface-subtle);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:16px}.hosp-summary-card h3{margin-bottom:10px;font-size:14px}.hosp-summary-row{justify-content:space-between;padding:4px 0;font-size:12px;display:flex}.hosp-form-actions{gap:8px;padding-top:8px;display:flex}.hosp-critical-banner{background:var(--accent-danger-light);color:var(--accent-danger);border-radius:var(--radius-sm);border:1px solid var(--accent-danger-border);align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.hosp-detail-section{border-bottom:1px solid var(--border-light);margin-bottom:16px;padding-bottom:16px}.hosp-detail-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.hosp-detail-section h3{color:var(--text-main);align-items:center;gap:6px;margin-bottom:10px;font-size:14px;font-weight:600;display:flex}.hosp-detail-pet-name{font-size:18px;font-weight:600}.hosp-detail-pet-info{color:var(--text-muted);margin-top:2px;font-size:12px}.hosp-detail-owner{font-size:14px}.hosp-consent-display{flex-direction:column;gap:8px;display:flex}.hosp-consent-item{border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:14px;display:flex}.hosp-consent-item.yes{background:var(--primary-light);color:var(--primary)}.hosp-consent-item.no{background:var(--accent-danger-light);color:var(--accent-danger)}.hosp-status-form{border-color:var(--primary-border);background:var(--primary-light)}.dash-header{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:20px 24px;display:flex}.dash-header-user{align-items:center;gap:14px;display:flex}.dash-header-avatar{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:16px;font-weight:700;display:flex}.dash-header-name{color:var(--text-main);margin:0;font-size:1.25rem;font-weight:700}.dash-header-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:12px;display:flex}.dash-header-sep{color:var(--border-light)}.dash-header-actions{align-items:center;gap:12px;display:flex}.dash-date-display{background:var(--surface-subtle);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-muted);align-items:center;gap:8px;padding:8px 16px;font-size:.8125rem;font-weight:500;display:flex}.dash-notif-trigger-wrap{position:relative}.dash-notif-trigger{border:1px solid var(--border-light);background:var(--surface);cursor:pointer;width:40px;height:40px;color:var(--text-main);border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex;position:relative}.dash-notif-trigger:hover{border-color:var(--primary-border);color:var(--primary)}.dash-notif-count{background:var(--accent-danger);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:12px;font-weight:600;display:flex;position:absolute;top:-2px;left:-2px}.dash-notif-dropdown{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);width:360px;box-shadow:var(--shadow-lg);z-index:100;animation:.2s ease-out modalFadeIn;position:absolute;top:48px;left:0;overflow:hidden}.dash-notif-dropdown-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.dash-notif-dropdown-header h4{margin:0;font-size:14px;font-weight:600}.dash-notif-dropdown-body{max-height:360px;padding:4px;overflow-y:auto}.dash-layout{flex-direction:column;gap:16px;display:flex}.dash-quick-actions{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.dash-quick-btn{border:1px solid var(--border-light);background:var(--surface);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);color:var(--text-main);box-shadow:var(--shadow-sm);align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:.875rem;font-weight:500;display:flex}.dash-quick-btn:hover{border-color:var(--primary-border);color:var(--primary);background:var(--primary-light);box-shadow:var(--shadow-md)}.dash-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.dash-card{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:var(--transition);overflow:hidden}.dash-card:hover{box-shadow:var(--shadow-md)}.dash-card-large{grid-column:span 2}.dash-card-full{grid-column:1/-1}@media (width<=800px){.dash-card-large,.dash-card-full{grid-column:span 1}}.dash-card-header{border-bottom:1px solid var(--border-light);background:var(--surface);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.dash-card-header h3{color:var(--text-main);align-items:center;gap:8px;margin:0;font-size:.9375rem;font-weight:600;display:flex}.dash-card-body{padding:16px 20px}.dash-empty{color:var(--text-light);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:32px 24px;font-size:.8125rem;display:flex}.dash-count-badge{background:var(--surface-subtle);border-radius:var(--radius-full);color:var(--text-muted);padding:3px 10px;font-size:.75rem;font-weight:600}.dash-apt-list{flex-direction:column;gap:2px;display:flex}.dash-apt-item{border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);grid-template-columns:50px 1fr 140px 100px;align-items:center;gap:12px;padding:10px 12px;display:grid}.dash-apt-item:hover{background:var(--surface-subtle)}.dash-apt-time{color:var(--text-main);min-width:44px;font-family:Rubik,sans-serif;font-size:.8125rem;font-weight:600}.dash-apt-info{flex:1;min-width:0}.dash-apt-pet{font-size:12px;font-weight:500}.dash-apt-service{color:var(--text-muted);font-size:12px}.dash-more{text-align:center;color:var(--primary);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition);padding:8px;font-size:.8125rem;font-weight:500}.dash-more:hover{background:var(--primary-light)}.dash-task-stats{gap:16px;margin-bottom:12px;display:flex}.dash-task-stat{color:var(--text-muted);flex-direction:column;align-items:center;font-size:12px;display:flex}.dash-task-stat-val{font-family:Rubik,sans-serif;font-size:18px;font-weight:700}.dash-task-list{flex-direction:column;gap:2px;display:flex}.dash-task-item{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:7px 8px;font-size:12px;transition:background .1s;display:flex}.dash-task-item:hover{background:var(--surface-subtle)}.dash-task-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dash-task-status{white-space:nowrap;font-size:12px;font-weight:500}.dash-task-sections{flex-direction:column;gap:16px;display:flex}.dash-task-section-header{border-bottom:1px solid var(--border-light);align-items:center;gap:6px;margin-bottom:6px;padding-bottom:6px;font-size:.75rem;font-weight:600;display:flex}.dash-task-item-card{border-radius:var(--radius-sm);border:1px solid var(--border-light);transition:var(--transition);margin-bottom:4px;padding:10px 12px}.dash-task-item-card:hover{box-shadow:var(--shadow-sm)}.dash-task-item-top{cursor:pointer;align-items:center;gap:8px;font-size:12px;display:flex}.dash-task-date{color:var(--text-muted);white-space:nowrap;direction:ltr;font-size:12px}.dash-task-date.overdue{color:var(--accent-danger-text);font-weight:600}.dash-task-actions{border-top:1px dashed var(--border-light);gap:6px;margin-top:6px;padding-top:6px;display:flex}.dash-task-action-btn{border-radius:var(--radius-sm);cursor:pointer;border:none;align-items:center;gap:4px;min-height:32px;padding:6px 12px;font-size:12px;font-weight:500;transition:filter .15s;display:inline-flex}.dash-task-action-btn:hover{filter:brightness(.92)}.dash-task-action-btn.start{background:var(--primary-light);color:var(--primary)}.dash-task-action-btn.complete{background:var(--accent-success-light);color:var(--accent-success-text)}.dash-waitlist{flex-direction:column;gap:6px;display:flex}.dash-waitlist-item{border-radius:var(--radius-sm);border:1px solid var(--border-light);transition:var(--transition);padding:10px 12px;font-size:.8125rem}.dash-waitlist-item:hover{box-shadow:var(--shadow-sm)}.dash-waitlist-meta{color:var(--text-muted);margin-top:2px;font-size:12px}.dash-notif-badge{background:var(--accent-danger);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-right:6px;padding:0 5px;font-size:12px;font-weight:600;display:inline-flex}.dash-notif-filter{gap:2px;display:flex}.dash-notif-filter .btn.active{background:var(--surface-subtle);font-weight:600}.dash-notif-list{flex-direction:column;gap:2px;display:flex}.dash-notif-item{border-radius:var(--radius-sm);transition:var(--transition);align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.dash-notif-item.clickable{cursor:pointer}.dash-notif-item:hover{background:var(--surface-subtle)}.dash-notif-item.unread{background:var(--primary-light)}.dash-notif-item.unread.clickable:hover{background:color-mix(in srgb, var(--primary-light) 60%, var(--surface-subtle))}.dash-notif-icon{color:var(--text-muted);margin-top:2px}.dash-notif-content{flex:1;min-width:0}.dash-notif-title{font-size:12px;font-weight:500}.dash-notif-desc{color:var(--text-muted);margin-top:1px;font-size:12px}.dash-notif-time{color:var(--text-light);white-space:nowrap;font-size:12px}.dash-branch-info{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.dash-branch-detail{align-items:center;gap:12px;display:flex}.dash-branch-detail h3{margin:0;font-size:16px}.dash-branch-detail p{color:var(--text-muted);margin:2px 0 0;font-size:12px}.branch-status-badge.active{background:var(--primary-light);color:var(--primary)}.branch-status-badge.temporarily_closed{background:var(--accent-amber-light);color:var(--accent-amber-text)}.branch-status-badge.inactive,.branch-status-badge.archived{background:var(--surface-subtle);color:var(--text-muted)}.dash-big-number{color:var(--text-main);text-align:center;margin-bottom:2px;font-family:Rubik,sans-serif;font-size:24px;font-weight:700}.dash-big-label{text-align:center;color:var(--text-muted);font-size:12px}.dash-sub-stat{text-align:center;color:var(--text-light);margin-top:6px;font-size:12px}.dash-room-types{flex-wrap:wrap;justify-content:center;gap:4px;margin-top:8px;display:flex}.dash-room-tag{background:var(--surface-subtle);color:var(--text-muted);border-radius:4px;padding:2px 8px;font-size:12px}.dash-dept-list{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.dash-dept-tag{border-radius:var(--radius-sm);background:var(--primary-light);color:var(--primary);padding:4px 10px;font-size:12px;font-weight:500}.dash-info-grid{flex-wrap:wrap;justify-content:center;gap:20px;margin-bottom:12px;display:flex}.dash-info-item{text-align:center}.dash-info-val{color:var(--text-main);font-family:Rubik,sans-serif;font-size:24px;font-weight:700}.dash-info-label{color:var(--text-muted);font-size:12px}.dash-hosp-list{flex-direction:column;gap:4px;display:flex}.dash-hosp-item{border-radius:6px;align-items:center;gap:10px;padding:6px 8px;font-size:12px;display:flex}.dash-hosp-item.critical{background:var(--accent-danger-light)}.dash-hosp-slot{background:var(--surface-subtle);width:22px;height:22px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.dash-hosp-pet{min-width:60px;font-weight:500}.dash-hosp-owner{color:var(--text-muted);flex:1;font-size:12px}.dash-hosp-details{flex:1;min-width:0}.dash-hosp-meta{color:var(--text-muted);gap:12px;margin-top:1px;font-size:12px;display:flex}.dash-hosp-date{color:var(--text-light);font-size:12px}.dash-overview-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.dash-overview-item{border-radius:var(--radius-sm);background:var(--surface-subtle);flex-direction:column;align-items:center;gap:4px;padding:14px 8px;transition:all .15s;display:flex}.dash-overview-item:hover{background:var(--primary-light)}.dash-overview-icon{color:var(--primary)}.dash-overview-val{color:var(--text-main);font-family:Rubik,sans-serif;font-size:24px;font-weight:700}.dash-overview-label{color:var(--text-muted);text-align:center;font-size:12px}.dash-apt-meta{align-items:center;gap:4px;min-width:0;display:flex}.dash-apt-vet{color:var(--text-light);white-space:nowrap;align-items:center;gap:3px;font-size:12px;display:inline-flex}.dash-branches-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.dash-branch-card{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--surface-subtle);transition:var(--transition);padding:16px}.dash-branch-card:hover{box-shadow:var(--shadow-sm)}.dash-branch-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:10px;display:flex}.dash-branch-card-header h4{margin:0;font-size:14px;font-weight:600}.dash-branch-addr{color:var(--text-muted);align-items:center;gap:3px;margin:2px 0 0;font-size:12px;display:flex}.dash-branch-stats{flex-wrap:wrap;gap:12px;margin-bottom:8px;display:flex}.dash-branch-stat{color:var(--text-muted);flex-direction:column;align-items:center;min-width:50px;font-size:12px;display:flex}.dash-branch-stat-val{color:var(--text-main);font-family:Rubik,sans-serif;font-size:18px;font-weight:700}.dash-branch-depts{flex-wrap:wrap;gap:4px;margin-bottom:6px;display:flex}.dash-branch-tasks-count{color:var(--text-muted);border-top:1px solid var(--border-light);align-items:center;gap:4px;padding-top:6px;font-size:12px;display:flex}.dash-mgmt-sections{border-top:1px solid var(--border-light);grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;padding-top:16px;display:grid}@media (width<=600px){.dash-mgmt-sections{grid-template-columns:1fr}}.dash-mgmt-section h4{color:var(--text-main);align-items:center;gap:6px;margin:0 0 8px;font-size:12px;font-weight:600;display:flex}.dash-dept-activity{flex-direction:column;gap:6px;display:flex}.dash-dept-row{background:var(--surface-subtle);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:6px 10px;display:flex}.dash-dept-count{color:var(--text-muted);font-size:12px}.tabs-bar{border-bottom:2px solid var(--border);gap:0;display:flex}.tab-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-2px;padding:10px 20px;font-size:.875rem;font-weight:600;transition:color .15s,border-color .15s;display:flex}.tab-btn:hover{color:var(--text-main)}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary)}input[type=checkbox]{cursor:pointer;width:18px;min-width:18px;height:18px;min-height:18px;accent-color:var(--primary)}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.skeleton{background:var(--border-light);border-radius:var(--radius-sm);animation:1.5s ease-in-out infinite skeleton-pulse}.skeleton-text{border-radius:4px;height:14px;margin-bottom:8px}.skeleton-text.short{width:40%}.skeleton-text.medium{width:65%}.skeleton-text.long{width:90%}.skeleton-row{align-items:center;gap:12px;padding:12px 16px;display:flex}.skeleton-circle{border-radius:50%;flex-shrink:0;width:36px;height:36px}.skeleton-card{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:20px}@media (width<=900px){.task-card-grid,.hosp-form-grid{grid-template-columns:1fr}.dash-notif-dropdown{width:auto;position:fixed;top:60px;left:8px;right:8px}}@media (width<=640px){.admin-main{padding:12px}.kpi-tiles{gap:8px}.kpi-tile{min-width:calc(50% - 4px);padding:12px 8px}.kpi-tile-value{font-size:20px}.dash-grid{grid-template-columns:1fr}.dash-card-large,.dash-card-full{grid-column:span 1}.dash-apt-item{grid-template-columns:44px 1fr auto;gap:8px;padding:8px 6px}.dash-apt-item>:nth-child(3){display:none}.dash-quick-btn{padding:8px 12px;font-size:.8125rem}.cal-view-controls{flex-direction:column;align-items:stretch;gap:8px}.cal-nav-group,.cal-view-tabs{justify-content:center}.cal-month-cell{min-height:52px;padding:4px 2px}.cal-month-date{font-size:.75rem}.cal-month-count{font-size:.625rem}.cal-hour-label{width:44px;padding:8px 4px;font-size:.625rem}.hosp-board-grid{grid-template-columns:1fr}.hosp-stat-card{min-width:calc(50% - 6px);padding:12px}.task-stat-card{min-width:calc(50% - 6px)}.task-card-grid{grid-template-columns:1fr}.toast{width:calc(100vw - 32px);min-width:0}.modal-overlay{padding:12px}.modal-box{border-radius:20px;padding:20px}.modal-scroll{padding:20px}.profile-layout,.profile-info-grid{grid-template-columns:1fr}.users-table th,.users-table td{padding:10px 12px;font-size:.8125rem}.management-title,.page-header h1{font-size:1.25rem}.dash-notif-dropdown{width:auto;position:fixed;top:60px;left:8px;right:8px}.form-section{padding:16px}.form-section-title{font-size:1rem}.admin-form [style*=grid-template-columns]{grid-template-columns:1fr!important}.admin-form [style*="1fr 1fr 1fr 1fr"]{grid-template-columns:1fr 1fr!important}.cal-steps-bar{-webkit-overflow-scrolling:touch;overflow-x:auto}.cal-step-title{font-size:.6875rem}.dash-task-stats{flex-direction:column}.filters-bar [style*=minWidth]{min-width:0!important}.cal-nav-group span[style*=minWidth]{text-align:center;min-width:0!important}.cal-view-controls .cal-nav-group{justify-content:space-between;width:100%}.shift-user-list{grid-template-columns:1fr}.inactivity-box{padding:24px 16px}}.um-stats-row{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:20px;display:grid}.um-stat-card{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);flex-direction:column;gap:4px;padding:16px 20px;display:flex}.um-stat-label{color:var(--text-muted);font-size:.8125rem;font-weight:500}.um-stat-value{color:var(--text-main);font-size:1.5rem;font-weight:700}.um-stat-value.success{color:var(--accent-success-text)}.um-stat-value.warning{color:var(--accent-amber-text)}.um-stat-value.danger{color:var(--accent-danger)}.um-tabs{border-bottom:1px solid var(--border-light);gap:0;margin-bottom:20px;display:flex}.um-tab{color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:10px 20px;font-family:inherit;font-size:.875rem;font-weight:600;display:flex}.um-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.um-tab:hover:not(.active){color:var(--text-main)}.um-tab-count{border-radius:var(--radius-full);background:var(--surface-subtle);color:var(--text-muted);padding:1px 7px;font-size:.6875rem;font-weight:600}.um-tab.active .um-tab-count{background:var(--primary-light);color:var(--primary)}.um-filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.um-search-wrap{flex:1;min-width:200px;position:relative}.um-search-wrap .um-search-icon{color:var(--text-light);pointer-events:none;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.um-more-filters-btn{border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--surface);color:var(--text-muted);cursor:pointer;transition:var(--transition);align-items:center;gap:5px;min-height:40px;padding:8px 14px;font-family:inherit;font-size:.8125rem;display:flex}.um-more-filters-btn:hover{background:var(--surface-subtle);color:var(--text-main)}.um-more-filters-btn.active{background:var(--primary-light);color:var(--primary);border-color:var(--primary-border)}.um-advanced-filters{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);flex-wrap:wrap;gap:10px;margin-bottom:16px;padding:14px 20px;animation:.15s ease-out modalSlideUp;display:flex}.um-row-actions{opacity:0;gap:4px;transition:opacity .15s;display:flex}.users-table tr:hover .um-row-actions{opacity:1}.um-action-icon-btn{border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--surface);cursor:pointer;width:30px;height:30px;color:var(--text-muted);transition:var(--transition);justify-content:center;align-items:center;padding:0;display:flex}.um-action-icon-btn:hover{background:var(--primary-light);color:var(--primary);border-color:var(--primary-border)}.um-action-icon-btn.danger:hover{background:var(--accent-danger-light);color:var(--accent-danger);border-color:var(--accent-danger-border)}.um-action-icon-btn.success:hover{background:var(--accent-success-light);color:var(--accent-success-text);border-color:var(--accent-success-border)}.um-role-badge{border-radius:var(--radius-full);background:var(--primary-light);color:var(--primary);white-space:nowrap;align-items:center;gap:4px;padding:2px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.um-pagination{color:var(--text-muted);justify-content:space-between;align-items:center;margin-top:14px;font-size:.8125rem;display:flex}.um-pagination-btns{gap:4px;display:flex}.um-page-btn{border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--surface);cursor:pointer;width:32px;height:32px;color:var(--text-main);transition:var(--transition);justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:.8125rem;display:flex}.um-page-btn:hover{background:var(--surface-subtle)}.um-page-btn.active{background:var(--primary-light);color:var(--primary);border-color:var(--primary-border);font-weight:700}.wizard-overlay{z-index:200;background:#0006;justify-content:center;align-items:flex-start;padding:40px 24px;animation:.2s ease-out modalFadeIn;display:flex;position:fixed;inset:0;overflow-y:auto}.wizard-box{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--border-light);flex-direction:column;width:100%;max-width:780px;animation:.25s ease-out modalSlideUp;display:flex}.wizard-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.wizard-header-title{color:var(--text-main);align-items:center;gap:10px;font-size:1.0625rem;font-weight:700;display:flex}.wizard-close-btn{cursor:pointer;width:32px;height:32px;color:var(--text-muted);transition:var(--transition);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.wizard-close-btn:hover{background:var(--surface-subtle);color:var(--text-main)}.wizard-stepper{background:var(--surface-subtle);justify-content:center;align-items:center;gap:0;padding:16px;display:flex}.wizard-step{align-items:center;gap:6px;min-width:0;display:flex}.wizard-step-circle{width:24px;height:24px;transition:var(--transition);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.6875rem;font-weight:700;display:flex}.wizard-step-circle.active,.wizard-step-circle.done{background:var(--primary);color:#fff}.wizard-step-circle.upcoming{border:1px solid var(--border-light);background:var(--surface);color:var(--text-light)}.wizard-step-label{color:var(--text-light);transition:var(--transition);white-space:nowrap;font-size:.75rem;font-weight:500}.wizard-step-label.active{color:var(--primary);font-weight:600}.wizard-step-label.done{color:var(--primary)}.wizard-step-connector{background:var(--border-light);width:24px;min-width:8px;height:2px;transition:var(--transition);border-radius:1px;flex-shrink:1;margin:0 4px}.wizard-step-connector.done{background:var(--primary)}.wizard-body{max-height:55vh;padding:24px;overflow-y:auto}.wizard-footer{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.wizard-page-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border-light);flex-direction:column;display:flex}.wizard-page-card .wizard-body{max-height:none;overflow-y:visible}.role-assign-card{border:1px solid var(--border-light);border-radius:var(--radius-sm);margin-bottom:12px;overflow:hidden}.role-assign-card.selected{border-color:var(--primary-border)}.role-assign-header{background:var(--primary-light);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.role-assign-header-info{align-items:center;gap:8px;display:flex}.role-assign-body{padding:12px 14px}.perm-preview{background:var(--surface-subtle);border-radius:var(--radius-sm);margin-top:8px;margin-right:22px;padding:10px 12px}.perm-preview-label{color:var(--text-muted);align-items:center;gap:4px;margin-bottom:6px;font-size:.75rem;font-weight:600;display:flex}.perm-tag{background:var(--surface);border:1px solid var(--border-light);color:var(--text-main);border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-size:.6875rem;display:inline-flex}.perm-tag.disabled{background:var(--accent-danger-light);color:var(--accent-danger);text-decoration:line-through}.gp-empty-state{text-align:center;color:var(--text-light);flex-direction:column;align-items:center;gap:10px;padding:32px 16px;display:flex}.gp-empty-state p{margin:0;font-size:.875rem}.gp-summary-bar{background:var(--surface-subtle);border:1px solid var(--border-light);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;margin-bottom:12px;padding:10px 14px;display:flex}.gp-summary-right{align-items:center;gap:10px;display:flex}.gp-summary-count{color:var(--text-main);font-size:.8125rem;font-weight:600}.gp-summary-role-badge{background:var(--primary-light);color:var(--primary);border-radius:12px;align-items:center;gap:4px;padding:2px 10px;font-size:.6875rem;display:inline-flex}.gp-summary-groups{color:var(--text-muted);font-size:.75rem}.gp-groups{flex-direction:column;gap:6px;display:flex}.gp-group{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.gp-group.open .gp-group-header{border-bottom:1px solid var(--border-light)}.gp-group-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:10px 14px;transition:background .15s;display:flex}.gp-group-header:hover{background:var(--surface-subtle)}.gp-group-cb{border:1.5px solid var(--border-control);cursor:pointer;background:var(--surface);color:#0000;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:all .15s;display:flex}.gp-group-cb.all{background:var(--primary);border-color:var(--primary);color:#fff}.gp-group-cb.partial{border-color:var(--primary);color:var(--primary)}.gp-group-icon{background:var(--primary-light);width:28px;height:28px;color:var(--primary);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.gp-group-info{flex:1;min-width:0}.gp-group-name{color:var(--text-main);font-size:.8125rem;font-weight:600}.gp-group-desc{color:var(--text-muted);margin-top:1px;font-size:.6875rem}.gp-group-count{background:var(--surface-subtle);color:var(--text-muted);white-space:nowrap;border-radius:10px;flex-shrink:0;padding:2px 8px;font-size:.6875rem}.gp-group-count.full{background:var(--primary-light);color:var(--primary)}.gp-group-chevron{color:var(--text-light);flex-shrink:0;transition:transform .2s}.gp-group.open .gp-group-chevron{transform:rotate(180deg)}.gp-group-body{padding:6px 14px 10px}.gp-perm-item{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:6px 8px;transition:background .1s;display:flex}.gp-perm-item:hover{background:var(--surface-subtle)}.gp-perm-cb{border:1.5px solid var(--border-control);cursor:pointer;background:var(--surface);color:#0000;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:all .15s;display:flex}.gp-perm-cb.checked{background:var(--primary);border-color:var(--primary);color:#fff}.gp-perm-cb.disabled-perm{opacity:.45;background:var(--surface-subtle);border-color:var(--border-light)}.gp-perm-label{color:var(--text-main);flex:1;min-width:0;font-size:.8125rem}.gp-perm-item.disabled-row .gp-perm-label{color:var(--text-light);text-decoration:line-through}.gp-perm-badge{white-space:nowrap;border-radius:10px;flex-shrink:0;padding:1px 8px;font-size:.6875rem}.gp-perm-badge.inherited{background:var(--primary-light);color:var(--primary)}.gp-perm-badge.custom{background:var(--accent-success-light);color:var(--accent-success-text)}.gp-perm-badge.off{background:var(--surface-subtle);color:var(--text-light)}.gp-legend{border-top:1px solid var(--border-light);flex-wrap:wrap;gap:14px;margin-top:12px;padding-top:10px;display:flex}.gp-legend-item{color:var(--text-muted);align-items:center;gap:5px;font-size:.6875rem;display:flex}.gp-legend-dot{border-radius:3px;flex-shrink:0;width:10px;height:10px}.gp-legend-dot.inherited{background:var(--primary-light);border:1px solid var(--primary-border)}.gp-legend-dot.custom{background:var(--accent-success-light);border:1px solid var(--accent-success-border)}.gp-legend-dot.off{background:var(--surface-subtle);border:1px solid var(--border-light)}.review-perm-group{margin-bottom:8px}.review-perm-group:last-child{margin-bottom:0}.review-perm-group-header{color:var(--text-muted);justify-content:space-between;align-items:center;margin-bottom:4px;font-size:.75rem;font-weight:600;display:flex}.review-perm-group-count{color:var(--text-light);font-size:.6875rem}.review-perm-tags{flex-wrap:wrap;gap:4px;display:flex}.review-section{margin-bottom:16px}.review-section-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.review-section-title{color:var(--text-main);align-items:center;gap:6px;font-size:.8125rem;font-weight:700;display:flex}.review-section-edit{color:var(--primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;font-family:inherit;font-size:.75rem;font-weight:600;display:flex}.review-section-edit:hover{text-decoration:underline}.review-card{background:var(--surface-subtle);border-radius:var(--radius-sm);padding:12px 14px}.review-row{justify-content:space-between;align-items:center;padding:3px 0;font-size:.8125rem;display:flex}.review-row-label{color:var(--text-muted)}.review-row-value{color:var(--text-main);font-weight:600}.review-invite-banner{background:var(--primary-light);border-radius:var(--radius-sm);color:var(--primary);align-items:center;gap:10px;padding:10px 14px;font-size:.8125rem;font-weight:600;display:flex}.profile-header-card{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);margin-bottom:16px;padding:20px 24px}.profile-header-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.profile-header-identity{align-items:center;gap:14px;display:flex}.profile-header-avatar{background:var(--primary-light);width:52px;height:52px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.125rem;font-weight:700;display:flex}.profile-header-toolbar{gap:8px;display:flex}.profile-toolbar-btn{border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--surface);color:var(--text-main);cursor:pointer;transition:var(--transition);align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:.8125rem;font-weight:600;display:flex}.profile-toolbar-btn:hover{background:var(--surface-subtle);border-color:var(--primary-border)}.profile-toolbar-btn.danger{color:var(--accent-danger);border-color:var(--accent-danger-border)}.profile-toolbar-btn.danger:hover{background:var(--accent-danger-light)}.profile-two-col{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.profile-info-list{flex-direction:column;gap:0;display:flex}.profile-info-row{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:10px 0;font-size:.875rem;display:flex}.profile-info-row:last-child{border-bottom:none}.profile-info-row-label{color:var(--text-muted);font-weight:500}.profile-info-row-value{color:var(--text-main);font-weight:600}.role-branch-card{border:1px solid var(--border-light);border-radius:var(--radius-sm);margin-bottom:10px;overflow:hidden}.role-branch-card-header{background:var(--primary-light);color:var(--primary);align-items:center;gap:8px;padding:8px 12px;font-size:.8125rem;font-weight:700;display:flex}.role-branch-card-body{flex-direction:column;gap:6px;padding:10px 12px;font-size:.8125rem;display:flex}.role-branch-row{color:var(--text-muted);align-items:center;gap:6px;display:flex}.role-branch-perm-count{color:var(--text-light);margin-right:auto;font-size:.6875rem}.activity-timeline{flex-direction:column;gap:0;display:flex}.timeline-item{gap:12px;padding-bottom:14px;display:flex;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-dot-col{flex-direction:column;align-items:center;display:flex}.timeline-dot{background:var(--primary);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:5px}.timeline-dot.muted{background:var(--text-light)}.timeline-line{background:var(--border-light);flex:1;width:1px;margin-top:4px}.timeline-content{flex:1}.timeline-text{color:var(--text-main);font-size:.8125rem;font-weight:500}.timeline-date{color:var(--text-muted);font-size:.75rem}.roles-split{grid-template-columns:240px 1fr;gap:16px;display:grid}.roles-list-panel{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);overflow:hidden}.roles-list-item{cursor:pointer;transition:var(--transition);border-bottom:1px solid var(--border-light);text-align:right;background:0 0;border-top:none;border-left:none;border-right:3px solid #0000;align-items:center;gap:10px;width:100%;padding:12px 14px;font-family:inherit;font-size:.8125rem;display:flex}.roles-list-item:last-child{border-bottom:none}.roles-list-item:hover{background:var(--surface-subtle)}.roles-list-item.active{background:var(--primary-light);border-right-color:var(--primary)}.roles-list-item-name{color:var(--text-main);font-weight:600}.roles-list-item.active .roles-list-item-name{color:var(--primary)}.roles-list-item-count{color:var(--text-muted);font-size:.6875rem}.roles-detail-panel{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);padding:20px 24px}.um-view-toggle{background:var(--surface-subtle);border-radius:var(--radius-sm);gap:2px;padding:3px;display:flex}.um-view-toggle-btn{color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-radius:8px;padding:5px 14px;font-family:inherit;font-size:.8125rem;font-weight:500}.um-view-toggle-btn.active{background:var(--surface);color:var(--text-main);box-shadow:var(--shadow-sm);font-weight:600}.perm-matrix{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);width:100%;box-shadow:var(--shadow-sm);overflow-x:auto}.perm-matrix table{border-collapse:collapse;width:100%}.perm-matrix th,.perm-matrix td{border-bottom:1px solid var(--border-light);padding:8px 10px;font-size:.8125rem}.perm-matrix th{text-align:center;color:var(--text-muted);background:var(--surface-subtle);font-size:.75rem;font-weight:600}.perm-matrix th:first-child{text-align:right}.perm-matrix td:first-child{color:var(--text-main);font-weight:500}.perm-matrix td:not(:first-child){text-align:center}.perm-matrix tr:last-child td{border-bottom:none}.role-user-row{background:var(--surface-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);align-items:center;gap:10px;padding:8px 10px;display:flex}.role-user-row:hover{background:var(--primary-light)}@media (width<=900px){.um-stats-row{grid-template-columns:repeat(2,1fr)}.profile-two-col,.roles-split{grid-template-columns:1fr}.profile-header-row{flex-direction:column;align-items:flex-start;gap:12px}.profile-header-toolbar{flex-wrap:wrap}.wizard-box{max-width:100%;margin:0}.wizard-stepper{flex-wrap:wrap;gap:4px}.wizard-step-connector{width:20px}}
