:root{--navy: #081225;--navy-soft: #101a3d;--navy-border: rgba(8, 18, 37, .12);--white: #ffffff;--text-on-navy: #ffffff;--text-muted-on-navy: rgba(255, 255, 255, .68);--text-on-white: #0f172a;--text-muted-on-white: rgba(15, 23, 42, .64);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 12px;--shadow-soft: 0 14px 38px rgba(15, 23, 42, .08);--shadow-card: 0 18px 46px rgba(15, 23, 42, .1);font-family:Inter,Manrope,Golos Text,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;--bg: #F7F9FC;--surface: #ffffff;--border: #E6EAF0;--text: #1E2A38;--text-2: #5A6B7B;--text-3: #93A1B0;--brand: #2F80ED;--brand-strong: #2563EB;--brand-text: #1D6FE0;--brand-100: #D7E7FD;--brand-50: #EAF2FE;--accent: #17B26A;--accent-text: #067647;--accent-50: #E6F7EF;--status-warn: #F79009;--status-danger: #F04438;--shadow-elev: 0 2px 10px rgba(16, 24, 40, .06);--shadow-pop: 0 24px 60px rgba(16, 24, 40, .18)}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}[data-theme=dark]{--bg: #0f1117;--surface: #1a1d27;--border: #2d3148;--text: #f1f5f9;--text-2: #94a3b8;--text-3: #64748b;--brand-text: #7AB6FF;--brand-100: rgba(47, 128, 237, .3);--brand-50: rgba(47, 128, 237, .16);--accent-text: #5BE3A7;--accent-50: rgba(23, 178, 106, .16)}[data-theme=dark] body{background:var(--bg);color:var(--text)}[data-theme=dark] .app-layout,[data-theme=dark] .app-body,[data-theme=dark] .cal-page{background:var(--bg)}[data-theme=dark] .app-topbar{background:var(--surface);border-color:var(--border)}[data-theme=dark] .topbar-btn{background:var(--surface);border-color:var(--border);color:var(--text-2)}[data-theme=dark] .topbar-btn:hover{background:var(--bg);color:var(--text)}[data-theme=dark] .notif-dropdown{background:var(--surface);border-color:var(--border)}[data-theme=dark] .notif-header{color:var(--text);border-color:var(--border)}[data-theme=dark] .notif-empty{color:var(--text-3)}[data-theme=dark] .page-container,[data-theme=dark] .page-wrap,[data-theme=dark] .patients-page,[data-theme=dark] .payments-page,[data-theme=dark] .reports-page,[data-theme=dark] .staff-page,[data-theme=dark] .rooms-page,[data-theme=dark] .warehouse-page,[data-theme=dark] .services-page,[data-theme=dark] .history-page,[data-theme=dark] .bank-page,[data-theme=dark] .settings-page,[data-theme=dark] .appts-page,[data-theme=dark] .cal-page{background:var(--bg);color:var(--text)}[data-theme=dark] .appts-header-card,[data-theme=dark] .appts-table-card,[data-theme=dark] .cal-topbar,[data-theme=dark] .cal-right,[data-theme=dark] .cal-waiting-panel,[data-theme=dark] .cal-summary-bar,[data-theme=dark] .cal-corner,[data-theme=dark] .cal-col-header,[data-theme=dark] .cal-time-label,[data-theme=dark] .rooms-header,[data-theme=dark] .rooms-tabs,[data-theme=dark] .room-card,[data-theme=dark] .schedules-sidebar,[data-theme=dark] .schedules-editor,[data-theme=dark] .warehouse-header,[data-theme=dark] .service-category,[data-theme=dark] .hist-header,[data-theme=dark] .event-item,[data-theme=dark] .pagination,[data-theme=dark] .patient-detail-panel,[data-theme=dark] .profile-card,[data-theme=dark] .profile-topbar,[data-theme=dark] .list-toolbar{background:var(--surface);border-color:var(--border)}[data-theme=dark] .appts-title,[data-theme=dark] .page-title,[data-theme=dark] .room-name,[data-theme=dark] .service-name,[data-theme=dark] .event-type,[data-theme=dark] .detail-header h3,[data-theme=dark] .profile-card h3,[data-theme=dark] .profile-summary h2,[data-theme=dark] .cal-topbar-date,[data-theme=dark] .cal-filter-name,[data-theme=dark] .cal-filters-label,[data-theme=dark] .schedules-editor-name,[data-theme=dark] .wh-current,[data-theme=dark] .qty-cell,[data-theme=dark] .empty-title,[data-theme=dark] .event-actor,[data-theme=dark] .event-date{color:var(--text)}[data-theme=dark] .appts-subtitle,[data-theme=dark] .af-label,[data-theme=dark] .appts-table th,[data-theme=dark] .appts-table td,[data-theme=dark] .appts-empty-sub,[data-theme=dark] .detail-meta,[data-theme=dark] .info-label,[data-theme=dark] .note-meta,[data-theme=dark] .note-text,[data-theme=dark] .cal-summary-bar,[data-theme=dark] .cal-sum-item,[data-theme=dark] .cwp-service,[data-theme=dark] .cwp-doc,[data-theme=dark] .col-count,[data-theme=dark] .col-dow,[data-theme=dark] .col-daynum,[data-theme=dark] .room-desc,[data-theme=dark] .room-day-label,[data-theme=dark] .schedule-member-role,[data-theme=dark] .schedule-day-value,[data-theme=dark] .schedule-dayoff-label,[data-theme=dark] .low-stock-alert,[data-theme=dark] .wh-table th,[data-theme=dark] .wh-table td,[data-theme=dark] .event-meta,[data-theme=dark] .empty-state,[data-theme=dark] .list-loading,[data-theme=dark] .pay-service-name,[data-theme=dark] .payment-service,[data-theme=dark] .contract-picker-note,[data-theme=dark] .contract-picker-row-meta{color:var(--text-2)}[data-theme=dark] .appts-table th,[data-theme=dark] .data-table th,[data-theme=dark] .wh-table th,[data-theme=dark] .cal-corner,[data-theme=dark] .cal-col-header,[data-theme=dark] .cal-time-label,[data-theme=dark] .cal-cell,[data-theme=dark] .room-schedule-grid,[data-theme=dark] .schedule-day-row,[data-theme=dark] .schedule-member-item,[data-theme=dark] .event-item,[data-theme=dark] .pagination,[data-theme=dark] .table-wrap,[data-theme=dark] .appts-table-card,[data-theme=dark] .service-category,[data-theme=dark] .room-card,[data-theme=dark] .hist-header,[data-theme=dark] .warehouse-header,[data-theme=dark] .schedules-sidebar,[data-theme=dark] .schedules-editor,[data-theme=dark] .profile-card,[data-theme=dark] .patient-detail-panel{border-color:var(--border)}[data-theme=dark] .appts-table th,[data-theme=dark] .data-table th,[data-theme=dark] .wh-table th{background:#ffffff08}[data-theme=dark] .appts-table td,[data-theme=dark] .data-table td,[data-theme=dark] .wh-table td,[data-theme=dark] .event-item,[data-theme=dark] .room-card,[data-theme=dark] .service-category,[data-theme=dark] .profile-card,[data-theme=dark] .patient-detail-panel,[data-theme=dark] .note-item,[data-theme=dark] .payment-row,[data-theme=dark] .doc-item,[data-theme=dark] .appt-row,[data-theme=dark] .contract-tree-folder,[data-theme=dark] .contract-tree-file,[data-theme=dark] .contract-picker-row,[data-theme=dark] .schedule-day-row,[data-theme=dark] .schedule-member-item{background:#ffffff05}[data-theme=dark] .period-btn,[data-theme=dark] .filter-btn,[data-theme=dark] .rooms-tab,[data-theme=dark] .rep-tab,[data-theme=dark] .bank-period-btn,[data-theme=dark] .cal-seg-btn,[data-theme=dark] .detail-tab,[data-theme=dark] .schedule-dayoff-toggle,[data-theme=dark] .btn-sm,[data-theme=dark] .btn-secondary,[data-theme=dark] .btn-outline,[data-theme=dark] .btn-secondary-sm,[data-theme=dark] .btn-danger-sm,[data-theme=dark] .btn-sm-pay,[data-theme=dark] .pr-open-btn,[data-theme=dark] .upload-btn,[data-theme=dark] .contracts-pick-btn,[data-theme=dark] .cal-nav-btn,[data-theme=dark] .cal-today-btn,[data-theme=dark] .cal-sidebar-toggle,[data-theme=dark] .cal-right-toggle{background:var(--surface);border-color:var(--border);color:var(--text-2)}[data-theme=dark] .period-btn.active,[data-theme=dark] .filter-btn.active,[data-theme=dark] .rooms-tab.active,[data-theme=dark] .rep-tab.active,[data-theme=dark] .bank-period-btn.active,[data-theme=dark] .cal-seg-btn.active,[data-theme=dark] .detail-tab.active,[data-theme=dark] .schedule-member-item.active,[data-theme=dark] .cal-col-header.today,[data-theme=dark] .cal-cell:hover,[data-theme=dark] .room-card:hover,[data-theme=dark] .service-category:hover,[data-theme=dark] .event-item:hover,[data-theme=dark] .schedule-member-item:hover{background:#6366f124;color:#fff}[data-theme=dark] .status-badge,[data-theme=dark] .visit-badge,[data-theme=dark] .method-badge,[data-theme=dark] .low-badge,[data-theme=dark] .dayoff-badge,[data-theme=dark] .tx-badge,[data-theme=dark] .appts-today-badge,[data-theme=dark] .appts-table .status-badge{border:1px solid var(--border)}[data-theme=dark] .search-input,[data-theme=dark] .sort-select,[data-theme=dark] .form-input,[data-theme=dark] .form-select,[data-theme=dark] .time-input,[data-theme=dark] .wh-search,[data-theme=dark] .cal-filter-select,[data-theme=dark] .contract-picker-row,[data-theme=dark] .contract-picker-toolbar .form-select,[data-theme=dark] .note-input{background:var(--bg);border-color:var(--border);color:var(--text)}[data-theme=dark] .search-input::placeholder,[data-theme=dark] .form-input::placeholder,[data-theme=dark] .note-input::placeholder,[data-theme=dark] .wh-search::placeholder{color:var(--text-3)}[data-theme=dark] .profile-page{background:var(--bg)}[data-theme=dark] .profile-card,[data-theme=dark] .patient-detail-panel{background:var(--surface);border-color:var(--border)}[data-theme=dark] .profile-card h3,[data-theme=dark] .profile-summary h2,[data-theme=dark] .detail-header h3,[data-theme=dark] .detail-tab.active,[data-theme=dark] .detail-header,[data-theme=dark] .detail-content,[data-theme=dark] .info-row,[data-theme=dark] .doc-item,[data-theme=dark] .payment-row,[data-theme=dark] .appt-date,[data-theme=dark] .appt-doctor,[data-theme=dark] .appt-service,[data-theme=dark] .contract-tree-folder,[data-theme=dark] .contract-tree-file,[data-theme=dark] .contract-picker-row,[data-theme=dark] .contract-picker-note,[data-theme=dark] .contract-picker-row-meta{color:var(--text)}[data-theme=dark] .profile-role,[data-theme=dark] .profile-email,[data-theme=dark] .detail-meta,[data-theme=dark] .info-label,[data-theme=dark] .note-meta,[data-theme=dark] .note-text,[data-theme=dark] .empty-state,[data-theme=dark] .pay-service-name,[data-theme=dark] .payment-service{color:var(--text-2)}[data-theme=dark] .detail-tabs,[data-theme=dark] .detail-header,[data-theme=dark] .patient-detail-panel,[data-theme=dark] .profile-card,[data-theme=dark] .profile-content{border-color:var(--border)}[data-theme=dark] .profile-card,[data-theme=dark] .patient-detail-panel,[data-theme=dark] .note-item,[data-theme=dark] .payment-row,[data-theme=dark] .doc-item,[data-theme=dark] .appt-row,[data-theme=dark] .contract-tree-folder,[data-theme=dark] .contract-tree-file,[data-theme=dark] .contract-picker-row,[data-theme=dark] .pay-appt-info{background:var(--surface)}[data-theme=dark] .avatar-placeholder,[data-theme=dark] .avatar-edit-btn,[data-theme=dark] .detail-avatar,[data-theme=dark] .pr-avatar{background:#4f46e5;color:#fff}[data-theme=dark] .detail-tab{color:var(--text-2)}[data-theme=dark] .detail-tab.active{border-bottom-color:#6366f1}[data-theme=dark] .patient-detail-panel .btn-primary,[data-theme=dark] .profile-card .btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5);border-color:#6366f1}[data-theme=dark] .pay-header,[data-theme=dark] .pay-tabs,[data-theme=dark] .rep-header,[data-theme=dark] .rep-tabs,[data-theme=dark] .bank-header,[data-theme=dark] .bank-summary-bar{background:var(--surface);border-color:var(--border)}[data-theme=dark] .page-title,[data-theme=dark] .reports-loading,[data-theme=dark] .list-loading,[data-theme=dark] .empty-state,[data-theme=dark] .chart-empty{color:var(--text-2)}[data-theme=dark] .payments-page,[data-theme=dark] .reports-page,[data-theme=dark] .bank-page{background:var(--bg)}[data-theme=dark] .kpi-card,[data-theme=dark] .chart-card,[data-theme=dark] .team-card,[data-theme=dark] .modal,[data-theme=dark] .data-table,[data-theme=dark] .table-wrap,[data-theme=dark] .refund-info,[data-theme=dark] .account-card,[data-theme=dark] .empty-card{background:var(--surface);border-color:var(--border)}[data-theme=dark] .kpi-label,[data-theme=dark] .kpi-sub,[data-theme=dark] .method-row span,[data-theme=dark] .data-table th,[data-theme=dark] .data-table td,[data-theme=dark] .bar-label,[data-theme=dark] .bar-value,[data-theme=dark] .team-pts,[data-theme=dark] .account-bank,[data-theme=dark] .account-num,[data-theme=dark] .bank-summary-label,[data-theme=dark] .bank-totals,[data-theme=dark] .account-pay-summary,[data-theme=dark] .modal-header h3,[data-theme=dark] .form-label{color:var(--text-2)}[data-theme=dark] .kpi-value,[data-theme=dark] .chart-title,[data-theme=dark] .team-name,[data-theme=dark] .account-name,[data-theme=dark] .empty-title,[data-theme=dark] .modal-header h3,[data-theme=dark] .page-title{color:var(--text)}[data-theme=dark] .data-table th,[data-theme=dark] .rep-tabs,[data-theme=dark] .pay-tabs{border-color:var(--border)}[data-theme=dark] .data-table tr:hover td{background:#ffffff05}[data-theme=dark] .method-badge{background:#ffffff0f;color:var(--text);border:1px solid var(--border)}[data-theme=dark] .period-btn,[data-theme=dark] .pay-tab,[data-theme=dark] .rep-tab,[data-theme=dark] .bank-period-btn{background:var(--surface);border-color:var(--border);color:var(--text-2)}[data-theme=dark] .period-btn.active,[data-theme=dark] .pay-tab.active,[data-theme=dark] .rep-tab.active,[data-theme=dark] .bank-period-btn.active{background:#4f46e5;color:#fff;border-color:#4f46e5}[data-theme=dark] .btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5);border-color:#6366f1;color:#fff}[data-theme=dark] .btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border)}[data-theme=dark] .icon-btn:hover{background:#ffffff0d}[data-theme=dark] .pay-header,[data-theme=dark] .rep-header,[data-theme=dark] .bank-header,[data-theme=dark] .pay-tabs,[data-theme=dark] .rep-tabs,[data-theme=dark] .bank-summary-bar{box-shadow:0 10px 30px #0000002e}[data-theme=dark] .progress-bar,[data-theme=dark] .prog-bar-track,[data-theme=dark] .bar-track{background:#ffffff14}[data-theme=dark] .progress-fill,[data-theme=dark] .bar-fill{background:#22c55e}[data-theme=dark] .team-avatar,[data-theme=dark] .empty-icon,[data-theme=dark] .account-icon{background:#6366f129;color:#c7d2fe;border-color:#6366f13d}[data-theme=dark] .account-pay-summary{background:#22c55e14;border-color:#22c55e29}[data-theme=dark] .card,[data-theme=dark] .panel,[data-theme=dark] .settings-card,[data-theme=dark] .stat-card,[data-theme=dark] .account-card,[data-theme=dark] .room-card,[data-theme=dark] .service-card,[data-theme=dark] .staff-card,[data-theme=dark] .warehouse-card{background:var(--surface);border-color:var(--border)}[data-theme=dark] h1,[data-theme=dark] h2,[data-theme=dark] h3,[data-theme=dark] .page-title,[data-theme=dark] .settings-title,[data-theme=dark] .section-title{color:var(--text)}[data-theme=dark] .page-sub,[data-theme=dark] .settings-sub,[data-theme=dark] .text-muted{color:var(--text-2)}[data-theme=dark] table{background:var(--surface)}[data-theme=dark] thead tr,[data-theme=dark] th{background:var(--bg);color:var(--text-2);border-color:var(--border)}[data-theme=dark] tbody tr{border-color:var(--border);color:var(--text)}[data-theme=dark] tbody tr:hover{background:var(--bg)}[data-theme=dark] td{color:var(--text);border-color:var(--border)}[data-theme=dark] .patients-table,[data-theme=dark] .table-wrap{background:var(--surface);border-color:var(--border)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:var(--bg);border-color:var(--border);color:var(--text)}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--text-3)}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{border-color:#6366f1;background:var(--surface)}[data-theme=dark] label,[data-theme=dark] .form-label,[data-theme=dark] .s-label{color:var(--text-2)}[data-theme=dark] .form-input,[data-theme=dark] .form-select,[data-theme=dark] .s-input,[data-theme=dark] .search-input,[data-theme=dark] .filter-select{background:var(--bg);border-color:var(--border);color:var(--text)}[data-theme=dark] .modal-overlay{background:#0009}[data-theme=dark] .modal{background:var(--surface)}[data-theme=dark] .modal-header h3{color:var(--text)}[data-theme=dark] .page-header,[data-theme=dark] .patients-header,[data-theme=dark] .toolbar,[data-theme=dark] .list-header{background:var(--surface);border-color:var(--border)}[data-theme=dark] .btn-secondary,[data-theme=dark] .btn-outline{background:var(--surface);border-color:var(--border);color:var(--text)}[data-theme=dark] .btn-secondary:hover{background:var(--bg)}[data-theme=dark] .cal-main,[data-theme=dark] .cal-topbar,[data-theme=dark] .cal-summary-bar{background:var(--surface);border-color:var(--border);color:var(--text)}[data-theme=dark] .cal-right{background:var(--surface);border-color:var(--border)}[data-theme=dark] .cal-col-header,[data-theme=dark] .cal-time-label,[data-theme=dark] .cal-corner{background:var(--surface);border-color:var(--border);color:var(--text)}[data-theme=dark] .cal-cell{border-color:var(--border)}[data-theme=dark] .col-name,[data-theme=dark] .col-count,[data-theme=dark] .col-dow,[data-theme=dark] .col-daynum{color:var(--text)}[data-theme=dark] .cal-waiting-btn{background:#1e2756;border-color:#4f46e5}[data-theme=dark] .cal-filter-select{background:var(--bg);color:var(--text);border-color:var(--border)}[data-theme=dark] .cal-filter-name,[data-theme=dark] .cal-filters-label{color:var(--text-2)}[data-theme=dark] .cal-seg{border-color:var(--border)}[data-theme=dark] .cal-seg-btn{color:var(--text-2);background:var(--surface)}[data-theme=dark] .mini-cal-day{color:var(--text)}[data-theme=dark] .mini-cal-day:hover{background:var(--bg)}[data-theme=dark] .mini-cal-header{color:var(--text)}[data-theme=dark] .cal-summary-bar .cal-sum-item{color:var(--text-2)}[data-theme=dark] .cwp-header,[data-theme=dark] .cwp-name{color:var(--text)}[data-theme=dark] .cwp-service,[data-theme=dark] .cwp-doc{color:var(--text-3)}[data-theme=dark] .cal-waiting-panel{background:var(--surface);border-color:var(--border)}[data-theme=dark] .cal-topbar-date{color:var(--text)}[data-theme=dark] .cal-nav-btn,[data-theme=dark] .cal-today-btn,[data-theme=dark] .cal-right-toggle{background:var(--surface);border-color:var(--border);color:var(--text-2)}[data-theme=dark] .settings-card{background:var(--surface);border-color:var(--border)}[data-theme=dark] .settings-card-title{color:var(--text)}[data-theme=dark] .settings-logo-placeholder{background:#4f46e5}[data-theme=dark] .day-btn{background:var(--bg);border-color:var(--border);color:var(--text-2)}[data-theme=dark] .owner-name{color:var(--text)}[data-theme=dark] .owner-email{color:var(--text-2)}[data-theme=dark] .settings-hint{color:var(--text-3)}[data-theme=dark] .staff-item,[data-theme=dark] .room-item,[data-theme=dark] .product-row,[data-theme=dark] .history-row,[data-theme=dark] .payment-row{background:var(--surface);border-color:var(--border);color:var(--text)}[data-theme=dark] .staff-item:hover,[data-theme=dark] .room-item:hover{background:var(--bg)}[data-theme=dark] ::-webkit-scrollbar{width:6px;height:6px}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--bg)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-container,.page-wrap,.patients-page,.payments-page,.reports-page,.staff-page,.rooms-page,.warehouse-page,.services-page,.history-page,.bank-page,.settings-page,.appts-page,.archive-page,.cal-page,.contracts-page,.acv-page,.sa-page,.legal-page,.profile-page,.setup-page,.waiting-page{animation:pageFadeIn .35s ease both}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalPopIn{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-overlay{animation:overlayFadeIn .18s ease both}.modal{animation:modalPopIn .26s cubic-bezier(.16,1,.3,1) both}.card,.panel,.stat-card,.account-card,.room-card,.service-card,.staff-card,.warehouse-card{transition:transform .18s ease,box-shadow .18s ease}.card:hover,.panel:hover,.stat-card:hover,.account-card:hover,.room-card:hover,.service-card:hover,.staff-card:hover,.warehouse-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px #0f172a14}.staff-item,.room-item,.product-row,.history-row,.payment-row,tbody tr{transition:background-color .15s ease}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0b13302e;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#0b133047}@media (prefers-reduced-motion: reduce){.page-container,.page-wrap,.patients-page,.payments-page,.reports-page,.staff-page,.rooms-page,.warehouse-page,.services-page,.history-page,.bank-page,.settings-page,.appts-page,.archive-page,.cal-page,.contracts-page,.acv-page,.sa-page,.legal-page,.profile-page,.setup-page,.waiting-page,.modal-overlay,.modal{animation:none!important}.card,.panel,.stat-card,.account-card,.room-card,.service-card,.staff-card,.warehouse-card{transition:none!important}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--white);color:var(--text-on-white)}a{text-decoration:none;color:inherit}button{font-family:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 22px;border-radius:999px;border:1.5px solid transparent;font-weight:600;font-size:.98rem;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn:active:not(:disabled){transform:translateY(0) scale(.97)}.btn-navy{background:var(--navy);color:var(--white)}.btn-navy:hover{box-shadow:0 10px 24px #0b133038}.btn-outline-navy{background:transparent;color:var(--navy);border-color:var(--navy)}.btn-white{background:var(--white);color:var(--navy)}.btn-white:hover{box-shadow:0 10px 24px #0f172a24}.btn-full{width:100%}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.field label{font-size:.88rem;font-weight:600;color:var(--text-on-white)}.field input,.field select{padding:13px 16px;border-radius:var(--radius-sm);border:1.5px solid rgba(11,19,48,.16);background:var(--white);color:var(--text-on-white);font-size:.98rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.field input:focus,.field select:focus{border-color:var(--navy);box-shadow:0 0 0 3px #0b13301a}.field-hint{font-size:.8rem;color:var(--text-muted-on-white)}.agreement-check{display:flex;align-items:flex-start;gap:10px;margin:4px 0 18px;font-size:.88rem;line-height:1.5;color:var(--text-muted-on-white);cursor:pointer}.agreement-check input[type=checkbox]{width:18px;height:18px;flex-shrink:0;margin-top:2px;accent-color:var(--navy);cursor:pointer}.agreement-check a{color:var(--navy);font-weight:600;text-decoration:underline}.alert{padding:13px 16px;border-radius:var(--radius-sm);font-size:.92rem;line-height:1.5;margin-bottom:16px}.alert-error{background:#dc262614;border:1px solid rgba(220,38,38,.28);color:#b91c1c}.alert-success{background:#0b13300f;border:1px solid rgba(11,19,48,.2);color:var(--navy)}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:spin .7s linear infinite}.btn-outline-navy .spinner{border:2px solid rgba(11,19,48,.25);border-top-color:var(--navy)}.container{max-width:1200px;margin:0 auto;padding:0 24px}.step-indicator{display:flex;align-items:center;gap:10px;margin-bottom:28px}.step-item{display:flex;align-items:center;gap:8px;flex:1}.step-dot{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;border:1.5px solid rgba(11,19,48,.2);color:var(--text-muted-on-white);flex-shrink:0}.step-active .step-dot,.step-done .step-dot{background:var(--navy);border-color:var(--navy);color:var(--white)}.step-label{font-size:.8rem;color:var(--text-muted-on-white);white-space:nowrap}.step-active .step-label{color:var(--navy);font-weight:600}.resend-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.88rem;color:var(--text-muted-on-white);margin-top:18px}.resend-btn{background:none;border:none;color:var(--navy);font-weight:700;cursor:pointer;padding:0;font-size:.88rem}.resend-btn:disabled{color:#0b133059;cursor:not-allowed}.auth-links{margin-top:22px;text-align:center;font-size:.9rem;color:var(--text-muted-on-white)}.auth-links a{color:var(--navy);font-weight:700}.code-input{letter-spacing:10px;font-size:1.3rem;text-align:center;font-weight:700}.btn-primary,.btn-pay-full{background:linear-gradient(135deg,var(--brand),var(--brand-strong))!important;border:1px solid var(--brand)!important;color:#fff!important;border-radius:10px!important;box-shadow:0 6px 16px #2f80ed38!important;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease!important}.btn-primary:hover:not(:disabled),.btn-pay-full:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 10px 22px #2f80ed4d!important}.btn-primary:active:not(:disabled),.btn-pay-full:active:not(:disabled){transform:translateY(0) scale(.98)}.btn-secondary{border-radius:10px!important}.team-avatar,.card-avatar,.card-avatar-lg,.staff-avatar,.request-avatar,.schedule-member-avatar,.clinic-icon-sq,.owner-avatar,.settings-logo-placeholder,.detail-avatar,.pr-avatar,.col-av,.col-daynum.today,.user-initials{background:linear-gradient(135deg,var(--brand),var(--brand-strong))!important;color:#fff!important}.period-btn.active,.filter-btn.active,.setup-tab.active,.day-btn.active,.bank-period-btn.active,.cal-seg-btn.active,.mini-cal-day.selected,.archive-methods button.active,.archive-period-chip.active,.period-chip.active{background:var(--brand)!important;border-color:var(--brand)!important;color:#fff!important}.pay-tab.active,.rep-tab.active,.rooms-tab.active,.sa-tab.active,.detail-tab.active{color:var(--brand-text)!important;border-bottom-color:var(--brand)!important}.patient-row.active{background:var(--brand-50)!important;border-left-color:var(--brand)!important}.permission-chip,.profile-badge--accent,.pr-open-btn{background:var(--brand-50)!important;color:var(--brand-text)!important;border-color:var(--brand-100)!important}.count-badge{background:var(--brand)!important;color:#fff!important}.detail-kicker,.profile-section-title,.appt-service,.cwp-time,.chatbot-bot-icon,.mini-cal-day.today:not(.selected){color:var(--brand-text)!important}.profile-stat-icon--visits{background:var(--brand-50)!important;color:var(--brand)!important}.form-input:focus,.form-select:focus,.search-input:focus,.s-input:focus,.note-input:focus,.time-input:focus,.setup-input:focus,.role-select:focus,.wh-search:focus,.sa-search:focus,.tasks-search:focus,.sort-select:focus,.appts-date-input:focus,.hist-date-input:focus,.cal-filter-select:focus,.archive-search input:focus,.contracts-search input:focus{border-color:var(--brand)!important;box-shadow:0 0 0 3px #2f80ed24!important}.bar-fill{background:linear-gradient(90deg,var(--brand),var(--brand-strong))!important}.appt-status,.status-badge,.visit-badge,.method-badge,.tx-badge,.dayoff-badge,.low-badge{border-radius:999px!important}.appt-status--scheduled{background:var(--brand-50)!important;color:var(--brand-text)!important}.appt-status--completed{background:var(--accent-50)!important;color:var(--accent-text)!important}.kpi-card,.chart-card,.account-card,.member-card,.team-card,.room-card,.service-category,.staff-card,.warehouse-card,.settings-card{border-radius:14px!important;box-shadow:var(--shadow-elev)!important}.modal,.drill-modal{border-radius:16px!important;box-shadow:var(--shadow-pop)!important}.data-table thead th,.wh-table thead th,.appts-table thead th{position:sticky;top:0;z-index:2;background:var(--bg)}.data-table tbody tr:nth-child(2n),.wh-table tbody tr:nth-child(2n),.appts-table tbody tr:nth-child(2n){background:#2f80ed07}.sidebar{background:linear-gradient(180deg,#0f2544,#0a1a30)!important}.sidebar-toggle{background:#0f2544!important}.sidebar-toggle:hover{background:#14315a!important}.nav-item.active{background:#2f80ed2e!important;border-left-color:var(--brand)!important}.nav-item.active .nav-icon{color:#7ab6ff}::-webkit-scrollbar-thumb{background:#2f80ed38}::-webkit-scrollbar-thumb:hover{background:#2f80ed61}.app-layout{display:flex;height:100vh;overflow:hidden;background:var(--bg, #f4f6fb)}.app-body{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.admin-clinic-banner{min-height:42px;padding:7px 16px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff7ed;border-bottom:1px solid #fdba74;color:#9a3412;font-size:13px}.admin-clinic-banner span,.admin-clinic-banner button{display:flex;align-items:center;gap:7px}.admin-clinic-banner button{padding:6px 10px;border:1px solid #fb923c;border-radius:6px;background:#fff;color:#9a3412;font:inherit;font-weight:700;cursor:pointer}.admin-clinic-banner button:hover{background:#ffedd5}.clinic-access-warning{min-height:42px;padding:7px 16px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fef2f2;border-bottom:1px solid #fecaca;color:#991b1b;font-size:13px;font-weight:700}.clinic-access-warning button{border:0;background:transparent;color:inherit;cursor:pointer;font-size:20px}.all-clinics-workbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 18px;border-bottom:1px solid #cbdcff;background:#f0f5ff;color:#1e3a8a}.all-clinics-workbar>div:first-child{display:flex;align-items:baseline;flex-wrap:wrap;gap:9px}.all-clinics-workbar strong{font-size:13px}.all-clinics-workbar span{font-size:12px;color:#47658f}.all-clinics-workbar__actions{display:flex;flex-wrap:wrap;gap:7px}.all-clinics-workbar button{border:1px solid #b8c9f5;border-radius:7px;padding:6px 10px;background:#fff;color:#1d4ed8;font-size:12px;font-weight:700;cursor:pointer}.all-clinics-workbar button:hover{background:#dce8ff}.app-topbar{height:44px;min-height:44px;background:var(--surface, #fff);border-bottom:1px solid var(--border, #e5e7eb);display:flex;align-items:center;justify-content:space-between;padding:0 16px;gap:4px;flex-shrink:0}.app-topbar-clinic{display:inline-flex;align-items:center;gap:9px;min-width:0;color:var(--text, #1e2a38);font-size:13px;font-weight:700}.app-topbar-clinic img,.app-topbar-clinic-fallback{width:30px;height:30px;border-radius:8px;object-fit:contain;border:1px solid var(--border, #e5e7eb);background:var(--surface, #fff)}.app-topbar-clinic-fallback{display:inline-flex;align-items:center;justify-content:center;color:var(--brand-text, #2563eb);font-size:15px}.app-topbar-clinic>span:last-child{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clinic-selector{display:inline-flex;align-items:center;gap:8px;color:var(--text-2, #6b7280);font-size:12px;font-weight:700}.clinic-selector select{min-width:220px;max-width:360px;padding:6px 30px 6px 9px;border:1px solid var(--border, #e5e7eb);border-radius:8px;background:var(--surface, #fff);color:var(--text, #1e2a38);font:inherit}.clinic-selector small{color:var(--text-2, #6b7280);white-space:nowrap}.app-topbar-right{display:flex;align-items:center;gap:4px}.topbar-btn{position:relative;display:flex;align-items:center;gap:5px;padding:6px 10px;border:1px solid var(--border, #e5e7eb);background:var(--surface, #fff);color:var(--text-2, #6b7280);border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .15s}.topbar-btn:hover{background:var(--bg, #f4f6fb);color:var(--text, #111827)}.topbar-btn:active{transform:scale(.94)}.topbar-btn-label{font-size:12px;font-weight:700}.topbar-badge{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#ef4444;color:#fff;font-size:10px;font-weight:900;display:inline-flex;align-items:center;justify-content:center}.topbar-notif-wrap{position:relative}.notif-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:340px;background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;box-shadow:0 8px 32px #0000001f;z-index:1000;overflow:hidden;animation:dropdownPopIn .18s ease both}@keyframes dropdownPopIn{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.notif-header{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:12px 16px;font-size:13px;font-weight:700;color:var(--text, #111827);border-bottom:1px solid var(--border, #e5e7eb)}.notif-header button{border:0;background:transparent;color:var(--brand, #2563eb);font-size:11px;font-weight:800;cursor:pointer}.notif-empty{padding:24px 16px;text-align:center;font-size:13px;color:var(--text-2, #9ca3af)}.notif-item{width:100%;display:grid;gap:3px;padding:11px 16px;border:0;border-bottom:1px solid var(--border, #e5e7eb);background:var(--surface, #fff);text-align:left;cursor:pointer}.notif-item:hover{background:var(--bg, #f8fafc)}.notif-item.unread{background:#eff6ff}.notif-item strong{color:var(--text, #0f172a);font-size:13px}.notif-item span{color:var(--text-2, #64748b);font-size:12px;line-height:1.35}.notif-item small{color:var(--text-3, #94a3b8);font-size:11px}.app-main{flex:1;overflow:hidden}.sidebar{width:220px;min-width:220px;background:#0b1330;color:#fff;display:flex;flex-direction:column;height:100vh;overflow:visible;z-index:100;position:relative;transition:width .2s,min-width .2s;flex-shrink:0}.sidebar--collapsed{width:60px;min-width:60px}.sidebar--collapsed .sidebar-brand{justify-content:center;padding:18px 0}.sidebar--collapsed .nav-item,.sidebar--collapsed .sidebar-footer .nav-item{justify-content:center;padding:12px 0;width:100%}.sidebar--collapsed .sidebar-nav{gap:4px;padding:8px 6px}.sidebar--collapsed .sidebar-footer{padding:8px 6px;gap:4px}.sidebar--collapsed .sidebar-divider,.sidebar--collapsed .sidebar-section-title{display:none}.sidebar-toggle{position:absolute;top:16px;right:-13px;transform:none;width:13px;height:26px;background:#0b1330;border:1px solid rgba(255,255,255,.15);border-left:none;border-radius:0 6px 6px 0;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff9;z-index:200;transition:background .15s,color .15s}.sidebar-toggle:hover{background:#1e2d5a;color:#fff}.sidebar-toggle:active{transform:scale(.92)}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:22px 20px 18px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-nav{flex:1;min-height:0;padding:8px 0;display:flex;flex-direction:column;gap:1px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff47;border-radius:999px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff73}.sidebar-section{display:flex;flex-direction:column;gap:2px;flex-shrink:0}.sidebar-divider{margin:6px 18px;height:1px;background:#ffffff14;flex-shrink:0}.sidebar-section-title{padding:2px 20px 6px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ffffff6b}.nav-item{display:flex;align-items:center;gap:10px;padding:8px 20px;color:#ffffffa6;text-decoration:none;font-size:13.5px;border-radius:0;cursor:pointer;border:none;background:none;width:100%;text-align:left;transition:all .15s;flex-shrink:0}.nav-item:hover{color:#fff;background:#ffffff0f;transform:translate(2px)}.nav-item.active{color:#fff;background:#ffffff1f;border-left:3px solid #38bdf8}.nav-label{font-weight:500}.nav-badge{margin-left:auto;background:#ef4444;color:#fff;font-size:10.5px;font-weight:600;border-radius:999px;padding:1px 6px;line-height:1.5}.sidebar-footer{padding:8px 0 6px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:2px;flex-shrink:0}.sidebar-shift{margin:0 8px 8px;padding:9px;border:1px solid rgba(109,148,220,.32);border-radius:9px;background:#234f8e40;color:#dbeafe}.sidebar-shift--break{border-color:#fbbf248c;background:#92610d2e}.sidebar-shift__head{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:800}.sidebar-shift small{display:block;margin:3px 0 7px 20px;color:#dbeafeb8;font-size:11px}.sidebar-shift__actions{display:flex;gap:5px}.sidebar-shift__actions button{display:inline-flex;align-items:center;justify-content:center;gap:4px;flex:1;padding:6px;border:1px solid rgba(147,197,253,.45);border-radius:6px;background:#2563eb52;color:#eff6ff;font-size:11px;font-weight:700;cursor:pointer}.sidebar-shift__actions button:hover:not(:disabled){background:#2563eb8c}.sidebar-shift__actions button:disabled{opacity:.6;cursor:wait}.sidebar-shift__actions .sidebar-shift__end{border-color:#fca5a56b;background:#b91c1c3b}.sidebar-shift__error{margin-left:0;color:#fecaca}.user-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover}.user-initials{width:24px;height:24px;border-radius:50%;background:#ffffff26;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.logout-btn{color:#ff6464cc}.logout-btn:hover{color:#ff6464;background:#ff646414}.app-main{flex:1;overflow-y:auto;display:flex;flex-direction:column}.mobile-topbar-profile,.mobile-bottom-nav,.mobile-sheet-backdrop{display:none}@media (max-width: 768px){.sidebar,.sidebar-toggle{display:none}.app-topbar{justify-content:space-between;padding:0 12px}.mobile-topbar-profile{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:none;padding:0;background:transparent;cursor:pointer;flex-shrink:0}.mobile-topbar-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.mobile-topbar-avatar--fallback{width:32px;height:32px;border-radius:50%;background:#0b1330;color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}.app-main{padding-bottom:66px}.mobile-bottom-nav{display:flex;align-items:stretch;justify-content:space-around;position:fixed;left:0;right:0;bottom:0;height:60px;background:var(--surface, #fff);border-top:1px solid var(--border, #e5e7eb);box-shadow:0 -4px 16px #0f172a0f;z-index:500;padding-bottom:env(safe-area-inset-bottom,0)}.mobile-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:none;background:none;cursor:pointer;color:var(--text-3, #9ca3af);text-decoration:none;font-size:10.5px;font-weight:600;-webkit-tap-highlight-color:transparent}.mobile-nav-item svg{transition:transform .15s}.mobile-nav-item:active svg{transform:scale(.88)}.mobile-nav-item.active{color:#6366f1}.mobile-nav-item--more-icon{display:flex}.mobile-sheet-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#02061773;z-index:900;animation:dropdownPopIn .15s ease both}.mobile-quick-sheet,.mobile-more-sheet,.mobile-profile-sheet{position:fixed;left:0;right:0;bottom:0;background:var(--surface, #fff);border-radius:18px 18px 0 0;padding:8px 16px calc(16px + env(safe-area-inset-bottom,0));box-shadow:0 -8px 32px #00000029;animation:mobileSheetSlideUp .2s ease both}@keyframes mobileSheetSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-sheet-handle{width:36px;height:4px;border-radius:999px;background:var(--border, #e5e7eb);margin:6px auto 12px}.mobile-quick-item{display:flex;align-items:center;gap:12px;width:100%;padding:13px 6px;border:none;background:none;text-align:left;font-size:14.5px;font-weight:600;color:var(--text, #111827);text-decoration:none;cursor:pointer;border-bottom:1px solid var(--border, #f3f4f6)}.mobile-quick-item:last-child{border-bottom:none}.mobile-quick-item--danger{color:#dc2626}.mobile-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:0 2px 10px;font-size:15px;font-weight:700;color:var(--text, #111827)}.mobile-sheet-close{border:none;background:var(--bg, #f4f6fb);color:var(--text-2, #6b7280);width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer}.mobile-sheet-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;max-height:60vh;overflow-y:auto;padding-bottom:6px}.mobile-sheet-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px 4px;border-radius:12px;text-decoration:none;color:var(--text-2, #374151);font-size:11px;font-weight:600;text-align:center}.mobile-sheet-item:active{background:var(--bg, #f4f6fb)}.mobile-sheet-item.active{color:#6366f1;background:#eef2ff}.mobile-profile-header{display:flex;align-items:center;gap:12px;padding:0 2px 14px}.mobile-profile-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover}.mobile-profile-avatar--fallback{background:#0b1330;color:#fff;font-size:17px;font-weight:700;display:flex;align-items:center;justify-content:center}.mobile-profile-name{font-size:15px;font-weight:700;color:var(--text, #111827)}.mobile-profile-role{font-size:12px;color:var(--text-2, #6b7280);text-transform:capitalize}}@media (max-width: 380px){.mobile-sheet-grid{grid-template-columns:repeat(3,1fr)}}.onecliq-brand{display:inline-flex;align-items:center;gap:10px;min-width:0}.onecliq-brand-mark{display:block;flex:0 0 auto;object-fit:contain}.onecliq-brand-name{color:inherit;font-size:18px;font-weight:700;letter-spacing:0;white-space:nowrap}.chatbot-fab{position:fixed;bottom:28px;right:28px;z-index:9000;width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #6366f173;transition:transform .2s,box-shadow .2s}.chatbot-fab:hover{transform:scale(1.08);box-shadow:0 6px 24px #6366f18c}.chatbot-fab--open{background:#374151;box-shadow:0 4px 16px #00000040}.chatbot-window{position:fixed;bottom:92px;right:28px;z-index:8999;width:340px;max-height:520px;display:flex;flex-direction:column;background:#fff;border-radius:18px;box-shadow:0 12px 48px #0f172a2e;border:1px solid #e5e7eb;overflow:hidden;animation:chatbot-appear .2s ease}@keyframes chatbot-appear{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.chatbot-header{display:flex;align-items:center;gap:10px;padding:14px 16px;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;flex-shrink:0}.chatbot-header-title{font-size:14px;font-weight:700;line-height:1.2}.chatbot-header-sub{font-size:11px;opacity:.75}.chatbot-close{margin-left:auto;background:none;border:none;color:#fff;cursor:pointer;opacity:.8;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center}.chatbot-close:hover{opacity:1;background:#ffffff1f}.chatbot-messages{flex:1;overflow-y:auto;padding:14px 12px;display:flex;flex-direction:column;gap:10px}.chatbot-messages::-webkit-scrollbar{width:4px}.chatbot-messages::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.chatbot-msg{display:flex;align-items:flex-start;gap:6px}.chatbot-msg--user{flex-direction:row-reverse}.chatbot-bot-icon{color:#6366f1;flex-shrink:0;margin-top:3px}.chatbot-bubble{max-width:82%;padding:9px 12px;border-radius:14px;font-size:13px;line-height:1.5}.chatbot-msg--bot .chatbot-bubble{background:#f3f4f6;color:#111827;border-bottom-left-radius:4px}.chatbot-msg--user .chatbot-bubble{background:#6366f1;color:#fff;border-bottom-right-radius:4px}.chatbot-quick-replies{display:flex;flex-direction:column;gap:5px;margin-top:8px;padding-left:20px}.chatbot-quick-label{font-size:11px;color:#9ca3af;margin-bottom:2px}[data-theme=dark] .chatbot-quick-label{color:#6b7280}.chatbot-suggestions{display:flex;flex-direction:column;gap:6px;margin-top:2px}.chatbot-suggestion{background:none;border:1.5px solid #6366f1;color:#6366f1;border-radius:20px;padding:6px 14px;font-size:12.5px;cursor:pointer;text-align:left;transition:background .15s}.chatbot-suggestion:hover{background:#eef2ff}.chatbot-input-row{display:flex;align-items:center;gap:8px;padding:10px 12px;border-top:1px solid #f3f4f6;flex-shrink:0}.chatbot-input{flex:1;border:1.5px solid #e5e7eb;border-radius:20px;padding:8px 14px;font-size:13px;outline:none;color:#111827;background:#f9fafb}.chatbot-input:focus{border-color:#6366f1;background:#fff}.chatbot-send{width:34px;height:34px;border-radius:50%;background:#6366f1;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.chatbot-send:disabled{background:#d1d5db;cursor:not-allowed}.chatbot-send:not(:disabled):hover{background:#4f46e5}[data-theme=dark] .chatbot-window{background:#1e2130;border-color:#ffffff14;box-shadow:0 12px 48px #00000073}[data-theme=dark] .chatbot-msg--bot .chatbot-bubble{background:#ffffff12;color:#e5e7eb}[data-theme=dark] .chatbot-input{background:#ffffff0d;border-color:#ffffff1f;color:#e5e7eb}[data-theme=dark] .chatbot-input:focus{border-color:#6366f1;background:#ffffff14}[data-theme=dark] .chatbot-input-row{border-top-color:#ffffff14}[data-theme=dark] .chatbot-suggestion{border-color:#818cf8;color:#818cf8}[data-theme=dark] .chatbot-suggestion:hover{background:#6366f126}[data-theme=dark] .chatbot-messages::-webkit-scrollbar-thumb{background:#ffffff26}.public-site{background:radial-gradient(circle at top left,rgba(99,102,241,.1),transparent 28%),radial-gradient(circle at 85% 12%,rgba(14,165,233,.12),transparent 24%),linear-gradient(180deg,#f8faff,#edf2ff 54%,#f7f9ff);color:var(--navy)}.public-site [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.public-site [data-reveal].is-visible{opacity:1;transform:translateY(0)}.public-site [data-reveal]:nth-child(2){transition-delay:.08s}.public-site [data-reveal]:nth-child(3){transition-delay:.16s}.public-site [data-reveal]:nth-child(4){transition-delay:.24s}.public-header{position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8fafff2;border-bottom:1px solid rgba(11,19,48,.08)}.public-header-inner{display:flex;align-items:center;gap:20px;justify-content:space-between;padding-top:16px;padding-bottom:16px}.public-brand{display:inline-flex;align-items:center;text-decoration:none}.public-nav{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:center}.public-nav a,.public-footer-links a,.public-footer-contacts a,.public-footer-bottom a{color:var(--navy);text-decoration:none;font-weight:600}.public-nav a:hover,.public-footer-links a:hover,.public-footer-contacts a:hover,.public-footer-bottom a:hover{color:#2563eb}.public-header-actions{display:flex;align-items:center;gap:10px}.public-header-actions .btn{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn-navy{background:var(--navy);color:#fff;border:1px solid var(--navy);border-radius:999px;padding:11px 18px;font-weight:700}.btn-navy:hover{background:#101a3d}.hero-section{position:relative;overflow:hidden;color:#fff;background:linear-gradient(135deg,#0b1330fa,#111f48f5),var(--navy);padding:104px 0 92px}.landing .hero-section{padding-bottom:46px}.hero-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 18% 20%,rgba(56,189,248,.18),transparent 28%),radial-gradient(circle at 78% 12%,rgba(99,102,241,.16),transparent 24%),radial-gradient(circle at 75% 75%,rgba(255,255,255,.06),transparent 22%);pointer-events:none}.hero-glow{position:absolute;z-index:0;border-radius:50%;filter:blur(70px);opacity:.55;pointer-events:none;animation:floatGlow 11s ease-in-out infinite}.hero-glow-a{top:-70px;left:6%;width:260px;height:260px;background:#38bdf859}.hero-glow-b{bottom:-90px;right:4%;width:320px;height:320px;background:#6366f152;animation-delay:-5s}@keyframes floatGlow{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-24px) scale(1.07)}}.hero-inner,.public-section,.public-grid,.public-faq,.public-cta,.public-footer-grid,.public-footer-bottom{position:relative;z-index:1}.hero-inner{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:40px;align-items:center}.hero-inner.hero-inner-solo{grid-template-columns:1fr;justify-items:center;text-align:center}.hero-inner-solo .hero-copy{max-width:980px}.hero-inner-solo .hero-copy h1{max-width:none}.hero-inner-solo .hero-text{max-width:880px;margin-left:auto;margin-right:auto}.hero-inner-solo .hero-actions{justify-content:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;padding:7px 14px;border-radius:999px;background:#38bdf81f;border:1px solid rgba(56,189,248,.28);color:#7dd3fc;font-size:.8rem;font-weight:700;letter-spacing:.04em}.eyebrow-below{margin:26px 0 0}.hero-copy h1,.public-section h2,.public-cta h2{letter-spacing:-.03em}.hero-copy h1{margin:0;max-width:14ch;font-size:clamp(2.4rem,5vw,4.6rem);line-height:1.02}.hero-copy p,.public-section p,.public-card p,.public-pricing-card p,.faq-item p{line-height:1.75}.hero-copy p{max-width:58ch}.hero-panel-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;background:#ffffff14}.hero-panel-label{color:#ffffffb8;font-size:.85rem}.hero-panel-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#38bdf829;color:#dff8ff;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.live-dot{width:7px;height:7px;border-radius:50%;background:#34d399;box-shadow:0 0 #34d39999;animation:pulseDot 1.8s ease-out infinite}@keyframes pulseDot{0%{box-shadow:0 0 #34d3998c}70%{box-shadow:0 0 0 7px #34d39900}to{box-shadow:0 0 #34d39900}}.hero-panel-stat{display:flex;flex-direction:column;gap:4px;padding:18px 18px 16px;border-radius:18px;background:linear-gradient(180deg,#ffffff1f,#ffffff0f);border:1px solid rgba(255,255,255,.12)}.hero-panel-stat strong{font-size:clamp(2rem,4vw,3.2rem);line-height:1}.hero-panel-stat span{color:#ffffffbd;font-size:.95rem}.hero-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.hero-panel-grid>div{padding:14px;border-radius:16px;background:#ffffff12;border:1px solid rgba(255,255,255,.1)}.hero-panel-grid strong{display:block;font-size:1.2rem;margin-bottom:4px}.hero-panel-grid span{color:#ffffffb8;font-size:.82rem;line-height:1.4}.section-kicker{margin:0 0 10px;color:#3b82f6;font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.feature-top,.panel-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.feature-icon,.panel-icon{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#eef2ff;color:#4338ca}.feature-index,.panel-tag{color:#64748b;font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.panel-grid,.feature-grid{display:grid;gap:18px}.panel-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.panel-card,.feature-card{padding:24px;border-radius:24px;border:1px solid rgba(11,19,48,.08);background:#fff;box-shadow:0 10px 28px #0f172a0d}.panel-card h2,.feature-card h3{margin:0 0 10px}.panel-card p,.feature-card p{margin:0;color:var(--text-muted-on-white)}.hero-text{max-width:620px;margin:18px 0 0;color:#ffffffd1;font-size:1.03rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-white{background:#fff;color:var(--navy);border:1px solid #fff;border-radius:999px;padding:11px 18px;font-weight:700}.btn-outline-white,.btn-outline-navy{border-radius:999px;padding:11px 18px;font-weight:700;border:1px solid rgba(11,19,48,.16);background:#ffffffeb;color:var(--navy)}.btn-outline-white{background:transparent;color:#fff;border-color:#ffffff42}.btn-outline-white:hover{background:#ffffff14}.btn-outline-navy:hover{background:#eef2ff}.hero-badges,.public-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.hero-badges span,.public-badges span{padding:9px 12px;border-radius:999px;font-size:.85rem;font-weight:600}.hero-badges span{background:#ffffff1a;color:#fffffff0;border:1px solid rgba(255,255,255,.12)}.public-badges span{background:#eef2ff;color:#3730a3;border:1px solid #c7d2fe}.hero-trust{display:flex;align-items:center;gap:10px;margin-top:22px;color:#ffffffad;font-size:.9rem}.hero-trust svg{flex-shrink:0;color:#7dd3fc}.hero-panel,.public-card,.public-pricing-card,.public-feature-card,.public-faq-item,.public-cta,.public-split{border-radius:24px;border:1px solid rgba(91,104,174,.12);background:linear-gradient(180deg,#fffffffa,#f0f4fff0);box-shadow:0 16px 42px #0f172a17}.hero-panel{padding:24px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff14;border-color:#ffffff1f;box-shadow:0 24px 60px #0000002e;animation:floatPanel 8s ease-in-out infinite}@keyframes floatPanel{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.public-section{padding:80px 0 0}.public-section-head{max-width:740px;text-align:center;margin:0 auto 34px}.public-section-head h2{margin:0;font-size:clamp(1.7rem,3vw,2.6rem)}.public-section-head p{margin:12px auto 0;color:var(--text-muted-on-white)}.public-grid{display:grid;gap:18px}.public-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.public-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.public-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.public-card,.public-feature-card,.public-pricing-card,.public-faq-item{padding:24px;position:relative;overflow:hidden;color:var(--navy);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.public-card p,.public-feature-card p,.public-pricing-card p,.public-faq-item p{color:var(--text-muted-on-white)}.public-card:hover,.public-feature-card:hover,.public-pricing-card:hover,.public-faq-item:hover{transform:translateY(-4px);border-color:#6366f13d;box-shadow:0 22px 56px #0f172a21}.public-card:before,.public-feature-card:before,.public-pricing-card:before,.public-faq-item:before{content:"";display:block;width:44px;height:4px;border-radius:999px;margin-bottom:16px;background:linear-gradient(90deg,#2563eb,#a78bfa)}.public-card h3,.public-feature-card h3,.public-pricing-card h3,.public-faq-item h3{margin:0 0 10px;font-size:1.08rem}.public-tag{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#4338ca;font-weight:700;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.public-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;padding:24px;background:linear-gradient(180deg,#fffffffa,#ecf2fff2)}.public-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}.public-list li{display:flex;gap:10px;align-items:flex-start;color:var(--text-on-white)}.public-list li:before{content:"•";color:#2563eb;font-weight:900;line-height:1.6}.concept-section{background:linear-gradient(180deg,#f8fafc,#fff);padding-top:40px}.concept-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.concept-item{position:relative;padding:8px 32px;text-align:center}.concept-item+.concept-item{border-left:1px solid rgba(11,19,48,.08)}.concept-index{display:block;font-size:3.2rem;font-weight:800;line-height:1;color:#2563eb1a;margin-bottom:-12px}.concept-item h3{margin:0 0 8px;font-size:1.2rem;color:var(--navy)}.concept-item p{margin:0;color:var(--text-muted-on-white)}.public-cta{margin:64px auto 0;padding:30px;display:flex;gap:18px;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#0b1330,#152451);color:#fff;overflow:hidden;box-shadow:0 24px 60px #0b13302e}.public-cta p{color:#ffffffc7;margin:10px 0 0}.public-footer{margin-top:48px;padding:44px 0 22px;color:#ffffffb8;background:radial-gradient(circle at 12% 0%,rgba(56,189,248,.1),transparent 30%),linear-gradient(180deg,#0b1330,#0f1a3d 60%,#0b1330)}.public-footer-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr) minmax(0,.85fr) auto;gap:32px;align-items:start}.public-footer-brand{display:flex;align-items:flex-start;gap:12px}.public-footer-name{margin:0;font-size:1.05rem;font-weight:800;color:#fff}.public-footer-text{margin:4px 0 14px;color:#fff9}.public-footer-col-title{margin:0 0 16px;font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#ffffffe6}.public-footer-links{display:grid;gap:12px}.public-footer-docs a{display:inline-flex;align-items:center;gap:8px}.public-footer-docs svg{color:#7dd3fc;flex-shrink:0}.public-footer-social{display:flex;flex-direction:column;align-items:center;gap:10px}.public-footer-social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#ffffffd9;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.public-footer-social a:hover{background:#7dd3fc29;border-color:#7dd3fc59;color:#7dd3fc;transform:translateY(-2px)}.public-footer-links a,.public-footer-bottom a{color:#ffffffc7;text-decoration:none;font-weight:600}.public-footer-links a:hover,.public-footer-bottom a:hover{color:#7dd3fc}.public-footer-bottom{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 24px;margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);color:#ffffff80;font-size:.85rem}.public-footer-requisites-list{margin:0;padding:0;list-style:none;display:grid;gap:6px;font-size:.8rem;line-height:1.6;color:#ffffff9e;max-width:46ch}.site-footer{margin-top:48px;padding:38px 0 24px;border-top:1px solid rgba(11,19,48,.08);background:linear-gradient(180deg,#fffffff5,#f0f4ffeb)}.footer-grid{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(0,1fr));gap:24px;align-items:start}.footer-brand{display:flex;align-items:flex-start;gap:12px}.brand-name-footer{margin:0;font-size:1.05rem;font-weight:800}.footer-tagline{margin:4px 0 0;color:var(--text-muted-on-white)}.footer-note{margin:6px 0 0;color:var(--text-muted-on-white)}.footer-links{display:grid;gap:10px}.footer-copyright{margin:20px 0 0;text-align:center;color:var(--text-muted-on-white)}.section-anchor{scroll-margin-top:96px}@media (max-width: 1080px){.public-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-inner,.public-split,.public-footer-grid{grid-template-columns:1fr}.public-cta{flex-direction:column;align-items:flex-start}.panel-grid,.feature-grid,.footer-grid{grid-template-columns:1fr}}@media (max-width: 760px){.public-header-inner{flex-direction:column;align-items:flex-start}.public-nav{justify-content:flex-start}.public-header-actions{width:100%;flex-wrap:wrap}.public-grid.cols-2,.public-grid.cols-3,.public-grid.cols-4{grid-template-columns:1fr}.hero-section{padding:74px 0 70px}.public-section{padding-top:72px}.concept-breakdown{grid-template-columns:1fr}.concept-item+.concept-item{border-left:none;border-top:1px solid rgba(11,19,48,.08);padding-top:24px}}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr}.auth-layout-brand{position:relative;overflow:hidden;background:var(--navy);color:var(--white);display:flex;align-items:center;justify-content:center;padding:48px 32px}.auth-layout-brand:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 18%,rgba(56,189,248,.22),transparent 30%),radial-gradient(circle at 82% 78%,rgba(99,102,241,.2),transparent 28%);pointer-events:none}.auth-layout-brand-inner{position:relative;z-index:1;max-width:360px;animation:authFadeIn .5s ease both}@keyframes authFadeIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.auth-layout-brand-inner .onecliq-brand{margin-bottom:20px}.auth-layout-brand-inner h1{margin:0 0 14px;font-size:2rem}.auth-layout-brand-inner p{margin:0;color:var(--text-muted-on-navy);line-height:1.7}.auth-layout-content{display:flex;align-items:center;justify-content:center;padding:40px 24px;background:var(--white)}.auth-layout-form{width:100%;max-width:420px;animation:authFadeIn .5s ease .08s both}.auth-layout-back{display:inline-flex;color:var(--text-muted-on-white);font-size:.9rem;margin-bottom:24px}.auth-layout-form h2{margin:0 0 10px;font-size:1.7rem;color:var(--navy)}.auth-layout-subtitle{margin:0 0 28px;color:var(--text-muted-on-white);line-height:1.6}@media (min-width: 900px){.auth-layout{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion: reduce){.auth-layout-brand-inner,.auth-layout-form{animation:none!important}}.profile-page{min-height:100vh;background:radial-gradient(circle at top left,rgba(79,70,229,.08),transparent 24%),linear-gradient(180deg,#f5f7fc,#eef2fb)}.profile-topbar{background:linear-gradient(135deg,#081225,#0f1d45);padding:18px 0;box-shadow:0 10px 24px #08122529}.profile-topbar-inner{display:flex;align-items:center;justify-content:space-between}.brand-mini{display:flex;align-items:center;gap:10px;color:var(--white);font-weight:700}.profile-topbar .btn-outline-navy{background:transparent;color:var(--white);border-color:#ffffff80}.profile-content{padding:40px 24px 64px;display:grid;gap:22px;max-width:760px}.profile-card{background:var(--white);border:1px solid rgba(11,19,48,.08);border-radius:28px;padding:28px;box-shadow:0 14px 38px #0f172a0f}.profile-card h3{margin:0 0 18px;color:var(--navy);font-size:1.15rem}.profile-summary{text-align:center;display:flex;flex-direction:column;align-items:center}.avatar-wrapper{position:relative;width:104px;height:104px;margin-bottom:18px}.avatar-image,.avatar-placeholder{width:104px;height:104px;border-radius:50%;object-fit:cover}.avatar-placeholder{background:linear-gradient(135deg,#081225,#4f46e5);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:1.7rem;font-weight:700}.avatar-edit-btn{position:absolute;bottom:0;right:0;width:32px;height:32px;border-radius:50%;border:2px solid var(--white);background:#4f46e5;color:var(--white);cursor:pointer;font-size:.85rem;box-shadow:0 8px 16px #4f46e540}.profile-summary h2{margin:4px 0;color:var(--navy)}.profile-role{margin:0 0 6px;color:var(--text-muted-on-white);font-weight:600;font-size:.92rem}.profile-email{margin:0;color:var(--text-muted-on-white);font-size:.88rem}.profile-form-row{display:grid;grid-template-columns:1fr;gap:0 16px}.profile-form{display:flex;flex-direction:column}.profile-form .btn-inline{align-self:center}.btn-inline{width:auto;padding:12px 26px}.profile-page .field input,.profile-page .field select,.profile-page .code-input{padding:13px 16px;border-radius:14px;border:1.5px solid rgba(11,19,48,.14);background:#fff;color:var(--text-on-white);font-size:.98rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.profile-page .field input:focus,.profile-page .field select:focus,.profile-page .code-input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e524}.profile-page .field label{color:#334155}.profile-page .field-hint{color:#64748b}.profile-page .alert{border-radius:14px;margin-bottom:14px}.profile-page .alert-error{background:#ef444414;border-color:#ef44443d;color:#b91c1c}.profile-page .alert-success{background:#4f46e514;border-color:#4f46e538;color:#3730a3}.profile-topbar .btn-outline-navy{background:#ffffff0f;color:#fff;border-color:#ffffff52}.profile-topbar .btn-outline-navy:hover{background:#ffffff1f}.profile-page .btn-inline,.profile-page .btn.btn-outline-navy{border-radius:14px}.activity-list{display:flex;flex-direction:column;gap:10px}.activity-item{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:14px;background:#f8fafc;border:1px solid rgba(11,19,48,.08)}.activity-item strong{color:#0b1330;font-size:14px}.activity-item span{color:#64748b;font-size:12px}.activity-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:16px}.activity-pagination button{padding:8px 16px;border-radius:10px;border:1.5px solid rgba(11,19,48,.14);background:#fff;color:var(--navy);font-size:.85rem;cursor:pointer}.activity-pagination button:disabled{opacity:.4;cursor:default}.activity-pagination span{color:#64748b;font-size:.85rem}[data-theme=dark] .activity-pagination button{background:transparent;border-color:var(--border, #2d3148);color:var(--text, #f1f5f9)}[data-theme=dark] .activity-pagination span{color:var(--text-2, #94a3b8)}[data-theme=dark] .profile-page{background:radial-gradient(circle at top left,rgba(79,70,229,.16),transparent 24%),linear-gradient(180deg,#0f1117,#0b0f18)}[data-theme=dark] .profile-page{background:var(--bg, #0f1117)}[data-theme=dark] .profile-topbar{background:linear-gradient(135deg,#081225,#0f1d45)}[data-theme=dark] .profile-topbar .btn-outline-navy{background:#ffffff0f;color:#fff;border-color:#ffffff2e}[data-theme=dark] .profile-topbar .btn-outline-navy:hover{background:#ffffff1a}[data-theme=dark] .profile-card{background:var(--surface, #1a1d27);border-color:var(--border, #2d3148);box-shadow:0 18px 40px #00000047}[data-theme=dark] .profile-card h3,[data-theme=dark] .profile-summary h2,[data-theme=dark] .brand-mini{color:var(--text, #f1f5f9)}[data-theme=dark] .profile-role,[data-theme=dark] .profile-email{color:var(--text-2, #94a3b8)}[data-theme=dark] .avatar-placeholder,[data-theme=dark] .avatar-edit-btn{background:#4f46e5;color:#fff}[data-theme=dark] .profile-page .field input,[data-theme=dark] .profile-page .field select,[data-theme=dark] .profile-page .code-input{background:var(--bg, #0f1117);border-color:var(--border, #2d3148);color:var(--text, #f1f5f9)}[data-theme=dark] .profile-page .field input::placeholder,[data-theme=dark] .profile-page .code-input::placeholder{color:var(--text-3, #64748b)}[data-theme=dark] .profile-page .field label,[data-theme=dark] .profile-page .field-hint{color:var(--text-2, #94a3b8)}[data-theme=dark] .profile-page .alert-error{background:#ef44441f;border-color:#f8717142;color:#fca5a5}[data-theme=dark] .profile-page .alert-success{background:#4f46e524;border-color:#6366f147;color:#c7d2fe}[data-theme=dark] .profile-page .btn-inline{background:linear-gradient(135deg,#6366f1,#4f46e5);border:none}.profile-card .btn-outline-navy{color:var(--navy);border-color:var(--navy);background:transparent}[data-theme=dark] .profile-card .btn-outline-navy{color:var(--text, #f1f5f9);border-color:var(--border, #2d3148);background:transparent}[data-theme=dark] .profile-card .btn-outline-navy:hover{background:#ffffff0f}[data-theme=dark] .activity-item{background:#ffffff08;border-color:var(--border, #2d3148)}[data-theme=dark] .activity-item strong,[data-theme=dark] .activity-item span{color:var(--text-2, #94a3b8)}@media (min-width: 560px){.profile-form-row{grid-template-columns:1fr 1fr}}.legal-page{background:var(--white);min-height:100vh}.legal-header{padding:20px 0;border-bottom:1px solid rgba(11,19,48,.08)}.legal-header-inner{display:flex;align-items:center;justify-content:space-between}.legal-header .brand-mini-dark{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--navy)}.legal-content{padding:48px 24px;max-width:720px}.legal-content h1{margin:0 0 24px;color:var(--navy);font-size:1.8rem}.legal-content h2{margin:32px 0 12px;color:var(--navy);font-size:1.15rem}.legal-content h3{margin:20px 0 10px;color:var(--navy);font-size:1rem}.legal-content .legal-meta{color:var(--text-muted-on-white);font-size:.9rem;margin:0 0 24px}.legal-content p{color:var(--text-muted-on-white);line-height:1.8;margin:0 0 16px}.legal-content ul{color:var(--text-muted-on-white);line-height:1.8;margin:0 0 16px;padding-left:20px}.waiting-page{min-height:100vh;background:#f4f6fb;display:flex;align-items:center;justify-content:center;padding:24px}.waiting-card{background:#fff;border-radius:16px;box-shadow:0 4px 24px #0b13301a;padding:48px 40px;width:100%;max-width:440px;text-align:center;display:flex;flex-direction:column;gap:20px}.waiting-logo{justify-content:center;color:#0b1330}.waiting-title{font-size:24px;font-weight:700;color:#0b1330;margin:0}.waiting-text{font-size:15px;color:#6b7280;line-height:1.6;margin:0}.waiting-user{background:#f4f6fb;border-radius:10px;padding:14px 20px;text-align:left}.waiting-user-name{font-size:15px;font-weight:600;color:#0b1330;margin-bottom:3px}.waiting-user-email{font-size:13px;color:#6b7280}.waiting-actions{display:flex;gap:10px}.btn-outline{flex:1;padding:10px;border:1px solid #0b1330;background:none;border-radius:8px;font-size:14px;font-weight:600;color:#0b1330;cursor:pointer;transition:background .15s}.btn-outline:hover{background:#f4f6fb}.btn-logout{flex:1;padding:10px;border:1px solid #d1d5db;background:none;border-radius:8px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:background .15s}.btn-logout:hover{background:#f3f4f6}.cal-page{display:flex;height:100%;min-height:0;overflow:hidden;background:linear-gradient(180deg,#f5f7fc,#eef2fb);position:relative}@media (max-width: 1100px){.cal-right:not(.cal-right--closed){position:absolute;z-index:20;top:0;right:0;bottom:0;width:min(300px,calc(100vw - 72px));min-width:min(300px,calc(100vw - 72px));box-shadow:-8px 0 24px #0f172a24}}.cal-topbar{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:nowrap;padding:0 20px;height:56px;min-height:56px;background:#fffffff5;border-bottom:1px solid #e5e7eb;flex-shrink:0;position:relative;overflow-x:auto}.cal-topbar-right{display:flex;align-items:center;gap:8px;margin-left:12px;flex-shrink:0}.cal-seg--compact{min-width:100px;flex-shrink:0}.cal-seg--compact .cal-seg-btn{padding:6px 9px;font-size:12px}.cal-seg--view{min-width:190px}.cal-nav-btn{width:32px;height:32px;border:1px solid #e5e7eb;background:#fff;border-radius:9px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#374151;transition:background .15s,border-color .15s,transform .1s;flex-shrink:0}.cal-nav-btn:hover{background:#f3f4f6;border-color:#d1d5db}.cal-nav-btn:active{transform:scale(.94)}.cal-bday-btn{position:relative;color:#6366f1;border-color:#c7d2fe}.cal-bday-btn:hover{background:#eef2ff}.cal-bday-btn-badge{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#6366f1;color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.cal-bday-list-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:#f9fafb;cursor:pointer;transition:background .15s}.cal-today-btn{padding:7px 16px;border:1.5px solid #6366f1;color:#6366f1;background:none;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap;flex-shrink:0}.cal-today-btn:hover{background:#6366f1;color:#fff}.cal-today-btn:active{transform:scale(.96)}.cal-topbar-date{font-size:15px;font-weight:700;color:#0b1330;text-transform:capitalize;white-space:nowrap;margin:0 6px}.cal-live-indicator{display:inline-flex;align-items:center;gap:5px;color:#047857;font-size:11px;font-weight:650;white-space:nowrap}.cal-live-indicator svg{animation:cal-live-pulse 2s ease-in-out infinite}@keyframes cal-live-pulse{50%{opacity:.35;transform:scale(.86)}}.cal-sidebar-toggle{width:32px;height:32px;border:1px solid #e5e7eb;background:#fff;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:background .15s}.cal-sidebar-toggle:hover{background:#f3f4f6;color:#374151}.cal-col-header--compact{padding:0;min-height:4px;height:4px;background:#fffffff5!important}.cal-col-header--compact .col-av,.cal-col-header--compact .col-count{display:none}.cal-sidebar-toggle--collapsed{margin:12px auto 0;width:32px;height:32px}.mini-cal{flex:0 0 auto;min-height:214px;margin-bottom:10px;padding-bottom:4px}.mini-cal-header{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;color:#374151;margin-bottom:6px}.mini-cal-header button{background:none;border:none;cursor:pointer;color:#9ca3af;display:flex;align-items:center;padding:2px;border-radius:4px}.mini-cal-header button:hover{background:#f3f4f6}.mini-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:26px;gap:2px}.mini-cal-dow{text-align:center;font-size:10px;color:#9ca3af;font-weight:600;padding:2px 0}.mini-cal-day{display:flex;align-items:center;justify-content:center;margin:0 auto;width:26px;height:26px;font-size:12px;border-radius:50%;cursor:pointer;color:#374151;position:relative}.mini-cal-day:hover{background:#f3f4f6}.mini-cal-day.today{font-weight:700;color:#6366f1}.mini-cal-day.selected{background:#6366f1;color:#fff;font-weight:600;box-shadow:0 2px 6px #6366f159}.mini-cal-day.today.selected{color:#fff}.mini-cal-day.has-bday:after{content:"";position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:#f59e0b}.mini-cal-day.selected.has-bday:after{background:#fef3c7}.cal-waiting-btn{display:flex;align-items:center;gap:8px;margin:0 12px 8px;padding:10px 14px;border:1.5px solid #6366f1;background:#eef2ff;color:#4f46e5;border-radius:10px;cursor:pointer;font-size:13px;font-weight:600;transition:all .15s}.cal-waiting-btn.open,.cal-waiting-btn:hover{background:#6366f1;color:#fff}.cal-badge{background:#ef4444;color:#fff;font-size:10px;font-weight:700;border-radius:20px;padding:1px 6px;margin-left:auto}.cal-bdays{margin:0 12px 8px;display:flex;flex-direction:column;gap:4px}.cal-bday{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:#f9fafb}.cal-bday.today{background:#eef2ff}.bday-name{font-size:12px;font-weight:600;color:#374151}.bday-sub{font-size:11px;color:#9ca3af}.cal-filters{padding:0 12px;flex:1}.cal-filters-label{font-size:10px;font-weight:700;color:#9ca3af;letter-spacing:.8px;margin-bottom:10px}.cal-filter-group{margin-bottom:12px}.cal-filter-name{font-size:12px;font-weight:600;color:#374151;margin-bottom:5px}.cal-seg{display:flex;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;height:32px}.cal-seg-btn{flex:1;padding:6px;border:none;background:none;font-size:12px;font-weight:500;cursor:pointer;color:#6b7280;transition:background .15s,color .15s}.cal-seg-btn:hover:not(.active){background:#f3f4f6}.cal-seg-btn.active{background:#6366f1;color:#fff}.cal-filter-select{width:100%;border:1px solid #e5e7eb;border-radius:7px;padding:7px 10px;font-size:13px;outline:none;background:#f9fafb}.cal-filter-select:focus{border-color:#6366f1;background:#fff}.cal-doctor-section{padding-top:10px;border-top:1px solid #f0f1f3}.cal-filters-label--icon{display:flex;align-items:center;gap:6px;text-transform:uppercase}.cal-doctor-list{display:flex;flex-direction:column;gap:5px}.cal-doctor-list-item{display:flex;align-items:center;gap:9px;padding:8px 9px;border-radius:10px;cursor:pointer;font-size:13px;color:#374151;background:#fff;border:1px solid transparent;transition:background .15s,border-color .15s}.cal-doctor-list-item:hover{background:#f6f7f9;border-color:#eceef1}.cal-doctor-list-item.active{background:#eef2ff;border-color:#c7d2fe;color:#4338ca;font-weight:600}.cal-doctor-list-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-doctor-list-dot{width:6px;height:6px;border-radius:50%;background:#6366f1;flex-shrink:0}.cal-doctor-list-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0;box-shadow:0 0 0 2px #fff,0 1px 2px #00000014}.cal-doctor-list-avatar--all{background:#9ca3af}.cal-doctor-empty{display:flex;align-items:center;gap:8px;padding:10px 8px;border-radius:8px;background:#f9fafb;border:1px dashed #e5e7eb;font-size:12px;color:#9ca3af}.cal-new-appt-btn{margin:12px;padding:10px;background:#0b1330;color:#fff;border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px}.cal-new-appt-btn:hover{background:#1e2d5a}.form-room-hint{display:inline-flex;align-items:center;gap:4px;margin-left:8px;font-size:11px;font-weight:500;color:#6366f1;background:#eef2ff;padding:2px 7px;border-radius:20px}.cal-right{width:240px;min-width:240px;background:#fffffff5;border-left:1px solid #e5e7eb;display:flex;flex-direction:column;padding:6px 14px 14px;gap:0;overflow:visible;transition:width .2s,min-width .2s,padding .2s;position:relative;flex-shrink:0}.cal-right--closed{width:40px;min-width:40px;padding:12px 4px;overflow:visible}.cal-right--closed>*:not(.cal-right-toggle){display:none}.cal-right-toggle{position:absolute;top:12px;left:-14px;transform:none;width:26px;height:26px;background:#eef2ff;border:1px solid #c7d2fe;border-right:none;border-radius:6px 0 0 6px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6366f1;z-index:10;box-shadow:-2px 0 6px #6366f12e;outline:none;transition:background .15s,color .15s}.cal-right-toggle:hover{background:#e0e7ff;color:#4338ca}.cal-right-toggle:focus,.cal-right-toggle:focus-visible{outline:none;box-shadow:-2px 0 6px #6366f12e}.cal-right .cal-new-appt-btn{margin:0;width:100%}.cal-right .cal-filters-label{margin-top:0}.cal-right-inner{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding-top:0}.cal-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.cal-waiting-panel{background:#fffffff5;border-bottom:1px solid #e5e7eb;max-height:220px;overflow-y:auto}.cwp-header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;font-size:13px;font-weight:600;color:#374151;border-bottom:1px solid #f3f4f6}.cwp-header button{background:none;border:none;cursor:pointer;color:#9ca3af;font-size:16px}.cwp-empty{padding:16px;text-align:center;font-size:13px;color:#9ca3af}.cwp-row{display:flex;align-items:center;gap:12px;padding:10px 16px;cursor:pointer;border-bottom:1px solid #f9fafb}.cwp-row:hover{background:#f9fafb}.cwp-time{font-size:14px;font-weight:700;color:#6366f1;min-width:40px}.cwp-info{flex:1}.cwp-name{font-size:13px;font-weight:600;color:#111827}.cwp-service{font-size:12px;color:#9ca3af}.cwp-doc{font-size:12px;color:#6b7280}.cal-summary-bar{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;padding:10px 20px;background:#fffffff5;border-bottom:1px solid #e5e7eb;font-size:13px;color:#6b7280}.cal-summary-stats{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.cal-sum-item{display:flex;align-items:center;gap:5px;font-weight:500}.cal-availability-legend{display:flex;align-items:center;gap:12px;font-size:11px;color:#64748b}.cal-availability-legend span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.cal-legend-dot{width:9px;height:9px;border-radius:50%;display:inline-block;border:1px solid rgba(15,23,42,.12)}.cal-legend-dot--free{background:#fff;border-color:#94a3b8}.cal-legend-dot--occupied{background:#6366f1}.cal-legend-dot--unavailable{background:repeating-linear-gradient(135deg,#e2e8f0 0,#e2e8f0 3px,#cbd5e1 3px,#cbd5e1 6px)}.cal-container{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0;position:relative}.cal-list-view{flex:1;min-height:0;overflow:auto;padding:16px 18px 24px;background:#f5f7fc}.cal-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.cal-list-title{font-size:18px;font-weight:800;color:#0b1330}.cal-list-sub{margin-top:4px;font-size:13px;color:#64748b;font-weight:650;text-transform:capitalize}.cal-list-rows{display:flex;flex-direction:column;gap:8px}.cal-list-row{width:100%;display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:14px;align-items:start;padding:12px 14px;border:1px solid #dbe3ef;border-radius:12px;background:#fff;text-align:left;cursor:pointer;box-shadow:0 4px 14px #0f172a0f}.cal-list-row:hover{border-color:#bfdbfe;background:#f8fbff}.cal-list-time{color:#2563eb;font-weight:800;font-size:15px;white-space:nowrap}.cal-list-main{min-width:0}.cal-list-name{color:#111827;font-size:15px;font-weight:800}.cal-list-meta{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:4px;color:#64748b;font-size:13px;font-weight:650}.cal-list-meta span:not(:last-child):after{content:"·";margin-left:10px;color:#cbd5e1}.cal-list-comment{margin-top:6px;color:#334155;font-size:13px;line-height:1.35}.cal-list-finance{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:7px;color:#334155;font-size:12px;font-weight:750}.cal-list-finance span+span{border-left:1px solid #dbe3ef;padding-left:12px}.cal-list-status{justify-self:end;padding:4px 8px;border-radius:999px;color:#fff;font-size:12px;font-weight:800;white-space:nowrap}.cal-list-empty{display:flex;align-items:center;justify-content:center;min-height:220px;border:1px dashed #cbd5e1;border-radius:14px;color:#94a3b8;font-weight:700;background:#fff}.cal-loading{position:absolute;top:0;left:0;right:0;text-align:center;padding:20px;color:#6b7280;background:#fffc;z-index:5;display:flex;align-items:center;justify-content:center;gap:8px}.cal-spinner{width:14px;height:14px;border:2px solid #d1d5db;border-top-color:#6366f1;border-radius:50%;animation:cal-spin .7s linear infinite}@keyframes cal-spin{to{transform:rotate(360deg)}}.cal-empty-overlay{position:absolute;top:60px;left:0;right:0;text-align:center;padding:40px 20px;color:#9ca3af;font-size:14px;z-index:4;pointer-events:none}.cal-search-input{border:1px solid #d1d5db;border-radius:8px;padding:6px 10px;font-size:12.5px;width:150px;height:30px;outline:none;background:#fff;color:#0b1330;box-sizing:border-box;transition:border-color .15s,box-shadow .15s;flex-shrink:0}.cal-search-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.cal-search-input::placeholder{color:#9ca3af}.cal-search-wrap{display:flex;align-items:center;gap:6px;padding:0 7px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#94a3b8}.cal-search-wrap:focus-within{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.cal-search-wrap .cal-search-input{width:220px;border:0;box-shadow:none;padding:6px 0}.cal-search-wrap .cal-search-input:focus{box-shadow:none}.cal-search-clear{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:#64748b;cursor:pointer;padding:2px}.cal-col-headers{display:flex;position:sticky;top:0;z-index:3;background:#fffffff5;border-bottom:2px solid #e5e7eb;flex-shrink:0}.cal-corner{width:56px;min-width:56px;flex-shrink:0;border-right:1px solid #e5e7eb}.cal-col-headers-scroll{display:flex;flex:1 1 auto;min-width:0;overflow:hidden}.cal-col-headers-scroll.cal-fit-columns{flex:1 1 auto}.cal-col-hdr{flex:0 0 150px;width:150px;min-width:150px;min-height:72px;padding:8px 12px;border-right:1px solid #e5e7eb;display:flex;align-items:center;gap:8px;box-sizing:border-box}.cal-col-hdr--clickable{border-top:0;border-left:0;background:transparent;text-align:left;cursor:pointer;font:inherit}.cal-col-hdr--clickable:hover{background:#f8fafc}.cal-col-hdr--clickable.active{background:#eef2ff}.cal-col-headers-scroll.cal-fit-columns .cal-col-hdr{flex:1 1 0;width:calc(100% / var(--cal-col-count));min-width:0}.cal-col-hdr.today{background:#eef2ff}.cal-col-hdr-av{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0}.cal-col-hdr-name{min-width:0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:16px;font-size:13px;font-weight:600;color:#111827}.cal-col-hdr-sub{font-size:11px;color:#9ca3af}.cal-col-hdr-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.cal-col-hdr-dow{font-size:11px;font-weight:700;text-transform:uppercase;color:#9ca3af}.cal-col-hdr-day{font-size:18px;font-weight:700;color:#374151}.cal-col-hdr-day.today{width:30px;height:30px;background:#6366f1;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px}.cal-week-board-wrap{flex:1;min-height:0;overflow:auto;background:#f8fafc}.cal-week-board{min-width:max-content;display:flex;flex-direction:column;border-top:1px solid #e2e8f0;border-left:1px solid #e2e8f0}.cal-week-board-head,.cal-week-board-row{display:grid;grid-template-columns:120px repeat(var(--week-doctors, 1),minmax(210px,1fr))}.cal-week-board-head{position:sticky;top:0;z-index:2;background:#fff}.cal-week-day-head,.cal-week-doctor-head{min-height:72px;box-sizing:border-box;border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;background:#fff}.cal-week-day-head{display:flex;align-items:center;padding:14px;font-size:12px;font-weight:750;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em}.cal-week-doctor-head{border:0;border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;border-top:4px solid #6366f1;display:flex;align-items:center;gap:9px;padding:10px 13px;text-align:left;cursor:pointer;color:#172033;font:inherit}.cal-week-doctor-head:hover{background:#f8fafc}.cal-week-doctor-head>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;color:#fff;font-size:10px;font-weight:750}.cal-week-doctor-head b{font-size:13px;line-height:17px}.cal-week-date-cell{min-height:150px;padding:16px 13px;border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;background:#fff;display:flex;gap:8px;align-items:flex-start}.cal-week-date-cell small{padding-top:4px;color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:700}.cal-week-date-cell strong{font-size:23px;line-height:28px;color:#334155}.cal-week-date-cell.is-today{background:#eef2ff}.cal-week-date-cell.is-today strong{color:#4f46e5}.cal-week-appointments-cell{min-height:150px;padding:8px;box-sizing:border-box;border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;background:#fff;display:flex;flex-direction:column;gap:6px;cursor:pointer}.cal-week-appointments-cell:hover{background:#f8fbff}.cal-week-appointment{border:0;border-left:4px solid #6366f1;border-radius:8px;padding:8px 9px;display:grid;gap:2px;text-align:left;color:#fff;cursor:pointer;box-shadow:0 1px 2px #0f172a1f}.cal-week-appointment span{font-size:11px;font-weight:750}.cal-week-appointment b{font-size:12px;line-height:15px}.cal-week-appointment small{font-size:10px;opacity:.9}.cal-week-empty{color:#cbd5e1;font-size:12px;margin:auto;pointer-events:none}.cal-week-board-row--timeline{align-items:stretch}.cal-week-hour-labels{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;pointer-events:none}.cal-week-hour-labels span{height:60px;padding:5px 8px;border-top:1px solid #eef2f7;color:#94a3b8;font-size:10px;text-align:right}.cal-week-appointments-cell--timeline{position:relative;align-self:stretch;overflow:hidden;background:#fff}.cal-week-hour-line{position:absolute;left:0;right:0;border-top:1px solid #eef2f7;pointer-events:none}.cal-week-appointments-cell--timeline .cal-week-appointment{z-index:1}.cal-doctor-week-timeline{overflow:auto;border:1px solid #dbe3ef;border-radius:12px;background:#fff}.cal-doctor-week-head,.cal-doctor-week-grid{display:grid;min-width:900px}.cal-doctor-week-head{position:sticky;top:0;z-index:4;background:#fff;border-bottom:1px solid #dbe3ef}.cal-doctor-week-time-head,.cal-doctor-week-day-head{min-height:58px;padding:10px 12px;border-right:1px solid #e5eaf1}.cal-doctor-week-time-head{color:#94a3b8;font-size:11px;font-weight:800}.cal-doctor-week-time-head span{display:block;margin-top:7px}.cal-doctor-week-all-button{display:block;width:100%;padding:5px 8px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#2563eb;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}.cal-doctor-week-all-button:hover{background:#dbeafe}.cal-doctor-week-time-head small{display:block;max-width:104px;margin-top:5px;color:#2563eb;font-size:11px;line-height:1.2;overflow-wrap:anywhere}.cal-doctor-week-day-head{display:flex;align-items:center;gap:8px;color:#334155}.cal-doctor-week-day-head small{color:#94a3b8;font-size:11px;text-transform:uppercase}.cal-doctor-week-day-head strong{font-size:20px}.cal-doctor-week-grid{position:relative}.cal-doctor-week-time{padding:6px 8px 0 0;border-right:1px solid #e5eaf1;border-bottom:1px solid #eef2f7;color:#94a3b8;font-size:10px;text-align:right}.cal-doctor-week-day-column{position:relative;border-right:1px solid #e5eaf1;background:#fff}.cal-doctor-week-hour-line{position:absolute;left:0;right:0;border-top:1px solid #eef2f7;pointer-events:none}.cal-doctor-week-event{position:absolute;left:7px;right:7px;z-index:2;display:grid;align-content:start;gap:2px;padding:5px 7px;border:0;border-left:4px solid #2563eb;border-radius:7px;color:#fff;text-align:left;cursor:pointer;overflow:hidden;box-shadow:0 2px 6px #0f172a21}.cal-doctor-week-event span{font-size:10px;font-weight:800}.cal-doctor-week-event b{font-size:11px}.cal-doctor-week-event small{font-size:9px;opacity:.9}.cal-body{display:flex;flex:1;overflow:auto;min-height:0}.cal-times-col{width:56px;min-width:56px;flex-shrink:0;position:sticky;left:0;z-index:2;background:#fffffff5;border-right:1px solid #e5e7eb;overflow:visible}.cal-hr-lbl{position:absolute;right:8px;font-size:11px;color:#9ca3af;transform:translateY(-50%);white-space:nowrap;-webkit-user-select:none;user-select:none}.cal-hr-lbl:first-child{transform:translateY(2px)}.cal-cols-area{display:flex;flex:0 0 max-content}.cal-cols-area.cal-fit-columns{flex:1 1 auto}.cal-col-body{flex:0 0 150px;width:150px;min-width:150px;position:relative;border-right:1px solid #e0e4ea;cursor:pointer;background:#fff}.cal-cols-area.cal-fit-columns .cal-col-body{flex:1 1 0;width:calc(100% / var(--cal-col-count));min-width:0}.cal-col-body:hover{background:#6366f104}.cal-grid-line{position:absolute;left:0;right:0;border-top:1px solid #e8eaf0;pointer-events:none}.cal-col-closed{position:absolute;left:0;right:0;background:repeating-linear-gradient(135deg,#94a3b814,#94a3b814 6px,#94a3b824 6px,#94a3b824 12px);pointer-events:none;z-index:1}.cal-grid-line-half{position:absolute;left:8px;right:0;border-top:1px dashed #f0f2f7;pointer-events:none}.cal-grid-line-quarter{position:absolute;left:18px;right:0;border-top:1px dotted #f0f2f7;pointer-events:none}.cal-now-line{position:absolute;left:-4px;right:0;height:2px;background:#ef4444;z-index:2;pointer-events:none;border-radius:1px}.cal-now-line:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:8px;height:8px;border-radius:50%;background:#ef4444}.cal-event-abs{position:absolute;border-radius:8px;padding:4px 7px;font-size:11px;color:#fff;overflow:hidden;cursor:pointer;z-index:1;transition:filter .12s,transform .12s,box-shadow .12s;box-shadow:0 2px 6px #0f172a1f,inset 0 1px #ffffff2e;background-image:linear-gradient(160deg,#ffffff24,#0000000f)}.cal-event-abs .ev-time{font-size:10px}.cal-event-abs .ev-name{font-size:11px}.cal-event-abs:hover{filter:brightness(.88);transform:translateY(-1px);box-shadow:0 5px 14px #0f172a33}.cal-next-slot{position:absolute;right:2px;width:32px;min-height:28px;z-index:2;display:flex;align-items:center;justify-content:center;border:1px dashed #cbd5e1;border-radius:8px;background:#fff;color:#64748b;cursor:pointer;box-shadow:0 1px 3px #0f172a0f}.cal-next-slot:hover{border-color:#6366f1;background:#eef2ff;color:#4338ca}.ev-top-row{display:flex;align-items:center;justify-content:space-between;gap:3px;margin-bottom:1px}.ev-time{font-weight:700;font-size:10.5px;opacity:.9;letter-spacing:.01em}.ev-prim-icon{display:flex;align-items:center;justify-content:center;width:15px;height:15px;background:#ffffff52;border-radius:50%;flex-shrink:0}.ev-status-badge{font-size:9px;font-weight:700;letter-spacing:.01em;white-space:nowrap;padding:1px 5px;border-radius:4px;color:#fff;flex-shrink:0;box-shadow:inset 0 0 0 1px #ffffff59}.ev-name{font-weight:600;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.ev-meta-item{display:flex;align-items:center;gap:3px;font-size:10px;color:#ffffffd1;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ev-meta-item>svg{flex-shrink:0;opacity:.8}.ev-meta-item>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ev-primary-tag{display:inline-block;background:#ffffff4d;border-radius:3px;padding:0 4px;font-size:9px;font-weight:700;letter-spacing:.05em;margin-top:2px}.ev-detail{font-size:10.5px;color:#ffffffd1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.ev-queue{display:inline-block;margin-top:2px;padding:1px 4px;border-radius:4px;background:#fff3;font-size:9px;font-weight:700}.ev-price{font-size:10.5px;font-weight:700;margin-top:2px;opacity:.9}.cal-appt-tooltip{position:fixed;z-index:200;background:#fff;border-radius:12px;box-shadow:0 8px 32px #0f172a2e,0 2px 8px #0f172a14;border:1px solid #e5e7eb;padding:12px 14px;min-width:220px;max-width:270px;pointer-events:none}.cal-tt-name{font-size:13.5px;font-weight:700;color:#111827;margin-bottom:8px}.cal-tt-row{display:flex;align-items:center;gap:7px;font-size:12px;color:#4b5563;margin-top:5px}.cal-tt-row>svg{flex-shrink:0;color:#9ca3af}.cal-tt-comment{display:flex;align-items:flex-start;gap:7px;margin-top:9px;padding-top:8px;border-top:1px solid #e5e7eb;color:#475569;font-size:12px;line-height:1.35;white-space:pre-wrap}.cal-tt-comment>svg{flex-shrink:0;margin-top:2px;color:#64748b}.cal-tt-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;margin-top:8px}.cal-tt-badge.primary{background:#eef2ff;color:#4f46e5}.cal-tt-badge.repeat{background:#f3f4f6;color:#6b7280}.modal{background:#fff;border-radius:16px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003}[data-theme=dark] .cal-page{background:var(--bg);color:var(--text)}[data-theme=dark] .cal-main,[data-theme=dark] .cal-topbar,[data-theme=dark] .cal-summary-bar,[data-theme=dark] .cal-waiting-panel,[data-theme=dark] .cal-corner,[data-theme=dark] .cal-col-header,[data-theme=dark] .cal-time-label,[data-theme=dark] .cal-right,[data-theme=dark] .cal-right-toggle,[data-theme=dark] .cal-filter-select,[data-theme=dark] .cal-search-input,[data-theme=dark] .cal-seg,[data-theme=dark] .cal-seg-btn,[data-theme=dark] .cal-nav-btn,[data-theme=dark] .cal-today-btn,[data-theme=dark] .cal-sidebar-toggle,[data-theme=dark] .mini-cal-header button,[data-theme=dark] .mini-cal-day,[data-theme=dark] .cal-bday,[data-theme=dark] .cal-doctor-list-item,[data-theme=dark] .cal-doctor-section,[data-theme=dark] .cal-doctor-empty,[data-theme=dark] .cwp-header,[data-theme=dark] .cwp-row,[data-theme=dark] .modal,[data-theme=dark] .avc-complaint,[data-theme=dark] .pay-appt-info,[data-theme=dark] .form-input,[data-theme=dark] .form-select,[data-theme=dark] .btn-secondary,[data-theme=dark] .btn-primary,[data-theme=dark] .btn-pay-full{background:var(--surface);border-color:var(--border)}[data-theme=dark] .cal-topbar,[data-theme=dark] .cal-summary-bar,[data-theme=dark] .cal-waiting-panel,[data-theme=dark] .cal-right,[data-theme=dark] .cal-corner,[data-theme=dark] .cal-col-header,[data-theme=dark] .cal-time-label,[data-theme=dark] .cwp-header,[data-theme=dark] .cwp-row,[data-theme=dark] .modal,[data-theme=dark] .modal-header,[data-theme=dark] .modal-footer,[data-theme=dark] .form-input,[data-theme=dark] .form-select{border-color:var(--border)}[data-theme=dark] .cal-topbar-date,[data-theme=dark] .cal-filter-name,[data-theme=dark] .cal-filters-label,[data-theme=dark] .cal-summary-bar,[data-theme=dark] .cal-sum-item,[data-theme=dark] .mini-cal-header,[data-theme=dark] .mini-cal-day,[data-theme=dark] .mini-cal-dow,[data-theme=dark] .bday-name,[data-theme=dark] .bday-sub,[data-theme=dark] .cwp-header,[data-theme=dark] .cwp-name,[data-theme=dark] .cwp-service,[data-theme=dark] .cwp-doc,[data-theme=dark] .col-name,[data-theme=dark] .col-count,[data-theme=dark] .col-dow,[data-theme=dark] .col-daynum,[data-theme=dark] .avc-row,[data-theme=dark] .avc-val,[data-theme=dark] .form-label,[data-theme=dark] .pay-service-name,[data-theme=dark] .status-actions,[data-theme=dark] .modal-header h3{color:var(--text)}[data-theme=dark] .cal-filter-name,[data-theme=dark] .cal-filters-label,[data-theme=dark] .cal-sum-item,[data-theme=dark] .mini-cal-dow,[data-theme=dark] .cwp-service,[data-theme=dark] .cwp-doc,[data-theme=dark] .bday-sub,[data-theme=dark] .avc-lbl,[data-theme=dark] .form-label,[data-theme=dark] .pay-service-name,[data-theme=dark] .cal-nav-btn,[data-theme=dark] .cal-sidebar-toggle,[data-theme=dark] .cal-right-toggle,[data-theme=dark] .mini-cal-header button,[data-theme=dark] .cal-seg,[data-theme=dark] .cal-seg-btn,[data-theme=dark] .cal-filter-select,[data-theme=dark] .form-input,[data-theme=dark] .form-select,[data-theme=dark] .btn-secondary{color:var(--text-2)}[data-theme=dark] .cal-topbar,[data-theme=dark] .cal-summary-bar,[data-theme=dark] .cal-waiting-panel,[data-theme=dark] .cal-right,[data-theme=dark] .cal-col-header,[data-theme=dark] .cal-time-label,[data-theme=dark] .cal-corner,[data-theme=dark] .cwp-header,[data-theme=dark] .cwp-row,[data-theme=dark] .avc-complaint,[data-theme=dark] .pay-appt-info,[data-theme=dark] .modal{box-shadow:0 12px 28px #0000002e}[data-theme=dark] .cal-nav-btn:hover,[data-theme=dark] .cal-sidebar-toggle:hover,[data-theme=dark] .cal-right-toggle:hover,[data-theme=dark] .mini-cal-header button:hover,[data-theme=dark] .cwp-row:hover,[data-theme=dark] .cal-cell:hover,[data-theme=dark] .cal-event:hover,[data-theme=dark] .cal-doctor-list-item:hover,[data-theme=dark] .mini-cal-day:hover{background:#ffffff0d}[data-theme=dark] .cal-today-btn,[data-theme=dark] .cal-seg-btn.active,[data-theme=dark] .cal-waiting-btn,[data-theme=dark] .cal-waiting-btn.open,[data-theme=dark] .cal-waiting-btn:hover,[data-theme=dark] .mini-cal-day.selected,[data-theme=dark] .mini-cal-day.today,[data-theme=dark] .cal-col-header.today,[data-theme=dark] .cal-col-daynum.today,[data-theme=dark] .col-daynum.today,[data-theme=dark] .btn-pay-full,[data-theme=dark] .btn-status.completed,[data-theme=dark] .btn-status.in_progress,[data-theme=dark] .btn-status.no_show,[data-theme=dark] .btn-status.cancelled{color:#fff}[data-theme=dark] .cal-today-btn,[data-theme=dark] .cal-seg-btn.active,[data-theme=dark] .cal-waiting-btn.open,[data-theme=dark] .mini-cal-day.selected,[data-theme=dark] .cal-col-header.today,[data-theme=dark] .col-daynum.today,[data-theme=dark] .cal-doctor-list-item.active{background:#6366f129;border-color:#6366f15c}[data-theme=dark] .cal-waiting-btn{background:#4f46e51f;border-color:#6366f15c}[data-theme=dark] .cal-bday.today,[data-theme=dark] .avc-complaint,[data-theme=dark] .pay-appt-info{background:var(--bg)}[data-theme=dark] .cal-grid{background:var(--surface)}[data-theme=dark] .cal-cell,[data-theme=dark] .cal-time-label,[data-theme=dark] .cal-col-header,[data-theme=dark] .cal-corner{border-color:var(--border);background:var(--surface)}[data-theme=dark] .cal-event{box-shadow:0 8px 18px #00000029}[data-theme=dark] .form-input,[data-theme=dark] .form-select{background:var(--bg);color:var(--text)}[data-theme=dark] .avc-row>svg,[data-theme=dark] .cal-topbar svg,[data-theme=dark] .cal-waiting-btn svg,[data-theme=dark] .cwp-header button,[data-theme=dark] .cal-right-toggle,[data-theme=dark] .cal-nav-btn,[data-theme=dark] .cal-sidebar-toggle{color:var(--text-2)}[data-theme=dark] .btn-status{box-shadow:none}[data-theme=dark] .btn-secondary{background:var(--bg)}[data-theme=dark] .cal-loading{background:#0f1117b8;color:var(--text-2)}.form-input,.form-select{border:1px solid #d1d5db;border-radius:8px;padding:9px 12px;font-size:14px;outline:none;width:100%;box-sizing:border-box}.form-input:focus,.form-select:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f114}input.form-input[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}input.form-input[type=search]::-webkit-search-decoration,input.form-input[type=search]::-webkit-search-cancel-button,input.form-input[type=search]::-webkit-search-results-button,input.form-input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}.svc-dur-hint{font-size:.78rem;color:#6366f1;margin-top:-4px;margin-bottom:4px}.form-error{background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;border-radius:8px;padding:8px 12px;font-size:13px}.btn-primary{background:#0b1330;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:14px;font-weight:600;cursor:pointer}.btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:8px;padding:9px 18px;font-size:14px;font-weight:500;cursor:pointer}.patient-search-wrap,.service-search-wrap{position:relative}.service-search-wrap .search-icon-abs{position:absolute;left:13px;top:50%;z-index:1;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.service-search-wrap .search-input{padding-left:39px}.service-search-results{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:1001;max-height:260px;overflow-y:auto;border:1px solid #c7d2fe;border-radius:10px;padding:5px;background:#fff;box-shadow:0 8px 24px #0f172a29}.service-search-item{width:100%;display:flex;justify-content:space-between;gap:12px;padding:10px 11px;border:0;border-radius:7px;background:transparent;color:#1f2937;font:inherit;text-align:left;cursor:pointer}.service-search-item:hover,.service-search-item:focus-visible{background:#eef2ff;outline:none}.service-search-item strong{white-space:nowrap;color:#475569;font-weight:600}.service-search-empty{padding:12px;color:#64748b;text-align:center}.patient-search-results{position:absolute;top:calc(100% - 6px);left:0;right:0;z-index:1000;display:flex;flex-direction:column;gap:4px;max-height:220px;overflow-y:auto;border:1px solid #c7d2fe;border-radius:8px;padding:6px;background:#fff;box-shadow:0 8px 24px #0f172a24}.patient-search-item{padding:8px 10px;border-radius:6px;cursor:pointer}.patient-search-item:hover{background:#f3f4f6}.psi-name{font-size:13.5px;font-weight:600;color:#111827}.psi-sub{font-size:12px;color:#6b7280}.patient-new-link{text-align:left;padding:8px 10px!important;border-top:1px solid #f3f4f6;margin-top:2px}.btn-link{background:none;border:none;color:#6366f1;font-size:13px;font-weight:600;cursor:pointer;padding:0}.btn-link:hover{text-decoration:underline}.patient-selected-chip{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#eef2ff;border:1px solid #c7d2fe;border-radius:8px;padding:8px 12px;font-size:13.5px;color:#3730a3}.patient-selected-chip button{background:none;border:none;color:#3730a3;font-size:16px;cursor:pointer;line-height:1}.patient-new-form{display:flex;flex-direction:column;gap:10px;border:1px dashed #c7d2fe;border-radius:10px;padding:12px;background:#f8faff}.patient-new-form-title{font-size:13px;font-weight:600;color:#3730a3}.patient-guardian-form{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid #fecaca;border-radius:10px;background:#fff7f7}[data-theme=dark] .patient-search-results,[data-theme=dark] .service-search-results{border-color:var(--border);background:var(--surface, #1a1d27);box-shadow:0 8px 24px #00000059}[data-theme=dark] .service-search-item{color:var(--text, #f8fafc)}[data-theme=dark] .service-search-item:hover,[data-theme=dark] .service-search-item:focus-visible{background:#6366f133}[data-theme=dark] .patient-search-item:hover{background:#ffffff0d}[data-theme=dark] .psi-name{color:var(--text)}[data-theme=dark] .psi-sub{color:var(--text-2)}[data-theme=dark] .patient-new-link{border-top-color:var(--border)}[data-theme=dark] .patient-selected-chip{background:#6366f124;border-color:#6366f152;color:#c7d2fe}[data-theme=dark] .patient-selected-chip button{color:#c7d2fe}[data-theme=dark] .patient-new-form{background:#6366f10f;border-color:#6366f14d}[data-theme=dark] .patient-new-form-title{color:#c7d2fe}[data-theme=dark] .patient-guardian-form{background:#ef444414;border-color:#f8717159}.pay-appt-info{background:#f9fafb;border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:2px}.col-room-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.avc-overlay{align-items:stretch;justify-content:flex-end;padding:0}.avc-drawer{width:min(540px,100vw);max-width:540px;height:100vh;max-height:100vh;border-radius:0;display:flex;flex-direction:column;overflow:hidden}.avc-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px;border-bottom:1px solid var(--border, #e5e7eb);background:var(--surface, #fff)}.avc-kicker{font-size:12px;font-weight:800;color:#6366f1;text-transform:uppercase;letter-spacing:0}.avc-header h3{margin:2px 0 0;font-size:22px;line-height:1.15;color:var(--text, #0b1330)}.avc-header-time{margin-top:4px;color:var(--text-2, #64748b);font-size:14px;font-weight:700}.avc-header-actions{display:flex;align-items:center;gap:8px}.avc-body{flex:1;overflow:auto;padding:16px 20px;display:flex;flex-direction:column;gap:12px;background:var(--bg, #f8fafc)}.avc-section{padding:14px;border:1px solid var(--border, #e5e7eb);border-radius:8px;background:var(--surface, #fff)}.avc-section-title{display:flex;align-items:center;gap:7px;margin-bottom:12px;color:var(--text, #0f172a);font-size:13px;font-weight:800}.avc-section-title svg{color:#6366f1}.avc-status,.avc-payment-badge{display:inline-flex;align-items:center;white-space:nowrap;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:800}.avc-status--scheduled{background:#eef2ff;color:#4338ca}.avc-status--confirmed{background:#e0f2fe;color:#0369a1}.avc-status--arrived{background:#dcfce7;color:#166534}.avc-status--in_progress{background:#fff7ed;color:#c2410c}.avc-status--completed{background:#d1fae5;color:#047857}.avc-status--cancelled,.avc-status--no_show{background:#fee2e2;color:#991b1b}.avc-status--rescheduled{background:#f1f5f9;color:#475569}.avc-patient-card{background:linear-gradient(180deg,#fff,#fbfcff)}.avc-patient-name{font-size:18px;font-weight:800;color:var(--text, #0b1330)}.avc-patient-phone{margin-top:3px;color:var(--text-2, #64748b);font-size:13px}.avc-chip-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.avc-chip-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 10px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#334155;font-size:12px;font-weight:700;cursor:pointer;text-decoration:none}.avc-chip-btn:hover{border-color:#c7d2fe;color:#4f46e5;background:#eef2ff}.avc-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.avc-info-item{display:flex;align-items:flex-start;gap:9px;min-width:0;padding:12px;border:1px solid #eef2f7;border-radius:10px;background:#f8fafc}.avc-info-icon{color:#94a3b8;line-height:0;margin-top:2px}.avc-info-item span:not(.avc-info-icon){display:block;color:#94a3b8;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0}.avc-info-item strong{display:block;margin-top:2px;color:var(--text, #111827);font-size:13px;line-height:1.3;word-break:break-word}.avc-payment-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.avc-payment-row strong{display:block;color:var(--text, #0f172a);font-size:16px}.avc-payment-row span{display:block;margin-top:3px;color:var(--text-2, #64748b);font-size:12px}.avc-payment-badge--paid{background:#dcfce7;color:#166534}.avc-payment-badge--partial{background:#fef3c7;color:#92400e}.avc-payment-badge--unpaid{background:#fee2e2;color:#991b1b}.avc-payment-badge--none{background:#f1f5f9;color:#475569}.avc-status-flow{padding:12px 12px 10px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.avc-special-status+.avc-stepper{margin-top:10px}.avc-stepper{display:grid;grid-template-columns:repeat(5,minmax(74px,1fr));align-items:start;overflow-x:auto;padding:2px 0}.avc-step{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:74px;border:0;background:transparent;color:#94a3b8;font:inherit;font-size:11px;font-weight:800;line-height:1.15;text-align:center;cursor:pointer}.avc-step:disabled{cursor:default}.avc-step:focus-visible{outline:3px solid rgba(99,102,241,.22);outline-offset:3px;border-radius:8px}.avc-step-line{position:absolute;top:16px;left:50%;width:100%;height:3px;background:#e5e7eb}.avc-step:last-child .avc-step-line{display:none}.avc-step.is-done .avc-step-line{background:#6366f1}.avc-step-dot{position:relative;z-index:1;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:2px solid #dbe3ef;border-radius:50%;background:#fff;color:#94a3b8;box-shadow:0 2px 8px #0f172a0f;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}.avc-step:not(:disabled):hover .avc-step-dot{border-color:#a5b4fc;color:#4f46e5;transform:translateY(-1px)}.avc-step.is-done{color:#4f46e5}.avc-step.is-done .avc-step-dot{border-color:#6366f1;background:#6366f1;color:#fff}.avc-step.is-current{color:#0f172a}.avc-step.is-current .avc-step-dot{border-color:#2563eb;background:#2563eb;color:#fff;box-shadow:0 0 0 5px #2563eb1f}.avc-step-label{max-width:86px;min-height:26px;overflow-wrap:anywhere}.avc-step-spin{animation:avc-spin .8s linear infinite}@keyframes avc-spin{to{transform:rotate(360deg)}}.avc-special-status{display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;background:#f8fafc}.avc-special-status-icon{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#e2e8f0;color:#475569;flex:0 0 auto}.avc-special-status strong{display:block;color:#0f172a;font-size:14px}.avc-special-status span:not(.avc-special-status-icon){display:block;margin-top:2px;color:#64748b;font-size:12px}.avc-special-status--no_show .avc-special-status-icon{background:#fee2e2;color:#991b1b}.avc-special-status--cancelled .avc-special-status-icon{background:#f1f5f9;color:#64748b}.avc-special-status--rescheduled .avc-special-status-icon{background:#eef2ff;color:#4338ca}.avc-note{padding:10px 12px;border-radius:8px;background:#f8fafc;color:var(--text-2, #475569);font-size:13px;line-height:1.45}.avc-note+.avc-note{margin-top:8px}.avc-comment-section{border-color:#dbe4ff;background:#fbfcff}.avc-comment-section .avc-section-title{display:flex;align-items:center;gap:7px}.avc-inline-edit{display:inline-flex;align-items:center;gap:5px;margin-left:auto;padding:5px 8px;border:1px solid #dbe4ff;border-radius:7px;background:#fff;color:#4f46e5;font-size:11px;font-weight:700;cursor:pointer}.avc-inline-edit:hover{background:#eef2ff}.avc-note--empty{color:#94a3b8;font-style:italic}.avc-comment-editor{margin-top:8px}.avc-comment-editor textarea{width:100%;min-height:92px;box-sizing:border-box;resize:vertical;padding:10px 12px;border:1px solid #c7d2fe;border-radius:9px;background:#fff;color:var(--text, #111827);font:inherit;line-height:1.45;outline:none}.avc-comment-editor textarea:focus{border-color:#818cf8;box-shadow:0 0 0 3px #eef2ff}.avc-comment-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.avc-reschedule-panel{border-color:#c7d2fe;background:#fbfcff}.avc-reschedule-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.avc-reschedule-summary>div{min-width:0;padding:9px 10px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.avc-reschedule-summary span{display:block;color:#94a3b8;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0}.avc-reschedule-summary strong{display:block;margin-top:2px;color:var(--text, #111827);font-size:13px;line-height:1.3;word-break:break-word}.avc-history{display:flex;flex-direction:column;gap:8px}.avc-history-row{display:grid;grid-template-columns:95px minmax(0,1fr);gap:8px 10px;padding:8px 0;border-bottom:1px solid #eef2f7}.avc-history-row:last-child{border-bottom:0}.avc-history-row span{color:#94a3b8;font-size:12px}.avc-history-row strong{color:var(--text, #0f172a);font-size:13px;line-height:1.35}.avc-history-row em{grid-column:2;color:#64748b;font-style:normal;font-size:12px}.avc-history-empty{color:#94a3b8;font-size:13px}.avc-edit-form{display:flex;flex-direction:column;gap:12px}.avc-edit-field{display:flex;flex-direction:column;gap:5px;color:#64748b;font-size:12px;font-weight:700}.avc-service-search{position:relative;display:flex;align-items:center}.avc-service-search>svg{position:absolute;left:13px;z-index:1;color:#94a3b8;pointer-events:none}.avc-service-search input{width:100%;min-height:42px;box-sizing:border-box;padding:10px 13px 10px 39px!important;border:1px solid #d8e0ec;border-radius:10px;outline:none;background:#f8fafc;color:#1e293b;font:inherit;font-size:14px;font-weight:500;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.avc-service-search input::placeholder{color:#94a3b8;font-weight:400}.avc-service-search input:hover{border-color:#b9c6d8;background:#fff}.avc-service-search input:focus{border-color:#4f8df7;background:#fff;box-shadow:0 0 0 3px #4f8df724}.avc-service-search__list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;max-height:230px;overflow-y:auto;padding:5px;border:1px solid #c7d2fe;border-radius:8px;background:#fff;box-shadow:0 8px 20px #0f172a29}.avc-service-search__list button{width:100%;display:flex;justify-content:space-between;gap:10px;padding:9px;border:0;border-radius:6px;background:transparent;color:#1f2937;text-align:left;cursor:pointer}.avc-service-search__list button:hover{background:#eef2ff}.avc-service-search__list b{white-space:nowrap;color:#64748b}.avc-service-search__list>div{padding:10px;color:#64748b;text-align:center}[data-theme=dark] .avc-service-search input{border-color:#3b465a;background:#202838;color:#f1f5f9}[data-theme=dark] .avc-service-search input:hover,[data-theme=dark] .avc-service-search input:focus{background:#253044}[data-theme=dark] .avc-service-search__list{border-color:#3b465a;background:#202838}[data-theme=dark] .avc-service-search__list button{color:#f1f5f9}[data-theme=dark] .avc-service-search__list button:hover{background:#303d55}.avc-edit-field select,.avc-edit-field textarea,.avc-edit-field input[type=date],.avc-time-row input[type=time]{border:1px solid #d1d5db;border-radius:8px;padding:9px 10px;font-size:14px;outline:none;background:#fff;font-family:inherit;resize:none}.avc-edit-field select:focus,.avc-edit-field textarea:focus,.avc-edit-field input[type=date]:focus,.avc-time-row input[type=time]:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.avc-time-row{display:flex;align-items:center;gap:8px}.avc-time-row input[type=time]{flex:1;min-width:0}.avc-time-row span{color:#94a3b8}.avc-finish-service{background:#fffbeb;border-color:#fde68a}.status-actions{display:flex;gap:8px;flex-wrap:wrap}.btn-status{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:8px 13px;border:none;border-radius:8px;font-size:13px;font-weight:800;cursor:pointer;color:#fff}.btn-status.confirmed{background:#0ea5e9}.btn-status.arrived{background:#22c55e}.btn-status.in_progress{background:#f59e0b}.btn-status.completed{background:#10b981}.btn-status.cancelled{background:#9ca3af}.btn-status.no_show{background:#ef4444}.btn-status:disabled{opacity:.6;cursor:not-allowed}.avc-footer{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 20px;border-top:1px solid var(--border, #e5e7eb);background:var(--surface, #fff)}.avc-footer-main{display:flex;flex-wrap:wrap;gap:8px}.avc-footer-main .btn-primary,.avc-footer-main .btn-secondary,.avc-footer>.btn-primary,.avc-footer>.btn-secondary{display:inline-flex;align-items:center;gap:6px}.avc-more-wrap{position:relative;margin-left:auto}.avc-more-btn{width:38px;height:38px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#64748b;cursor:pointer}.avc-more-menu{position:absolute;right:0;bottom:44px;width:190px;padding:6px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;box-shadow:0 12px 28px #0f172a24;z-index:5}.avc-more-menu button{width:100%;display:flex;align-items:center;gap:6px;border:0;border-radius:6px;padding:8px 9px;background:transparent;color:#334155;text-align:left;cursor:pointer;font:inherit;font-size:13px}.avc-more-menu button:hover{background:#f8fafc}.avc-more-menu button.danger{color:#dc2626}[data-theme=dark] .avc-header,[data-theme=dark] .avc-drawer,[data-theme=dark] .avc-section,[data-theme=dark] .avc-footer,[data-theme=dark] .avc-status-flow{background:var(--surface, #111827);border-color:var(--border, #374151)}[data-theme=dark] .avc-body{background:var(--bg, #0f172a)}[data-theme=dark] .avc-info-item,[data-theme=dark] .avc-note,[data-theme=dark] .avc-special-status{background:#0f172a}[data-theme=dark] .avc-step-dot{background:#111827;border-color:#374151}[data-theme=dark] .avc-step-line{background:#374151}[data-theme=dark] .avc-step.is-current,[data-theme=dark] .avc-special-status strong{color:#f8fafc}[data-theme=dark] .avc-chip-btn,[data-theme=dark] .avc-more-btn,[data-theme=dark] .avc-more-menu,[data-theme=dark] .avc-edit-field select,[data-theme=dark] .avc-edit-field textarea,[data-theme=dark] .avc-edit-field input[type=date],[data-theme=dark] .avc-time-row input[type=time]{background:#111827;border-color:#374151;color:#f8fafc}@media (max-width: 640px){.avc-drawer{width:100vw;max-width:none}.avc-header{padding:16px}.avc-body{padding:12px}.avc-info-grid{grid-template-columns:1fr}.avc-footer{padding:12px;align-items:stretch}.avc-footer-main{flex:1}.avc-footer-main>*{flex:1}.avc-stepper{grid-template-columns:repeat(5,minmax(68px,1fr))}.avc-step{min-width:68px;font-size:10px}.avc-step-dot{width:30px;height:30px}.avc-step-line{top:14px}}.consent-modal{max-width:700px;width:100%}.consent-modal .modal-header h3{display:flex;align-items:center;gap:8px}.consent-loading,.consent-no-template{padding:20px 4px;color:#6b7280;font-size:14px}.consent-intro{font-size:13px;color:#6b7280;margin:0 0 10px}.consent-context{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 14px}.consent-context>div{padding:9px 10px;border:1px solid #e0e7ff;border-radius:9px;background:#f8faff;min-width:0}.consent-context--wide{grid-column:1 / -1}.consent-context span{display:block;color:#64748b;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}.consent-context strong{display:block;color:#1e293b;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.consent-doc-preview{border:1px solid #e5e7eb;border-radius:10px;padding:12px 14px;background:#fafbff;max-height:220px;overflow-y:auto;margin-bottom:14px}.consent-doc-preview--agreement{max-height:min(55vh,600px);min-height:300px;background:#fff;color:#1f2937;line-height:1.58;font-size:13px}.consent-doc-preview--agreement p{margin:0 0 11px}.consent-doc-title--center{text-align:center;font-size:15px;line-height:1.35;text-transform:uppercase}.consent-doc-place{text-align:right;color:#64748b;font-size:12px}.consent-doc-fields{margin:12px 0;padding-top:8px;border-top:1px solid #e5e7eb}.consent-doc-sign-note{padding:9px 10px;border-radius:8px;background:#eef2ff;color:#3730a3;font-weight:600;font-size:12px}.consent-signed-success{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:11px 13px;border:1px solid #86efac;border-radius:10px;background:#f0fdf4;color:#166534;animation:consent-pop .35s ease-out}.consent-signed-success>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#22c55e;color:#fff;font-weight:800}.consent-signed-success b,.consent-signed-success small{display:block}.consent-signed-success small{margin-top:2px;color:#4b7a5a;font-size:11px}.consent-final-signature{margin-top:15px;padding-top:10px;border-top:1px solid #cbd5e1;display:flex;align-items:end;justify-content:space-between;min-height:66px}.consent-final-signature span{color:#64748b;font-size:12px}.consent-final-signature img{width:150px;height:58px;object-fit:contain;object-position:right bottom;mix-blend-mode:multiply;animation:consent-draw .55s ease-out}@keyframes consent-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes consent-draw{0%{clip-path:inset(0 100% 0 0);opacity:.2}to{clip-path:inset(0);opacity:1}}.consent-doc-title{font-size:14px;font-weight:700;color:#0b1330;margin-bottom:8px}.consent-doc-row{display:flex;justify-content:space-between;gap:10px;font-size:13px;padding:4px 0;border-bottom:1px dashed #e5e7eb}.consent-doc-row:last-child{border-bottom:none}.consent-doc-label{color:#6b7280}.consent-doc-value{color:#0b1330;font-weight:600;text-align:right}.consent-sign-label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.consent-signature-pad{width:100%;height:160px;border:1.5px dashed #c7d2fe;border-radius:10px;background:#fff;touch-action:none;cursor:crosshair}.consent-clear-btn{margin-top:8px;background:none;border:none;color:#6366f1;font-size:12px;font-weight:600;cursor:pointer;padding:0}[data-theme=dark] .consent-doc-preview{background:var(--bg);border-color:var(--border)}[data-theme=dark] .consent-doc-preview--agreement{color:var(--text)}[data-theme=dark] .consent-context>div{background:var(--bg);border-color:var(--border)}[data-theme=dark] .consent-context strong,[data-theme=dark] .consent-doc-title,[data-theme=dark] .consent-doc-value{color:var(--text)}[data-theme=dark] .consent-doc-row{border-bottom-color:var(--border)}[data-theme=dark] .consent-signature-pad{background:var(--surface);border-color:var(--border)}@media (max-width: 480px){.consent-context{grid-template-columns:1fr}}.rmodal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.rmodal{background:var(--surface, #fff);border-radius:14px;width:100%;max-width:480px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000040}.rmodal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border, #e5e7eb);flex-shrink:0}.rmodal-header h3{font-size:17px;font-weight:700;color:var(--text, #0b1330);margin:0}.rmodal-close{background:none;border:none;cursor:pointer;color:var(--text-3, #9ca3af);display:flex;padding:5px;border-radius:6px;flex-shrink:0}.rmodal-close:hover{background:var(--bg, #f3f4f6);color:var(--text, #0b1330)}.rmodal-body{padding:18px 20px;display:flex;flex-direction:column;gap:14px;overflow-y:auto}.rmodal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid var(--border, #e5e7eb);flex-shrink:0}.payment-modal-form{display:flex;flex-direction:column;gap:14px}.payment-modal-info{padding:10px 12px;background:var(--bg, #f9fafb);border-radius:8px;font-size:13px;color:var(--text-2, #6b7280)}.payment-modal-info strong{color:var(--text, #0b1330)}.payment-modal-link-btn{align-self:flex-start;background:none;border:none;cursor:pointer;color:#6366f1;font-size:12px;font-weight:600;padding:2px 4px}.payment-modal-link-btn:hover{text-decoration:underline}.payment-modal-discount-box{display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:#eef2ff;border-radius:8px}.payment-modal-discount-fields{display:flex;gap:8px;flex-wrap:wrap}.payment-modal-discount-field{flex:1;min-width:110px;font-size:11px}.payment-modal-discount-field .form-input{text-align:right}.payment-modal-total{font-size:13px;color:var(--text-2, #6b7280)}.payment-modal-total strong{color:var(--text, #0b1330)}.payment-services-panel{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#fff}.payment-services-head{padding:12px 14px;background:#f3f4f6;color:#374151;font-size:13px;font-weight:700}.payment-services-list{display:flex;flex-direction:column;gap:6px;padding:10px}.payment-service-row{display:grid;grid-template-columns:minmax(130px,1.35fr) 80px minmax(150px,1fr) 105px auto;gap:10px;align-items:center;padding:11px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.payment-service-row strong{display:block;color:#111827;font-size:13.5px}.payment-service-row span{display:block;margin-top:4px;color:#64748b;font-size:12px}.payment-service-kind,.payment-service-price{color:#475569;font-size:13px}.payment-service-price strong{display:inline;font-weight:800}.payment-service-price-input{width:100%;min-width:0;border:1px solid #dbe3ef;border-radius:8px;padding:7px 8px;font-size:13px;font-weight:800;text-align:right}.payment-service-status{justify-self:end;border:0;background:transparent;font-size:13px;font-weight:800;text-decoration:underline}.payment-service-status.unpaid{color:#0f6f85}.payment-service-status.paid{color:#12b76a;text-decoration:none}.payment-service-remove{width:28px;height:28px;border:0;border-radius:8px;background:#fee2e2;color:#dc2626;font-size:18px;line-height:1;cursor:pointer}.payment-service-add-row{padding:0 10px 10px}.payment-services-total{display:flex;justify-content:flex-end;gap:18px;padding:12px 14px;background:#f3f4f6;color:#374151;font-size:13px;font-weight:700}.payment-services-total span:first-child{margin-right:auto}.payment-services-total strong{color:#111827}.payment-modal-price-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:12px;padding:12px;border:1px solid #cfdcff;border-radius:12px;background:#f6f8ff}.payment-modal-price-editor .form-label{min-width:0}.payment-modal-actions{display:flex;justify-content:flex-end;gap:10px}.payment-method-settings{display:flex;flex-wrap:wrap;gap:6px 12px;padding:10px 12px;margin:-2px 0 10px;border:1px solid #dbe4ff;border-radius:8px;background:#f5f8ff;color:#53657f;font-size:13px}.payment-method-settings strong{width:100%;color:#172554;font-size:14px}.payment-split-fields{display:flex;flex-direction:column;gap:12px}.payment-split-part{border:1px solid var(--border, #e2e8f0);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:10px;min-width:0;margin:0}.payment-split-part legend{font-size:12px;font-weight:600;color:var(--text-2, #64748b);padding:0 6px}.payment-split-row{display:flex;align-items:end;gap:10px}.payment-split-row .form-label{flex:1;min-width:0}.payment-split-row .form-input,.payment-split-row .form-select{width:100%;min-width:0}.payment-split-summary{display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--bg, #f1f5f9);border-radius:10px;font-size:13px}@media (max-width: 640px){.payment-service-row{grid-template-columns:1fr}.payment-service-status{justify-self:start}.payment-services-total{flex-direction:column;gap:4px}}@media (max-width: 480px){.payment-split-row{flex-wrap:wrap}.payment-split-row .form-label{flex-basis:42%}.payment-modal-price-editor{grid-template-columns:1fr}}.clinic-badge{display:inline-flex;align-items:center;max-width:220px;padding:3px 8px;border:1px solid #bfdbfe;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-theme=dark] .clinic-badge{background:#172554;border-color:#1e40af;color:#bfdbfe}.list-pagination{display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 16px;border-top:1px solid var(--border, #e5e7eb);background:var(--surface, #fff);color:var(--text-2, #6b7280);font-size:13px}.list-pagination button{border:1px solid var(--border, #d1d5db);background:var(--surface, #fff);color:var(--text, #374151);border-radius:8px;padding:7px 14px;font-size:13px;cursor:pointer}.list-pagination button:hover:not(:disabled){border-color:#6366f1;color:#6366f1}.list-pagination button:disabled{opacity:.4;cursor:not-allowed}.chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;width:max-content;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap;border:1px solid var(--border, #e5e7eb);background:var(--surface, #fff);color:var(--text-2, #4b5563);box-sizing:border-box}.chip--clickable{cursor:pointer;font-family:inherit}.chip--clickable:hover{filter:brightness(.97)}.chip>svg{flex-shrink:0}.chip-text{white-space:nowrap}.chip--note{background:#fffbeb;border-color:#fde68a;color:#92400e}.chip--note.chip--clickable:hover{background:#fef3c7}.chips-group{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.tooth-chart.odo{display:flex;flex-direction:column;gap:12px}.odo-topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.odo-segment{display:inline-flex;gap:2px;padding:3px;border:1px solid #e5e7eb;border-radius:8px;background:#f8fafc}.odo-segment button,.odo-filter-row button{border:0;background:transparent;color:#64748b;border-radius:6px;padding:7px 11px;font-size:12px;font-weight:800;cursor:pointer}.odo-segment button.active,.odo-filter-row button.active{background:#4f46e5;color:#fff}.odo-filter-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.odo-filter-row{border:1px solid #e5e7eb;border-radius:8px;padding:3px;background:#fff}.odo-filter-row select{height:30px;border:0;border-left:1px solid #e5e7eb;padding:0 8px;background:#fff;color:#64748b;font-size:12px;font-weight:800;outline:0}.odo-multiselect-hint{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #c7d2fe;border-radius:8px;background:#eef2ff;color:#4338ca;font-size:12.5px;font-weight:600;line-height:1.4}.odo-multiselect-hint svg{flex-shrink:0}.odo-multiselect-hint kbd{display:inline-block;padding:1px 6px;border-radius:4px;border:1px solid #a5b4fc;background:#fff;color:#4338ca;font-size:11px;font-weight:800;font-family:inherit}.odo-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px;align-items:stretch}.odo-map-card,.odo-panel{min-width:0;border:1px solid #e5e7eb;border-radius:8px;background:#fff;padding:14px;box-shadow:0 8px 22px #0f172a0a}.odo-arch-title{text-align:center;color:#64748b;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.odo-arch-title--bottom{margin:8px 0 0}.odo-arch-title--clickable{display:block;width:100%;border:1px solid transparent;border-radius:8px;background:none;padding:4px 0;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.odo-arch-title--clickable:hover{background:#eef2ff;border-color:#e0e7ff;color:#4338ca}.odo-arch-title--clickable.active{background:#4f46e5;border-color:#4f46e5;color:#fff}.odo-arches-scroll{overflow-x:auto}.odo-arches{min-width:calc(var(--odo-tooth-count) * 36px + 8px);padding:4px}.odo-row{display:grid;grid-template-columns:repeat(var(--odo-tooth-count),minmax(0,1fr));gap:2px;padding:3px 0}.odo-arch-divider{height:1px;background:#eef2f7;margin:10px 0}.odo-tooth{position:relative;width:100%;min-width:0;min-height:72px;border:0;border-radius:8px;background:transparent;color:#fdf8ee;cursor:pointer;padding:3px 2px 0;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.odo-tooth:hover{transform:translateY(-1px);background:#f8fafc;box-shadow:0 0 0 1px #c7d2fe inset}.odo-tooth.selected{background:#eef2ff;box-shadow:0 0 0 2px #6366f1 inset,0 0 0 4px #6366f11a}.odo-tooth.hidden{opacity:.18;pointer-events:none}.odo-tooth.mid-split:after{content:"";position:absolute;right:-2px;top:8px;bottom:18px;width:1px;background:#dbe1ea}.odo-tooth-svg{width:38px;max-width:100%;height:52px;display:block;margin:0 auto;color:#fffaf0;transform:rotate(180deg)}.odo-tooth-svg--lower{transform:none}.odo-crown{fill:currentColor;stroke:#c9b99d;stroke-width:1.4;filter:drop-shadow(0 1px 1px rgba(15,23,42,.14))}.odo-root{fill:#efe3cf;stroke:#cdbd9e;stroke-width:1.2}.odo-groove{fill:none;stroke:#785f4247;stroke-width:1.2;stroke-linecap:round}.odo-status-dot{fill:#cbd5e1;stroke:#fff;stroke-width:2;opacity:.95}.odo-state-diagnosis .odo-status-dot{fill:#22c55e}.odo-state-planned .odo-status-dot{fill:#6366f1}.odo-state-progress .odo-status-dot{fill:#f59e0b}.odo-state-done .odo-status-dot{fill:#14b8a6}.odo-state-condition .odo-status-dot{fill:#64748b}.odo-tooth-num{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;margin-top:-1px;border-radius:999px;color:#475569;font-size:11px;font-weight:900}.odo-tooth.selected .odo-tooth-num{background:#4f46e5;color:#fff}.odo-count{position:absolute;top:2px;right:1px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#0f172a;color:#fff;font-size:10px;font-weight:900;line-height:17px}.odo-selected-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid #eef2f7}.odo-selected-bar strong{color:#0f172a;font-size:12px;margin-right:2px}.odo-selected-bar span{color:#94a3b8;font-size:12px}.odo-selected-bar button{display:inline-flex;align-items:center;gap:4px;border:1px solid #c7d2fe;border-radius:999px;background:#eef2ff;color:#4338ca;padding:4px 8px;font-size:12px;font-weight:900;cursor:pointer}.odo-selected-bar .odo-clear{border-color:transparent;background:transparent;color:#64748b}.odo-row-select-btn{background:#fff;border-color:#e5e7eb;color:#475569}.odo-row-select-btn.active{background:#4f46e5;border-color:#4f46e5;color:#fff}.odo-legend{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;color:#64748b;font-size:11px;font-weight:800}.odo-legend span:before{content:"";display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:50%;background:#cbd5e1}.odo-legend .diagnosis:before{background:#22c55e}.odo-legend .planned:before{background:#6366f1}.odo-legend .progress:before{background:#f59e0b}.odo-legend .done:before{background:#14b8a6}.odo-panel{display:flex;flex-direction:column;gap:12px}.odo-panel-empty,.odo-muted{color:#94a3b8;font-size:13px;line-height:1.45}.odo-panel-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;padding-bottom:10px;border-bottom:1px solid #eef2f7}.odo-panel-head span{display:block;color:#94a3b8;font-size:11px;font-weight:900;text-transform:uppercase}.odo-panel-head strong{display:block;color:#0f172a;font-size:28px;line-height:1;margin-top:2px}.odo-state-badge{display:inline-flex;border-radius:999px;background:#f1f5f9;color:#475569;padding:5px 9px;font-style:normal;font-size:11px;font-weight:900}.odo-panel-section{display:flex;flex-direction:column;gap:8px}.odo-panel-section--add{padding-bottom:12px;border-bottom:1px solid #eef2f7}.odo-add-actions{display:flex;gap:8px}.odo-add-actions .plan-add-item-wrap{flex:1;min-width:0}.odo-panel-title{color:#0f172a;font-size:13px;font-weight:900}.odo-panel-row{border:1px solid #e5e7eb;border-radius:8px;padding:8px 9px;color:#334155;font-size:13px;font-weight:700;background:#f8fafc}.surface-selector{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px;align-items:start}.surface-map{display:grid;grid-template-columns:repeat(3,30px);grid-template-rows:repeat(3,30px);gap:2px;padding:4px;border:1px solid #e5e7eb;border-radius:8px;background:#f8fafc}.surface-zone{border:1px solid #dbe1ea;background:#fff;color:#64748b;font-size:11px;font-weight:900;cursor:pointer}.surface-zone:hover,.surface-zone.active{background:#eef2ff;border-color:#6366f1;color:#4338ca}.surface-zone--B{grid-column:2;grid-row:1;border-radius:8px 8px 2px 2px}.surface-zone--M{grid-column:1;grid-row:2;border-radius:8px 2px 2px 8px}.surface-zone--O{grid-column:2;grid-row:2;border-radius:50%}.surface-zone--D{grid-column:3;grid-row:2;border-radius:2px 8px 8px 2px}.surface-zone--L{grid-column:2;grid-row:3;border-radius:2px 2px 8px 8px}.surface-list{display:flex;flex-direction:column;gap:5px}.surface-list button{display:flex;align-items:center;gap:7px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;padding:6px 8px;text-align:left;cursor:pointer}.surface-list button.active{border-color:#6366f1;background:#eef2ff}.surface-list strong{color:#4338ca;min-width:18px;font-size:12px}.surface-list span{color:#64748b;font-size:11px;line-height:1.2}.tooth-status-bar{display:flex;flex-wrap:wrap;gap:6px}.tooth-status-btn{border:1px solid #e5e7eb;background:#fff;color:#374151;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;cursor:pointer}.tooth-status-btn:hover,.tooth-status-btn.active{background:#0f172a;border-color:#0f172a;color:#fff}.odo-service-row{display:grid;grid-template-columns:24px minmax(0,1fr) 24px;gap:7px;align-items:center;border:1px solid #e5e7eb;border-radius:8px;padding:7px;background:#fff}.odo-service-row.done{background:#ecfdf5;border-color:#a7f3d0}.odo-service-row button{width:24px;height:24px;border:1px solid #e5e7eb;border-radius:50%;background:#fff;color:#64748b;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.odo-service-row.done button:first-child{background:#10b981;border-color:#10b981;color:#fff}.odo-service-row strong{display:block;color:#0f172a;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.odo-service-row span{display:block;color:#64748b;font-size:11px;margin-top:2px}@media (min-width: 721px) and (max-width: 1180px){.odo-layout{grid-template-columns:minmax(0,1fr) 280px;gap:12px}.odo-map-card,.odo-panel{padding:12px}.odo-tooth-svg{width:35px}.odo-panel-head strong{font-size:24px}}@media (max-width: 720px){.odo-topbar,.odo-filter-row{align-items:stretch}.odo-segment,.odo-filter-row{width:100%;overflow-x:auto;flex-wrap:nowrap}.odo-filter-row select{min-width:150px;border-left:0;border-top:1px solid #e5e7eb}.odo-layout{grid-template-columns:1fr}.odo-panel{order:2}.odo-map-card,.odo-panel{padding:10px}.odo-tooth-svg{width:34px}.surface-selector{grid-template-columns:1fr}.odo-legend{gap:7px}}.plans-tab{display:flex;flex-direction:column;gap:14px}.plans-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.plan-card{text-align:left;border:1px solid var(--border, #e5e7eb);border-radius:8px;background:var(--surface, #fff);padding:14px;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.plan-card:hover{border-color:#c7d2fe;box-shadow:0 10px 26px #0f172a14}.plan-card--empty-draft{background:#fbfcff;border-style:dashed}.plan-card--empty-draft .plan-card-money{opacity:.72}.plan-card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.plan-card-top strong{display:block;color:var(--text, #0b1330);font-size:15px}.plan-card-top span,.plan-card-meta span,.plan-card-money span{color:var(--text-2, #6b7280);font-size:12px}.plan-card-meta{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.plan-card-money{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.plan-card-money div{padding:8px;border-radius:8px;background:var(--bg, #f8fafc)}.plan-card-money strong{display:block;margin-top:3px;color:var(--text, #0b1330);font-size:13px}.plan-status-pill{display:inline-flex;align-items:center;width:fit-content;min-height:24px;border-radius:999px;padding:3px 9px;font-style:normal;font-size:11px;font-weight:800;background:#f1f5f9;color:#475569}.plan-status-pill--approved{background:#eef2ff;color:#4338ca}.plan-status-pill--in_treatment{background:#ecfeff;color:#0e7490}.plan-status-pill--completed{background:#dcfce7;color:#166534}.plan-status-pill--cancelled{background:#fee2e2;color:#991b1b}.plan-progress{height:8px;border-radius:999px;background:#e5e7eb;overflow:hidden}.plan-progress span{display:block;height:100%;border-radius:inherit;background:#10b981}.plan-progress--treatment span{background:#6366f1}.plans-table-wrap{overflow-x:auto;border:1px solid var(--border, #e5e7eb);border-radius:12px}.plans-table{width:100%;border-collapse:collapse;font-size:13px}.plans-table th{text-align:left;padding:9px 12px;font-size:11px;font-weight:700;color:var(--text-3, #9ca3af);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border, #e5e7eb);background:var(--bg, #f9fafb)}.plans-table td{padding:11px 12px;border-bottom:1px solid var(--border, #e5e7eb)}.plans-table tbody tr{cursor:pointer;transition:background .1s}.plans-table tbody tr:hover{background:var(--bg, #f9fafb)}.plans-table tbody tr:last-child td{border-bottom:none}.plans-table-name{font-weight:700;color:var(--text, #0b1330)}.plans-table-muted{color:var(--text-2, #6b7280)}.plans-table-amount{font-weight:700;color:var(--text, #0b1330);white-space:nowrap}.plan-meta-form{display:flex;flex-direction:column;gap:8px}.plan-hero{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--border, #e5e7eb);border-radius:8px;background:#fbfcff}.plan-hero-kicker{font-size:11px;font-weight:800;color:#6366f1;text-transform:uppercase}.plan-hero h3{margin:2px 0 8px;color:var(--text, #0b1330);font-size:20px}.plan-hero-date{color:var(--text-2, #6b7280);font-size:12px;white-space:nowrap}.plan-meta-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px}.plan-finance-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.plan-finance-summary div{padding:10px;border:1px solid var(--border, #e5e7eb);border-radius:8px;background:var(--surface, #fff)}.plan-finance-summary span,.plan-progress-pair span{display:block;color:var(--text-2, #6b7280);font-size:12px;margin-bottom:4px}.plan-finance-summary strong{color:var(--text, #0b1330);font-size:15px}.plan-progress-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.plan-onepage-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(330px,.9fr);gap:14px;align-items:start}.plan-onepage-section{min-width:0;display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--border, #e5e7eb);border-radius:8px;background:var(--surface, #fff)}.plan-onepage-section--chart{grid-column:1 / -1;background:#fbfcff}.plan-onepage-section--stages{grid-column:1}.plan-onepage-section--payments,.plan-onepage-section--history{grid-column:2}.plan-onepage-heading{font-size:15px;font-weight:900;color:#0b1330}.plan-onepage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:2px}.plan-onepage-head p{margin:3px 0 0;color:var(--text-2, #64748b);font-size:12px;line-height:1.35}.plan-onepage-head>span{flex-shrink:0;display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:11px;font-weight:900;white-space:nowrap}.plan-subsection-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px}.plan-subsection-head strong{color:#0b1330;font-size:13px}.plan-subsection-head span{color:var(--text-3, #94a3b8);font-size:11px;font-weight:800}.plan-modal-footer-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}.plan-modal-footer-secondary{display:flex;align-items:center;gap:16px}.plan-more-wrap{position:relative}.plan-more-menu{position:absolute;left:0;bottom:24px;z-index:10;min-width:170px;padding:6px;border:1px solid var(--border, #e5e7eb);border-radius:8px;background:#fff;box-shadow:0 16px 35px #0f172a29}.plan-more-menu button{width:100%;display:flex;align-items:center;gap:8px;padding:8px;border:0;background:transparent;border-radius:6px;color:#374151;font-size:13px;font-weight:700;cursor:pointer}.plan-more-menu button:hover{background:#f3f4f6}.plan-more-menu button.danger{color:#dc2626}.plan-modal-divider{border-top:1px solid var(--border, #e5e7eb);margin:0}.plan-modal-summary{display:flex;flex-direction:column;gap:8px}.plan-modal-summary-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.plan-modal-total{font-size:13px;color:var(--text-2, #6b7280)}.plan-modal-total strong{color:var(--text, #0b1330)}.plan-modal-columns{display:flex;flex-wrap:wrap;align-items:flex-start;gap:14px}.plan-modal-col{display:flex;flex-direction:column;gap:10px;min-width:0}.plan-modal-col--chart{flex:1 1 660px;min-width:420px}.plan-modal-col--main{flex:1 1 340px;min-width:280px}.plan-modal-col--wide{flex-basis:100%;min-width:0}.plan-section-title{font-size:12px;font-weight:700;color:#4338ca;text-transform:uppercase;letter-spacing:.4px;margin-top:2px}.plan-items{display:flex;flex-direction:column;gap:4px}.plan-items-toolbar{display:flex;justify-content:flex-end;margin-bottom:2px}.plan-items-list{display:flex;flex-direction:column;gap:8px;max-height:430px;overflow-y:auto;padding-right:2px}.plan-stage-group{border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:8px;background:#fff}.plan-stage-head{display:flex;justify-content:space-between;gap:10px;padding:2px 2px 8px;color:var(--text, #0b1330);font-size:13px}.plan-stage-head span{color:var(--text-2, #6b7280);font-weight:800}.plan-link-btn{background:none;border:none;cursor:pointer;color:#6366f1;font-size:12px;font-weight:600;padding:2px 4px;display:inline-flex;align-items:center;gap:4px}.plan-link-btn:hover{text-decoration:underline}.plan-link-btn--danger{color:#dc2626}.plan-link-btn:disabled{opacity:.45;cursor:not-allowed;text-decoration:none}.plan-discount-blocked-hint{font-size:11px;color:#b45309;background:#fffbeb;padding:6px 10px;border-radius:6px}.plan-item-row{display:flex;flex-direction:column;border-radius:7px;transition:background .1s}.plan-item-row--selectable:hover{background:var(--bg, #f9fafb)}.plan-item-row--paid{opacity:.75}.plan-item-row--pending{background:#fffbeb}.plan-item-row-main{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:5px 4px;min-height:30px}.plan-item-row--selectable .plan-item-row-main{cursor:pointer}.plan-item-select{flex-shrink:0;width:16px;height:16px;accent-color:#6366f1;cursor:pointer}.plan-item-paid-badge{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;color:#10b981}.plan-item-pending-badge{flex-shrink:0;font-size:10px;font-weight:700;color:#b45309;background:#fef3c7;padding:2px 8px;border-radius:999px;white-space:nowrap}.plan-item-name{flex:1;min-width:130px;font-size:13px;color:var(--text, #374151);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-item-name span{display:block;margin-top:2px;color:var(--text-3, #9ca3af);font-size:11px;font-weight:600;white-space:normal;overflow-wrap:break-word}.plan-item-tooth{flex-shrink:0;font-size:11px;color:var(--text-3, #9ca3af);background:var(--bg, #f3f4f6);padding:1px 7px;border-radius:999px}.plan-item-status{flex:0 0 124px;border:1px solid #e5e7eb;border-radius:999px;padding:4px 8px;background:#fff;color:#374151;font-size:11px;font-weight:800}.plan-pay-status{flex-shrink:0;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;background:#fee2e2;color:#991b1b}.plan-pay-status--partial{background:#fef3c7;color:#92400e}.plan-pay-status--paid{background:#dcfce7;color:#166534}.plan-item-price-value{flex-shrink:0;font-size:13px;font-weight:600;color:var(--text, #0b1330);white-space:nowrap;text-align:right}.plan-item-price-original{font-weight:400;color:var(--text-3, #9ca3af);text-decoration:line-through;font-size:12px;margin-right:5px}.plan-item-price-perunit{font-weight:400;color:var(--text-3, #9ca3af);font-size:11px}.plan-item-qty-stepper{flex-shrink:0;display:inline-flex;align-items:center;gap:2px;border:1px solid #e5e7eb;border-radius:999px;padding:2px}.plan-item-qty-btn{width:20px;height:20px;border-radius:999px;border:none;background:#f3f4f6;color:#374151;font-size:14px;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.plan-item-qty-btn:hover:not(:disabled){background:#e0e7ff;color:#4338ca}.plan-item-qty-btn:disabled{opacity:.4;cursor:not-allowed}.plan-item-qty-value{min-width:18px;text-align:center;font-size:12.5px;font-weight:700;color:var(--text, #0b1330)}.plan-item-discount-badge{flex-shrink:0;font-size:10px;font-weight:700;color:#b45309;background:#fef3c7;padding:1px 6px;border-radius:999px}.plan-item-discount-btn{flex-shrink:0;border:1px solid #c7d2fe;background:#eef2ff;color:#4338ca;font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;cursor:pointer;white-space:nowrap}.plan-item-discount-btn:hover{background:#e0e7ff;border-color:#a5b4fc}.plan-item-discount-btn--active{background:#fef3c7;border-color:#fcd34d;color:#b45309}.plan-item-discount-btn--active:hover{background:#fde68a}.plan-item-lab-badge{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;border:1px solid #a5f3fc;background:#ecfeff;color:#0e7490;font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;cursor:pointer;white-space:nowrap}.plan-item-lab-badge--empty{border-color:#e5e7eb;background:var(--bg, #f3f4f6);color:var(--text-3, #9ca3af)}.plan-item-lab-badge--rework{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.plan-item-lab-badge--cancelled{border-color:#e5e7eb;background:var(--bg, #f3f4f6);color:var(--text-3, #9ca3af)}.plan-item-lab-badge--installed,.plan-item-lab-badge--ready,.plan-item-lab-badge--received{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}.plan-item-remove{flex-shrink:0;background:none;border:none;cursor:pointer;color:#d1d5db;padding:2px;border-radius:4px;display:flex}.plan-item-remove:hover{color:#dc2626}.plan-item-remove:disabled{opacity:.4;cursor:not-allowed}.plan-item-discount-editor{display:flex;flex-direction:column;gap:8px;padding:8px;margin:0 4px 4px;background:var(--bg, #f9fafb);border-radius:8px}.plan-item-discount-editor-title{font-size:12px;font-weight:700;color:var(--text, #0b1330)}.plan-item-discount-editor-row{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.plan-item-discount-mini{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.plan-item-discount-mini-label{font-size:10.5px;font-weight:600;color:var(--text-3, #9ca3af);text-transform:uppercase;letter-spacing:.2px}.plan-item-discount-mini input{width:68px;padding:4px 6px;font-size:12px;text-align:right;border:1px solid var(--border, #e5e7eb);border-radius:6px;background:var(--surface, #fff);color:var(--text, #0b1330)}.plan-item-discount-mini--result{margin-right:auto}.plan-item-discount-total{font-size:13px;font-weight:700;color:var(--text, #0b1330);padding:4px 0}.plan-item-discount-mini-btn{flex-shrink:0;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border, #e5e7eb);border-radius:6px;background:var(--surface, #fff);color:var(--text-2, #6b7280);cursor:pointer}.plan-item-discount-mini-btn:hover{background:var(--bg, #f3f4f6)}.plan-item-discount-mini-btn--primary{background:#6366f1;border-color:#6366f1;color:#fff}.plan-item-discount-mini-btn--primary:hover{background:#4f46e5}.plan-discount-box{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:#eef2ff;border-radius:8px}.plan-discount-fields{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}.plan-discount-field{flex:1;min-width:110px;font-size:11px}.plan-discount-field .form-input{text-align:right}.plan-discount-hint{font-size:11px;color:var(--text-3, #9ca3af)}.plan-add-item-wrap{display:flex;flex-direction:column;gap:8px}.plan-add-trigger-btn{flex:1;justify-content:center;white-space:nowrap}.plan-add-tooth-toggle{flex-shrink:0;white-space:nowrap}.plan-search-picker{display:flex;flex-direction:column;gap:12px}.plan-modal-teeth-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid #eef2f7}.plan-modal-teeth-chips{display:flex;flex-wrap:wrap;gap:5px}.plan-modal-teeth-chip{display:inline-flex;align-items:center;justify-content:center;min-width:24px;padding:2px 6px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:12px;font-weight:700}.plan-modal-teeth-empty{color:#9ca3af;font-size:13px}.plan-modal-item-fields{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid #eef2f7}.plan-modal-item-fields .form-select{flex:1;min-width:140px}.plan-search-input{display:flex;align-items:center;gap:8px;border:1px solid #d1d5db;border-radius:8px;padding:0 10px;color:#9ca3af}.plan-search-input input{width:100%;height:40px;border:0;outline:0;color:#111827;font-size:14px}.plan-search-results{display:flex;flex-direction:column;gap:6px;max-height:360px;overflow-y:auto}.plan-search-results button{display:flex;justify-content:space-between;gap:12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;padding:10px;text-align:left;cursor:pointer}.plan-search-results button:hover{border-color:#c7d2fe;background:#f8fafc}.plan-search-results strong{color:#111827;font-size:13px}.plan-search-results span{color:#6b7280;font-size:12px;white-space:nowrap}.plan-search-result-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border:1px solid #e5e7eb;border-radius:8px;background:#fff;padding:10px}.plan-search-result-row:hover{border-color:#c7d2fe;background:#f8fafc}.plan-search-result-info{display:flex;flex-direction:column;gap:2px;min-width:0}.plan-search-result-info strong{color:#111827;font-size:13px}.plan-search-result-info span{color:#6b7280;font-size:12px}.plan-search-result-qty{display:flex;align-items:center;gap:6px;flex-shrink:0}.plan-search-result-qty input{width:56px;text-align:center}.plan-search-result-qty .btn-secondary{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.plan-action-bar{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:12px;background:var(--bg, #f9fafb);border:1px solid transparent;border-radius:10px}.plan-action-bar--active{border-color:#c7d2fe;background:#eef2ff}.plan-action-bar-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:var(--text-2, #6b7280)}.plan-action-bar-summary strong{color:var(--text, #111827);font-size:13px}.plan-action-bar-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.plan-action-btn{width:100%;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 10px;font-size:13px;line-height:1.2;white-space:normal;text-align:center}.plan-action-btn svg{flex:0 0 auto}.plan-action-btn--pay{grid-column:1 / -1}.plan-action-empty{padding:14px 12px;border:1px dashed #cbd5e1;border-radius:8px;background:#fff;color:#64748b;font-size:13px;line-height:1.35;text-align:center}.plan-empty-hint{padding:12px;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;color:#64748b;font-size:12px;line-height:1.4}.plan-pay-form{display:flex;flex-direction:column;gap:14px}.plan-pay-price-editor{display:grid;grid-template-columns:1fr 1.5fr;gap:10px;padding:12px;border:1px solid #dbe4ff;border-radius:10px;background:#f5f8ff}@media (max-width: 560px){.plan-pay-price-editor{grid-template-columns:1fr}}.plan-pay-summary{font-size:13px;color:var(--text-2, #6b7280)}.plan-pay-hero{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border-radius:8px;background:#0b1330;color:#fff}.plan-pay-hero span{display:block;color:#ffffffad;font-size:11px;font-weight:900;text-transform:uppercase}.plan-pay-hero strong{display:block;margin-top:2px;font-size:24px;line-height:1.1}.plan-pay-hero em{font-style:normal;border-radius:999px;padding:5px 10px;background:#ffffff1f;color:#fff;font-size:12px;font-weight:900;white-space:nowrap}.plan-pay-selected-list{display:flex;flex-direction:column;gap:6px;max-height:172px;overflow-y:auto}.plan-pay-selected-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.plan-pay-selected-row strong{display:block;color:#0f172a;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-pay-selected-row span{display:block;margin-top:2px;color:#64748b;font-size:12px}.plan-pay-selected-row b{color:#0b1330;font-size:13px;white-space:nowrap}.plan-pay-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.plan-pay-overview div{padding:9px 10px;border:1px solid #e5e7eb;border-radius:8px;background:#f8fafc}.plan-pay-overview span{display:block;color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase}.plan-pay-overview strong{display:block;margin-top:3px;color:#0b1330;font-size:13px}.plan-pay-actions{display:flex;justify-content:flex-end;gap:10px}.plan-history-table,.plan-audit-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.plan-history-row,.plan-audit-row{display:grid;grid-template-columns:150px 1fr 130px 1fr;gap:10px;align-items:center;padding:9px 10px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:12px;color:#64748b}.plan-history-row strong{color:#0b1330;text-align:right}.plan-audit-row{grid-template-columns:150px 1fr 1.5fr}.plan-audit-row strong{color:#0b1330}.plan-audit-row em{color:#6366f1;font-style:normal;font-weight:700}.plan-pay-splits{display:flex;flex-direction:column;gap:10px}.plan-pay-split-row{display:flex;align-items:flex-end;gap:8px;padding:10px;border:1px solid #e5e7eb;border-radius:8px;background:#fbfcff}.plan-pay-split-fields{display:flex;flex:1;gap:8px;min-width:0}.plan-pay-split-method{flex:1.4;min-width:0}.plan-pay-split-method .form-select{width:100%}.plan-pay-split-amount{flex:0 0 100px}.plan-pay-split-amount .form-input{width:100%;text-align:right}.plan-pay-split-account{flex:1;min-width:0}.plan-pay-split-account .form-select{width:100%}.plan-pay-split-remove{flex-shrink:0;background:none;border:none;cursor:pointer;color:#d1d5db;padding:4px;border-radius:4px;display:flex;margin-bottom:9px}.plan-pay-split-remove:hover{color:#dc2626}.plan-pay-add-split{display:inline-flex;align-items:center;gap:5px;align-self:flex-start}@media (min-width: 761px) and (max-width: 1180px){.plans-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-finance-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.plan-onepage-layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.9fr)}.plan-modal-col--chart{min-width:0}.plan-item-row-main{flex-wrap:wrap}.plan-history-row{grid-template-columns:130px 1fr 110px}.plan-history-row span:last-child{grid-column:1 / -1}}@media (max-width: 760px){.plan-meta-grid,.plan-finance-summary,.plan-progress-pair,.plan-card-money,.plan-pay-overview,.plan-onepage-layout,.plans-card-grid{grid-template-columns:1fr}.plan-hero,.plan-onepage-head{flex-direction:column}.plan-onepage-head>span{align-self:flex-start}.plan-modal-col--chart{min-width:0}.plan-item-row-main{flex-wrap:wrap}.plan-item-status{flex:1 1 150px}.plan-modal-item-fields{flex-direction:column}.plan-action-bar-buttons{width:100%}.plan-action-btn{justify-content:center}.plan-pay-split-row,.plan-pay-split-fields{flex-direction:column;align-items:stretch}.plan-pay-split-amount{flex:none}.plan-history-row,.plan-audit-row{grid-template-columns:1fr}.plan-onepage-section--chart,.plan-onepage-section--stages,.plan-onepage-section--payments,.plan-onepage-section--history{grid-column:auto}}.plan-pay-method-meta{display:block;margin-top:5px;color:#64748b;line-height:1.35}.plan-item-documents{margin-top:6px;padding:8px 0 0;border-top:1px dashed var(--border, #e5e7eb)}.plan-item-documents-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-3, #9ca3af);margin-bottom:6px}.plan-item-documents-empty{font-size:12.5px;color:var(--text-3, #9ca3af)}.plan-item-document-list{display:flex;flex-direction:column;gap:6px}.plan-item-document-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:7px 10px;border:1px solid var(--border, #e5e7eb);border-radius:9px;background:var(--surface, #fff)}.plan-item-document-info{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.plan-item-document-name{font-size:12.5px;font-weight:600;color:var(--text, #17213c)}.plan-item-document-status{font-style:normal;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap}.plan-item-document-status--signed{background:#dcfce7;color:#166534}.plan-item-document-status--pending{background:#fef3c7;color:#92400e}.plan-item-document-status--missing{background:#f1f4f9;color:#6b7280}.plan-item-document-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.plan-item-document-remove{flex-shrink:0;background:none;border:none;cursor:pointer;color:#d1d5db;padding:2px 5px;border-radius:4px;font-size:15px;line-height:1}.plan-item-document-remove:hover{color:#dc2626}.plan-documents-block{display:flex;flex-direction:column;gap:8px}.plan-documents-summary{font-size:12px;color:var(--text-3, #9ca3af);margin-top:-4px}.plan-document-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:9px 11px;border:1px solid var(--border, #e5e7eb);border-radius:10px;background:var(--surface, #fff)}.plan-document-info{display:flex;flex-direction:column;gap:3px;min-width:0}.plan-document-name{font-size:13px;color:var(--text, #17213c)}.plan-document-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11.5px;color:var(--text-3, #9ca3af)}.plan-document-meta em{font-style:normal;font-weight:700;padding:2px 8px;border-radius:999px}.plan-document-meta em.status-success{background:#dcfce7;color:#166534}.plan-document-meta em.status-warning{background:#fef3c7;color:#92400e}.plan-document-actions{display:flex;align-items:center;gap:4px;flex-shrink:0;flex-wrap:wrap}.plan-item-document-picker{margin-top:8px;position:relative}.plan-item-document-picker summary{display:inline-flex;cursor:pointer;color:var(--primary, #3f46d9);font-size:13px;font-weight:700;list-style:none}.plan-item-document-picker summary::-webkit-details-marker{display:none}.plan-item-document-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:6px;margin-top:8px;padding:10px;border:1px solid var(--border, #e1e6f0);border-radius:10px;background:var(--surface, #fff)}.plan-item-document-options button{padding:7px 9px;border:0;border-radius:7px;background:#f3f5fb;color:var(--text, #17213c);text-align:left;cursor:pointer}.plan-item-document-options button:hover:not(:disabled){background:#e8ecff}.plan-item-document-options button:disabled{color:#7b8497;cursor:default}.plan-document-language-option{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 9px;border-radius:8px;background:#f3f5fb;color:var(--text, #17213c)}.plan-document-language-option>span{font-size:13px;font-weight:600}.plan-document-language-option>div{display:flex;gap:5px;flex-shrink:0}.plan-item-document-options .plan-document-language-option button{padding:5px 7px;border:1px solid #d8def4;background:#fff;font-size:12px}.plan-document-chip em{margin-left:6px;padding:2px 5px;border-radius:5px;background:#e7edff;color:#3f46d9;font-size:10px;font-style:normal;font-weight:800}.anamnesis-form{display:flex;flex-direction:column;gap:14px;max-width:920px}.anamnesis-intro{margin-top:3px;font-size:13px;color:var(--text-2, #64748b)}.anamnesis-autosave{padding:8px 11px;border:1px solid #cfe0ff;border-radius:8px;background:#f4f8ff;color:#31528a;font-size:12px;font-weight:600}.anamnesis-autosave--saving{color:#1d4ed8;background:#eaf2ff}.anamnesis-score{min-width:112px;padding:10px 12px;border-radius:8px;background:#f8fafc;border:1px solid #e5e7eb;text-align:right;flex-shrink:0}.anamnesis-score strong{display:block;font-size:20px;color:#0b1330;line-height:1}.anamnesis-score span{display:block;margin-top:4px;font-size:11px;color:#64748b}.anamnesis-form-alert{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:8px;background:#fef2f2;border:1px solid #fca5a5;color:#b91c1c}.anamnesis-form-alert strong{display:block;font-size:13px}.anamnesis-form-alert span{display:block;margin-top:3px;font-size:12px;line-height:1.35;color:#991b1b}.anamnesis-questions{display:flex;flex-direction:column;gap:8px}.anamnesis-question{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border-radius:8px;border:1px solid var(--border, #e5e7eb);background:var(--surface, #fff);transition:background .15s,border-color .15s,box-shadow .15s}.anamnesis-question:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0f172a0a}.anamnesis-question--flagged{background:#fff7f7;border-color:#fca5a5}.anamnesis-question-status{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:#10b981}.anamnesis-question-status span{width:10px;height:10px;border-radius:999px;background:#cbd5e1}.anamnesis-question--flagged .anamnesis-question-status{color:#dc2626}.anamnesis-question-body{min-width:0}.anamnesis-question-text{display:block;font-size:14px;color:var(--text, #1f2937);line-height:1.35}.anamnesis-question-short{display:block;margin-top:3px;font-size:11.5px;color:var(--text-3, #94a3b8)}.anamnesis-question--flagged .anamnesis-question-text{color:#991b1b;font-weight:700}.anamnesis-question-toggle{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;border:1px solid #e5e7eb;border-radius:8px;background:#f8fafc}.anamnesis-toggle-btn{min-width:58px;height:32px;border-radius:6px;border:0;background:transparent;color:#64748b;font-size:12px;font-weight:800;cursor:pointer}.anamnesis-toggle-btn--yes.active{background:#dc2626;color:#fff}.anamnesis-toggle-btn--no.active{background:#10b981;color:#fff}.anamnesis-details-input{grid-column:2 / -1;margin-top:2px}.anamnesis-confirm{padding:12px 14px;border-radius:8px;background:#f8fafc;border:1px solid #e5e7eb;font-size:12.5px;color:var(--text-2, #64748b);line-height:1.5}.anamnesis-meta{font-size:12px;color:var(--text-3, #94a3b8)}.anamnesis-actions{position:sticky;bottom:0;z-index:2;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 0 0;background:var(--surface, #fff)}.anamnesis-actions-note{margin-right:auto;color:var(--text-2, #64748b);font-size:12px;font-weight:600}.anamnesis-print-btn,.anamnesis-save-btn{display:inline-flex;align-items:center;gap:7px}.anamnesis-save-btn.anamnesis-save-btn--saved:disabled{background:#15803d!important;border-color:#15803d!important;color:#fff;opacity:1;box-shadow:none!important;cursor:default}[data-theme=dark] .anamnesis-score,[data-theme=dark] .anamnesis-question,[data-theme=dark] .anamnesis-confirm{background:var(--surface, #111827);border-color:var(--border, #374151)}[data-theme=dark] .anamnesis-score strong{color:var(--text, #f9fafb)}[data-theme=dark] .anamnesis-question-toggle{background:#0f172a;border-color:#334155}[data-theme=dark] .anamnesis-question-status span{background:#475569}[data-theme=dark] .anamnesis-question--flagged{background:#dc26261f;border-color:#dc2626}[data-theme=dark] .anamnesis-question--flagged .anamnesis-question-text,[data-theme=dark] .anamnesis-form-alert span,[data-theme=dark] .anamnesis-form-alert strong{color:#fca5a5}[data-theme=dark] .anamnesis-form-alert{background:#dc262624;border-color:#dc2626;color:#fca5a5}@media (max-width: 720px){.anamnesis-score{text-align:left}.anamnesis-question{grid-template-columns:24px minmax(0,1fr)}.anamnesis-question-toggle,.anamnesis-details-input{grid-column:1 / -1}.anamnesis-actions{flex-wrap:wrap}.anamnesis-actions-note{width:100%}}.mc-form{display:flex;flex-direction:column;gap:12px;max-width:960px}.mc-form-header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:2px solid var(--accent, #4f46e5);padding-bottom:10px;margin-bottom:4px}.mc-form-kicker{font-size:11px;font-weight:700;color:var(--text-3, #94a3b8);text-transform:uppercase;letter-spacing:.4px}.mc-form-title{margin:2px 0 0;font-size:16px}.mc-link-btn{background:none;border:none;cursor:pointer;color:#6366f1;font-size:12px;font-weight:600;padding:2px 4px;margin-left:8px;display:inline-flex;align-items:center;gap:4px}.mc-link-btn:hover{text-decoration:underline}.mc-id-table{width:100%;border-collapse:collapse;border:1px solid var(--border, #e2e8f0);border-radius:8px;overflow:hidden;font-size:13px}.mc-id-table tr:not(:last-child) td{border-bottom:1px solid var(--border, #e2e8f0)}.mc-id-table td{padding:7px 12px;vertical-align:middle}.mc-id-label{width:240px;color:var(--text-3, #94a3b8);font-weight:600;background:var(--surface-2, #f8fafc)}.mc-id-value{color:var(--text, #1f2937);font-weight:600}.mc-id-input{width:100%;border:none;border-bottom:1px dashed var(--border, #cbd5e1);background:transparent;font:inherit;font-weight:600;color:inherit;padding:2px 0}.mc-id-input:focus{outline:none;border-bottom-color:var(--accent, #4f46e5)}.mc-id-input--half{width:48%;display:inline-block}.mc-id-input--half+.mc-id-input--half{margin-left:4%}.mc-id-textarea{width:100%;border:none;border-bottom:1px dashed var(--border, #cbd5e1);background:transparent;font:inherit;font-weight:600;color:inherit;resize:vertical;padding:2px 0}.mc-id-textarea:focus{outline:none;border-bottom-color:var(--accent, #4f46e5)}.mc-numbered-section{display:flex;gap:10px;border:1px solid var(--border, #e2e8f0);border-radius:8px;padding:10px 12px;background:var(--surface, #fff)}.mc-section-num{flex:0 0 auto;width:26px;height:26px;border-radius:6px;background:var(--accent, #4f46e5);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}.mc-section-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.mc-section-title{font-size:12.5px;font-weight:700;color:var(--text-2, #475569);display:flex;align-items:center;flex-wrap:wrap}.mc-section-textarea{width:100%;border:1px solid var(--border, #e2e8f0);border-radius:6px;font:inherit;font-family:inherit;padding:6px 8px;resize:vertical;background:var(--surface, #fff);color:inherit}.mc-section-textarea:focus{outline:none;border-color:var(--accent, #4f46e5)}.mc-muted{color:var(--text-3, #94a3b8);font-size:13px}.mc-anamnesis-list{margin:0;padding-left:18px;font-size:13px;color:#b91c1c}.mc-anamnesis-list li{margin-bottom:3px}.mc-tooth-scroll{overflow-x:auto}.mc-tooth-table{border-collapse:collapse;margin:0 auto}.mc-tooth-cell{border:1px solid var(--border, #e2e8f0);width:32px;text-align:center;padding:3px 1px}.mc-tooth-num{font-size:9.5px;font-weight:700;color:var(--text-3, #94a3b8)}.mc-tooth-symbol{font-size:13px;font-weight:800;color:var(--accent, #4338ca)}.mc-tooth-symbol--empty{color:var(--border, #d1d5db)}.mc-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px;font-size:11px;color:var(--text-2, #64748b)}.mc-diary-scroll{overflow-x:auto}.mc-diary-table{width:100%;border-collapse:collapse;font-size:13px}.mc-diary-table th,.mc-diary-table td{border:1px solid var(--border, #e2e8f0);padding:6px 9px;text-align:left;vertical-align:top}.mc-diary-table th{background:var(--surface-2, #f8fafc);color:var(--text-2, #475569);font-size:10.5px;text-transform:uppercase;letter-spacing:.3px}.mc-diary-date{white-space:nowrap;font-weight:600;color:var(--text-3, #94a3b8)}.mc-diary-row--manual td{background:#d977060f}.mc-log-tag{font-weight:700;color:#b45309}.mc-log-add{display:flex;flex-direction:column;gap:8px;margin-top:2px}.mc-log-add button{align-self:flex-end;display:inline-flex;align-items:center;gap:6px}.mc-footer-row{display:flex;justify-content:flex-end}.mc-signatures{display:flex;justify-content:space-between;gap:30px;margin:8px 0 20px;padding:0 4px}.mc-sig{flex:1;font-size:12px;color:var(--text-3, #94a3b8)}.mc-sig-line{border-top:1px solid var(--border, #cbd5e1);margin-top:30px}[data-theme=dark] .mc-id-table{border-color:var(--border, #374151)}[data-theme=dark] .mc-id-label{background:var(--surface-2, #1f2937)}[data-theme=dark] .mc-numbered-section,[data-theme=dark] .mc-section-textarea{background:var(--surface, #111827);border-color:var(--border, #374151)}[data-theme=dark] .mc-tooth-cell,[data-theme=dark] .mc-diary-table th,[data-theme=dark] .mc-diary-table td{border-color:var(--border, #374151)}[data-theme=dark] .mc-diary-table th{background:var(--surface-2, #1f2937)}[data-theme=dark] .mc-diary-row--manual td{background:#d9770624}.teeth-picker{position:relative}.teeth-picker-summary{width:100%;text-align:left;border:1px solid var(--border, #e5e7eb);background:var(--surface, #fff);border-radius:8px;padding:8px 10px;font-size:13px;cursor:pointer;color:var(--text, #0b1330)}.teeth-picker-grid{position:absolute;z-index:20;top:calc(100% + 4px);left:0;width:min(420px,calc(100vw - 48px));max-width:90vw;background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:10px;box-shadow:0 8px 24px #0f172a1f;padding:10px}.teeth-picker-chart{padding:0}.teeth-picker-chart .odo-row{--odo-tooth-count: 16;min-width:0}.teeth-picker-chart .odo-tooth{min-height:56px}.teeth-picker-chart .odo-tooth-svg{width:26px;height:36px}.teeth-picker-actions{display:flex;gap:6px;margin-top:6px}.teeth-picker-actions .form-input{flex:1}.lab-order-form,.lab-order-detail{display:flex;flex-direction:column;gap:12px}.lab-order-readonly{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px 16px;background:var(--bg, #f4f6fb);border-radius:8px;padding:10px 14px}.lab-order-readonly div{display:flex;flex-direction:column;font-size:12px}.lab-order-readonly span{color:var(--text-3, #9ca3af)}.lab-order-readonly strong{font-size:13px;color:var(--text, #0b1330)}.lab-order-items{display:flex;flex-direction:column;gap:8px;border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:10px}.lab-order-items-head{display:flex;justify-content:space-between;font-size:13px}.lab-order-item-row{display:grid;grid-template-columns:1.2fr 1fr 1fr .8fr .7fr 1fr auto;gap:6px;align-items:center}.lab-order-total{font-size:14px;text-align:right}.lab-order-modal-title{display:flex;align-items:center;gap:8px}.lab-badge{font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}.lab-badge--gray{background:#f1f5f9;color:#475569}.lab-badge--blue{background:#dbeafe;color:#1d4ed8}.lab-badge--indigo{background:#e0e7ff;color:#4338ca}.lab-badge--orange{background:#ffedd5;color:#c2410c}.lab-badge--yellow{background:#fef9c3;color:#a16207}.lab-badge--teal{background:#ccfbf1;color:#0f766e}.lab-badge--green{background:#dcfce7;color:#15803d}.lab-badge--red{background:#fee2e2;color:#b91c1c}.lab-order-detail-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.lab-order-detail-head span{display:block;color:var(--text-3, #9ca3af);font-size:12px}.lab-status-change{border-top:1px solid var(--border, #e5e7eb);padding-top:10px;margin-top:6px}.lab-rework-fields{display:flex;flex-direction:column;gap:8px;margin-top:8px}.lab-order-items-view{display:flex;flex-direction:column;gap:6px}.lab-order-item-view-row{display:grid;grid-template-columns:1.4fr 1fr 1fr .6fr 1fr;gap:8px;font-size:13px;padding:6px 0;border-bottom:1px solid var(--border, #e5e7eb)}.lab-order-files{display:flex;flex-direction:column;gap:8px}.lab-upload-btn{display:inline-flex;align-items:center;gap:6px;width:fit-content;cursor:pointer}.lab-file-row{display:grid;grid-template-columns:2fr .6fr .6fr auto;gap:8px;align-items:center;font-size:13px;padding:6px 0;border-bottom:1px solid var(--border, #e5e7eb)}.lab-file-type{color:var(--text-3, #9ca3af);font-size:11px}.lab-order-finance{display:flex;flex-direction:column;gap:10px}.lab-pay-form{display:flex;flex-direction:column;gap:8px;border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:10px}.lab-payments-list{display:flex;flex-direction:column;gap:6px}.lab-payment-row{display:grid;grid-template-columns:.8fr .8fr 1fr 1.4fr auto;gap:8px;align-items:center;font-size:13px;padding:6px 0;border-bottom:1px solid var(--border, #e5e7eb)}.lab-payment-row.cancelled{opacity:.55;text-decoration:line-through}.lab-payment-cancelled-label{font-size:11px;color:#b91c1c;text-decoration:none}.lab-order-history{display:flex;flex-direction:column;gap:6px}.lab-history-row{display:grid;grid-template-columns:.9fr 1.3fr .8fr 1.4fr;gap:8px;font-size:12.5px;padding:6px 0;border-bottom:1px solid var(--border, #e5e7eb)}.lab-history-comment{color:var(--text-3, #9ca3af)}.text-green{color:#15803d}.text-red{color:#b91c1c}.patients-page{display:flex;height:100%;overflow:hidden;background:var(--bg, #f4f6fb)}.patients-list-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;transition:max-width .25s;min-width:0}.patients-list-panel.with-detail{display:none}.list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 24px;background:var(--surface, #fff);border-bottom:1px solid var(--border, #e5e7eb);flex-shrink:0}.toolbar-left{display:flex;align-items:center;gap:10px}.toolbar-right{display:flex;gap:10px;align-items:center}.count-badge{font-size:13px;font-weight:600;background:#6366f1;color:#fff;border-radius:20px;padding:2px 9px}.search-wrap{position:relative;display:flex;align-items:center}.search-wrap>svg{position:absolute;left:11px;color:#9ca3af;pointer-events:none}.search-input{height:36px;box-sizing:border-box;border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:0 14px 0 34px;font-size:14px;width:280px;outline:none;background:var(--bg, #f9fafb);color:var(--text, #111827);transition:border .15s}.search-input:focus{border-color:#6366f1;background:var(--surface, #fff);box-shadow:0 0 0 3px #6366f114}.filter-toggle-btn{display:inline-flex;align-items:center;gap:6px;height:36px;box-sizing:border-box;padding:0 16px;border:1px solid var(--border, #e5e7eb);border-radius:10px;background:var(--bg, #f9fafb);color:var(--text-2, #6b7280);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.toolbar-right .btn-secondary,.toolbar-right .btn-primary{height:36px;box-sizing:border-box;display:inline-flex;align-items:center}.patients-filter-extra{display:flex;align-items:flex-end;gap:16px;margin:14px 24px 0;padding:14px 16px;background:var(--bg, #f9fafb);border:1px solid var(--border, #f3f4f6);border-radius:12px;flex-wrap:wrap;flex-shrink:0}.pf-group{display:flex;flex-direction:column;gap:6px}.pf-label{font-size:11px;font-weight:700;color:var(--text-3, #9ca3af);text-transform:uppercase;letter-spacing:.4px}.pf-period-tabs{display:flex;align-items:center;gap:5px;height:36px}.pf-period-btn{height:36px;box-sizing:border-box;padding:0 14px;border-radius:20px;border:1px solid var(--border, #e5e7eb);font-size:13px;font-weight:500;cursor:pointer;background:var(--surface, #fff);color:var(--text-2, #6b7280);transition:all .15s;white-space:nowrap}.pf-period-btn:hover:not(.active){border-color:#6366f1;color:#6366f1}.pf-period-btn.active{background:#6366f1;color:#fff;border-color:#6366f1}.patients-bday-btn{position:relative;color:#6366f1;border-color:#c7d2fe}.patients-bday-btn:hover{background:#eef2ff}.patients-bday-badge{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 3px;border-radius:999px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.pf-date-input{height:36px;box-sizing:border-box;border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:0 12px;font-size:13px;outline:none;background:var(--surface, #fff);color:var(--text, #111827);cursor:pointer;transition:border .15s,box-shadow .15s}.pf-date-input:focus{border-color:#6366f1;background:var(--surface, #fff);box-shadow:0 0 0 3px #6366f114}.pf-select-wrap{position:relative;display:flex;align-items:center}.pf-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:36px;box-sizing:border-box;border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:0 32px 0 12px;font-size:13px;font-weight:500;min-width:210px;background:var(--surface, #fff);color:var(--text, #111827);cursor:pointer;outline:none;transition:border .15s,box-shadow .15s}.pf-select:focus{border-color:#6366f1;background:var(--surface, #fff);box-shadow:0 0 0 3px #6366f114}.pf-select-chevron{position:absolute;right:10px;color:#9ca3af;pointer-events:none}.pf-reset-btn{display:inline-flex;align-items:center;gap:5px;height:36px;box-sizing:border-box;padding:0 14px;border:1px solid var(--border, #e5e7eb);border-radius:10px;background:var(--surface, #fff);color:var(--text-2, #6b7280);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.pf-reset-btn:hover{border-color:#f04438;color:#f04438;background:#fef2f2}.patients-list-header{display:grid;grid-template-columns:2.2fr 1.3fr 1.2fr .6fr 1fr 1fr 1.1fr 1.2fr;padding:10px 24px;margin-top:14px;background:var(--bg, #f4f6fb);border-bottom:1px solid var(--border, #e5e7eb);font-size:11px;font-weight:700;color:var(--text-3, #9ca3af);letter-spacing:.5px;text-transform:uppercase;flex-shrink:0}.patients-list-body{flex:1;overflow-y:auto}.list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px;color:#9ca3af;font-size:14px}.list-empty{display:flex;flex-direction:column;align-items:center;gap:16px;padding:80px 24px;color:#9ca3af;font-size:14px}.patient-row{display:grid;grid-template-columns:2.2fr 1.3fr 1.2fr .6fr 1fr 1fr 1.1fr 1.2fr;align-items:center;padding:12px 24px;border-bottom:1px solid var(--border, #f3f4f6);cursor:pointer;transition:background .12s;background:var(--surface, #fff)}.patient-row:hover{background:var(--bg, #f9fafb)}.patient-row.active{background:#eef2ff;border-left:3px solid #6366f1;padding-left:21px}.pr-patient{display:flex;align-items:center;gap:12px;min-width:0}.pr-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pr-name{font-size:14px;font-weight:600;color:var(--text, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pr-email{font-size:12px;color:var(--text-3, #9ca3af);margin-top:1px}.pr-phone,.pr-last{font-size:13px;color:var(--text-2, #6b7280)}.pr-iin{font-size:12px;color:var(--text-3, #9ca3af);font-variant-numeric:tabular-nums}.visit-badge{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:22px;border-radius:11px;font-size:12px;font-weight:700;background:var(--bg, #f3f4f6);color:var(--text-3, #9ca3af);padding:0 8px}.visit-badge.has{background:#ede9fe;color:#7c3aed}.pr-debt-cell{display:flex;align-items:center}.pr-debt-badge{display:inline-block;padding:3px 9px;border-radius:20px;background:#fee4e2;color:#d92d20;font-size:13px;font-weight:700;white-space:nowrap}.pr-zero{font-size:13px;color:var(--text-3, #9ca3af)}.pr-bal-cell{display:flex;align-items:center}.pr-bal-pos{display:inline-block;padding:3px 9px;border-radius:20px;background:#d1fae5;color:#065f46;font-size:13px;font-weight:700;white-space:nowrap}.pagination{display:flex;align-items:center;gap:12px;justify-content:center;padding:12px;border-top:1px solid var(--border, #e5e7eb);font-size:14px;background:var(--surface, #fff);flex-shrink:0}.pagination button{padding:5px 14px;border:1px solid var(--border, #d1d5db);background:var(--bg, none);border-radius:8px;cursor:pointer;color:var(--text, #374151);font-size:16px}.pagination button:disabled{opacity:.35;cursor:not-allowed}.patient-detail-panel{width:100%;min-width:0;background:#fff;border-left:none;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden}.detail-header{display:flex;align-items:flex-start;gap:16px;padding:20px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#6366f117,#6366f100 65%)}.detail-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0;box-shadow:0 4px 12px #6366f166}.detail-header-info{min-width:0;flex:1}.detail-kicker{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6366f1;margin-bottom:3px}.detail-name-row{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:7px;min-width:0}.detail-header h3{font-size:18px;font-weight:700;color:#0b1330;margin:0;flex-shrink:0}.detail-meta{font-size:13px;color:#6b7280}.close-detail{background:none;border:none;font-size:18px;cursor:pointer;color:#9ca3af;flex-shrink:0}.detail-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.profile-badge{display:inline-flex;align-items:center;font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--surface, #fff);color:var(--text-2, #4b5563);border:1px solid var(--border, #e5e7eb)}.profile-badge--accent{background:#eef2ff;color:#4338ca;border-color:#c7d2fe}.detail-contact-row{display:flex;flex-wrap:wrap;gap:14px}.detail-contact-link{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:#6b7280;text-decoration:none;transition:color .15s}.detail-contact-link:hover{color:#4338ca}.detail-contact-edit{border:0;background:transparent;color:#4f46e5;padding:0;font:inherit;font-size:12px;font-weight:650;cursor:pointer}.detail-contact-edit:hover{color:#3730a3;text-decoration:underline}.quick-phone-edit{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.quick-phone-edit input{width:176px;border:1px solid #c7d2fe;border-radius:7px;background:#fff;color:#172033;padding:7px 9px;font:inherit;font-size:13px}.quick-phone-edit button{border:1px solid #dbe4ff;border-radius:7px;background:#fff;color:#4f46e5;padding:7px 9px;font-size:12px;font-weight:650;cursor:pointer}.quick-phone-edit small{width:100%;color:#dc2626;font-size:11px}.patient-delete-btn{color:#dc2626;border-color:#fecaca}.patient-trash-modal{width:min(760px,calc(100vw - 32px))}.patient-trash-modal .modal-header p{margin:4px 0 0;color:#64748b;font-size:12px}.patient-trash-list{display:flex;flex-direction:column;gap:10px;max-height:60vh;overflow:auto}.patient-trash-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}.patient-trash-list article div{display:flex;min-width:0;flex-direction:column;gap:5px}.patient-trash-list article b{color:#172033;font-size:14px}.patient-trash-list article small{color:#64748b;font-size:11px;line-height:1.4}.detail-schedule-btn{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;flex-shrink:0}.profile-stats{display:flex;flex-wrap:wrap;gap:10px;padding:14px 20px;background:var(--bg, #f8f9fc);border-bottom:1px solid var(--border, #e5e7eb);flex-shrink:0}.profile-stat{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;min-width:140px;flex:1 1 140px;box-shadow:0 1px 2px #0f172a0d;transition:transform .15s,box-shadow .15s}.profile-stat:hover{transform:translateY(-2px);box-shadow:0 6px 14px #0f172a14}.profile-stat-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;flex-shrink:0;background:#eef2ff;color:#6366f1}.profile-stat-icon--visits{background:#eef2ff;color:#6366f1}.profile-stat-icon--paid{background:#d1fae5;color:#059669}.profile-stat-icon--deposit{background:#f5f3ff;color:#7c3aed}.profile-stat-icon--last{background:#f1f5f9;color:#475569}.profile-stat-icon--next{background:#fef3c7;color:#b45309}.profile-stat-icon--since{background:#fce7f3;color:#db2777}.profile-stat-text{min-width:0;flex:1}.profile-stat-value{font-size:14px;font-weight:700;color:var(--text, #0b1330);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-stat-label{font-size:11px;color:var(--text-3, #9ca3af);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-stat-value.is-muted{color:var(--text-3, #9ca3af);font-weight:600}.profile-stat-value.text-green{color:#059669}.profile-stat-value.text-red{color:#dc2626}.detail-tabs{display:flex;border-bottom:1px solid #e5e7eb;padding:0 8px;gap:2px;overflow-x:auto}.detail-tab{padding:10px 14px;border:none;background:none;font-size:13px;font-weight:500;cursor:pointer;color:#6b7280;border-bottom:2px solid transparent;white-space:nowrap}.detail-tab.active{color:#4338ca;border-bottom-color:#6366f1}.detail-tab--flagged{color:#dc2626;font-weight:700}.detail-tab--flagged.active{color:#dc2626;border-bottom-color:#dc2626}.detail-tab--unfilled{color:#b45309;font-weight:700}.detail-tab--unfilled.active{color:#b45309;border-bottom-color:#f59e0b}.detail-tab--unfilled:after{content:"●";font-size:7px;vertical-align:super;margin-left:3px;color:#f59e0b}.detail-tab--locked{display:inline-flex;align-items:center;gap:5px;color:var(--text-3, #9ca3af)}.anamnesis-flags-banner{display:flex;align-items:flex-start;gap:10px;text-align:left;margin:0 16px 4px;padding:10px 14px;border-radius:10px;cursor:pointer;background:#fef2f2;border:1.5px solid #f87171;color:#b91c1c;font:inherit}.anamnesis-flags-banner:hover{background:#fee2e2}.anamnesis-flags-banner-title{font-size:13px;font-weight:800}.anamnesis-flags-banner-list{font-size:12px;font-weight:600;margin-top:2px}.anamnesis-unfilled-banner{display:flex;align-items:flex-start;gap:10px;text-align:left;margin:0 16px 4px;padding:10px 14px;border-radius:10px;cursor:pointer;background:#fffbeb;border:1.5px solid #fbbf24;color:#92400e;font:inherit}.anamnesis-unfilled-banner:hover{background:#fef3c7}.detail-content{flex:1;overflow-y:auto;padding:16px 20px}.plans-locked-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;max-width:380px;margin:60px auto;padding:28px 24px;color:var(--text-2, #6b7280)}.plans-locked-state svg{color:#f59e0b}.plans-locked-title{font-size:16px;font-weight:800;color:var(--text, #0b1330)}.plans-locked-state p{font-size:13.5px;line-height:1.5;margin:0}.plans-locked-state .btn-primary{display:inline-flex;align-items:center;gap:6px;margin-top:4px}.info-grid{display:flex;flex-direction:column;gap:10px}.info-row{display:flex;gap:10px;font-size:14px}.info-label{color:#6b7280;min-width:120px;flex-shrink:0;display:inline-flex;align-items:center;gap:5px}.info-value-empty{color:var(--text-3, #b0b5bf);font-style:italic}.info-value-filled{color:var(--text, #111827);font-weight:500}.profile-info-sections{display:flex;flex-direction:column;gap:16px}.profile-section{position:relative;background:var(--bg, #f9fafb);border:1px solid var(--border, #e5e7eb);border-left:3px solid #c7d2fe;border-radius:12px;padding:14px 16px;transition:border-color .15s}.profile-section--contacts{border-left-color:#60a5fa}.profile-section--personal{border-left-color:#a78bfa}.profile-section--medical{border-left-color:#f472b6}.profile-section--whatsapp{border-left-color:#22c55e}.profile-section--whatsapp-log{border-left-color:#16a34a}.wa-open-chat-btn{margin-bottom:10px}.profile-section-title{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:#4338ca;margin-bottom:12px}.profile-section-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.profile-section-grid .info-row{font-size:13px}.profile-section-grid .info-label{min-width:88px}.profile-section-grid--single{grid-template-columns:1fr}.profile-section-grid--single .info-row{flex-direction:column;gap:4px}.profile-section-grid--single .info-label{min-width:0}.patient-info-view{display:flex;flex-direction:column;gap:14px}.patient-info-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px;border:1px solid var(--border, #e5e7eb);border-radius:8px;background:var(--surface, #fff)}.patient-info-kicker{font-size:11px;font-weight:800;color:#6366f1;text-transform:uppercase;letter-spacing:0}.patient-info-hero h3{margin:2px 0 0;font-size:20px;color:var(--text, #0b1330)}.patient-info-summary{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.patient-info-summary span{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:12px;font-weight:700}.patient-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.patient-info-section{padding:14px;border:1px solid var(--border, #e5e7eb);border-radius:8px;background:var(--surface, #fff)}.patient-info-section--medical,.patient-info-section--guardian{grid-column:1 / -1}.patient-info-section-title{display:flex;align-items:center;gap:7px;margin-bottom:12px;font-size:13px;font-weight:800;color:var(--text, #0f172a)}.patient-info-section-title svg{color:#6366f1;flex-shrink:0}.patient-info-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.patient-info-items--long{grid-template-columns:1fr}.patient-representatives-list{display:flex;flex-direction:column;gap:10px}.patient-representative-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;padding:10px;border:1px solid #e5e7eb;border-radius:10px;background:#f8fafc}.patient-info-item{min-width:0;padding:9px 10px;border-radius:8px;background:#f8fafc}.patient-info-item span{display:block;color:#94a3b8;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0}.patient-info-item strong{display:block;margin-top:3px;color:var(--text, #111827);font-size:13.5px;line-height:1.35;word-break:break-word}.patient-info-item strong.is-empty{color:#94a3b8;font-weight:600}.patient-info-item a{color:#2563eb;text-decoration:none}.patient-info-item a:hover{text-decoration:underline}.patient-form-section{display:flex;flex-direction:column;gap:12px;padding:12px;border:1px solid var(--border, #e5e7eb);border-radius:8px;background:#f8fafc}.patient-form-section-title{font-size:12px;font-weight:800;color:#4338ca;text-transform:uppercase;letter-spacing:0}.wa-prefs-list{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}.wa-pref-row{display:flex;align-items:center;gap:8px;font-size:13px;color:#1f2937;cursor:pointer}.wa-pref-row input[type=checkbox]{width:16px;height:16px;accent-color:#22c55e;cursor:pointer}@media (max-width: 720px){.wa-prefs-list{grid-template-columns:1fr}.patient-info-hero{flex-direction:column}.patient-info-grid,.patient-info-items,.patient-representative-card{grid-template-columns:1fr}.patient-info-section--medical,.patient-info-section--guardian{grid-column:auto}}.wa-history-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 0;border-bottom:1px solid #f1f5f9;font-size:12.5px}.wa-history-row:last-child{border-bottom:none}.wa-history-status{font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:.03em;flex:0 0 auto}.wa-history-status-pending{color:#b45309}.wa-history-status-sent{color:#2563eb}.wa-history-status-delivered{color:#0891b2}.wa-history-status-read{color:#16a34a}.wa-history-status-failed{color:#dc2626}.wa-history-body{color:#1f2937;flex:1 1 260px;min-width:0}.wa-history-reply{color:#16a34a;flex:1 1 100%}.wa-history-date{color:#9ca3af;flex:0 0 auto;margin-left:auto}.patient-notes-view{display:flex;flex-direction:column;gap:14px}.note-form{display:flex;flex-direction:column;gap:10px;padding:14px;margin-bottom:2px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.note-form-title{font-size:14px;font-weight:800;color:#111827}.note-input{width:100%;border:1px solid #d1d5db;border-radius:8px;padding:11px 12px;font-size:14px;line-height:1.45;resize:vertical;outline:none;background:#fff;color:#111827}.note-input::placeholder{color:#9ca3af;opacity:1}.note-input:focus{border-color:#0b1330;box-shadow:0 0 0 3px #0b133014}.note-form-row{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.note-field{display:flex;flex-direction:column;gap:5px;min-width:210px;font-size:12px;font-weight:700;color:#6b7280}.note-field select{height:38px;border:1px solid #d1d5db;border-radius:8px;padding:0 10px;background:#fff;color:#111827;font-size:13px}.note-important-toggle{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 10px;border:1px solid #e5e7eb;border-radius:8px;color:#374151;font-size:13px;font-weight:700;cursor:pointer}.note-important-toggle span{display:inline-flex;align-items:center;gap:6px}.note-templates{display:flex;flex-wrap:wrap;gap:6px}.note-templates button,.notes-filters button{border:1px solid #e5e7eb;background:#f9fafb;color:#374151;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer}.note-templates button:hover,.notes-filters button:hover,.notes-filters button.active{border-color:#0b1330;background:#0b1330;color:#fff}.notes-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.notes-search{min-width:240px;flex:1;display:flex;align-items:center;gap:8px;border:1px solid #e5e7eb;border-radius:8px;padding:0 10px;height:38px;background:#fff;color:#9ca3af}.notes-search input{width:100%;border:0;outline:0;font-size:13px;color:#111827;background:transparent}.notes-filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.notes-list{display:flex;flex-direction:column;gap:14px}.notes-group{display:flex;flex-direction:column;gap:9px}.notes-group-title{font-size:12px;font-weight:800;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.note-item{position:relative;background:#fff;border-radius:8px;padding:12px;border:1px solid #e5e7eb;box-shadow:0 6px 18px #0f172a0a}.note-item--pinned{border-color:#facc15;background:#fffdf2}.note-item--important{border-left:4px solid #ef4444}.note-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.note-badges{display:flex;flex-wrap:wrap;gap:6px}.note-badge{display:inline-flex;align-items:center;gap:4px;min-height:22px;border-radius:999px;padding:3px 8px;background:#f3f4f6;color:#4b5563;font-size:11px;font-weight:800}.note-badge--important{background:#fef2f2;color:#b91c1c}.note-badge--pinned{background:#fffbeb;color:#b45309}.note-text{font-size:14px;line-height:1.5;color:#1f2937;white-space:pre-wrap;overflow-wrap:anywhere}.note-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin-top:10px;font-size:12px;color:#6b7280}.note-meta span:first-child{color:#111827;font-weight:800}.note-edited{color:#9ca3af;font-weight:700}.note-menu-wrap{position:relative;flex:0 0 auto}.note-menu-btn{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280;cursor:pointer}.note-menu-btn:hover{border-color:#cbd5e1;color:#111827}.note-menu{position:absolute;right:0;top:34px;z-index:8;min-width:170px;padding:5px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;box-shadow:0 16px 35px #0f172a29}.note-menu button{width:100%;display:flex;align-items:center;gap:8px;border:0;background:transparent;color:#374151;border-radius:6px;padding:8px 9px;font-size:13px;font-weight:700;text-align:left;cursor:pointer}.note-menu button:hover{background:#f3f4f6}.note-menu button.danger{color:#dc2626}.note-edit-box{display:flex;flex-direction:column;gap:8px}.note-edit-actions{display:flex;justify-content:flex-end;gap:8px}.docs-subsection-title{font-size:13px;font-weight:700;color:#4338ca;margin:20px 0 12px;padding-top:16px;border-top:1px solid var(--border, #e5e7eb)}.docs-subsection-title:first-child{margin-top:0;padding-top:0;border-top:none}.docs-subsection-title--inline{margin:0;padding:0;border:0}.upload-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:#f3f4f6;border-radius:7px;font-size:13px;font-weight:700;cursor:pointer;margin-bottom:0;min-height:38px}.upload-btn:hover{background:#e5e7eb}.upload-btn.disabled{opacity:.65;pointer-events:none}.docs-folder-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.docs-folder-tabs button{display:inline-flex;align-items:center;gap:7px;border:1px solid #e5e7eb;background:#fff;color:#64748b;border-radius:8px;padding:8px 10px;font-size:12.5px;font-weight:800;cursor:pointer}.docs-folder-tabs button.active{background:#eef2ff;border-color:#a5b4fc;color:#4338ca}.docs-folder-tabs em{min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#f1f5f9;color:#64748b;font-style:normal;font-size:11px}.docs-folder-tabs button.active em{background:#4f46e5;color:#fff}.docs-folder-select{width:auto;min-width:150px;height:38px}.docs-upload-flow{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;padding:10px;border:1px solid #e5e7eb;border-radius:12px;background:#f8fafc}.docs-upload-step{display:flex;flex-direction:column;gap:5px}.docs-upload-step>span{color:#64748b;font-size:11px;font-weight:900;text-transform:uppercase}.docs-folder-groups{display:flex;flex-direction:column;gap:14px}.docs-folder-group{display:flex;flex-direction:column;gap:8px}.docs-folder-title{display:flex;align-items:center;gap:7px;color:#334155;font-size:13px;font-weight:900}.docs-folder-title span{color:#94a3b8;font-size:12px;font-weight:800}.docs-list{display:flex;flex-direction:column;gap:6px}.doc-item{display:block;width:100%;text-align:left;border:none;font:inherit;padding:8px 12px;background:#f9fafb;border-radius:7px;font-size:13px;color:#0b1330;text-decoration:none;cursor:pointer}.doc-item:hover{background:#e5e7eb}.docs-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin-bottom:16px}.docs-cards-grid--templates{margin-bottom:0}.doc-card{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;transition:border-color .15s,box-shadow .15s}.doc-card:hover{border-color:#c7d2fe;box-shadow:0 4px 12px #0f172a0f}.doc-card--template.selected{border-color:#818cf8;box-shadow:0 0 0 3px #6366f11a}.doc-card-icon{width:40px;height:40px;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#f3f4f6;color:#6b7280}.doc-card-icon--tpl{background:#eef2ff;color:#4f46e5}.doc-card-info{flex:1;min-width:0}.doc-card-name{font-size:13.5px;font-weight:600;color:#0b1330;white-space:normal;overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto;-ms-hyphens:auto}.btn-secondary.doc-card-preview-btn{width:36px;height:36px;padding:0;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.doc-card-meta{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:11.5px;color:#9ca3af;margin-top:4px}.doc-card-upload-info{margin-top:5px;color:#64748b;font-size:11.5px;line-height:1.35}.status-success{color:#15803d;font-weight:600}.status-warning{color:#b45309;font-weight:600}.status-error{color:#dc2626;font-weight:600}.status-muted{color:#64748b;font-weight:600}.status-info{color:#2563eb;font-weight:600}.doc-card-meta span{display:inline-flex;align-items:center;max-width:100%}.doc-card-meta span:not(:last-child):after{content:"·";margin-left:5px;color:#cbd5e1}.doc-card-download{width:36px;height:36px;border-radius:8px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;background:#f9fafb;color:#6366f1;cursor:pointer;transition:all .15s;font-size:12px;font-weight:700}.doc-card-download:hover{background:#6366f1;border-color:#6366f1;color:#fff}.doc-card-download:disabled{opacity:.5;cursor:not-allowed}.doc-card--patient-document{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:start;gap:10px;padding:14px}.doc-card--patient-document .doc-card-icon{grid-column:1;grid-row:1}.doc-card--patient-document .doc-card-info{grid-column:2;grid-row:1;padding-top:2px;min-width:0}.doc-card--patient-document .doc-card-name{font-size:14px;line-height:1.35;overflow-wrap:anywhere}.doc-card--patient-document .doc-card-actions{grid-column:1 / -1;display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px;padding-top:10px;border-top:1px solid #eef2f7}.doc-card--patient-document .doc-card-actions .btn-secondary{min-height:36px}.doc-card--consent{border-color:#c7d2fe;background:linear-gradient(135deg,#fff,#f8faff)}.doc-card--consent .doc-card-icon{background:#eef2ff;color:#4f46e5}.doc-card--consent .doc-card-name:before{content:"✓ Подписано";display:block;color:#15803d;font-size:11px;font-weight:700;margin-bottom:3px}.deposit-balance{font-size:16px;margin-bottom:16px}.deposit-form{display:flex;flex-direction:column;gap:10px}.payments-list{display:flex;flex-direction:column;gap:8px}.payment-row{display:flex;align-items:center;gap:12px;padding:10px;background:#f9fafb;border-radius:8px;font-size:14px}.method-badge{padding:2px 8px;background:#e5e7eb;border-radius:20px;font-size:12px;font-weight:500}.finance-panel{border:1px solid #e5e7eb;border-radius:8px;padding:16px;background:#fff}.finance-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.finance-title{font-size:18px;font-weight:800;color:#0b1330}.finance-subtitle{margin-top:3px;color:#64748b;font-size:12px}.finance-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.finance-summary-card{border:1px solid #e5e7eb;border-radius:8px;padding:12px;background:#f8fafc}.finance-summary-card strong{display:block;font-size:18px;color:#0b1330;margin-bottom:4px}.finance-summary-card span{font-size:12px;color:#64748b}.finance-summary-card--paid strong{color:#047857}.finance-summary-card--debt strong{color:#b45309}.finance-summary-card--deposit strong{color:#4338ca}.finance-progress{margin-top:14px}.finance-progress-top{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#64748b;margin-bottom:6px}.finance-progress-track{height:8px;overflow:hidden;border-radius:999px;background:#e5e7eb}.finance-progress-track div{height:100%;border-radius:inherit;background:#10b981;transition:width .2s}.finance-note{margin-top:10px;padding:8px 10px;border-radius:8px;background:#fffbeb;color:#92400e;font-size:12px}.finance-actions-row{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 4px}.finance-plan-list{display:flex;flex-direction:column;gap:10px}.finance-plan-card{border:1px solid #e5e7eb;border-radius:8px;padding:12px;background:#fff}.finance-plan-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.finance-plan-head strong{display:block;font-size:14px;color:#0b1330}.finance-plan-head span{display:block;margin-top:3px;font-size:12px;color:#64748b}.finance-plan-head b{color:#047857}.finance-plan-head-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.finance-stage-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.finance-stage-row{display:grid;grid-template-columns:minmax(0,1fr) 92px 92px auto auto;align-items:center;gap:10px;padding:10px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.finance-stage-main{min-width:0}.finance-stage-main strong{display:block;font-size:13px;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finance-stage-main span{display:block;margin-top:3px;color:#64748b;font-size:12px}.finance-stage-money{padding:7px 8px;border-radius:8px;background:#f8fafc;text-align:right}.finance-stage-money span{display:block;color:#94a3b8;font-size:10px;font-weight:900;text-transform:uppercase}.finance-stage-money strong{display:block;margin-top:2px;color:#0f172a;font-size:12.5px;white-space:nowrap}.finance-stage-money--remain strong{color:#b45309}.finance-status{white-space:nowrap;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700;background:#f1f5f9;color:#475569}.finance-status--paid{background:#dcfce7;color:#166534}.finance-status--partial{background:#fef3c7;color:#92400e}.finance-status--unpaid{background:#fee2e2;color:#991b1b}.payments-table-wrap{overflow-x:auto;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.payments-history-table{width:100%;border-collapse:collapse;min-width:900px;font-size:13px}.payments-history-table th,.payments-history-table td{padding:10px 12px;border-bottom:1px solid #eef2f7;text-align:left;vertical-align:top}.payments-history-table th{background:#f8fafc;color:#64748b;font-size:11px;text-transform:uppercase;letter-spacing:0}.payment-comment-cell{max-width:260px;color:#475569;white-space:normal;word-break:break-word}.payment-refund{display:block;margin-top:2px;color:#dc2626;font-size:11px;font-weight:600}.finance-pay-info{display:flex;flex-direction:column;gap:10px}.btn-icon-only{width:40px;height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center}.guardian-section{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.modal{background:#fff;border-radius:12px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto}.appointments-list{display:flex;flex-direction:column;gap:8px}.appt-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:#f9fafb;border-radius:10px;border:1px solid #f3f4f6;transition:background .1s;cursor:pointer}.appt-row:hover{background:#f3f4f6}.appt-row-left{flex:1;min-width:0}.appt-date{font-size:13px;font-weight:700;color:#374151}.appt-doctor{font-size:12px;color:#6b7280}.appt-service{font-size:12px;color:#6366f1;font-weight:500;margin-top:2px}.appt-row-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.appt-status{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600}.appt-status--scheduled{background:#eef2ff;color:#4f46e5}.appt-status--confirmed{background:#e0f2fe;color:#0369a1}.appt-status--arrived{background:#dcfce7;color:#166534}.appt-status--in_progress{background:#f5f3ff;color:#7c3aed}.appt-status--completed{background:#d1fae5;color:#065f46}.appt-status--cancelled{background:#f3f4f6;color:#9ca3af}.appt-status--no_show{background:#fef3c7;color:#92400e}.appt-status--rescheduled{background:#f1f5f9;color:#475569}.btn-sm-pay{padding:5px 12px;font-size:12px;border:none;background:#0b1330;color:#fff;border-radius:6px;cursor:pointer;font-weight:600}.btn-sm-pay:hover{background:#1e2d5a}.payment-service{font-size:12px;color:#6366f1}.pay-appt-info{background:#f9fafb;border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:4px;margin-bottom:4px}.pay-service-name{font-size:13px;color:#6b7280}.docs-template-panel{border:1px solid #e5e7eb;border-radius:8px;padding:14px;margin-bottom:16px;background:#fbfcff}.docs-template-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.docs-template-count{margin-top:4px;font-size:12px;color:#94a3b8}.docs-plan-context{display:flex;flex-direction:column;gap:6px;padding:10px 12px;margin-bottom:12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:12.5px;color:#6b7280}.docs-plan-context strong{font-size:13.5px;color:#0b1330}.docs-plan-services{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.docs-plan-services span{padding:2px 9px;border-radius:999px;background:#f3f4f6;color:#374151;font-size:11.5px}.docs-plan-requirements{display:flex;flex-direction:column;gap:8px}.doc-language-switch{display:inline-grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;flex-shrink:0}.doc-language-switch button{min-width:48px;height:30px;border:0;border-radius:6px;background:transparent;color:#64748b;font-size:12px;font-weight:700;cursor:pointer}.doc-language-switch button.active{background:#0b1330;color:#fff}.docs-template-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:10px;margin-bottom:12px}.docs-template-search{display:flex;align-items:center;gap:8px;min-width:0;border:1px solid #d1d5db;border-radius:7px;padding:0 10px;background:#fff;color:#94a3b8}.docs-template-search input{width:100%;height:36px;border:0;outline:0;background:transparent;font-size:14px;color:#0b1330;min-width:0}.doc-problems-box{background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;padding:12px 14px;margin-bottom:14px;color:#991b1b;font-size:13px}.doc-problems-title{display:flex;align-items:center;gap:6px;font-weight:700;margin-bottom:6px}.doc-problems-box ul{margin:0 0 8px;padding-left:20px}.doc-problems-box li{margin-bottom:4px}.contracts-patient-toolbar{display:flex;justify-content:flex-start;margin-bottom:12px}.docs-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.contracts-patient-tree{display:flex;flex-direction:column;gap:8px}.contract-tree-node{display:flex;flex-direction:column;gap:6px}.contract-tree-folder,.contract-tree-file{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:#f9fafb;color:#374151}.contract-tree-folder strong,.contract-tree-file span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contract-tree-category{font-size:11px;color:#6b7280;background:#eef2ff;border-radius:999px;padding:2px 8px;white-space:nowrap}.contract-tree-file--root{background:#eef2ff}.contracts-pick-btn{margin-left:auto;border:1px solid #c7d2fe;background:#fff;color:#4f46e5;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer}.contracts-pick-btn:hover{background:#eef2ff}.contracts-pick-btn:disabled{opacity:.7;cursor:wait}.contract-picker-modal{max-width:760px}.contract-picker-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.contract-picker-note{font-size:13px;color:#6b7280;margin-bottom:10px}.contract-picker-list{display:flex;flex-direction:column;gap:8px;max-height:60vh;overflow:auto;padding-right:4px}.contract-picker-row{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:1px solid #e5e7eb;background:#fff;color:#0f172a;text-align:left;cursor:pointer;font:inherit}.contract-picker-row:hover{background:#f8fafc;border-color:#c7d2fe}.contract-picker-row--file{cursor:default}.contract-picker-row-icon{width:22px;flex-shrink:0;text-align:center}.contract-picker-row-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contract-picker-row-meta{color:#6b7280;font-size:12px;white-space:nowrap}@media (min-width: 721px) and (max-width: 1180px){.patients-page{height:100%}.list-toolbar{padding:14px 18px;flex-wrap:wrap;align-items:flex-start}.toolbar-left{min-width:220px}.toolbar-right{flex:1;justify-content:flex-end;flex-wrap:wrap}.search-wrap{flex:1 1 320px}.search-input{width:100%;min-width:260px}.patients-filter-extra{margin:12px 18px 0;gap:10px}.patients-list-header,.patient-row{grid-template-columns:minmax(220px,2fr) minmax(120px,1fr) minmax(120px,1fr) 70px minmax(100px,1fr) minmax(100px,1fr)}.patients-list-header span:nth-child(6),.patients-list-header span:nth-child(8),.patient-row>div:nth-child(6),.patient-row>div:nth-child(8){display:none}.detail-header{padding:18px}.profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:14px 18px}.profile-stat{min-width:0}.detail-tabs{padding:0 12px}.detail-tab{padding:11px 14px;font-size:14px}.detail-content{padding:16px 18px}.patient-info-grid,.patient-info-items,.docs-cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.finance-stage-row{grid-template-columns:minmax(0,1fr) 88px 88px}.finance-stage-row .finance-status,.finance-stage-row .btn-secondary{grid-column:auto}.modal{max-width:min(760px,calc(100vw - 40px))}}@media (max-width: 720px){.patients-page{display:block;height:100%;overflow:hidden}.patients-list-panel,.patient-detail-panel{height:100%}.list-toolbar{padding:12px;flex-direction:column;align-items:stretch;gap:10px}.toolbar-left,.toolbar-right{width:100%;justify-content:space-between;flex-wrap:wrap}.toolbar-right .btn-primary,.toolbar-right .btn-secondary{flex:1 1 auto;justify-content:center}.search-wrap{width:100%;order:-1}.search-input{width:100%}.patients-filter-extra{margin:10px 12px 0;padding:12px;align-items:stretch;gap:10px}.pf-group,.pf-select-wrap,.pf-select,.pf-date-input{width:100%;min-width:0}.pf-period-tabs{height:auto;flex-wrap:wrap}.pf-period-btn,.pf-reset-btn{flex:1 1 auto;justify-content:center}.patients-list-header{display:none}.patients-list-body{padding:10px 12px}.patient-row{display:grid;grid-template-columns:1fr auto;gap:8px 10px;align-items:start;padding:12px;margin-bottom:10px;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 8px 22px #0f172a0d}.patient-row.active{border-left:1px solid #6366f1;padding-left:12px}.patient-row>div{min-width:0}.patient-row>div:not(.pr-patient):not(.pr-debt-cell):not(.pr-bal-cell){font-size:12px;color:#64748b}.pr-patient{grid-column:1 / -1}.pr-phone,.pr-last,.pr-iin{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-header{padding:14px 12px;gap:12px;flex-wrap:wrap}.detail-avatar{width:48px;height:48px;font-size:16px}.detail-name-row{gap:8px}.detail-header h3{font-size:17px;min-width:0;overflow-wrap:anywhere}.detail-schedule-btn{width:100%;justify-content:center;margin-left:0;order:4}.close-detail{width:36px;height:36px;border-radius:10px;background:#f8fafc}.anamnesis-flags-banner,.anamnesis-unfilled-banner{margin:0 12px 4px}.profile-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:8px}.profile-stat{min-width:0;flex:none;padding:9px 10px}.profile-stat-icon{width:30px;height:30px}.profile-stat-value{font-size:13px}.profile-stat-label{font-size:10.5px}.detail-tabs{padding:0 8px;gap:0;scrollbar-width:none}.detail-tabs::-webkit-scrollbar{display:none}.detail-tab{padding:11px 12px;font-size:13px}.detail-content{padding:12px}.patient-info-hero{padding:14px}.profile-section-grid,.patient-info-grid,.patient-info-items,.wa-prefs-list,.finance-summary-grid,.docs-template-toolbar,.form-row{grid-template-columns:1fr}.docs-template-head{flex-direction:column}.doc-language-switch{width:100%}.docs-cards-grid{grid-template-columns:1fr}.doc-card{align-items:flex-start}.doc-card--patient-document .doc-card-actions{gap:6px}.doc-card-download{width:38px;height:38px}.doc-problems-box{max-height:240px;overflow:auto}.finance-panel-head{flex-direction:column}.finance-stage-row{grid-template-columns:1fr;align-items:stretch}.finance-stage-money{text-align:left}.finance-actions-row>*{flex:1 1 100%;justify-content:center}.appt-row{align-items:flex-start;flex-direction:column}.appt-row-right{width:100%;justify-content:space-between;flex-wrap:wrap}.modal-overlay{align-items:flex-end;padding:10px}.modal{max-width:none;max-height:calc(100vh - 20px);border-radius:16px}.modal-header{padding:16px 16px 0}.modal-body{padding:14px 16px}.modal-footer{padding:0 16px 16px;flex-wrap:wrap}.modal-footer .btn-primary,.modal-footer .btn-secondary{flex:1 1 140px}}@media (max-width: 420px){.profile-stats{grid-template-columns:1fr}.detail-contact-row{gap:8px}.doc-card-meta{display:block}.doc-card-meta span{display:inline}.doc-card-meta span:not(:last-child):after{content:" · ";margin-left:0}}.patient-doc-preview{max-width:560px}.patient-doc-preview .field-error input,.patient-doc-preview .field-error textarea,.patient-doc-preview .field-error select{border-color:#dc2626}.patient-doc-preview small{display:block;color:#dc2626;margin-top:4px}.pr-panel{padding:16px 20px;display:flex;flex-direction:column;gap:10px;flex:1;overflow-y:auto}.pr-list{display:flex;flex-direction:column;gap:8px}.pr-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:10px;cursor:pointer;text-align:left;width:100%;transition:border-color .1s,background .1s}.pr-row:hover{border-color:#a5b4fc;background:#f8faff}.pr-row-main{display:flex;flex-direction:column;gap:3px;min-width:0}.pr-row-patient{font-size:14px;font-weight:700;color:var(--text, #0b1330)}.pr-row-plan{font-size:12.5px;color:var(--text-2, #6b7280)}.pr-row-side{display:flex;flex-direction:column;align-items:flex-end;gap:3px;flex-shrink:0}.pr-row-amount{font-size:15px;font-weight:800;color:#0b1330}.pr-row-meta{font-size:11.5px;color:var(--text-3, #9ca3af)}.pr-review-meta{display:flex;gap:24px;font-size:13px;color:var(--text-2, #6b7280);margin-bottom:4px}.pr-review-meta span{margin-right:4px}.pr-review-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.pr-review-footer-total{font-size:13px;color:var(--text-2, #6b7280)}.pr-review-footer-total strong{color:var(--text, #0b1330);font-size:15px}.payments-page{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;background:#f4f6fb}.pay-header{display:flex;align-items:center;gap:10px;padding:14px 20px;background:#fff;border-bottom:1px solid #e5e7eb;flex-wrap:wrap}.page-title{font-size:20px;font-weight:700;color:#0b1330;margin:0;white-space:nowrap}.period-tabs{display:flex;align-items:center;gap:5px}.period-btn{height:36px;box-sizing:border-box;padding:0 14px;border:1px solid #e5e7eb;background:#f9fafb;border-radius:20px;font-size:13px;font-weight:500;cursor:pointer;color:#6b7280;white-space:nowrap;transition:all .15s}.period-btn:hover:not(.active){border-color:#0b1330;color:#0b1330}.period-btn.active{background:#0b1330;color:#fff;border-color:#0b1330}.pay-requests-tab{display:inline-flex;align-items:center;gap:6px}.pay-requests-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#dc2626;color:#fff;font-size:10.5px;font-weight:700}.pay-requests-tab.active .pay-requests-badge{background:#fff;color:#dc2626}.date-range{display:flex;align-items:center;gap:8px}.date-range .form-input{height:36px;box-sizing:border-box}.pay-doctor-filter{height:36px;box-sizing:border-box;padding:0 12px;border:1px solid #e5e7eb;border-radius:10px;font-size:13px;color:#374151;background:#f9fafb;max-width:180px}.pay-actions{display:flex;align-items:center;gap:8px}.pay-actions .btn-secondary,.pay-actions .btn-primary{height:36px;box-sizing:border-box;display:inline-flex;align-items:center}.ml-auto{margin-left:auto}.kpi-row{display:flex;gap:16px;padding:16px 20px;flex-wrap:wrap}.kpi-card{background:#fff;border-radius:12px;padding:16px 20px;min-width:200px;flex:1;max-width:400px;box-shadow:0 1px 4px #0000000f}.kpi-label{font-size:12px;font-weight:600;color:#9ca3af;text-transform:uppercase;margin-bottom:6px}.kpi-value.green{color:#059669}.progress-bar{height:6px;background:#e5e7eb;border-radius:3px;margin:10px 0 6px;overflow:hidden}.progress-fill{height:100%;background:#059669;border-radius:3px;transition:width .3s}.by-method{display:flex;flex-direction:column;gap:6px}.method-row{display:flex;justify-content:space-between;font-size:14px}.method-row span{color:#6b7280}.pay-tabs{display:flex;gap:0;padding:0 20px;border-bottom:1px solid #e5e7eb;background:#fff}.pay-tab{padding:10px 16px;border:none;background:none;font-size:14px;font-weight:500;cursor:pointer;color:#6b7280;border-bottom:2px solid transparent}.pay-tab.active{color:#0b1330;border-bottom-color:#0b1330}.payments-table-wrap{flex:1;overflow-y:auto}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th{background:#f9fafb;padding:10px 16px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;border-bottom:1px solid #e5e7eb;position:sticky;top:0}.data-table td{padding:10px 16px;border-bottom:1px solid #f3f4f6;vertical-align:middle}.data-table tr:hover td{background:#f9fafb}.text-red{color:#dc2626}.icon-btn{background:none;border:none;cursor:pointer;padding:4px 6px;border-radius:5px;font-size:14px;opacity:.7}.icon-btn.danger:hover{background:#fef2f2}.refund-info{font-size:14px;padding:10px;background:#f9fafb;border-radius:7px}.pay-summary{display:flex;gap:14px;padding:16px 20px 6px;flex-wrap:wrap;flex-shrink:0}.pay-fact-card{display:flex;align-items:flex-start;gap:14px;background:var(--surface, #fff);border:1px solid var(--border, #E6EAF0);border-radius:16px;padding:18px 22px;min-width:240px;box-shadow:var(--shadow-elev, 0 2px 10px rgba(16,24,40,.06))}.pfc-icon{width:46px;height:46px;border-radius:13px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#e6f7ef;color:#12b76a}.pfc-label{font-size:12px;font-weight:700;color:var(--text-3, #93A1B0);text-transform:uppercase;letter-spacing:.04em}.pfc-value{font-size:26px;font-weight:800;color:#12b76a;letter-spacing:-.02em;margin-top:2px}.pfc-progress{height:6px;background:var(--bg, #EEF1F6);border-radius:3px;margin:10px 0 6px;overflow:hidden;max-width:260px}.pfc-progress-fill{height:100%;background:linear-gradient(90deg,#12b76a,#0e9f5d);border-radius:3px;transition:width .3s}.pfc-sub{font-size:12px;color:var(--text-3, #93A1B0)}.pay-methods-card{flex:1;min-width:0;background:var(--surface, #fff);border:1px solid var(--border, #E6EAF0);border-radius:16px;padding:16px 18px;box-shadow:var(--shadow-elev, 0 2px 10px rgba(16,24,40,.06));transition:box-shadow .15s ease}.pay-methods-card:hover{box-shadow:0 4px 16px #10182817}.pmc-label{font-size:12px;font-weight:700;color:var(--text-3, #93A1B0);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}.pmc-cards{display:flex;flex-wrap:wrap;gap:8px}.pmc-card{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:12px;background:var(--bg, #F7F9FC);border:1px solid var(--border, #EEF1F6);cursor:pointer;font:inherit;flex:1 1 132px;min-width:132px;transition:border-color .15s ease,box-shadow .15s ease,transform .1s ease,background .15s ease}.pmc-card:hover{border-color:var(--brand, #2F80ED);box-shadow:0 2px 8px #10182814}.pmc-card:active{transform:scale(.97)}.pmc-card.active{border-color:var(--brand, #2F80ED);background:#2f80ed14;box-shadow:0 0 0 2px #2f80ed47}.pmc-icon{width:28px;height:28px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pmc-text{display:flex;flex-direction:column;gap:1px;align-items:flex-start;min-width:0}.pmc-num{font-size:12px;font-weight:800;color:var(--text, #1E2A38);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.pmc-lbl{font-size:10.5px;color:var(--text-2, #5A6B7B);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.pmc-count{font-size:10px;color:var(--text-3, #93A1B0);white-space:nowrap}.pay-search-wrap{display:flex;align-items:center;gap:7px;min-width:250px;padding:0 10px;height:38px;border:1px solid var(--border, #e5e7eb);border-radius:10px;background:var(--bg, #f8fafc);color:var(--text-3, #94a3b8)}.pay-search-wrap:focus-within{border-color:var(--brand, #2f80ed);background:var(--surface, #fff);box-shadow:0 0 0 3px #2f80ed1a}.pay-search-wrap input{width:100%;border:0;outline:0;background:transparent;color:var(--text, #1e2a38);font:inherit;font-size:13px}.pay-search-wrap button{display:inline-flex;padding:2px;border:0;background:transparent;color:var(--text-3, #94a3b8);cursor:pointer}.pay-list-wrap{flex:1;min-height:0;overflow-y:auto;padding:14px 20px 16px}.pay-list{display:flex;flex-direction:column;gap:8px}.pay-row{position:relative;overflow:hidden;display:flex;align-items:center;gap:14px;padding:11px 16px 11px 20px;background:var(--surface, #fff);border:1px solid var(--border, #E6EAF0);border-radius:12px;transition:box-shadow .15s ease,transform .15s ease,border-color .15s ease}.pay-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--row-accent, #12B76A)}.pay-row.clickable{cursor:pointer}.pay-row.clickable:hover{box-shadow:0 8px 20px #10182817;transform:translate(2px);border-color:var(--brand-100, #D7E7FD)}.pay-row-date{width:62px;flex-shrink:0;display:flex;flex-direction:column}.prd-day{font-size:13px;font-weight:800;color:var(--text, #1E2A38);text-transform:capitalize;white-space:nowrap}.prd-time{font-size:11px;color:var(--text-3, #93A1B0)}.ap-avatar.pay-av{width:40px;height:40px;font-size:13px;background:linear-gradient(135deg,var(--brand, #2F80ED),var(--brand-strong, #2563EB))}.ap-avatar.pay-av--expense{background:#fee4e2;color:#d92d20}.pay-row-main{flex:1;min-width:0}.pay-name{font-size:14px;font-weight:700;color:var(--text, #1E2A38);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pay-sub{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-2, #5A6B7B);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pay-sub>svg{color:var(--text-3, #93A1B0);flex-shrink:0}.pay-row-amount{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;min-width:92px}.pra-amount{font-size:15px;font-weight:800;color:var(--text, #1E2A38);white-space:nowrap}.pra-amount.text-red{color:#d92d20}.pra-refund{font-size:12px;font-weight:600;color:#d92d20}.pay-row-actions{flex-shrink:0;display:flex;gap:2px}.pay-empty{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;color:var(--text-3, #93A1B0);padding:48px 24px;font-size:14px}@media (max-width: 720px){.pay-row-date,.pay-row .method-badge{display:none}}.export-menu{position:relative;display:inline-flex}.export-menu-btn{display:flex;align-items:center;gap:6px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:7px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.export-menu-btn:hover{background:#f9fafb;border-color:#9ca3af}.export-menu-btn:disabled{opacity:.55;cursor:not-allowed}.export-menu-chevron{transition:transform .15s ease}.export-menu-chevron--open{transform:rotate(180deg)}.export-menu-dropdown{position:absolute;top:calc(100% + 6px);left:0;z-index:400;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 30px #0f172a24;overflow:hidden;min-width:168px;animation:export-menu-in .15s ease}@keyframes export-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.export-menu-item{display:flex;align-items:center;gap:9px;width:100%;background:none;border:none;padding:10px 14px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;text-align:left;transition:background .12s}.export-menu-item:hover{background:#f3f4f6}[data-theme=dark] .export-menu-btn{background:var(--surface);color:var(--text);border-color:var(--border)}[data-theme=dark] .export-menu-btn:hover{background:var(--bg)}[data-theme=dark] .export-menu-dropdown{background:var(--surface);border-color:var(--border);box-shadow:0 10px 30px #0006}[data-theme=dark] .export-menu-item{color:var(--text)}[data-theme=dark] .export-menu-item:hover{background:#ffffff0f}.reports-page{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;background:#f4f6fb}.reports-loading{display:flex;align-items:center;justify-content:center;height:100%;color:#9ca3af;font-size:16px}.rep-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 20px;background:#fff;border-bottom:1px solid #e5e7eb}.rep-header-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-left:auto}.rep-expense-export-toggle{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 11px;border:1px solid #dbe5f3;border-radius:9px;background:#f8fbff;color:#40516a;font-size:13px;font-weight:650;cursor:pointer;white-space:nowrap}.rep-expense-export-toggle input{width:16px;height:16px;accent-color:#2f80ed;cursor:pointer}.rep-presets{display:flex;gap:6px}.rep-preset-btn{padding:6px 14px;border-radius:20px;border:1.5px solid #e5e7eb;background:#f8fafc;font-size:13px;font-weight:600;color:#64748b;cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s,background .15s}.rep-preset-btn:hover{border-color:#6366f1;color:#6366f1;background:#6366f10f}.rep-dates{display:flex;align-items:center;gap:6px}.rep-date-input{height:36px;width:135px;font-size:13px}.rep-date-control{position:relative;display:inline-flex;align-items:center}.rep-date-control .rep-date-input{width:135px;padding-right:36px;font-variant-numeric:tabular-nums}.rep-date-calendar{position:absolute;right:7px;display:grid;place-items:center;width:25px;height:25px;padding:0;border:0;border-radius:6px;background:transparent;color:#334155;cursor:pointer}.rep-date-calendar:hover{background:#e8eef8;color:#2563eb}.rep-date-native-picker{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.rep-date-sep{color:#9ca3af;font-size:14px}.day-summary-list{display:flex;flex-direction:column;gap:10px}.day-summary-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border-radius:12px;background:#f8fafc;border:1px solid #e5e7eb}.day-summary-date{font-size:13px;font-weight:700;color:#0b1330}.day-summary-metrics{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:#64748b}.day-summary-metrics strong{color:#0b1330}[data-theme=dark] .day-summary-row{background:#ffffff08;border-color:var(--border)}[data-theme=dark] .day-summary-date,[data-theme=dark] .day-summary-metrics strong{color:var(--text)}[data-theme=dark] .day-summary-metrics{color:var(--text-2)}.rep-tabs{display:flex;padding:0 20px;background:#fff;border-bottom:1px solid #e5e7eb;gap:4px}.rep-tab{padding:10px 16px;border:none;background:none;font-size:14px;font-weight:500;cursor:pointer;color:#6b7280;border-bottom:2px solid transparent}.rep-tab.active{color:#0b1330;border-bottom-color:#0b1330}.rep-content{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.rep-overview-summary{order:-1}.rep-filter-panel{display:grid;grid-template-columns:minmax(220px,2fr) repeat(5,minmax(130px,1fr)) auto;gap:8px;align-items:center}.rep-filter-panel .form-input{width:100%;min-width:0}.rep-context-line{display:flex;gap:18px;flex-wrap:wrap;color:#64748b;font-size:12px}.rep-detail-kpis .kpi-card{min-width:130px;padding:14px 16px}.rep-detail-kpis .kpi-value{font-size:19px}.rep-details-table th{position:sticky;top:0;background:#fff;z-index:1}.rep-total-row td{font-weight:700;background:#f8fafc;border-top:2px solid #d1d5db}.rep-pagination-row{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding-top:14px;border-top:1px solid #e5e7eb}.rep-page-size{display:flex;align-items:center;gap:8px;color:#64748b;font-size:12px;white-space:nowrap}.rep-page-size select{width:76px;height:36px}@media (max-width:1100px){.rep-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.rep-filter-panel{grid-template-columns:1fr}.rep-pagination-row{align-items:stretch;flex-direction:column}.rep-page-size{justify-content:space-between}}.kpi-row{display:flex;gap:14px;flex-wrap:wrap}.kpi-card{background:#fff;border-radius:14px;padding:18px 20px;flex:1;min-width:160px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;gap:6px;border-top:3px solid transparent}.kpi-card--plan{border-top-color:#6366f1}.kpi-card--paid{border-top-color:#10b981}.kpi-label{font-size:11px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em}.kpi-value{font-size:24px;font-weight:700;color:#0b1330}.kpi-icon{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-icon--rev{background:#e6f7ef;color:#12b76a}.kpi-icon--pts{background:#eaf2fe;color:#2f80ed}.kpi-icon--ret{background:#f3f0ff;color:#7c3aed}.kpi-icon--plan{background:#eef2ff;color:#6366f1}.kpi-icon--appt{background:#fff7ed;color:#f97316}.kpi-icon--remaining{background:#fff7ed;color:#f59e0b}.kpi-icon--noret{background:#fef2f2;color:#ef4444}.kpi-icon--debt{background:#fff1f2;color:#f43f5e}.kpi-icon--deposit{background:#eaf2fe;color:#2f80ed}.kpi-icon--forecast{background:#ecfdf5;color:#059669}.kpi-card--remaining{border-top-color:#f59e0b}.kpi-card--debt{border-top-color:#ef4444}.kpi-card--deposit{border-top-color:#2f80ed}.kpi-card--forecast{border-top-color:#10b981}.kpi-value--green{color:#12b76a}.kpi-sub{font-size:12px;color:#9ca3af}.kpi-card--clickable{cursor:pointer;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}.kpi-card--clickable:hover{box-shadow:0 4px 14px #00000017;transform:translateY(-1px)}.kpi-card--clickable.active{background:#eff6ff;border-top-color:#2f80ed;box-shadow:0 0 0 3px #2f80ed,0 8px 20px #2f80ed38;transform:translateY(-2px);animation:rep-kpi-selected .32s ease-out}.kpi-card--clickable.active .kpi-label,.kpi-card--clickable.active .kpi-value{color:#175fc0}.kpi-card--clickable.active .kpi-icon{background:#dbeafe;color:#1769e0}@keyframes rep-kpi-selected{0%{transform:translateY(0) scale(.985);box-shadow:0 0 #2f80ed1a}to{transform:translateY(-2px) scale(1);box-shadow:0 0 0 3px #2f80ed,0 8px 20px #2f80ed38}}@media (prefers-reduced-motion: reduce){.kpi-card--clickable.active{animation:none}}.rep-kpi-list-card{margin-top:8px}.rep-kpi-list-card--selected{order:-1;max-height:min(480px,58vh);display:flex;flex-direction:column;scroll-margin-top:12px}.rep-kpi-list-card--selected .rep-table-wrap{max-height:min(340px,40vh);overflow:auto;overscroll-behavior:contain}.rep-kpi-list-card--selected .rep-table th{position:sticky;top:0;z-index:1;background:#fff}.chart-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.chart-title-row .chart-title{margin-bottom:0}.rep-row-clickable{cursor:pointer}.rep-row-clickable:hover{background:#f8fafc}.rep-patient-link{color:#2563eb;font-weight:600;text-decoration:underline;text-underline-offset:3px}.rep-donuts-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.rep-donut-card{display:flex;flex-direction:column;gap:12px}.chart-title{font-size:14px;font-weight:700;color:#0b1330;display:flex;align-items:baseline;gap:8px}.chart-sub{font-size:12px;font-weight:400;color:#9ca3af}.donut-wrap{display:flex;align-items:flex-start;gap:18px}.donut-empty{color:#9ca3af;font-size:13px;padding:8px 0}.donut-legend{display:flex;flex-direction:column;gap:7px}.donut-legend-row{display:grid;grid-template-columns:9px 1fr auto auto;align-items:center;gap:7px;font-size:12.5px}.donut-legend-row--clickable{cursor:pointer;border-radius:6px;padding:3px 4px;margin:-3px -4px;transition:background .15s ease}.donut-legend-row--clickable:hover{background:#f3f4f6}.donut-legend-row--clickable.active{background:#eef2ff}.donut-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.donut-lbl{color:var(--text,#374151);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.donut-val{font-weight:700;color:var(--text,#0b1330);white-space:nowrap;font-size:12px}.donut-pct{font-size:11px;color:#9ca3af;white-space:nowrap;min-width:32px;text-align:right}.donut-cnt{font-weight:700;color:#0b1330;white-space:nowrap}.prog-bar-wrap{display:flex;align-items:center;gap:8px}.prog-bar-track{flex:1;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.prog-bar-fill{height:100%;border-radius:3px;transition:width .3s}.prog-pct{font-size:12px;color:#9ca3af;white-space:nowrap}.chart-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 4px #0000000f}.chart-title{font-size:14px;font-weight:700;color:#0b1330;margin-bottom:16px}.chart-empty{text-align:center;color:#9ca3af;padding:20px}.appointment-times-card{display:flex;flex-direction:column;gap:14px}.appointment-times-filters{display:flex;gap:8px;flex-wrap:wrap}.appointment-times-kpis{margin-top:2px}.appointment-times-kpis .kpi-card{min-width:145px;padding:14px 16px}.appointment-doctors-list,.appointment-patients-list{overflow-x:auto}.appointment-doctors-list .chart-title,.appointment-patients-list .chart-title{padding:16px 16px 0;margin-bottom:0}.appointment-doctors-list .rep-table,.appointment-patients-list .rep-table{min-width:880px}.appointment-type-section{display:flex;flex-direction:column;gap:10px}.appointment-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.appointment-type-card{padding:16px;border:1px solid #e5e7eb;border-top:3px solid #6366f1;border-radius:12px;background:#f8fafc}.appointment-type-card--repeat{border-top-color:#10b981}.appointment-type-card-header{display:flex;align-items:baseline;gap:8px;margin-bottom:14px}.appointment-type-name{font-size:16px;font-weight:700;color:#0b1330}.appointment-type-card-header strong{margin-left:auto;font-size:25px;color:#0b1330}.appointment-type-count{color:#9ca3af;font-size:12px}.appointment-type-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}.appointment-type-metrics div{display:flex;flex-direction:column;gap:3px}.appointment-type-metrics span,.appointment-type-progress span{color:#94a3b8;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.appointment-type-metrics strong{color:#1e293b;font-size:15px}.appointment-type-progress{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;padding-top:10px;border-top:1px solid #e5e7eb}.appointment-type-progress strong{color:#6366f1;font-size:14px}.appointment-type-card--repeat .appointment-type-progress strong{color:#059669}@media (max-width:640px){.appointment-type-grid,.appointment-type-metrics{grid-template-columns:1fr}}.appointment-times-kpis .kpi-value{font-size:20px}.appointment-times-details{margin-top:4px}.bar-chart{display:flex;flex-direction:column;gap:4px}.bar-item{display:grid;grid-template-columns:28px 180px 1fr auto;gap:10px;align-items:center;font-size:13px;width:100%;background:none;border:none;padding:7px 8px;margin:0;font-family:inherit;text-align:inherit;border-radius:8px;cursor:default}.bar-item--clickable{cursor:pointer;transition:background .15s}.bar-item--clickable:hover{background:#f4f6fb;border-radius:8px}.bar-item:disabled{opacity:1}.bar-rank{font-size:11px;color:#9ca3af;font-weight:600;text-align:center}.bar-label{color:var(--text,#374151);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;text-align:left}.bar-track{height:10px;background:#e5e7eb;border-radius:6px;overflow:hidden}.bar-fill{height:100%;border-radius:6px;transition:width .4s}.bar-right{display:flex;align-items:center;gap:10px;justify-content:flex-end}.bar-count{font-size:11px;color:#9ca3af;white-space:nowrap}.bar-value{color:var(--text,#374151);font-weight:700;white-space:nowrap;min-width:110px;text-align:right}.bar-pct{color:#9ca3af;font-weight:500;font-size:12px}.rep-table-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.rep-svc-header-actions{display:flex;align-items:center;gap:8px}.rep-table-period{font-size:13px;color:#9ca3af;font-weight:600;text-transform:capitalize}.rep-svc-filter{padding:6px 10px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#374151;background:#fff;cursor:pointer}.rep-svc-hint{font-size:12px;color:#9ca3af;margin-top:2px}.rep-svc-cat-tag{display:inline-block;padding:3px 10px;border-radius:12px;background:#eef2ff;color:#4f46e5;font-size:12px;font-weight:600}.rep-svc-chevron{width:24px;color:#d1d5db;transition:color .15s,transform .15s}.rep-table-row:hover .rep-svc-chevron{color:#6366f1;transform:translate(2px)}.rep-svc-expand-row td{background:#f8fafc;padding:14px 14px 18px;white-space:normal;border-bottom:1px solid #e5e7eb}.pay-row--clickable{cursor:pointer}.pay-row--clickable:hover{box-shadow:0 2px 8px #00000014}.rep-table-wrap{overflow-x:auto}.rep-table-wrap::-webkit-scrollbar{height:6px}.rep-table-wrap::-webkit-scrollbar-track{background:transparent}.rep-table-wrap::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:6px}.rep-table-wrap::-webkit-scrollbar-thumb:hover{background:#cbd5e1}.rep-table{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}.rep-table th{padding:10px 14px;text-align:left;font-size:11px;font-weight:700;color:#9ca3af;letter-spacing:.05em;border-bottom:2px solid #e5e7eb;white-space:nowrap}.rep-table td{padding:14px;border-bottom:1px solid #f3f4f6;vertical-align:middle;white-space:nowrap}.rep-table td.rep-td-doctor{white-space:normal}.rep-table-row:hover td{background:#f8fafc}.rep-td-doctor{display:flex;align-items:center;gap:9px;font-weight:600;color:#0b1330}.rep-doc-av{width:30px;height:30px;border-radius:50%;background:#0b1330;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.rep-td-green{color:#10b981;font-weight:700}.rep-td-red{color:#ef4444;font-weight:700}.rep-td-muted{color:#9ca3af}.rep-plan-btn{background:none;border:1.5px dashed #d1d5db;border-radius:8px;padding:4px 10px;font-size:12.5px;font-weight:600;color:#6b7280;cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s}.rep-plan-btn:hover{border-color:#6366f1;color:#6366f1}.rep-td-plan-cell{min-width:170px}.rep-plan-line{display:flex;align-items:center;gap:7px;margin-bottom:6px}.rep-pct-tag{font-size:11px;font-weight:700;padding:2px 8px;border-radius:12px;flex-shrink:0;letter-spacing:.02em}.rep-fact-amber{color:#d97706}.rep-ret-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:700;white-space:nowrap}.rep-ret-pill--yes{background:#dcfce7;color:#16a34a}.rep-ret-pill--no{background:#fee2e2;color:#dc2626}.rep-type-cell{white-space:nowrap}.rep-type-count{font-weight:700;color:#0b1330;font-size:13px}.rep-td-sub{display:block;font-size:11px;color:#9ca3af;font-weight:500;margin-top:3px;white-space:nowrap}.team-cards{display:flex;flex-direction:column;gap:12px}.team-card{background:#fff;border-radius:12px;padding:16px 20px;display:flex;align-items:flex-start;gap:14px;box-shadow:0 1px 4px #0000000f;width:100%;border:none;margin:0;font-family:inherit;text-align:inherit}.team-card--clickable{cursor:pointer;transition:transform .15s,box-shadow .15s}.team-card--clickable:hover{box-shadow:0 6px 16px #0b13301f}.team-avatar{width:40px;height:40px;border-radius:50%;background:#0b1330;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.team-info{flex:1;display:flex;flex-direction:column;gap:4px}.team-name{font-size:15px;font-weight:700;color:#0b1330}.team-rev{font-size:18px;font-weight:700;color:#059669}.team-pts{font-size:13px;color:#9ca3af}.modal-close{background:none;border:none;font-size:18px;cursor:pointer;color:#9ca3af;border-radius:6px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0}.modal-close:hover{background:#f3f4f6;color:#374151}.drill-modal{max-width:720px}.drill-modal-header{align-items:flex-start;gap:12px}.drill-modal-header h3{margin:0 0 4px}.drill-modal-sub{display:flex;align-items:center;gap:6px;margin:0;font-size:13px;color:#6b7280;flex-wrap:wrap}.drill-modal-sub strong{color:#0b1330}.drill-modal-period{color:#9ca3af;font-size:12px;margin-left:4px}.drill-modal-body{padding:16px 20px 20px;display:flex;flex-direction:column;gap:14px}.drill-appointments-table-wrap{max-height:52vh;overflow:auto}.drill-appointments-table{min-width:760px}.drill-appointments-table th,.drill-appointments-table td{white-space:nowrap}.rep-table-row.is-selected{background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.team-appointments-panel{margin-top:14px}.team-appointments-panel .chart-sub{display:block;margin-top:3px}.drill-summary{font-size:13px;color:#6b7280;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:10px 14px}.drill-summary strong{color:#0b1330}.drill-stats{display:flex;flex-wrap:wrap;gap:10px}.drill-stat{flex:1;min-width:118px;display:flex;flex-direction:column;gap:3px;padding:12px 14px;background:var(--bg, #F7F9FC);border:1px solid var(--border, #EEF1F6);border-radius:12px}.ds-label{font-size:11px;font-weight:600;color:var(--text-3, #93A1B0);text-transform:uppercase;letter-spacing:.03em}.ds-value{font-size:18px;font-weight:800;color:var(--text, #1E2A38);white-space:nowrap}.ds-value.ds-green{color:#12b76a}.drill-list{max-height:50vh;overflow-y:auto;padding-right:2px}.drill-table-wrap{overflow-x:auto;border:1px solid #e5e7eb;border-radius:10px}.drill-table{width:100%;border-collapse:collapse;font-size:13px}.drill-table th{background:#f9fafb;padding:9px 14px;text-align:left;font-size:11px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid #e5e7eb;white-space:nowrap}.drill-table td{padding:10px 14px;border-bottom:1px solid #f3f4f6;vertical-align:middle;white-space:nowrap}.drill-table tr:last-child td{border-bottom:none}.method-badge{display:inline-block;padding:2px 8px;background:#e5e7eb;border-radius:20px;font-size:12px}.drill-refund-tag{display:inline-flex;align-items:center;gap:3px;margin-left:8px;padding:1px 7px;background:#fef2f2;color:#dc2626;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap}[data-theme=dark] .modal{background:var(--surface, #1a1f2e)}[data-theme=dark] .modal-header h3,[data-theme=dark] .drill-modal-sub strong{color:var(--text)}[data-theme=dark] .modal-close{color:var(--text-3)}[data-theme=dark] .modal-close:hover{background:var(--bg)}[data-theme=dark] .drill-modal-sub{color:var(--text-2)}[data-theme=dark] .drill-summary{background:var(--bg);border-color:var(--border);color:var(--text-2)}[data-theme=dark] .drill-summary strong{color:var(--text)}[data-theme=dark] .drill-table-wrap{border-color:var(--border)}[data-theme=dark] .drill-table th{background:var(--bg);border-color:var(--border);color:var(--text-3)}[data-theme=dark] .drill-table td{border-color:var(--border);color:var(--text)}[data-theme=dark] .method-badge{background:var(--bg);color:var(--text-2)}[data-theme=dark] .bar-item--clickable:hover{background:var(--bg)}[data-theme=dark] .team-card{background:var(--surface)}[data-theme=dark] .team-name{color:var(--text)}.form-select{border:1px solid #d1d5db;border-radius:7px;padding:8px 10px;font-size:14px;outline:none}.form-select:focus{border-color:#0b1330}.team-export-modal{width:min(520px,calc(100vw - 32px));max-width:520px}.team-export-body{max-height:min(52vh,520px);overflow-y:auto;padding:12px 24px 18px}.team-export-option{min-height:52px;display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:10px;cursor:pointer;color:var(--text, #1f2937);font-size:15px}.team-export-option:hover{background:#f5f7fb}.team-export-option input{width:18px;height:18px;accent-color:#2f80ed;flex:0 0 auto}.team-export-option span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-export-all{margin-bottom:8px;padding-bottom:14px;border-bottom:1px solid #e5e7eb}.team-export-all span{margin-left:auto;color:#8a96a8;font-size:12px}.team-export-avatar{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;flex:0 0 auto}.forecast-year-chart{margin-top:22px;padding-top:18px;border-top:1px solid var(--border,#e2e8f0)}.forecast-year-chart .chart-title-row{margin-bottom:12px}.forecast-year-chart .chart-title-row strong{color:#1d4ed8;font-size:14px}.forecast-line-chart{width:100%;overflow-x:auto;padding:4px 0}.forecast-line-chart svg{display:block;width:100%;min-width:560px;height:auto}.forecast-line-chart text{fill:#475569;font:12px Inter,Arial,sans-serif}.forecast-line-chart g text:nth-of-type(2){fill:#172554;font-weight:700}.staff-page{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;background:#f4f6fb}.staff-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:#fff;border-bottom:1px solid #e5e7eb}.page-title{font-size:20px;font-weight:700;color:#0b1330;margin:0 0 2px}.clinic-subtitle{font-size:13px;color:#6b7280}.schedules-list-wrap{flex:1;overflow-y:auto;min-height:0;padding:24px;display:flex;flex-direction:column;gap:12px}.emp-card{background:#fff;border-radius:16px;border:1px solid #e5e7eb;border-left:4px solid var(--member-color, #6366f1);overflow:hidden;box-shadow:0 2px 8px #0f172a0d;transition:box-shadow .2s,border-color .2s}.emp-card-header{display:grid;grid-template-columns:54px minmax(220px,320px) minmax(420px,1fr) 28px;align-items:center;gap:16px;min-height:88px;padding:16px 22px;cursor:pointer;-webkit-user-select:none;user-select:none}.emp-avatar{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;font-size:17px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 8px 18px #6366f138}.emp-info{min-width:0;flex-shrink:1}.emp-name{font-size:16px;font-weight:800;color:#0b1330;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emp-role{font-size:12px;color:#6b7280;margin-top:4px;line-height:1.25}.emp-week-summary{min-width:0;display:grid;grid-template-columns:repeat(7,minmax(58px,1fr));gap:8px;align-items:stretch}.emp-day-dot{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:7px 8px;border-radius:12px;font-size:11px;font-weight:800;gap:3px;border:1px solid transparent}.emp-day-dot.off{background:#f8fafc;color:#cbd5e1;border-color:#edf2f7}.emp-day-time{font-size:10px;font-weight:600;color:#64748b;white-space:nowrap;line-height:1.1}.emp-chevron{width:28px;height:28px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:22px;color:#9ca3af;transition:transform .2s,background .2s,color .2s;line-height:1}.emp-card:hover .emp-chevron{background:#f1f5f9;color:#64748b}.emp-card-body{border-top:1px solid #eef2f7;padding:18px 22px 20px;background:#fafbff}.emp-schedule-grid{display:grid;grid-template-columns:repeat(7,minmax(118px,1fr));gap:10px;margin-bottom:16px}.emp-day-col{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-height:128px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:12px;text-align:left;transition:border-color .15s,background .15s}.emp-day-col.workday{border-color:color-mix(in srgb,var(--member-color, #6366f1) 28%,#fff);background:color-mix(in srgb,var(--member-color, #6366f1) 7%,#fff)}.emp-day-col.dayoff{background:#fff;opacity:.68}.emp-day-col-name{font-size:13px;font-weight:800;color:#0b1330}.emp-col-dayoff-toggle{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280;cursor:pointer}.emp-col-dayoff-toggle input{width:16px;height:16px;margin:0;accent-color:#6366f1}.emp-col-times{display:grid;grid-template-columns:1fr;gap:6px;width:100%;margin-top:auto}.emp-col-time{width:100%;min-height:34px;font-size:12px;border:1px solid #dbe3ef;border-radius:9px;padding:5px 7px;text-align:center;background:#fff;color:#111827}.emp-col-time:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.emp-col-dash{display:none}.emp-col-off-label{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;min-height:34px;border-radius:10px;background:#f1f5f9;font-size:12px;font-weight:700;color:#94a3b8}.emp-col-times-ro{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border-radius:10px;background:#fff;border:1px solid #e5e7eb;font-size:12px;font-weight:700;color:#374151}.staff-list-wrap{flex:1;overflow-y:auto;min-height:0;padding:20px 24px 28px;display:flex;flex-direction:column;gap:8px}.staff-list-row{display:flex;align-items:center;gap:14px;background:#fff;border-radius:14px;border:1px solid #e5e7eb;border-left:4px solid var(--member-color, #6366f1);padding:14px 20px;cursor:pointer;transition:box-shadow .15s}.staff-list-row:hover{box-shadow:0 4px 18px #0f172a17}.staff-list-row.pending{opacity:.7;cursor:default}.staff-list-info{flex:1;min-width:0}.staff-list-name{font-size:15px;font-weight:700;color:#0b1330;display:flex;align-items:center;gap:8px}.staff-list-sub{font-size:12px;color:#6b7280;margin-top:2px}.staff-list-email{font-size:13px;color:#9ca3af;margin-right:8px}.staff-list-section-label{font-size:11px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;padding:8px 4px 0}.staff-content{flex:1;overflow-y:auto;min-height:0;padding:24px;display:flex;flex-direction:column;gap:28px}.section-title{font-size:13px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px}.members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.member-card{background:#fff;border-radius:10px;padding:16px;display:flex;align-items:center;gap:14px;cursor:pointer;border:1px solid #e5e7eb;transition:border-color .15s,box-shadow .15s}.member-card:hover{border-color:#0b1330;box-shadow:0 2px 8px #0b133014}.member-card.pending{opacity:.7;cursor:default}.member-card.pending:hover{border-color:#e5e7eb;box-shadow:none}.member-avatar{width:44px;height:44px;border-radius:50%;background:#0b1330;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.pending-av{background:#d1d5db;color:#6b7280}.custom-color-picker{position:relative;width:32px;height:32px;border:2px dashed #94a3b8;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;background:conic-gradient(#ef4444,#f59e0b,#10b981,#3b82f6,#8b5cf6,#ef4444);color:#fff;font-size:20px;font-weight:700;box-shadow:0 1px 4px #0f172a29}.custom-color-picker input{position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;width:48px;height:48px;opacity:0;cursor:pointer}.custom-color-picker span{pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.4)}.member-info{flex:1;min-width:0}.member-name{font-size:14px;font-weight:700;color:#0b1330;display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-role{font-size:12px;color:#6b7280;margin:2px 0}.member-email{font-size:12px;color:#9ca3af;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.you-badge{font-size:11px;background:#eff6ff;color:#2563eb;border-radius:4px;padding:1px 6px;font-weight:600;flex-shrink:0}.pending-badge{font-size:11px;background:#fef3c7;color:#92400e;border-radius:20px;padding:3px 8px;white-space:nowrap;flex-shrink:0}.empty-state{grid-column:1/-1;text-align:center;color:#9ca3af;padding:40px;font-size:14px}.card-avatar-row{display:flex;align-items:center;gap:16px;padding-bottom:16px;border-bottom:1px solid #f3f4f6;margin-bottom:16px}.card-hero{display:flex;align-items:center;gap:16px;padding:18px 20px;border-radius:12px;margin-bottom:16px;border:1px solid rgba(0,0,0,.06)}.card-hero-avatar{width:60px;height:60px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;flex-shrink:0;box-shadow:0 4px 12px #00000026}.card-hero-photo{width:60px;height:60px;border-radius:50%;object-fit:cover;flex-shrink:0}.card-hero-info{flex:1;min-width:0}.card-hero-name{font-size:18px;font-weight:700;color:#0b1330;margin-bottom:4px}.card-hero-email{font-size:12px;color:#6b7280;margin-top:5px}.card-photo{width:64px;height:64px;border-radius:50%;object-fit:cover}.card-avatar-lg{width:64px;height:64px;border-radius:50%;background:#0b1330;color:#fff;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:700}.card-name{font-size:18px;font-weight:700;color:#0b1330;margin-bottom:4px}.card-role-badge{display:inline-block;padding:3px 10px;background:#e5e7eb;border-radius:20px;font-size:12px;font-weight:600;color:#374151}.card-section-title{font-size:12px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;margin:16px 0 8px}.card-rows{display:flex;flex-direction:column;gap:8px}.card-row{display:flex;justify-content:space-between;font-size:14px}.card-row span{color:#6b7280}.card-row strong{color:#0b1330;text-align:right;max-width:60%}.permissions-list{display:flex;flex-wrap:wrap;gap:8px}.permission-chip{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:12px;font-weight:600}.activity-list{display:flex;flex-direction:column;gap:8px}.activity-item{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb}.activity-item strong{font-size:13px;color:#0b1330}.activity-item span{font-size:12px;color:#6b7280}.staff-card-tabs{display:flex;border-bottom:1px solid var(--border,#e5e7eb);padding:0 20px;background:var(--surface,#fff)}.staff-card-tab{display:inline-flex;align-items:center;padding:10px 14px;border:none;background:none;font-size:13px;font-weight:600;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.staff-card-tab.active{color:#6366f1;border-bottom-color:#6366f1}.staff-card-tab:hover:not(.active){color:#374151}.perm-editor-info{font-size:13px;color:#6b7280;background:#f8fafc;border-radius:8px;padding:10px 14px;margin-bottom:14px;line-height:1.5}.perm-scope-block{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:14px;margin-bottom:16px}.perm-scope-title{font-size:13px;font-weight:700;color:#0b1330;margin-bottom:2px}.perm-scope-desc{font-size:12px;color:#9ca3af;margin-bottom:12px}.perm-scope-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.perm-scope-btn{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:12px 14px;border-radius:10px;border:2px solid #e5e7eb;background:#fff;cursor:pointer;text-align:left;transition:all .15s}.perm-scope-btn:hover{border-color:#a5b4fc;background:#f5f3ff}.perm-scope-btn.active{border-color:#6366f1;background:#eef2ff}.perm-scope-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#eef2ff;color:#6366f1;margin-bottom:2px}.perm-scope-btn.active .perm-scope-icon{background:#6366f1;color:#fff}.perm-scope-label{font-size:13px;font-weight:700;color:#0b1330}.perm-scope-sub{font-size:11px;color:#6b7280;line-height:1.4}.perm-editor-grid{display:flex;flex-direction:column;gap:6px}.perm-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:8px;background:var(--bg,#f7f9fc);border:1px solid var(--border,#e5e7eb)}.perm-label{font-size:13px;font-weight:600;color:var(--text,#1e2a38)}.perm-btns{display:flex;gap:4px}.perm-btn{padding:4px 10px;border-radius:6px;border:1px solid #d1d5db;background:none;font-size:12px;font-weight:600;cursor:pointer;color:#6b7280;transition:all .12s}.perm-btn:hover{border-color:#9ca3af;color:#374151}.perm-btn--none.active{background:#f3f4f6;border-color:#9ca3af;color:#374151}.perm-btn--view.active{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.perm-btn--full.active{background:#d1fae5;border-color:#6ee7b7;color:#065f46}.staff-card-modal{max-width:560px}.doc-kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:4px 0}.doc-kpi{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--bg, #F7F9FC);border:1px solid var(--border, #E6EAF0);border-radius:12px}.dk-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dk-icon--rev{background:#e6f7ef;color:#12b76a}.dk-icon--appt{background:#eaf2fe;color:#2f80ed}.dk-icon--pts{background:#f3f0ff;color:#7c3aed}.dk-icon--avg{background:#fef3e6;color:#f59e0b}.dk-body{min-width:0}.dk-value{font-size:16px;font-weight:800;color:var(--text, #1E2A38);white-space:nowrap}.dk-label{font-size:11px;color:var(--text-3, #93A1B0)}.doc-list{display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto}.doc-list-row{display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--surface, #fff);border:1px solid var(--border, #E6EAF0);border-radius:10px;width:100%;text-align:left;font:inherit}.doc-list-row--clickable{cursor:pointer;transition:border-color .15s ease,background .15s ease}.doc-list-row--clickable:hover{border-color:var(--brand, #2F80ED);background:var(--bg, #F7F9FC)}.ap-avatar.doc-list-av{width:34px;height:34px;font-size:12px;flex-shrink:0;background:linear-gradient(135deg,var(--brand, #2F80ED),var(--brand-strong, #2563EB))}.doc-list-main{flex:1;min-width:0}.doc-list-name{font-size:13px;font-weight:700;color:var(--text, #1E2A38);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-list-sub{font-size:12px;color:var(--text-3, #93A1B0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-list-amount{font-size:13px;font-weight:800;color:#12b76a;white-space:nowrap;flex-shrink:0}.card-actions{display:flex;flex-direction:column;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #f3f4f6}.btn-danger{background:#fef2f2;color:#dc2626;border:1px solid #fca5a5;border-radius:7px;padding:10px;font-size:14px;font-weight:600;cursor:pointer;width:100%}.staff-clinic-access{margin:0;padding:14px;border:1px solid #dbe4ff;border-radius:12px;background:#f8faff}.staff-clinic-access legend{padding:0 5px;font-size:13px;font-weight:700;color:#334155}.staff-clinic-access__all,.staff-clinic-access__item{display:flex;align-items:center;gap:9px;color:#1e293b;cursor:pointer}.staff-clinic-access input{width:16px;height:16px;accent-color:#2563eb}.staff-clinic-access__all{padding-bottom:10px;border-bottom:1px solid #e2e8f0}.staff-clinic-access__items{display:grid;gap:8px;padding-top:10px}.staff-clinic-access p{margin:10px 0 0;font-size:12px;line-height:1.4;color:#64748b}.color-dot{width:28px;height:28px;border-radius:50%;border:3px solid transparent;cursor:pointer;padding:0;box-shadow:0 0 0 1px #0f172a14}.modal{background:#fff;border-radius:12px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto}.modal-close{background:none;border:none;font-size:18px;cursor:pointer;color:#9ca3af;font-family:monospace}@media (max-width: 1180px){.emp-card-header{grid-template-columns:54px minmax(180px,260px) minmax(360px,1fr) 28px;gap:14px}.emp-week-summary{grid-template-columns:repeat(7,minmax(48px,1fr));gap:6px}.emp-day-dot{padding:7px 6px}.emp-day-time{font-size:9px}.emp-schedule-grid{grid-template-columns:repeat(4,minmax(130px,1fr))}}@media (max-width: 820px){.staff-header{padding:14px 16px;flex-wrap:wrap;gap:10px}.schedules-list-wrap,.staff-list-wrap{padding:16px}.emp-card-header{grid-template-columns:46px minmax(0,1fr) 28px;min-height:0;padding:14px 16px}.emp-avatar{width:42px;height:42px;border-radius:14px}.emp-week-summary{grid-column:1 / -1;grid-template-columns:repeat(7,minmax(64px,1fr));overflow-x:auto;padding:2px 0 4px;-webkit-overflow-scrolling:touch}.emp-day-dot{min-height:42px}.emp-card-body{padding:16px}.emp-schedule-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}}.staff-page .schedules-list-wrap{align-items:stretch}.staff-page .emp-card{flex:0 0 auto;min-height:104px}.staff-page .emp-card-header{min-height:104px;height:auto}@media (max-width: 820px){.staff-page .emp-card,.staff-page .emp-card-header{min-height:0}}@media (max-width: 520px){.rooms-tabs{padding:0 12px;overflow-x:auto;-webkit-overflow-scrolling:touch}.rooms-tab{white-space:nowrap}.schedules-list-wrap,.staff-list-wrap{padding:12px;gap:10px}.emp-card{border-radius:14px}.emp-card-header{grid-template-columns:42px minmax(0,1fr) 26px;gap:10px;padding:12px}.emp-avatar{width:38px;height:38px;border-radius:12px;font-size:15px}.emp-name{font-size:14px}.emp-week-summary{grid-template-columns:repeat(7,58px)}.emp-schedule-grid{grid-template-columns:1fr}.emp-card-footer{flex-direction:column-reverse}.emp-card-footer .btn-primary,.emp-card-footer .btn-secondary{width:100%}}[data-theme=dark] .staff-page{background:var(--bg)}.staff-page .schedules-list-wrap{padding:20px 28px 32px;gap:10px;overflow-y:auto;overflow-x:hidden}.staff-page .emp-card-header{grid-template-columns:48px minmax(210px,280px) minmax(0,1fr) 30px;min-height:104px;padding:18px 22px;align-items:center}.staff-page .emp-avatar{width:44px;height:44px;border-radius:14px}.staff-page .emp-name{white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word}.staff-page .emp-week-summary{min-width:0;width:100%;grid-template-columns:repeat(7,minmax(62px,1fr));gap:7px}.staff-page .emp-day-dot{min-height:52px;padding:8px 5px}.staff-page .emp-day-time{font-size:10px}@media (max-width: 1180px){.staff-page .emp-card-header{grid-template-columns:48px minmax(190px,240px) minmax(0,1fr) 30px}}@media (max-width: 820px){.staff-page .schedules-list-wrap{padding:14px 16px 24px}.staff-page .emp-card-header{grid-template-columns:44px minmax(0,1fr) 28px;min-height:0;padding:15px 16px}.staff-page .emp-week-summary{grid-column:1 / -1;grid-template-columns:repeat(7,70px);overflow-x:auto;padding-bottom:3px}}[data-theme=dark] .staff-header{background:var(--surface);border-bottom:1px solid var(--border)}[data-theme=dark] .page-title,[data-theme=dark] .card-name,[data-theme=dark] .modal-header h3,[data-theme=dark] .staff-name,[data-theme=dark] .member-name{color:var(--text)}[data-theme=dark] .clinic-subtitle,[data-theme=dark] .section-title,[data-theme=dark] .member-role,[data-theme=dark] .member-email,[data-theme=dark] .card-section-title,[data-theme=dark] .card-row span,[data-theme=dark] .form-label,[data-theme=dark] .form-hint,[data-theme=dark] .list-loading,[data-theme=dark] .empty-state,[data-theme=dark] .staff-email{color:var(--text-2)}[data-theme=dark] .member-card,[data-theme=dark] .staff-card,[data-theme=dark] .modal{background:var(--surface);border-color:var(--border);box-shadow:0 14px 34px #00000040}[data-theme=dark] .member-card:hover,[data-theme=dark] .staff-card:hover{border-color:#6366f157;box-shadow:0 18px 38px #00000057}[data-theme=dark] .member-card.pending,[data-theme=dark] .staff-card.pending{opacity:.72}[data-theme=dark] .card-avatar-row,[data-theme=dark] .card-actions{border-color:var(--border)}[data-theme=dark] .card-role-badge,[data-theme=dark] .role-badge{background:#ffffff0f;color:var(--text-2)}[data-theme=dark] .permission-chip{background:#6366f129;color:#c7d2fe}[data-theme=dark] .activity-item{background:#ffffff08;border-color:var(--border)}[data-theme=dark] .activity-item strong,[data-theme=dark] .activity-item span{color:var(--text-2)}[data-theme=dark] .you-badge{background:#60a5fa24;color:#93c5fd}[data-theme=dark] .pending-badge{background:#f59e0b24;color:#fbbf24}[data-theme=dark] .member-avatar,[data-theme=dark] .card-avatar-lg,[data-theme=dark] .staff-avatar{background:#1c2852;color:#f8fafc}[data-theme=dark] .pending-av,[data-theme=dark] .staff-avatar.inv{background:#94a3b82e;color:#cbd5e1}[data-theme=dark] .btn-primary{background:linear-gradient(135deg,#3f51d6,#6d59ff)}[data-theme=dark] .btn-secondary{background:#ffffff0a;color:var(--text);border-color:var(--border)}[data-theme=dark] .btn-danger,[data-theme=dark] .btn-danger-sm{background:#dc26261f;color:#fca5a5;border-color:#f8717140}[data-theme=dark] .form-input,[data-theme=dark] .form-select,[data-theme=dark] .role-select{background:#ffffff08;border-color:var(--border);color:var(--text)}[data-theme=dark] .form-input:focus,[data-theme=dark] .form-select:focus,[data-theme=dark] .role-select:focus{border-color:#60a5faa6}[data-theme=dark] .form-error{background:#ef44441a;border-color:#f8717147;color:#fca5a5}[data-theme=dark] .success-banner{background:#22c55e14;border-color:#22c55e42;color:#86efac}.success-banner{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46;padding:10px 20px;font-size:14px}.staff-content{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:24px}.section-title{font-size:15px;font-weight:700;color:#374151;margin:0 0 12px}.staff-list{display:flex;flex-direction:column;gap:8px}.staff-card{background:#fff;border-radius:10px;padding:12px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 1px 4px #0000000d}.staff-card.pending{opacity:.7}.staff-avatar{width:38px;height:38px;border-radius:50%;background:#0b1330;color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0}.staff-avatar.inv{background:#e5e7eb;color:#6b7280}.staff-info{flex:1;min-width:0}.staff-name{font-size:14px;font-weight:600;color:#0b1330;display:flex;align-items:center;gap:6px}.staff-email{font-size:13px;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.you-badge{font-size:11px;background:#eff6ff;color:#2563eb;border-radius:4px;padding:1px 6px;font-weight:600}.role-badge{font-size:12px;background:#e5e7eb;color:#374151;border-radius:20px;padding:3px 10px;white-space:nowrap;font-weight:500}.pending-badge{font-size:12px;background:#fef3c7;color:#92400e;border-radius:20px;padding:3px 10px;white-space:nowrap}.role-select{border:1px solid #d1d5db;border-radius:6px;padding:4px 8px;font-size:13px;outline:none}.role-select:focus{border-color:#0b1330}.btn-danger-sm{background:#fef2f2;color:#dc2626;border:1px solid #fca5a5;border-radius:6px;padding:5px 10px;font-size:12px;cursor:pointer;white-space:nowrap}.btn-danger-sm:hover{background:#fee2e2}.empty-state{text-align:center;color:#9ca3af;padding:24px;font-size:14px}.form-hint{font-size:13px;color:#9ca3af;margin:0}.modal{background:#fff;border-radius:12px;width:100%;max-width:440px;max-height:90vh;overflow-y:auto}.docp-page{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg, #F7F9FC)}.docp-topbar{display:flex;align-items:center;gap:16px;padding:14px 22px;flex-shrink:0;background:var(--surface, #fff);border-bottom:1px solid var(--border, #E6EAF0)}.docp-back{display:inline-flex;align-items:center;gap:4px;padding:7px 12px 7px 8px;border-radius:9px;border:1px solid var(--border, #E6EAF0);background:var(--bg, #F7F9FC);color:var(--text-2, #5A6B7B);font-size:13px;font-weight:600;cursor:pointer;transition:border-color .15s,color .15s}.docp-back:hover{border-color:var(--brand, #2F80ED);color:var(--brand-text, #1D6FE0)}.docp-identity{display:flex;align-items:center;gap:13px;min-width:0}.docp-avatar,.docp-avatar-img{width:52px;height:52px;border-radius:50%;flex-shrink:0}.docp-avatar{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--brand, #2F80ED),var(--brand-strong, #2563EB));color:#fff;font-size:20px;font-weight:800}.docp-avatar-img{object-fit:cover}.docp-name{font-size:19px;font-weight:800;color:var(--text, #1E2A38);margin:0}.docp-role{display:inline-block;margin-top:2px;font-size:12px;font-weight:600;padding:2px 10px;border-radius:999px;background:var(--brand-50, #EAF2FE);color:var(--brand-text, #1D6FE0)}.docp-periods{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 22px;flex-shrink:0;background:var(--surface, #fff);border-bottom:1px solid var(--border, #E6EAF0)}.docp-range{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:13px;color:var(--text-3, #93A1B0)}.docp-range .form-input{border:1px solid var(--border, #E6EAF0);border-radius:8px;padding:7px 10px;font-size:13px;background:var(--bg, #F7F9FC);color:var(--text, #1E2A38)}.docp-scroll{flex:1;min-height:0;overflow-y:auto;padding:18px 22px 24px;display:flex;flex-direction:column;gap:18px}.docp-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.docp-cols{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;align-items:start}.docp-col{display:flex;flex-direction:column;gap:10px;min-width:0}.docp-section-title{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:var(--text, #1E2A38);margin-top:4px}.docp-section-title>svg{color:var(--brand, #2F80ED)}.docp-empty{text-align:center;color:var(--text-3, #93A1B0);padding:40px 20px;font-size:14px;background:var(--surface, #fff);border:1px solid var(--border, #E6EAF0);border-radius:12px}.docp-empty--sm{padding:22px}@media (max-width: 900px){.docp-kpis{grid-template-columns:repeat(2,1fr)}.docp-cols{grid-template-columns:1fr}.docp-range{margin-left:0}}.import-services-form{display:flex;flex-direction:column;gap:14px}.import-services-instructions{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--text-2, #6b7280)}.import-services-instructions p{margin:0}.import-services-columns{width:100%;border-collapse:collapse;font-size:12px}.import-services-columns th,.import-services-columns td{border:1px solid var(--border, #e5e7eb);padding:5px 8px;text-align:left}.import-services-columns th{background:var(--bg, #f9fafb);font-weight:700;color:var(--text-3, #9ca3af)}.import-services-columns td:first-child{font-weight:600;color:var(--text, #0b1330)}.import-services-template-link{display:inline-flex;align-items:center;gap:5px;align-self:flex-start;font-size:12px;font-weight:600;color:#6366f1;text-decoration:none}.import-services-template-link:hover{text-decoration:underline}.import-services-file-picker{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1.5px dashed var(--border, #d1d5db);border-radius:8px;cursor:pointer;font-size:13px;color:var(--text-2, #6b7280);transition:border-color .15s}.import-services-file-picker:hover{border-color:#6366f1}.import-services-summary{display:flex;gap:14px;font-size:12.5px}.import-services-summary-ok{display:inline-flex;align-items:center;gap:5px;color:#10b981;font-weight:600}.import-services-summary-bad{display:inline-flex;align-items:center;gap:5px;color:#d97706;font-weight:600}.import-services-preview{max-height:260px;overflow-y:auto;border:1px solid var(--border, #e5e7eb);border-radius:8px}.import-services-preview table{width:100%;border-collapse:collapse;font-size:12.5px}.import-services-preview th,.import-services-preview td{padding:6px 9px;text-align:left;border-bottom:1px solid var(--border, #eef1f6)}.import-services-preview th{background:var(--bg, #f9fafb);font-weight:700;color:var(--text-3, #9ca3af);position:sticky;top:0}.import-services-row--invalid{background:#fef2f2;color:#b91c1c}.import-services-actions{display:flex;justify-content:flex-end;gap:10px}.services-page{position:relative;display:flex;flex-direction:column;min-height:100%;height:auto;overflow:visible;background:linear-gradient(180deg,#f5f7fc,#eef2fb)}.services-page:after{content:"";position:absolute;left:0;right:0;bottom:0;height:34px;background:linear-gradient(180deg,#eef2fb00,#eef2fbf2);pointer-events:none}.services-header{display:flex;align-items:center;gap:12px;padding:14px 20px;background:#fffffff5;border-bottom:1px solid #e5e7eb;box-shadow:0 8px 22px #0f172a08}.page-title{font-size:20px;font-weight:700;color:#0b1330;margin:0;flex:1}.toggle-label{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280;cursor:pointer;white-space:nowrap}.services-content{flex:1 1 auto;overflow:visible;padding:20px 20px 48px;display:flex;flex-direction:column;gap:20px}.service-category{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 28px #0f172a0d;border:1px solid #e5e7eb}.cat-title{width:100%;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.5px;padding:13px 18px;margin:0;background:linear-gradient(90deg,#f8fafc,#eef2fb);border:none;border-bottom:1px solid #e5e7eb;cursor:pointer;font-family:inherit;text-align:left;transition:background .15s}.cat-title:hover{background:linear-gradient(90deg,#f1f4fb,#e6ebfa)}.cat-title-bar{width:4px;height:15px;border-radius:2px;background:#6366f1;flex-shrink:0}.cat-count{margin-left:auto;font-size:12px;font-weight:600;color:#9ca3af;text-transform:none;letter-spacing:normal;background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:2px 9px}.cat-chevron{flex-shrink:0;color:#9ca3af;transition:transform .18s ease}.cat-chevron--open{transform:rotate(180deg)}.inactive-row td{opacity:.5}.service-name{font-size:14px;font-weight:600;color:#0b1330;line-height:1.4}.service-desc{font-size:12px;color:#9ca3af;margin-top:3px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:560px}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.inactive{background:#f3f4f6;color:#9ca3af}.status-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600}.icon-btn{background:none;border:none;cursor:pointer;padding:4px 6px;border-radius:6px;font-size:14px;opacity:.72;transition:background .15s,opacity .15s,transform .15s}.icon-btn:hover{opacity:1;background:#f3f4f6;transform:translateY(-1px)}.data-table{width:100%;border-collapse:collapse;font-size:14px;table-layout:fixed}.data-table th{background:#fff;padding:10px 18px;text-align:left;font-size:11px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid #e5e7eb}.data-table td{padding:13px 18px;border-bottom:1px solid #f3f4f6;vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background .12s}.data-table tbody tr:hover td{background:#fafbff}.svc-row{cursor:pointer}.data-table th:nth-child(2),.data-table td:nth-child(2),.data-table th:nth-child(3),.data-table td:nth-child(3){white-space:nowrap}.data-table th:last-child,.data-table td:last-child{text-align:right;white-space:nowrap}.btn-primary{background:#0b1330;color:#fff;border:none;border-radius:7px;padding:9px 18px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000006b;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}[data-theme=dark] .services-page{background:var(--bg);color:var(--text)}[data-theme=dark] .services-page:after{background:linear-gradient(180deg,rgba(0,0,0,0) 0%,var(--bg) 95%)}[data-theme=dark] .services-header,[data-theme=dark] .service-category,[data-theme=dark] .modal{background:var(--surface);border-color:var(--border)}[data-theme=dark] .services-header,[data-theme=dark] .service-category,[data-theme=dark] .modal,[data-theme=dark] .modal-header,[data-theme=dark] .modal-footer,[data-theme=dark] .data-table th,[data-theme=dark] .data-table td{border-color:var(--border)}[data-theme=dark] .page-title,[data-theme=dark] .service-name,[data-theme=dark] .modal-header h3,[data-theme=dark] .status-badge.active{color:var(--text)}[data-theme=dark] .toggle-label,[data-theme=dark] .cat-title,[data-theme=dark] .service-desc,[data-theme=dark] .list-loading,[data-theme=dark] .empty-state,[data-theme=dark] .form-label{color:var(--text-2)}[data-theme=dark] .data-table th{background:#ffffff08;color:var(--text-2)}[data-theme=dark] .cat-title{background:#ffffff08}[data-theme=dark] .cat-count{background:var(--surface);border-color:var(--border);color:var(--text-2)}[data-theme=dark] .data-table td{color:var(--text)}[data-theme=dark] .data-table tr:hover td{background:#ffffff08}[data-theme=dark] .inactive-row td{opacity:.72}[data-theme=dark] .status-badge.active{background:#22c55e1f;color:#86efac}[data-theme=dark] .status-badge.inactive{background:#94a3b81a;color:#cbd5e1}[data-theme=dark] .icon-btn{color:var(--text-2)}[data-theme=dark] .icon-btn:hover{background:#ffffff0d;color:#fff}[data-theme=dark] .btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5)}[data-theme=dark] .btn-secondary,[data-theme=dark] .form-input,[data-theme=dark] .form-select{background:var(--bg);border-color:var(--border);color:var(--text)}[data-theme=dark] .form-input::placeholder{color:var(--text-3)}[data-theme=dark] .form-input:focus,[data-theme=dark] .form-select:focus{border-color:#6366f1bf}.history-page{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;background:var(--bg, #f4f6fb)}.hist-header{padding:16px 20px;background:var(--surface, #fff);border-bottom:1px solid var(--border, #e5e7eb);display:flex;flex-direction:column;gap:12px}.hist-title-row{display:flex;align-items:center;gap:10px}.page-title{font-size:20px;font-weight:700;color:var(--text, #0b1330);margin:0}.hist-total-badge{padding:3px 10px;background:#f3f4f6;border-radius:20px;font-size:12px;font-weight:600;color:var(--text-2, #6b7280)}.hist-toolbar{display:flex;flex-direction:column;gap:10px}.hist-event-filters{display:flex;gap:6px;flex-wrap:wrap}.filter-btn{padding:5px 13px;border:1px solid var(--border, #d1d5db);background:none;border-radius:20px;font-size:13px;cursor:pointer;color:var(--text-2, #6b7280);transition:all .15s}.filter-btn:hover{border-color:#0b1330;color:#0b1330}.filter-btn.active{background:#0b1330;color:#fff;border-color:#0b1330}.hist-controls-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:var(--bg, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:24px;padding:5px 10px;width:fit-content}.hist-divider{width:1px;height:18px;background:var(--border, #e5e7eb);flex-shrink:0}.hist-staff-dd{position:relative}.hist-staff-btn{display:flex;align-items:center;gap:6px;border:none;background:transparent;font-size:13px;color:var(--text-2, #6b7280);cursor:pointer;padding:2px 4px;border-radius:6px;transition:color .15s;white-space:nowrap}.hist-staff-btn:hover,.hist-staff-btn.open{color:var(--text, #111827)}.hist-staff-btn.selected{color:#6366f1;font-weight:500}.hist-staff-caret{color:var(--text-3, #9ca3af);transition:transform .2s;flex-shrink:0}.hist-staff-caret.up{transform:rotate(180deg)}.hist-staff-menu{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);min-width:200px;background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;box-shadow:0 8px 24px #0000001a;z-index:200;overflow:hidden;padding:4px}.hist-staff-option{display:flex;align-items:center;justify-content:space-between;width:100%;border:none;background:transparent;padding:8px 12px;font-size:13px;color:var(--text, #111827);cursor:pointer;border-radius:8px;text-align:left;transition:background .12s;white-space:nowrap}.hist-staff-option:hover{background:#f3f4f6}.hist-staff-option.active{background:#eef2ff;color:#6366f1;font-weight:500}.hist-staff-check{color:#6366f1;font-size:13px;font-weight:700}.hist-quick-periods{display:flex;align-items:center;gap:4px}.hist-cal-icon{color:var(--text-3, #9ca3af);flex-shrink:0}.period-chip{padding:4px 11px;border:1px solid transparent;border-radius:16px;font-size:12px;font-weight:500;cursor:pointer;background:transparent;color:var(--text-2, #6b7280);transition:all .15s;white-space:nowrap}.period-chip:hover{background:var(--surface, #fff);border-color:var(--border, #e5e7eb);color:#374151}.period-chip.active{background:#6366f1;color:#fff;border-color:#6366f1}.hist-custom-range{display:flex;align-items:center;gap:6px}.hist-date-field{display:flex;align-items:center;gap:5px}.hist-date-label{font-size:12px;font-weight:600;color:var(--text-3, #9ca3af);white-space:nowrap}.hist-date-input{border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:3px 8px;font-size:12px;background:var(--surface, #fff);color:var(--text, #111827);outline:none;cursor:pointer}.hist-date-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.hist-date-sep{color:var(--text-3, #9ca3af);font-size:13px}.hist-content{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.events-timeline{display:flex;flex-direction:column;gap:2px}.event-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:var(--surface, #fff);border-radius:8px;border-left:3px solid var(--border, #e5e7eb);transition:border-color .15s,box-shadow .15s;cursor:pointer}.event-item:hover{border-left-color:#6366f1;box-shadow:0 2px 8px #6366f114}.event-icon{font-size:18px;flex-shrink:0;width:28px;text-align:center}.event-body{flex:1;min-width:0}.event-type{font-size:14px;font-weight:600;color:var(--text, #0b1330)}.event-actor{font-size:13px;color:var(--text-2, #6b7280)}.event-meta{font-size:12px;color:var(--text-3, #9ca3af);margin-top:4px;font-family:monospace;word-break:break-all}.event-date{font-size:12px;color:var(--text-3, #9ca3af);white-space:nowrap;flex-shrink:0}.empty-state{text-align:center;color:#9ca3af;padding:40px;font-size:14px}.pagination{display:flex;align-items:center;gap:16px;justify-content:center;padding:12px}.pagination button{padding:6px 14px;border:1px solid #d1d5db;background:#fff;border-radius:6px;cursor:pointer;font-size:13px}.pagination button:disabled{opacity:.4;cursor:not-allowed}.hist-modal{background:var(--surface, #fff);border-radius:16px;width:100%;max-width:500px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000026;overflow:hidden}.hist-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 20px 16px;border-bottom:1px solid var(--border, #f3f4f6);gap:12px;flex-shrink:0}.hist-modal-title-wrap{display:flex;align-items:flex-start;gap:12px}.hist-modal-icon{width:38px;height:38px;border-radius:10px;background:#eef2ff;color:#6366f1;display:flex;align-items:center;justify-content:center;flex-shrink:0}.hist-modal-header h3{font-size:16px;font-weight:700;color:var(--text, #0b1330);margin:0 0 3px}.hist-modal-header p{font-size:12px;color:var(--text-3, #9ca3af);margin:0}.hist-modal-close{border:none;background:none;cursor:pointer;color:var(--text-3, #9ca3af);padding:4px;border-radius:6px;transition:color .15s;flex-shrink:0}.hist-modal-close:hover{color:var(--text, #111827)}.hist-modal-body{padding:20px;display:flex;flex-direction:column;gap:16px;overflow-y:auto}.hist-modal-dl{display:flex;flex-direction:column;gap:10px}.hist-modal-dl>div{display:flex;gap:8px;align-items:baseline}.hist-modal-dl dt{font-size:12px;color:var(--text-3, #9ca3af);font-weight:500;min-width:120px;flex-shrink:0}.hist-modal-dl dd{font-size:13px;color:var(--text, #111827);font-weight:500;margin:0}.hist-status-ok{color:#16a34a}.hist-status-err{color:#dc2626}.hist-modal-section h4{font-size:12px;font-weight:600;color:var(--text-2, #6b7280);margin:0 0 10px;display:flex;align-items:center;gap:5px;text-transform:uppercase;letter-spacing:.5px}.hist-section-create{background:#f0fdf4;border-radius:10px;padding:14px}.hist-section-create h4{color:#16a34a}.hist-section-update{background:#fffbeb;border-radius:10px;padding:14px}.hist-section-update h4{color:#d97706}.hist-section-delete{background:#fef2f2;border-radius:10px;padding:14px}.hist-section-delete h4{color:#dc2626}.hist-data-dl>div{display:flex;gap:8px;align-items:baseline;padding:4px 0;border-bottom:1px solid rgba(0,0,0,.05)}.hist-data-dl>div:last-child{border-bottom:none}.hist-data-dl dt{font-size:12px;color:var(--text-3, #9ca3af);min-width:120px;flex-shrink:0}.hist-data-dl dd{font-size:13px;color:var(--text, #111827);font-weight:500;margin:0;word-break:break-word}.hist-modal-loading{text-align:center;color:#9ca3af;font-size:13px;padding:12px 0}.hist-modal-empty{text-align:center;color:#9ca3af;font-size:13px;padding:8px 0;margin:0}@media (max-width: 600px){.hist-controls-row{flex-direction:column;align-items:flex-start;width:100%;border-radius:12px}.hist-divider{width:100%;height:1px}.hist-custom-range{flex-wrap:wrap}}.archive-page{height:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--bg, #f4f6fb);color:var(--text, #111827)}.archive-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;background:var(--surface, #fff);border-bottom:1px solid var(--border, #e5e7eb)}.archive-title-wrap{display:flex;align-items:center;gap:12px}.archive-title-icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border, #e2e8f0);border-radius:8px;background:var(--bg, #f8fafc);color:var(--text, #0b1330)}.archive-title-wrap h1{margin:0;font-size:21px;letter-spacing:0}.archive-title-wrap p{margin:3px 0 0;color:var(--text-2, #64748b);font-size:13px}.archive-protection{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:7px;border:1px solid #bbf7d0;background:#f0fdf4;color:#047857;font-size:12px;font-weight:700;white-space:nowrap}.archive-toolbar{display:flex;align-items:center;gap:14px;padding:12px 24px;background:var(--surface, #fff);border-bottom:1px solid var(--border, #e5e7eb);flex-wrap:wrap}.archive-search{position:relative;width:min(360px,100%);display:flex;align-items:center}.archive-search svg{position:absolute;left:11px;color:var(--text-2, #64748b);pointer-events:none}.archive-search input{width:100%;height:38px;padding:0 12px 0 37px;border:1px solid var(--border, #d1d5db);border-radius:7px;background:var(--surface, #fff);color:var(--text, #111827);outline:none}.archive-search input:focus{border-color:#0b1330;box-shadow:0 0 0 3px #0b133014}.archive-methods{display:flex;gap:5px;overflow-x:auto}.archive-methods button{min-height:36px;padding:0 12px;border:1px solid var(--border, #d1d5db);border-radius:7px;background:var(--surface, #fff);color:var(--text-2, #64748b);cursor:pointer;white-space:nowrap;transition:all .15s}.archive-methods button:hover{border-color:#0b1330;color:#0b1330}.archive-methods button.active{background:#0b1330;border-color:#0b1330;color:#fff}.archive-date-filter{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.archive-cal-icon{color:var(--text-3, #9ca3af);flex-shrink:0}.archive-period-chip{padding:5px 11px;border:1px solid var(--border, #e5e7eb);border-radius:20px;font-size:12px;font-weight:500;cursor:pointer;background:var(--bg, #f9fafb);color:var(--text-2, #6b7280);transition:all .15s;white-space:nowrap}.archive-period-chip:hover{border-color:#6366f1;color:#6366f1}.archive-period-chip.active{background:#6366f1;color:#fff;border-color:#6366f1}.archive-custom-range{display:flex;align-items:center;gap:7px;margin-left:4px}.archive-date-field{display:flex;align-items:center;gap:5px}.archive-date-label{font-size:12px;font-weight:600;color:var(--text-3, #9ca3af);white-space:nowrap}.archive-date-input{border:1px solid var(--border, #e5e7eb);border-radius:7px;padding:5px 9px;font-size:13px;background:var(--bg, #f9fafb);color:var(--text, #111827);outline:none;cursor:pointer}.archive-date-input:focus{border-color:#6366f1;background:var(--surface, #fff);box-shadow:0 0 0 3px #6366f11a}.archive-date-sep{color:var(--text-3, #9ca3af)}.archive-content{flex:1;overflow-y:auto;padding:20px 24px}.archive-list{display:flex;flex-direction:column;gap:8px}.archive-row{display:grid;grid-template-columns:40px minmax(0,1fr) 38px;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--border, #e2e8f0);border-radius:8px;background:var(--surface, #fff)}.archive-event-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:7px;background:var(--bg, #f1f5f9);color:var(--text-2, #64748b)}.archive-event-icon.method-delete{background:#fef2f2;color:#dc2626}.archive-event-main{min-width:0}.archive-event-heading{display:flex;align-items:center;gap:8px;min-width:0}.archive-event-heading strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.archive-method{padding:3px 7px;border-radius:5px;background:#eff6ff;color:#1d4ed8;font-size:10px;font-weight:800;text-transform:uppercase}.archive-method.method-delete{background:#fef2f2;color:#dc2626}.archive-method.method-put,.archive-method.method-patch{background:#fffbeb;color:#b45309}.archive-entity-id{color:var(--text-3, #94a3b8);font-size:11px;white-space:nowrap}.archive-path{margin-top:4px;color:var(--text-2, #64748b);font:12px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow-wrap:anywhere}.archive-meta{margin-top:4px;color:var(--text-3, #94a3b8);font-size:12px}.archive-view,.archive-modal-header button{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border, #d1d5db);border-radius:7px;background:var(--surface, #fff);color:var(--text-2, #64748b);cursor:pointer}.archive-view:hover,.archive-modal-header button:hover{color:var(--text, #111827);background:var(--bg, #f8fafc)}.archive-state{padding:48px 20px;text-align:center;color:var(--text-3, #94a3b8)}.archive-modal{width:min(760px,100%);max-height:88vh;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--border, #e2e8f0);border-radius:10px;background:var(--surface, #fff)}.archive-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--border, #e5e7eb)}.archive-modal-header h3{margin:0;font-size:17px}.archive-modal-header p{margin:4px 0 0;color:var(--text-2, #64748b);font-size:12px}.archive-modal-body{overflow-y:auto;padding:20px}.archive-details{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 18px}.archive-details div{padding:10px 12px;border:1px solid var(--border, #e2e8f0);border-radius:7px;background:var(--bg, #f8fafc);min-width:0}.archive-details dt{color:var(--text-3, #94a3b8);font-size:11px}.archive-details dd{margin:4px 0 0;color:var(--text, #111827);font-size:13px;overflow-wrap:anywhere}.archive-json-section{margin-top:16px}.archive-json-section h4{margin:0 0 7px;font-size:13px}.archive-json-section pre{margin:0;padding:14px;max-height:320px;overflow:auto;border:1px solid var(--border, #e2e8f0);border-radius:7px;background:#0f172a;color:#dbeafe;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}@media (max-width: 720px){.archive-header{align-items:flex-start;padding:16px;flex-direction:column}.archive-toolbar{padding:12px 16px;align-items:stretch;flex-direction:column}.archive-search{width:100%}.archive-date-filter,.archive-custom-range{flex-wrap:wrap}.archive-content{padding:16px}.archive-row{grid-template-columns:36px minmax(0,1fr) 36px;padding:12px;gap:10px}.archive-event-icon{width:36px;height:36px}.archive-event-heading{align-items:flex-start;flex-wrap:wrap}.archive-details{grid-template-columns:1fr}}.contracts-page{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;background:linear-gradient(180deg,#f5f7fc,#eef2fb)}.contracts-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:20px 24px;background:linear-gradient(135deg,#081225,#0f1d45);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}.contracts-title-row{display:flex;align-items:center;gap:14px}.contracts-back-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:#ffffff14;color:#fff;cursor:pointer;font:inherit;font-size:14px}.contracts-header h1{margin:0;font-size:22px}.contracts-header p{margin:4px 0 0;color:#ffffffb8;font-size:13px}.contracts-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.contracts-patient-chip{margin-top:10px;display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#ffffff1f;font-size:12px}.contracts-tab-action{display:inline-flex;align-items:center;gap:6px;height:38px;box-sizing:border-box;padding:0 16px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;color:#374151;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.contracts-tab-action:hover{border-color:#9ca3af}.contracts-tab-action--primary{background:#0b1330;border-color:#0b1330;color:#fff}.contracts-tab-action--primary:hover{background:#1e2d5a;border-color:#1e2d5a}.contracts-tpl-card{margin-top:4px}.contracts-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 24px;background:#fffffff5;border-bottom:1px solid #e5e7eb}.contracts-toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.contracts-search{position:relative;display:flex;align-items:center;min-width:280px;flex:1;max-width:520px}.contracts-search svg{position:absolute;left:12px;color:#9ca3af;pointer-events:none}.contracts-search input{width:100%;border:1px solid #d1d5db;border-radius:10px;padding:0 14px 0 36px;font-size:14px;height:38px;box-sizing:border-box;background:#f9fafb;outline:none;transition:border .15s,box-shadow .15s}.contracts-search input:focus{border-color:#6366f1;background:#fff;box-shadow:0 0 0 3px #6366f114}.contracts-breadcrumbs{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13px;color:#6b7280}.contracts-breadcrumbs button{border:none;background:none;cursor:pointer;color:#6366f1;font:inherit;font-weight:500;padding:2px 4px;border-radius:5px;transition:background .15s}.contracts-breadcrumbs button:hover{background:#eef2ff}.contracts-layout{display:grid;grid-template-columns:260px 1fr;flex:1;min-height:0}.contracts-tree-panel{background:#fffffff5;border-right:1px solid #e5e7eb;overflow:auto}.contracts-tree-header{display:flex;align-items:center;gap:8px;padding:14px 18px 10px;font-size:12px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #f3f4f6}.contracts-tree{padding:8px 0 16px}.contracts-tree-row,.contracts-tree-file{width:100%;display:flex;align-items:center;gap:8px;border:none;background:none;cursor:pointer;text-align:left;color:#374151;padding:7px 14px;font:inherit;font-size:13px;border-radius:0}.contracts-tree-row:hover,.contracts-tree-file:hover{background:#eef2ff}.contracts-tree-row.active{background:#e0e7ff;border-right:3px solid #6366f1;font-weight:600}.contracts-tree-icon{display:inline-flex;width:18px;flex-shrink:0;color:#6366f1}.contracts-tree-name{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.contracts-tree-name-text{font-size:13px;font-weight:500;color:#0b1330;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contracts-tree-cat-sub{font-size:11px;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contracts-tree-category{font-size:11px;color:#6b7280;background:#f3f4f6;padding:2px 7px;border-radius:999px;white-space:nowrap;flex-shrink:0}.contracts-tree-count{font-size:11px;color:#9ca3af;background:#f3f4f6;border-radius:20px;padding:1px 6px;flex-shrink:0}.contracts-tree-delete{margin-left:4px;border:none;background:transparent;color:#d1d5db;cursor:pointer;display:inline-flex;align-items:center;flex-shrink:0;padding:2px;border-radius:4px}.contracts-tree-delete:hover{color:#dc2626;background:#fef2f2}.contracts-tree-node{display:flex;flex-direction:column}.contracts-content{min-width:0;overflow:auto;padding:20px 24px 30px}.contracts-content-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}.contracts-content-header h2{margin:0;font-size:17px;color:#0b1330}.contracts-content-header p{margin:3px 0 0;font-size:12.5px;color:#6b7280}.contracts-content-meta{display:flex;gap:10px;flex-wrap:wrap;color:#6b7280;font-size:13px}.contracts-section{margin-bottom:20px}.contracts-section h3{margin:0 0 10px;font-size:12px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:8px}.contracts-section h3:after{content:"";flex:1;height:1px;background:#e5e7eb}.contracts-section--templates{margin-top:8px;padding-top:8px;border-top:1px solid #e5e7eb}.contracts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.contracts-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid var(--card-accent, #e5e7eb);border-radius:14px;padding:14px;cursor:pointer;display:flex;flex-direction:column;gap:10px;box-shadow:0 2px 8px #0f172a0a;transition:box-shadow .18s,transform .18s,border-color .18s}.contracts-card:hover{border-color:var(--card-accent, #c7d2fe);box-shadow:0 8px 24px #0f172a1a;transform:translateY(-2px)}.contracts-card-top,.contracts-file-main{display:flex;gap:10px;align-items:center;min-width:0}.contracts-card-icon,.contracts-file-icon{width:38px;height:38px;border-radius:10px;background:#eef2ff;color:#3730a3;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contracts-card strong,.contracts-file-row strong{display:block;color:#0b1330;font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contracts-card-cat{font-size:11.5px;font-weight:600;margin-top:2px}.contracts-card-top div>div{color:#6b7280;font-size:12px;margin-top:2px}.contracts-card-desc{font-size:12.5px;color:#6b7280;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.contracts-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}.contracts-card-badge{font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px;background:#f3f4f6;color:#6b7280}.contracts-card-badge.linked{background:#eff6ff;color:#2563eb}.contracts-card-meta,.contracts-file-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:#6b7280;font-size:12px}.contracts-card-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.contracts-link-btn,.contracts-danger-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:8px;padding:7px 12px;font-size:13px;font-weight:600;cursor:pointer;border:1px solid #d1d5db}.contracts-link-btn{background:#f8fafc;color:#0b1330;text-decoration:none}.contracts-link-btn:hover{background:#eef2ff;border-color:#c7d2fe;color:#3730a3}.contracts-danger-btn{background:#fef2f2;color:#dc2626;border-color:#fecaca}.contracts-danger-btn:hover{background:#fee2e2}.contracts-icon-btn{width:32px;height:32px;padding:0;flex-shrink:0}.contracts-file-ext{width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;letter-spacing:.02em;flex-shrink:0}.contracts-stat-chips{display:flex;gap:8px;align-items:center}.contracts-stat-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;background:#f3f4f6;border:1px solid #e5e7eb;font-size:12.5px;font-weight:600;color:#64748b}.contracts-files{display:flex;flex-direction:column;gap:8px}.contracts-file-row{background:#fff;border:1px solid #e5e7eb;border-left:3px solid var(--file-accent, #e5e7eb);border-radius:12px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;transition:box-shadow .15s,transform .15s}.contracts-file-row:hover{box-shadow:0 4px 16px #0f172a14;transform:translateY(-1px)}.contracts-error{background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;padding:12px 14px;border-radius:10px}.contracts-empty{padding:20px 12px;color:#94a3b8;text-align:center;font-size:13px}.contracts-empty--big{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 20px;color:#9ca3af}.contracts-empty--big svg{opacity:.35}.contracts-modal{max-width:560px}[data-theme=dark] .contracts-page{background:var(--bg);color:var(--text)}[data-theme=dark] .contracts-header,[data-theme=dark] .contracts-toolbar,[data-theme=dark] .contracts-tabs,[data-theme=dark] .contracts-tree-panel,[data-theme=dark] .contracts-content,[data-theme=dark] .contracts-card,[data-theme=dark] .contracts-file-row,[data-theme=dark] .modal{background:var(--surface);border-color:var(--border)}[data-theme=dark] .contracts-header,[data-theme=dark] .contracts-toolbar,[data-theme=dark] .contracts-tree-panel,[data-theme=dark] .contracts-tree-header,[data-theme=dark] .contracts-card,[data-theme=dark] .contracts-file-row,[data-theme=dark] .contracts-search input,[data-theme=dark] .contracts-link-btn,[data-theme=dark] .contracts-danger-btn,[data-theme=dark] .btn-secondary,[data-theme=dark] .btn-primary,[data-theme=dark] .form-input,[data-theme=dark] .form-select,[data-theme=dark] .modal,[data-theme=dark] .modal-header,[data-theme=dark] .modal-footer{border-color:var(--border)}[data-theme=dark] .contracts-header h1,[data-theme=dark] .contracts-content-header h2,[data-theme=dark] .contracts-section h3,[data-theme=dark] .contracts-card strong,[data-theme=dark] .contracts-file-row strong,[data-theme=dark] .modal-header h3{color:var(--text)}[data-theme=dark] .contracts-header p,[data-theme=dark] .contracts-patient-chip,[data-theme=dark] .contracts-content-header p,[data-theme=dark] .contracts-content-meta,[data-theme=dark] .contracts-tree-category,[data-theme=dark] .contracts-tree-count,[data-theme=dark] .contracts-card-top div>div,[data-theme=dark] .contracts-file-main div>div,[data-theme=dark] .contracts-card-meta,[data-theme=dark] .contracts-file-meta,[data-theme=dark] .contracts-empty,[data-theme=dark] .contracts-error,[data-theme=dark] .contracts-breadcrumbs,[data-theme=dark] .contracts-search svg,[data-theme=dark] .contracts-tree-delete,[data-theme=dark] .contracts-tree-row,[data-theme=dark] .contracts-tree-file{color:var(--text-2)}[data-theme=dark] .contracts-search input,[data-theme=dark] .form-input,[data-theme=dark] .form-select{background:var(--bg);color:var(--text)}[data-theme=dark] .contracts-search input::placeholder,[data-theme=dark] .form-input::placeholder{color:var(--text-3)}[data-theme=dark] .contracts-back-btn,[data-theme=dark] .contracts-patient-chip,[data-theme=dark] .contracts-tree-category,[data-theme=dark] .contracts-link-btn,[data-theme=dark] .btn-secondary{background:#ffffff0a;color:var(--text)}[data-theme=dark] .contracts-back-btn:hover,[data-theme=dark] .contracts-link-btn:hover,[data-theme=dark] .btn-secondary:hover{background:#ffffff12}[data-theme=dark] .contracts-tree-row:hover,[data-theme=dark] .contracts-tree-file:hover,[data-theme=dark] .contracts-tree-row.active{background:#6366f124}[data-theme=dark] .contracts-tab-btn{color:var(--text-2)}[data-theme=dark] .contracts-tab-btn.active{color:var(--text)}[data-theme=dark] .contracts-card:hover,[data-theme=dark] .contracts-file-row:hover{border-color:#6366f147;box-shadow:0 16px 34px #0000003d}[data-theme=dark] .contracts-card-icon,[data-theme=dark] .contracts-file-icon{background:#6366f129;color:#c7d2fe}[data-theme=dark] .contracts-link-btn{border-color:var(--border)}[data-theme=dark] .contracts-danger-btn{background:#dc26261a;color:#fca5a5;border-color:#f871713d}[data-theme=dark] .contracts-toolbar{box-shadow:0 12px 28px #00000024}[data-theme=dark] .contracts-page .btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5)}[data-theme=dark] .contracts-page .modal-overlay{background:#020617b8}.contracts-tpl-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px 20px;box-shadow:0 2px 8px #0f172a0a;max-width:980px}.contracts-tpl-card .settings-card-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:#111827;margin-bottom:14px}.contracts-tpl-card .settings-hint{font-size:12.5px;color:#9ca3af;margin:0 0 14px;line-height:1.5}.contracts-tpl-card .s-input{border:1px solid #d1d5db;border-radius:10px;padding:0 12px;font-size:14px;outline:none;height:38px;box-sizing:border-box;background:#f9fafb;color:#111827;transition:border .15s,box-shadow .15s}.contracts-tpl-card .s-input:focus{border-color:#6366f1;background:#fff;box-shadow:0 0 0 3px #6366f114}.contracts-tpl-card .s-btn-primary{display:inline-flex;align-items:center;gap:6px;background:#0b1330;color:#fff;border:none;border-radius:10px;padding:0 18px;font-size:14px;font-weight:600;height:38px;box-sizing:border-box;cursor:pointer;transition:background .15s}.contracts-tpl-card .s-btn-primary:hover{background:#1e2d5a}.contracts-tpl-card .s-btn-primary:disabled{opacity:.6;cursor:not-allowed}.contracts-tpl-card .btn-secondary{display:inline-flex;align-items:center;gap:6px;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:10px;padding:0 14px;font-size:13px;font-weight:600;cursor:pointer;height:38px;box-sizing:border-box;transition:all .15s}.contracts-tpl-card .btn-secondary:hover{background:#fff;border-color:#9ca3af}.contracts-tpl-card .upload-btn{display:inline-flex;align-items:center;gap:6px;padding:0 14px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:10px;font-size:13px;font-weight:600;color:#374151;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px;height:38px;box-sizing:border-box;transition:all .15s}.contracts-tpl-card .upload-btn:hover{background:#fff;border-color:#6366f1;color:#6366f1}.contracts-tpl-card .doc-tpl-upload-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:14px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:10px}.contracts-tpl-card .doc-tpl-upload-row .s-input{flex:1;min-width:180px}.contracts-tpl-card .doc-tpl-upload-row select.s-input{flex:0 0 160px}.contracts-tpl-card .doc-tpl-consent-check{display:flex;align-items:center;gap:8px;font-size:13px;color:#6b7280;margin:6px 0 12px}.contracts-tpl-card .doc-tpl-consent-check input{width:16px;height:16px;cursor:pointer}.contracts-tpl-card .settings-error{background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;border-radius:10px;padding:10px 14px;font-size:13px;margin-bottom:10px}.contracts-tpl-card .doc-tpl-success{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:600;margin-bottom:10px}.contracts-tpl-card .doc-tpl-text-create-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:4px 0 14px}.contracts-tpl-card .doc-tpl-list{display:flex;flex-direction:column;gap:8px;margin-top:8px}.contracts-tpl-card .doc-tpl-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;transition:box-shadow .15s,border-color .15s}.contracts-tpl-card .doc-tpl-item:hover{border-color:#c7d2fe;box-shadow:0 4px 12px #0f172a0f}.contracts-tpl-card .doc-tpl-item-main{display:flex;align-items:center;gap:10px;color:#111827;min-width:0}.contracts-tpl-card .doc-tpl-item-main svg{flex-shrink:0;color:#6366f1}.contracts-tpl-card .doc-tpl-name{font-size:14px;font-weight:600}.contracts-tpl-card .doc-tpl-meta{font-size:12px;color:#9ca3af;margin-top:2px}.contracts-tpl-card .doc-tpl-item-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;flex-wrap:wrap}.contracts-tpl-card .doc-tpl-status{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:4px 9px;border-radius:999px;background:#fef3c7;color:#92400e}.contracts-tpl-card .doc-tpl-status.ok{background:#d1fae5;color:#059669}.contracts-tpl-card .doc-tpl-consent-badge{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:4px 9px;border-radius:999px;background:#e0e7ff;color:#4338ca}.contracts-tpl-card .catalog-icon-btn{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:#6b7280;cursor:pointer}.contracts-tpl-card .catalog-icon-btn:hover{background:#f3f4f6;color:#111827}.contracts-tpl-card .catalog-icon-btn.danger:hover{background:#fef2f2;color:#dc2626}.contracts-tpl-card .catalog-empty{padding:28px 0;color:#9ca3af;font-size:13px;text-align:center}.doc-tpl-modal{max-width:760px;width:100%}.doc-tpl-modal-body{padding:4px 2px 12px;max-height:62vh;overflow-y:auto}.doc-tpl-fields-head{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#9ca3af;padding:0 2px}.doc-tpl-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:12px;border-top:1px solid #e5e7eb}.doc-tpl-section-title{margin:18px 0 8px;font-size:13px;font-weight:700;color:#374151}.doc-tpl-view-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 12px}.doc-tpl-view-tabs button{border:1px solid #e5e7eb;background:#fff;color:#4b5563;padding:7px 11px;border-radius:6px;cursor:pointer}.doc-tpl-view-tabs button.active{color:#1d4ed8;border-color:#93c5fd;background:#eff6ff;font-weight:600}.doc-tpl-mapping-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.doc-custom-field-modal{max-width:520px}.doc-custom-check{display:flex;flex-direction:row;align-items:center;gap:8px}.doc-custom-options{margin-top:12px}.doc-custom-option{display:flex;gap:8px;align-items:center;margin-top:6px}.doc-custom-option .form-input{flex:1}.doc-tpl-filter{max-width:220px}.doc-tpl-filter-category{max-width:170px}.doc-builder-toolbar{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:8px;border:1px solid #e5e7eb;background:#f8fafc}.doc-builder-toolbar button{min-height:32px}.doc-tpl-text-modal{max-width:1120px}.doc-tpl-textarea{min-height:560px;padding:56px;background:#fff;border-color:#d1d5db;box-shadow:0 8px 24px #0f172a14;line-height:1.65}.doc-preview-modal{max-width:820px}.doc-preview-controls{padding:12px 0}.doc-preview-controls .form-label{max-width:320px}.doc-preview-paper{min-height:520px;margin:0;padding:48px;white-space:pre-wrap;background:#fff;border:1px solid #e5e7eb;font:14px/1.7 inherit;color:#111827}.doc-tpl-fields-panel{border:1px solid #e5e7eb;border-radius:10px;padding:10px;max-height:400px;overflow-y:auto;background:#f9fafb}.doc-tpl-fields-panel-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#9ca3af;margin-bottom:6px}.doc-tpl-fields-panel-group-title{font-size:12px;font-weight:600;color:#6b7280;margin:6px 0 4px}.doc-tpl-field-chip{display:block;width:100%;text-align:left;font-size:12.5px;padding:6px 9px;margin-bottom:4px;border-radius:7px;border:1px solid #e5e7eb;background:#fff;color:#111827;cursor:pointer;transition:background .12s ease}@media (min-width: 641px) and (max-width: 1180px){.contracts-layout{grid-template-columns:240px minmax(0,1fr)}.contracts-header,.contracts-toolbar,.contracts-content{padding-left:18px;padding-right:18px}.contracts-search{min-width:240px}.contracts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contracts-tpl-card .doc-tpl-upload-row{align-items:stretch}.contracts-tpl-card .doc-tpl-upload-row .s-input{min-width:150px}.doc-tpl-text-editor-grid{grid-template-columns:minmax(0,1fr) 220px}}@media (max-width: 640px){.contracts-layout{grid-template-columns:1fr}.contracts-tree-panel{border-right:none;border-bottom:1px solid #e5e7eb;max-height:280px}.doc-tpl-text-editor-grid{grid-template-columns:1fr}.doc-tpl-filter,.doc-tpl-filter-category{max-width:none;width:100%}.doc-tpl-textarea{min-height:420px;padding:28px 20px}.contracts-tpl-card .doc-tpl-item{flex-direction:column;align-items:flex-start}.contracts-tpl-card .doc-tpl-upload-row{flex-direction:column;align-items:stretch}.contracts-tpl-card .doc-tpl-upload-row .s-input,.contracts-tpl-card .doc-tpl-upload-row select.s-input,.contracts-tpl-card .doc-tpl-upload-row .upload-btn{flex:none;width:100%;max-width:none}.doc-tpl-fields-head{display:none}.doc-tpl-field-row{grid-template-columns:1fr;border:1px solid #e5e7eb;border-radius:8px;padding:10px}.contracts-header,.contracts-toolbar,.contracts-content{padding-left:16px;padding-right:16px}.contracts-toolbar-actions{width:100%}.contracts-toolbar-actions>*{flex:1;justify-content:center}.contracts-grid{grid-template-columns:1fr}.contracts-file-row{align-items:stretch}}.bank-page{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;background:var(--bg,#f4f6fb)}.bank-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:var(--surface,#fff);border-bottom:1px solid var(--border,#e5e7eb);flex-shrink:0}.bank-header-actions{display:flex;align-items:center;gap:10px}.page-title{font-size:20px;font-weight:700;color:var(--text,#0b1330);margin:0}.list-loading{padding:40px;text-align:center;color:#9ca3af}.bank-summary-bar{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--surface,#fff);border-bottom:1px solid var(--border,#e5e7eb);flex-wrap:wrap;flex-shrink:0}.bank-summary-label{font-size:13px;color:#6b7280;font-weight:500}.bank-period-btn{padding:5px 12px;border:1px solid #e5e7eb;background:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;color:#6b7280}.bank-period-btn.active{background:#0b1330;color:#fff;border-color:#0b1330}.bank-date-range{display:flex;align-items:center;gap:6px}.bank-date-input{border:1px solid #e5e7eb;border-radius:6px;padding:4px 8px;font-size:12px;color:#374151;background:#fff;cursor:pointer}.bank-date-sep{color:#9ca3af;font-size:13px}.bank-totals{margin-left:auto;display:flex;gap:14px;font-size:13px;color:#374151}.bank-totals strong{color:#059669}.bank-body{display:grid;grid-template-columns:320px 1fr;flex:1;overflow:hidden}.bank-acct-list{border-right:1px solid var(--border,#e5e7eb);overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--surface,#fff)}.bank-acct-card{border:1px solid var(--border,#e2e8f0);border-radius:10px;padding:13px 14px;cursor:pointer;transition:background .12s,border-color .12s}.bank-acct-card:hover{background:#f8fafc}.bank-acct-card--active{border-color:#6366f1;background:#f5f3ff}.bac-top{display:flex;align-items:flex-start;gap:10px;margin-bottom:6px}.bac-icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:7px;flex-shrink:0;color:#0b1330}.bac-info{flex:1;min-width:0}.bac-name{font-size:14px;font-weight:700;color:var(--text,#0b1330)}.bac-bank{font-size:12px;color:#6b7280}.bac-btns{display:flex;gap:4px;flex-shrink:0}.bac-btn-edit,.bac-btn-del{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid #e2e8f0;cursor:pointer;background:#fff}.bac-btn-edit{color:#6b7280}.bac-btn-edit:hover{background:#f1f5f9;color:#374151}.bac-btn-del{color:#dc2626;border-color:#fca5a5}.bac-btn-del:hover{background:#fef2f2}.bac-num{font-size:11px;color:#94a3b8;font-family:ui-monospace,monospace;margin-bottom:2px}.bac-summary{margin-top:8px;display:flex;align-items:center;justify-content:space-between}.bac-amount{font-size:14px;font-weight:700;color:#059669}.bac-count{font-size:11px;color:#9ca3af}.bank-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 20px;text-align:center}.bank-pay-panel{overflow-y:auto;display:flex;flex-direction:column;background:var(--bg,#f4f6fb)}.bpp-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px 10px;background:var(--surface,#fff);border-bottom:1px solid var(--border,#e5e7eb);flex-shrink:0}.bpp-title{display:flex;align-items:center;gap:7px;font-size:14px;color:#374151}.bpp-title strong{color:#0b1330}.bpp-sum{font-size:13px;font-weight:600;color:#059669}.bank-det-loading,.bank-det-empty{text-align:center;padding:40px 20px;color:#9ca3af;font-size:13px}.bank-det-list{padding:14px 20px;display:flex;flex-direction:column;gap:7px}.bank-det-row{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:9px}.bank-det-row--link{cursor:pointer;transition:background .12s,border-color .12s}.bank-det-row--link:hover{background:#f5f3ff;border-color:#a5b4fc}.bank-det-avatar{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border-radius:50%;flex-shrink:0;color:#6b7280}.bank-det-left{flex:1;min-width:0}.bank-det-patient{font-size:13px;font-weight:500;color:#0b1330;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bank-det-doctor{font-size:11px;color:#9ca3af;margin-top:1px}.bank-det-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.bank-det-method{font-size:11px;color:#6366f1;background:#eef2ff;border-radius:4px;padding:2px 7px}.bank-det-date{font-size:11px;color:#9ca3af}.bank-det-amount{font-size:14px;font-weight:700;color:#059669;white-space:nowrap;min-width:90px;text-align:right}.bank-det-pager{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 20px;font-size:13px;color:#374151}.bank-pager-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #e2e8f0;border-radius:7px;background:#fff;cursor:pointer;color:#374151}.bank-pager-btn:disabled{opacity:.4;cursor:default}.bank-pager-btn:not(:disabled):hover{background:#f8fafc}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#0b1330;color:#fff;border:1px solid #0b1330;border-radius:7px;padding:9px 18px;font-size:14px;font-weight:600;cursor:pointer}.form-input{border:1px solid #d1d5db;border-radius:7px;padding:8px 10px;font-size:14px;outline:none}.form-input:focus{border-color:#0b1330}.modal-close{background:none;border:none;cursor:pointer;color:#9ca3af;display:flex;align-items:center}@media (max-width:700px){.bank-body{grid-template-columns:1fr;grid-template-rows:auto 1fr}.bank-acct-list{border-right:none;border-bottom:1px solid var(--border,#e5e7eb);max-height:220px}.bank-summary-bar{padding:10px 14px}.bank-totals{margin-left:0;width:100%;justify-content:space-between}}.rooms-page{display:flex;flex-direction:column;height:100%;width:100%;min-height:0;overflow:hidden;background:linear-gradient(180deg,#f5f7fc,#eef2fb)}.rooms-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:#fffffff5;border-bottom:1px solid #e5e7eb}.rooms-header-actions{display:flex;align-items:center;gap:10px}.rooms-tabs{display:flex;gap:2px;background:#fffffff0;border-bottom:1px solid #e5e7eb;padding:0 24px}.rooms-tab{padding:12px 18px;border:none;background:none;font-size:14px;font-weight:600;cursor:pointer;color:#6b7280;border-bottom:2px solid transparent;transition:color .15s ease,border-color .15s ease,background .15s ease}.rooms-tab:hover{color:#0b1330}.rooms-tab.active{color:#0b1330;border-bottom-color:#0b1330}.rooms-content{flex:1;width:100%;overflow-y:auto;min-height:0;padding:20px 24px 28px;display:flex;flex-direction:column;gap:16px}.rooms-empty{text-align:center;color:#9ca3af;padding:60px;font-size:15px}.room-card{background:#fff;border-radius:16px;border:1px solid #e5e7eb;overflow:clip;box-shadow:0 2px 12px #0f172a0f;transition:box-shadow .2s}.room-card:hover{box-shadow:0 6px 24px #0f172a1a}.room-card-header{display:flex;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid #f3f4f6}.room-color-stripe{width:5px;height:40px;border-radius:3px;background:var(--rc, #6366f1);flex-shrink:0}.room-card-title{flex:1}.room-name{font-size:16px;font-weight:700;color:#0b1330}.room-desc{font-size:13px;color:#6b7280;margin-top:2px}.room-assigned-doctors{font-size:12px;font-weight:600;color:var(--rc, #6366f1);margin-top:4px}.room-card-actions{display:flex;gap:8px;align-items:center}.btn-add-doctor{padding:7px 14px;border:none;background:var(--rc, #6366f1);color:#fff;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .15s}.btn-add-doctor:hover{opacity:.85}.room-schedule-scroll{width:100%;overflow-x:auto;overflow-y:visible;border-top:1px solid #f3f4f6}.room-schedule-grid{display:grid;grid-template-columns:repeat(7,minmax(138px,1fr));min-width:966px;gap:0;background:#f8fafc;align-items:start}.room-day-col{background:#fff;padding:12px 8px;min-height:112px;height:auto;border-right:1px solid #f3f4f6}.room-day-col:last-child{border-right:none}.room-day-col.today{background:#fafafe}.room-day-label{font-size:11px;font-weight:700;color:#9ca3af;text-align:center;margin-bottom:8px;text-transform:uppercase;letter-spacing:.4px}.room-day-label.today{color:#6366f1}.room-slot{border-radius:8px;padding:7px 8px;margin-bottom:6px;font-size:11px;min-height:42px}.room-slot.empty{color:#d1d5db;text-align:center;padding-top:10px;font-size:18px;font-weight:300}.room-slot.filled{background:#eef2ff;background:color-mix(in srgb,var(--rc, #6366f1) 10%,#fff);border:1px solid var(--rc, #6366f1);border:1px solid color-mix(in srgb,var(--rc, #6366f1) 25%,transparent);position:relative}.slot-top{display:flex;align-items:flex-start;gap:6px}.slot-avatar{width:22px;height:22px;border-radius:50%;background:var(--rc, #6366f1);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.slot-info{flex:1;min-width:0}.slot-doctor{font-weight:600;color:var(--rc, #6366f1);color:color-mix(in srgb,var(--rc, #6366f1) 80%,#000);font-size:11px;line-height:1.25;overflow-wrap:anywhere}.slot-time{color:#6b7280;font-size:10px;margin-top:1px}.slot-actions{position:absolute;top:3px;right:3px;display:flex;gap:1px;opacity:0;transition:opacity .15s}.room-slot.filled:hover .slot-actions{opacity:1}.slot-edit{background:none;border:none;color:#9ca3af;cursor:pointer;padding:1px;line-height:1}.slot-edit:hover{color:#6366f1}.slot-del{background:none;border:none;color:#9ca3af;cursor:pointer;padding:1px;line-height:1}.slot-del:hover{color:#dc2626}.room-specific-dates{padding:10px 16px;border-top:1px solid #f3f4f6;background:#fafbff}.room-specific-label{font-size:11px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px}.room-specific-chips{display:flex;flex-wrap:wrap;gap:6px}.specific-chip{display:flex;align-items:center;gap:6px;background:#eef2ff;border:1px solid #c7d2fe;border-radius:20px;padding:4px 10px;font-size:12px}.specific-chip-date{font-weight:700;color:#4338ca}.specific-chip-doctor{color:#374151}.specific-chip-time{color:#6b7280}.schedules-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.schedules-layout{display:flex;flex:1;overflow:hidden}.schedules-sidebar{width:240px;flex-shrink:0;background:#fffffff5;border-right:1px solid #e5e7eb;overflow-y:auto}.schedules-sidebar-title{padding:14px 16px 8px;font-size:12px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.schedule-member-item{display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;border-bottom:1px solid #f9fafb;transition:background .15s}.schedule-member-item:hover{background:#f8fafc}.schedule-member-item.active{background:#eef4ff}.schedule-member-avatar{width:34px;height:34px;border-radius:50%;background:#0b1330;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}.schedule-member-name{font-size:14px;font-weight:600;color:#0b1330}.schedule-member-role{font-size:12px;color:#6b7280}.schedules-editor{flex:1;overflow-y:auto;padding:24px;background:linear-gradient(180deg,#f5f7fc,#eef2fb)}.schedules-editor-empty{text-align:center;color:#9ca3af;padding:80px 20px;font-size:15px}.schedules-editor-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.schedules-editor-name{font-size:18px;font-weight:700;color:#0b1330}.schedules-editor-role{font-size:13px;color:#6b7280}.schedule-days-list{display:flex;flex-direction:column;gap:8px}.schedules-list-wrap{flex:1;overflow-y:auto;min-height:0;padding:20px 24px 28px;display:flex;flex-direction:column;gap:10px}.emp-card{background:#fff;border-radius:14px;border:1px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px #0f172a0d;transition:box-shadow .2s}.emp-card:hover{box-shadow:0 4px 18px #0f172a17}.emp-card.expanded{box-shadow:0 6px 24px #6366f11f;border-color:#c7d2fe}.emp-card-header{display:flex;align-items:center;gap:14px;padding:14px 20px;cursor:pointer;-webkit-user-select:none;user-select:none}.emp-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.emp-info{min-width:160px;flex-shrink:0}.emp-name{font-size:15px;font-weight:700;color:#0b1330}.emp-role{font-size:12px;color:#6b7280;margin-top:1px}.emp-week-summary{flex:1;display:flex;gap:4px;flex-wrap:wrap}.emp-day-dot{display:flex;flex-direction:column;align-items:center;min-width:44px;padding:5px 6px;border-radius:8px;font-size:10px;font-weight:700;gap:2px}.emp-day-dot.on{background:#eef2ff;color:#4338ca}.emp-day-dot.off{background:#f9fafb;color:#d1d5db}.emp-day-time{font-size:9px;font-weight:400;color:#6b7280;white-space:nowrap}.emp-chevron{font-size:20px;color:#9ca3af;transition:transform .2s;line-height:1}.emp-chevron.open{transform:rotate(90deg);color:#6366f1}.emp-card-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.schedule-day-row{background:#fff;border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:16px;border:1px solid #e5e7eb}.schedule-day-row.dayoff{opacity:.6}.schedule-day-name{font-size:14px;font-weight:600;color:#0b1330;width:110px;flex-shrink:0}.schedule-dayoff-toggle{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280;cursor:pointer}.schedule-time-inputs{display:flex;align-items:center;gap:8px}.time-input{border:1px solid #d1d5db;border-radius:7px;padding:6px 10px;font-size:14px;outline:none}.time-input:focus{border-color:#0b1330}.schedule-day-value{font-size:14px;color:#374151}.schedule-dayoff-label{font-size:13px;color:#9ca3af}.dayoff-badge{background:#fee2e2;color:#dc2626;border-radius:20px;padding:2px 10px;font-size:12px;font-weight:600}.color-picker-row{display:flex;gap:10px;flex-wrap:wrap;padding:4px 0}.color-dot{width:28px;height:28px;border-radius:50%;border:3px solid transparent;cursor:pointer;padding:0}.color-dot.selected{border-color:#fff;box-shadow:0 0 0 2px #0b1330}.color-dot.disabled{opacity:.28;cursor:not-allowed}.btn-sm{padding:6px 12px;border:1px solid #d1d5db;background:#f9fafb;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer}.day-picker{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:4px}.day-pill{width:38px;height:38px;border-radius:50%;border:2px solid #e5e7eb;background:#f9fafb;font-size:12px;font-weight:600;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.day-pill:hover{border-color:#6366f1;color:#6366f1;background:#eef2ff}.day-pill.active{border-color:#6366f1;background:#6366f1;color:#fff}.day-times-list{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding:12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px}.day-times-hint{font-size:12px;color:#9ca3af;margin-bottom:2px}.day-time-row{display:flex;align-items:center;gap:10px}.day-time-name{flex:0 0 110px;font-size:13px;font-weight:600;color:#374151}.day-time-row .form-input{flex:1;height:36px;box-sizing:border-box;padding:0 10px}.day-time-dash{color:#9ca3af}.sched-mode-toggle{display:flex;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;margin-bottom:16px}.sched-mode-btn{flex:1;padding:8px 0;font-size:13px;font-weight:500;border:none;background:transparent;color:#6b7280;cursor:pointer;transition:all .15s}.sched-mode-btn.active{background:#6366f1;color:#fff}.mini-cal{border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;margin-bottom:4px}.mini-cal-nav{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.mini-cal-title{font-size:13px;font-weight:600;color:#0b1330}.mini-cal-nav-btn{background:none;border:none;font-size:18px;cursor:pointer;color:#6b7280;padding:0 4px;line-height:1}.mini-cal-nav-btn:hover{color:#6366f1}.mini-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);padding:8px;gap:2px}.mini-cal-hdr{text-align:center;font-size:11px;font-weight:600;color:#9ca3af;padding:4px 0}.mini-cal-day{text-align:center;font-size:13px;padding:6px 2px;border-radius:6px;cursor:pointer;color:#374151;transition:all .12s}.mini-cal-day:hover{background:#eef2ff;color:#6366f1}.mini-cal-day.active{background:#6366f1;color:#fff;font-weight:600;border-radius:50%}.mini-cal-day.in-range{background:#e0e7ff;color:#4338ca;border-radius:4px}.mini-cal-selected{padding:6px 12px 8px;font-size:11px;color:#6b7280;background:#f9fafb;border-top:1px solid #f3f4f6;word-break:break-all}[data-theme=dark] .rooms-page{background:var(--bg);color:var(--text)}[data-theme=dark] .rooms-header,[data-theme=dark] .rooms-tabs,[data-theme=dark] .room-card,[data-theme=dark] .schedules-sidebar,[data-theme=dark] .schedules-editor,[data-theme=dark] .schedule-day-row,[data-theme=dark] .modal{background:var(--surface);border-color:var(--border)}[data-theme=dark] .rooms-header,[data-theme=dark] .rooms-tabs,[data-theme=dark] .room-card-header,[data-theme=dark] .schedules-sidebar,[data-theme=dark] .schedule-member-item,[data-theme=dark] .schedule-day-row,[data-theme=dark] .modal,[data-theme=dark] .modal-header,[data-theme=dark] .modal-footer{border-color:var(--border)}[data-theme=dark] .page-title,[data-theme=dark] .room-name,[data-theme=dark] .schedules-editor-name,[data-theme=dark] .schedule-member-name,[data-theme=dark] .modal-header h3,[data-theme=dark] .schedule-day-name,[data-theme=dark] .btn-primary{color:var(--text)}[data-theme=dark] .rooms-tab,[data-theme=dark] .room-desc,[data-theme=dark] .room-day-label,[data-theme=dark] .slot-time,[data-theme=dark] .schedule-member-role,[data-theme=dark] .schedules-editor-role,[data-theme=dark] .rooms-empty,[data-theme=dark] .schedules-editor-empty,[data-theme=dark] .list-loading,[data-theme=dark] .form-label,[data-theme=dark] .form-hint{color:var(--text-2)}[data-theme=dark] .rooms-tab.active{color:#fff;border-bottom-color:#818cf8}[data-theme=dark] .rooms-tab:hover,[data-theme=dark] .schedule-member-item:hover{color:#fff;background:#6366f11f}[data-theme=dark] .room-schedule-grid{background:var(--border)}[data-theme=dark] .room-day-col,[data-theme=dark] .schedule-member-item,[data-theme=dark] .btn-secondary,[data-theme=dark] .btn-sm,[data-theme=dark] .form-input,[data-theme=dark] .form-select,[data-theme=dark] .time-input{background:var(--bg);border-color:var(--border);color:var(--text)}[data-theme=dark] .schedule-member-item.active{background:#6366f129}[data-theme=dark] .room-slot.filled{background:#60a5fa1a;border-color:#60a5fa38}[data-theme=dark] .slot-doctor{color:#93c5fd}[data-theme=dark] .slot-time,[data-theme=dark] .schedule-dayoff-label{color:var(--text-3)}[data-theme=dark] .dayoff-badge{background:#f871711f;color:#fca5a5}[data-theme=dark] .btn-sm.danger,[data-theme=dark] .btn-danger,[data-theme=dark] .btn-danger-sm{background:#dc26261f;color:#fca5a5;border-color:#f871713d}[data-theme=dark] .success-banner{background:#22c55e14;border-color:#22c55e3d;color:#86efac}[data-theme=dark] .form-error{background:#ef44441a;border-color:#f871713d;color:#fca5a5}[data-theme=dark] .color-dot.selected{border-color:var(--bg);box-shadow:0 0 0 2px #818cf8}[data-theme=dark] .color-dot.disabled{opacity:.2}@media (max-width: 768px){.rooms-header{padding:12px 14px;flex-wrap:wrap;gap:10px}.page-title{font-size:17px}.rooms-header-actions{width:100%;flex-wrap:wrap;gap:8px}.rooms-tabs{padding:0 14px;overflow-x:auto;-webkit-overflow-scrolling:touch}.rooms-tab{padding:10px 12px;font-size:13px;white-space:nowrap}.rooms-content,.schedules-list-wrap{padding:14px 12px 20px;gap:12px}.room-card-header{flex-wrap:wrap;padding:12px 14px;gap:10px}.room-card-actions{width:100%;justify-content:flex-start}.room-schedule-scroll{overflow-x:visible}.room-schedule-grid{grid-template-columns:1fr;min-width:0}.room-day-col{border-right:none;border-bottom:1px solid #f3f4f6;min-height:unset;padding:10px 12px}.room-day-col:last-child{border-bottom:none}.room-day-label{text-align:left;margin-bottom:6px}.room-specific-dates{padding:10px 12px}.specific-chip{font-size:11px}.schedules-layout{flex-direction:column}.schedules-sidebar{width:100%;max-height:220px;border-right:none;border-bottom:1px solid #e5e7eb}.schedules-editor{padding:14px}.emp-card-header{flex-wrap:wrap;padding:12px 14px;gap:10px}.emp-info{min-width:0;width:100%}.emp-week-summary{width:100%}.emp-day-dot{min-width:40px}.schedule-day-row{flex-wrap:wrap;gap:10px;padding:12px 14px}.schedule-day-name{width:auto}.schedule-time-inputs{flex-wrap:wrap}.modal{max-width:100%;margin:0 8px;border-radius:14px}.modal-body{padding:14px 16px}.modal-footer{flex-wrap:wrap;padding:0 16px 16px}.modal-footer .btn-primary,.modal-footer .btn-secondary{flex:1;text-align:center}.day-picker,.color-picker-row{justify-content:center}}@media (max-width: 480px){.rooms-header{padding:10px 12px}.rooms-tab{padding:9px 10px;font-size:12px}.room-name{font-size:14px}.room-desc{font-size:12px}.btn-add-doctor{padding:6px 10px;font-size:12px}.slot-doctor{font-size:10px}.slot-time{font-size:9px}.emp-avatar,.schedule-member-avatar{width:34px;height:34px;font-size:13px}.day-pill{width:34px;height:34px}.color-dot{width:24px;height:24px}}.warehouse-page{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;background:linear-gradient(180deg,#f5f7fc,#eef2fb)}.warehouse-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:#fffffff5;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;gap:10px}.low-stock-alert{font-size:13px;color:#d97706;font-weight:600;margin-top:2px}.wh-search{border:1px solid #d1d5db;border-radius:8px;padding:9px 12px;font-size:14px;outline:none;width:220px;background:#fff}.wh-search:focus{border-color:#0b1330}.warehouse-content{flex:1;overflow:auto;padding:20px 24px 28px}.wh-table{width:100%;border-collapse:collapse;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 28px #0f172a0d;font-size:14px}.wh-table th{background:#f9fafb;padding:10px 14px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;border-bottom:1px solid #e5e7eb}.wh-table td{padding:12px 14px;border-bottom:1px solid #f3f4f6;vertical-align:middle}.wh-table tr:last-child td{border-bottom:none}.wh-table tr.row-low{background:#fffbeb}.wh-table tr:hover td{background:#f9fafb}.wh-table tr.row-low:hover td{background:#fef3c7}.qty-cell{font-weight:700;font-size:16px;color:#0b1330}.qty-cell.low{color:#dc2626}.low-badge{display:inline-block;margin-left:8px;background:#fee2e2;color:#dc2626;font-size:11px;font-weight:600;border-radius:20px;padding:1px 7px}.wh-current{font-size:14px;color:#374151;padding:8px 12px;background:#f9fafb;border-radius:8px}.wh-actions{display:flex;gap:6px;flex-wrap:wrap}.btn-sm{padding:5px 10px;border:1px solid #d1d5db;background:#f9fafb;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap}.btn-sm.success{border-color:#6ee7b7;background:#d1fae5;color:#065f46}.btn-sm.warning{border-color:#fcd34d;background:#fef3c7;color:#92400e}.tx-badge{display:inline-block;padding:2px 8px;border-radius:20px;font-size:12px;font-weight:600}.tx-badge.income{background:#d1fae5;color:#065f46}.tx-badge.expense{background:#fee2e2;color:#dc2626}.btn-primary{background:#0b1330;color:#fff;border:none;border-radius:7px;padding:9px 18px;font-size:14px;font-weight:600;cursor:pointer}.btn-primary.btn-warn{background:#dc2626}.form-input,.form-select{border:1px solid #d1d5db;border-radius:7px;padding:8px 10px;font-size:14px;outline:none;width:100%;box-sizing:border-box}.success-banner{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46;padding:10px 24px;font-size:14px;cursor:pointer}.list-loading{padding:60px;text-align:center;color:#9ca3af}.page-title{font-size:20px;font-weight:700;color:#0b1330;margin:0}[data-theme=dark] .warehouse-page{background:var(--bg);color:var(--text)}[data-theme=dark] .warehouse-header,[data-theme=dark] .wh-table,[data-theme=dark] .modal{background:var(--surface);border-color:var(--border)}[data-theme=dark] .warehouse-header,[data-theme=dark] .wh-table th,[data-theme=dark] .wh-table td,[data-theme=dark] .modal,[data-theme=dark] .modal-header,[data-theme=dark] .modal-footer{border-color:var(--border)}[data-theme=dark] .page-title,[data-theme=dark] .wh-current,[data-theme=dark] .modal-header h3,[data-theme=dark] .qty-cell{color:var(--text)}[data-theme=dark] .low-stock-alert,[data-theme=dark] .list-loading,[data-theme=dark] .wh-table th,[data-theme=dark] .wh-table td,[data-theme=dark] .form-label,[data-theme=dark] .form-hint{color:var(--text-2)}[data-theme=dark] .wh-search,[data-theme=dark] .form-input,[data-theme=dark] .form-select,[data-theme=dark] .btn-secondary,[data-theme=dark] .btn-sm{background:var(--bg);border-color:var(--border);color:var(--text)}[data-theme=dark] .wh-search::placeholder,[data-theme=dark] .form-input::placeholder{color:var(--text-3)}[data-theme=dark] .wh-table th,[data-theme=dark] .wh-table tr:hover td{background:#ffffff08}[data-theme=dark] .wh-table tr.row-low{background:#f59e0b14}[data-theme=dark] .wh-table tr.row-low:hover td{background:#f59e0b1f}[data-theme=dark] .wh-current{background:var(--bg);border:1px solid var(--border)}[data-theme=dark] .low-badge{background:#f8717124;color:#fca5a5}[data-theme=dark] .btn-sm.success{background:#22c55e1f;color:#86efac;border-color:#22c55e3d}[data-theme=dark] .btn-sm.warning{background:#f59e0b1f;color:#fcd34d;border-color:#f59e0b3d}[data-theme=dark] .btn-sm.danger{background:#dc26261f;color:#fca5a5;border-color:#f871713d}[data-theme=dark] .tx-badge.income{background:#22c55e1f;color:#86efac}[data-theme=dark] .tx-badge.expense{background:#f871711f;color:#fca5a5}[data-theme=dark] .modal-overlay{background:#020617b8}[data-theme=dark] .wh-table td strong,[data-theme=dark] .qty-cell.low{color:#fff}.is-muted{color:var(--text-3, #9ca3af)}.laboratory-page{min-height:100%;padding:24px;background:linear-gradient(180deg,#f8fafc,#eef2ff)}.laboratory-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px;border:1px solid #e5e7eb;border-radius:18px;background:#fff;box-shadow:0 10px 28px #0f172a0f}.laboratory-kicker{display:inline-flex;align-items:center;gap:8px;color:#2563eb;font-size:12px;font-weight:900;text-transform:uppercase}.laboratory-header h2{margin:8px 0 4px;color:#0f172a;font-size:28px}.laboratory-header p{margin:0;color:#64748b;font-size:14px}.laboratory-toolbar{display:flex;align-items:center;gap:10px;margin:16px 0;flex-wrap:wrap}.laboratory-orders-toolbar{display:grid;grid-template-columns:auto minmax(250px,1.2fr) minmax(0,2.8fr) auto auto auto;align-items:center;gap:10px;margin:16px 0;padding:10px;border:1px solid #dfe7f2;border-radius:14px;background:#ffffffd1;box-shadow:0 5px 18px #1e40af0a}.laboratory-filter-heading{display:inline-flex;align-items:center;gap:7px;color:#334155;white-space:nowrap;font-size:13px}.laboratory-filter-heading svg{color:#2563eb}.laboratory-filter-heading span{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:11px;font-weight:900}.laboratory-filter-selects{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;min-width:0}.laboratory-orders-toolbar .form-select{min-width:0;width:100%;height:38px;padding:0 30px 0 11px;border-radius:9px;color:#334155;font-size:12px}.laboratory-overdue-toggle{display:inline-flex;align-items:center;gap:7px;color:#64748b;white-space:nowrap;font-size:12px;cursor:pointer}.laboratory-overdue-toggle input{accent-color:#2563eb}.laboratory-clear-filters{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:#2563eb;font-size:12px;font-weight:800;white-space:nowrap;cursor:pointer}.laboratory-columns-button{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 12px;border:1px solid #dbe3ef;border-radius:9px;background:#fff;color:#334155;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}.laboratory-columns-button:hover{border-color:#93c5fd;color:#1d4ed8;background:#eff6ff}.laboratory-search{display:flex;align-items:center;gap:8px;min-width:min(420px,100%);padding:0 12px;height:44px;border:1px solid #dbe3ef;border-radius:12px;background:#fff;color:#94a3b8}.laboratory-search input{flex:1;border:0;outline:0;background:transparent;color:#0f172a;font-size:14px}.laboratory-filter{height:40px;padding:0 16px;border:1px solid #dbe3ef;border-radius:999px;background:#fff;color:#64748b;font-weight:800;cursor:pointer}.laboratory-filter.active{background:#2563eb;border-color:#2563eb;color:#fff}.laboratory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.laboratory-card{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid #e5e7eb;border-radius:16px;background:#fff}.laboratory-card svg{color:#64748b}.laboratory-card--accent svg{color:#2563eb}.laboratory-card strong{display:block;color:#0f172a;font-size:24px}.laboratory-card span{color:#64748b;font-size:13px;font-weight:700}.laboratory-table-card{overflow:hidden;border:1px solid #e5e7eb;border-radius:16px;background:#fff}.laboratory-table-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:10px 16px;border-bottom:1px solid #e8eef6;background:#fff}.laboratory-table-summary div{display:flex;align-items:baseline;gap:10px}.laboratory-table-summary strong{color:#0f172a;font-size:15px}.laboratory-table-summary span{color:#94a3b8;font-size:12px}.laboratory-refreshing{color:#2563eb!important;font-weight:700}.laboratory-table-head,.laboratory-row{display:grid;grid-template-columns:1.1fr 1.4fr 1fr .8fr .8fr;gap:12px;align-items:center;padding:14px 16px}.laboratory-table-head{background:#f8fafc;color:#94a3b8;font-size:11px;font-weight:900;text-transform:uppercase}.laboratory-row{border-top:1px solid #eef2f7;color:#475569;font-size:14px}.laboratory-row strong{color:#0f172a}.laboratory-row em{justify-self:start;padding:5px 10px;border-radius:999px;background:#eef2ff;color:#4f46e5;font-style:normal;font-weight:800;font-size:12px}@media (max-width: 820px){.laboratory-page{padding:16px}.laboratory-header{flex-direction:column}.laboratory-grid{grid-template-columns:1fr}.laboratory-table-card{overflow-x:auto}.laboratory-table-head,.laboratory-row{min-width:720px}.laboratory-orders-toolbar{grid-template-columns:1fr auto}.laboratory-filter-heading{grid-column:1 / -1}.laboratory-search{min-width:0}.laboratory-filter-selects{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}.laboratory-overdue-toggle{grid-column:1}.laboratory-columns-picker{grid-column:2;justify-self:end}}@media (max-width: 520px){.laboratory-orders-toolbar{grid-template-columns:1fr}.laboratory-filter-heading,.laboratory-search,.laboratory-filter-selects,.laboratory-overdue-toggle,.laboratory-clear-filters,.laboratory-columns-picker{grid-column:1}.laboratory-filter-selects{grid-template-columns:1fr}.laboratory-columns-picker{justify-self:stretch}.laboratory-columns-button{justify-content:center;width:100%}}@media (max-width: 900px){.laboratory-analytics-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 600px){.laboratory-analytics-filter-title{align-items:flex-start}.laboratory-analytics-filter-title div{display:block}.laboratory-analytics-filter-title span{display:block;margin-top:3px}.laboratory-analytics-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.laboratory-analytics .laboratory-grid{grid-template-columns:1fr}}.laboratory-tabs{display:flex;gap:6px;margin:18px 0 14px;border-bottom:1px solid #e5e7eb}.laboratory-tab{border:0;background:transparent;padding:10px 16px;font-size:14px;font-weight:700;color:#64748b;cursor:pointer;border-bottom:2px solid transparent;display:flex;align-items:center;gap:6px}.laboratory-tab.active{color:#2563eb;border-bottom-color:#2563eb}.laboratory-tab-count{background:#2563eb;color:#fff;border-radius:999px;font-size:11px;padding:1px 7px}.laboratory-table-head--queue,.laboratory-row--queue{grid-template-columns:1.2fr 1.4fr .6fr 1fr .9fr 1fr .8fr 1fr}.laboratory-table-head--orders,.laboratory-row--orders{grid-template-columns:.9fr 1.2fr 1fr 1.1fr 1fr .8fr .9fr .9fr .9fr .9fr}.laboratory-row--orders,.laboratory-row--queue{cursor:pointer;font-size:13px}.laboratory-row--orders:hover{background:#f8fafc}.laboratory-row--orders>div{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.laboratory-row--orders>div:first-child{overflow:visible;white-space:normal}.lab-status-cell{display:flex;gap:6px;align-items:center}.laboratory-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.laboratory-lab-card{display:flex;flex-direction:column;gap:4px;text-align:left;padding:16px;border:1px solid #e5e7eb;border-radius:14px;background:#fff;cursor:pointer;font-size:13px;color:#64748b}.laboratory-lab-card strong{color:#0f172a;font-size:15px}.laboratory-lab-card.is-archived{opacity:.55}.laboratory-analytics-tables{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-top:14px}.laboratory-analytics-table{border:1px solid #e5e7eb;border-radius:14px;background:#fff;padding:14px}.laboratory-analytics-row{display:flex;justify-content:space-between;font-size:13px;padding:5px 0;border-top:1px solid #f1f5f9}.laboratory-analytics-filters{margin:16px 0;padding:14px;border:1px solid #dfe7f2;border-radius:14px;background:#ffffffd1;box-shadow:0 5px 18px #1e40af0a}.laboratory-analytics-filter-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.laboratory-analytics-filter-title div{display:flex;align-items:baseline;gap:10px}.laboratory-analytics-filter-title strong{color:#334155;font-size:14px}.laboratory-analytics-filter-title span{color:#94a3b8;font-size:12px}.laboratory-analytics-filter-title button{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:#2563eb;font-size:12px;font-weight:800;cursor:pointer}.laboratory-analytics-filter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:end}.laboratory-analytics-filter-grid .form-label{gap:6px;color:#64748b;font-size:11px;font-weight:800}.laboratory-analytics-filter-grid .form-input,.laboratory-analytics-filter-grid .form-select{width:100%;min-width:0;height:40px;border-radius:9px;font-size:12px}.laboratory-analytics-filter-grid .form-select{padding-left:11px;padding-right:28px}.laboratory-analytics .laboratory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.laboratory-analytics .laboratory-card{min-height:84px}.list-loading,.list-empty{padding:24px;text-align:center;color:#94a3b8;font-size:13px}.btn-sm{padding:4px 10px;font-size:12px}.laboratory-columns-picker{position:relative;margin-left:auto}.laboratory-columns-dropdown{position:absolute;z-index:20;top:calc(100% + 4px);right:0;min-width:240px;max-height:320px;overflow-y:auto;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0f172a1f;padding:8px}.laboratory-columns-dropdown label{display:flex;align-items:center;gap:8px;padding:5px 6px;font-size:12.5px;color:#334155;cursor:pointer}.laboratory-columns-dropdown label:hover{background:#f8fafc;border-radius:6px}.sa-page{display:flex;flex-direction:column;min-height:100vh;background:#f4f6fb}.sa-header{background:#0b1330;color:#fff;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.sa-title-block{display:flex;align-items:center;gap:10px}.sa-crown{font-size:24px}.sa-title{font-size:22px;font-weight:700;margin:0}.sa-stats{display:flex;gap:24px}.sa-stat{display:flex;flex-direction:column;align-items:center}.sa-stat span{font-size:22px;font-weight:700}.sa-stat label{font-size:11px;opacity:.65;text-transform:uppercase;letter-spacing:.5px}.sa-success{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46;padding:10px 20px;font-size:14px;cursor:pointer}.audit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.audit-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:6px;box-shadow:0 1px 2px #0b13300d;border-left:3px solid #d1d5db}.audit-value{font-size:19px;font-weight:700;color:#0b1330;line-height:1.2}.audit-label{font-size:11px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.audit-card--ok{border-left-color:#10b981}.audit-card--ok .audit-value{color:#059669}.audit-card--bad{border-left-color:#ef4444;background:#fef2f2}.audit-card--bad .audit-value{color:#b91c1c}.audit-card--warn{border-left-color:#f59e0b;background:#fffbeb}.audit-card--warn .audit-value{color:#b45309}.audit-card--neutral{border-left-color:#9ca3af}.audit-card--neutral .audit-value{color:#6b7280}.sa-tabs{display:flex;background:#fff;border-bottom:1px solid #e5e7eb;padding:0 20px}.sa-tab{padding:12px 18px;border:none;background:none;font-size:14px;font-weight:500;cursor:pointer;color:#6b7280;border-bottom:2px solid transparent;display:flex;align-items:center;gap:6px}.sa-tab.active{color:#0b1330;border-bottom-color:#0b1330}.sa-badge{background:#ef4444;color:#fff;font-size:11px;font-weight:700;border-radius:20px;padding:1px 6px}.sa-header-user{display:flex;align-items:center;gap:10px}.sa-profile-btn{display:flex;align-items:center;gap:8px;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:8px;padding:6px 12px;cursor:pointer;font-size:14px}.sa-profile-btn:hover{background:#fff3}.sa-avatar-img{width:30px;height:30px;border-radius:50%;object-fit:cover}.sa-avatar-init{width:30px;height:30px;border-radius:50%;background:#ffffff40;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.sa-profile-name{font-weight:600}.sa-logout-btn{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fffc;border-radius:7px;padding:6px 14px;font-size:13px;cursor:pointer}.sa-logout-btn:hover{background:#ffffff1a;color:#fff}.requests-list{display:flex;flex-direction:column;gap:10px}.request-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px 20px;display:flex;align-items:center;gap:16px}.request-avatar{width:44px;height:44px;border-radius:50%;background:#0b1330;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.request-info{flex:1}.request-name{font-size:15px;font-weight:700;color:#0b1330}.request-email{font-size:13px;color:#6b7280}.request-date{font-size:12px;color:#9ca3af;margin-top:2px}.sa-content{flex:1;overflow-y:auto;padding:22px 26px 32px;display:flex;flex-direction:column;gap:18px}.sa-pagination{display:flex;align-items:center;justify-content:center;gap:14px;padding:4px 0 12px;color:#6b7280;font-size:13px}.sa-pagination button{border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:8px;padding:7px 14px;font-size:13px;cursor:pointer}.sa-pagination button:hover:not(:disabled){border-color:#0b1330;color:#0b1330}.sa-pagination button:disabled{opacity:.4;cursor:not-allowed}.sa-loading{text-align:center;padding:40px;color:#9ca3af}.sa-empty{text-align:center;padding:60px;color:#9ca3af;font-size:15px}.sa-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px}.sa-count{font-size:13px;font-weight:600;color:#64748b}.sa-search-wrap{position:relative;display:flex;align-items:center}.sa-search-wrap>svg{position:absolute;left:12px;color:#6b7280;pointer-events:none}.sa-search{border:1px solid #d1d5db;border-radius:8px;padding:8px 14px 8px 38px;font-size:14px;width:300px;outline:none}.sa-search:focus{border-color:#0b1330}.clinics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,390px),440px));gap:18px;align-items:start}.clinic-card{min-width:0;background:#fff;border-radius:8px;padding:18px;box-shadow:0 2px 8px #0f172a0d;display:flex;flex-direction:column;gap:14px;cursor:pointer;border:1px solid #dbe3ee;outline:none;transition:border-color .15s,box-shadow .15s,transform .15s}.clinic-card:hover{border-color:#94a3b8;box-shadow:0 8px 22px #0f172a17;transform:translateY(-1px)}.clinic-card:focus-visible{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb29}.clinic-card-header{display:flex;align-items:center;gap:12px;min-width:0}.clinic-card-info{min-width:0}.clinic-icon{font-size:28px}.clinic-icon-sq{width:40px;height:40px;border-radius:10px;background:#0b1330;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.clinic-name{overflow:hidden;font-size:16px;font-weight:700;color:#0b1330;text-overflow:ellipsis;white-space:nowrap}.clinic-code{overflow:hidden;font-size:12px;color:#94a3b8;font-family:monospace;text-overflow:ellipsis;white-space:nowrap}.clinic-meta{display:flex;flex-direction:column;gap:5px;min-height:74px;font-size:13px;line-height:1.35;color:#64748b}.no-director{color:#d97706;font-weight:600}.clinic-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 -18px -18px;padding:14px 18px 18px;border-top:1px solid #e7edf4;background:#fbfcfe;border-radius:0 0 8px 8px}.btn-sm{min-width:0;min-height:34px;padding:7px 10px;border:1px solid #cfd8e3;background:#fff;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:#334155;font-size:12px;font-weight:600;line-height:1.2;cursor:pointer}.btn-sm:hover{background:#f3f4f6}.clinic-enter-btn{display:inline-flex;align-items:center;gap:6px;border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.clinic-enter-btn:hover{background:#dbeafe}.btn-sm.danger{border-color:#fca5a5;background:#fef2f2;color:#dc2626}.btn-sm.danger:hover{background:#fee2e2}.sa-table{width:100%;border-collapse:collapse;font-size:14px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 4px #00000012}.sa-table th{background:#f9fafb;padding:10px 16px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;border-bottom:1px solid #e5e7eb}.sa-table td{padding:10px 16px;border-bottom:1px solid #f3f4f6}.sa-table tr:last-child td{border-bottom:none}.sa-table tr:hover td{background:#f9fafb}.role-pill{display:inline-block;padding:2px 8px;border-radius:20px;font-size:12px;font-weight:600}.role-pill.super{background:#fef3c7;color:#92400e}.role-pill.normal{background:#e5e7eb;color:#374151}.assign-clinic-name{font-size:14px;padding:8px 12px;background:#f9fafb;border-radius:7px}.form-hint{font-size:13px;color:#9ca3af;margin:0;line-height:1.5}.btn-primary{background:#0b1330;color:#fff;border:none;border-radius:7px;padding:9px 18px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:14px;font-weight:600;cursor:pointer}.btn-primary:disabled{opacity:.6}.btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:7px;padding:8px 14px;font-size:13px;font-weight:500;cursor:pointer}.icon-btn{background:none;border:none;cursor:pointer;padding:5px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;opacity:.7;color:#374151}.icon-btn:hover{opacity:1;background:#f3f4f6}.spin{animation:sa-spin 1s linear infinite}@keyframes sa-spin{to{transform:rotate(360deg)}}.form-label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;color:#374151}.form-input,.form-select{border:1px solid #d1d5db;border-radius:7px;padding:8px 10px;font-size:14px;outline:none}.form-input:focus,.form-select:focus{border-color:#0b1330}.form-error{background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;border-radius:7px;padding:8px 12px;font-size:13px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:#fff;border-radius:12px;width:100%;max-width:460px;max-height:90vh;overflow-y:auto}.modal.modal-wide{max-width:640px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 0}.modal-header h3{font-size:17px;font-weight:700;color:#0b1330;margin:0}.modal-close{background:none;border:none;font-size:18px;cursor:pointer;color:#9ca3af}.modal-body{padding:16px 20px;display:flex;flex-direction:column;gap:14px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:0 20px 20px}.detail-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.detail-meta-grid>div{background:#f9fafb;border-radius:8px;padding:10px 14px;display:flex;flex-direction:column;gap:2px}.detail-label{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.4px}.detail-members{display:flex;flex-direction:column;gap:8px}.detail-member-row{display:flex;align-items:center;gap:12px;padding:10px;background:#f9fafb;border-radius:8px}.card-section-title{font-size:12px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;margin-top:8px}.activity-table-wrap{overflow-x:auto}@media (max-width: 640px){.sa-content{padding:16px}.sa-toolbar{align-items:stretch;flex-direction:column}.sa-toolbar .btn-primary{width:100%}.clinics-grid,.clinic-actions{grid-template-columns:minmax(0,1fr)}}.acv-page{display:flex;flex-direction:column;min-height:100vh;background:#f4f6fb}.acv-loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:16px;color:#6b7280}.acv-header{background:#0b1330;color:#fff;padding:16px 28px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.acv-back-btn{display:flex;align-items:center;gap:6px;background:#ffffff1a;border:none;color:#fff;padding:8px 14px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background .15s;white-space:nowrap}.acv-back-btn:hover{background:#ffffff2e}.acv-enter-btn{background:#fff;color:#0b1330}.acv-enter-btn:hover{background:#e0f2fe}.acv-header-info{display:flex;align-items:center;gap:14px;flex:1}.acv-clinic-icon{width:46px;height:46px;border-radius:12px;background:#ffffff26;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;flex-shrink:0}.acv-title{font-size:20px;font-weight:700;margin:0 0 2px}.acv-code{font-size:12px;opacity:.55;font-family:monospace}.acv-header-stats{display:flex;gap:20px;flex-wrap:wrap}.acv-stat{display:flex;flex-direction:column;align-items:center;min-width:60px}.acv-stat span{font-size:20px;font-weight:700}.acv-stat label{font-size:10px;opacity:.6;text-transform:uppercase;letter-spacing:.4px}.acv-stat.revenue span{color:#34d399}.acv-success{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46;padding:10px 20px;font-size:14px;cursor:pointer}.acv-tabs{display:flex;background:#fff;border-bottom:1px solid #e5e7eb;padding:0 20px;overflow-x:auto;gap:0}.acv-tab{display:flex;align-items:center;gap:6px;padding:12px 16px;border:none;background:none;font-size:13px;font-weight:500;cursor:pointer;color:#6b7280;border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s}.acv-tab.active{color:#0b1330;border-bottom-color:#0b1330}.acv-tab:hover:not(.active){color:#374151}.acv-content{padding:20px 24px;flex:1}.acv-tab-loading{padding:32px;text-align:center;color:#9ca3af}.acv-card{background:#fff;border-radius:14px;border:1px solid #e5e7eb;overflow:hidden}.acv-card-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f3f4f6}.acv-card-header h3{margin:0;font-size:16px;font-weight:600}.acv-card-subtitle{display:block;margin-top:3px;color:#94a3b8;font-size:12px}.acv-payments-total{font-size:14px;color:#374151}.acv-payments-total strong{color:#059669;font-size:16px}.acv-info-grid{padding:16px 20px;display:flex;flex-direction:column;gap:2px}.acv-info-row{display:flex;align-items:baseline;gap:12px;padding:10px 0;border-bottom:1px solid #f9fafb}.acv-info-row:last-child{border-bottom:none}.acv-info-row span{width:140px;font-size:13px;color:#9ca3af;flex-shrink:0}.acv-info-row strong{font-size:14px;color:#111827}.acv-email{font-size:12px;color:#9ca3af;margin-left:8px}.acv-edit-form{padding:16px 20px;display:flex;flex-direction:column;gap:12px}.acv-form-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:8px}.acv-staff-list{padding:8px 0}.acv-staff-row{display:flex;align-items:center;gap:12px;padding:10px 20px;border-bottom:1px solid #f9fafb;transition:background .1s}.acv-staff-row:last-child{border-bottom:none}.acv-staff-row:hover{background:#fafafa}.acv-avatar{width:38px;height:38px;border-radius:50%;background:#e0e7ff;color:#3730a3;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;flex-shrink:0}.acv-staff-info{flex:1;min-width:0}.acv-staff-name{font-size:14px;font-weight:600;color:#111827}.acv-staff-email{font-size:12px;color:#9ca3af}.acv-role-select{border:1px solid #e5e7eb;border-radius:6px;padding:4px 8px;font-size:13px;color:#374151;background:#f9fafb;cursor:pointer}.btn-icon{background:none;border:1px solid transparent;border-radius:6px;padding:6px;cursor:pointer;display:flex;align-items:center;transition:all .15s}.btn-icon.danger{color:#ef4444}.btn-icon.danger:hover{background:#fef2f2;border-color:#fecaca}.acv-table{width:100%;border-collapse:collapse;font-size:14px}.acv-table th{text-align:left;padding:10px 16px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;background:#fafafa;border-bottom:1px solid #f3f4f6}.acv-table td{padding:11px 16px;border-bottom:1px solid #f9fafb;color:#374151}.acv-table tbody tr:hover td{background:#fafafa}.acv-table tbody tr:last-child td{border-bottom:none}.acv-table-wrap{overflow-x:auto}.acv-archive-header{gap:16px}.acv-archive-filters{display:flex;align-items:center;gap:8px}.acv-archive-search{position:relative;display:flex;align-items:center}.acv-archive-search svg{position:absolute;left:10px;color:#94a3b8;pointer-events:none}.acv-archive-search input,.acv-archive-filters select{min-height:34px;border:1px solid #dbe3ee;border-radius:6px;background:#fff;color:#334155;font-size:13px;outline:none}.acv-archive-search input{width:220px;padding:7px 10px 7px 32px}.acv-archive-filters select{padding:7px 30px 7px 10px}.acv-archive-search input:focus,.acv-archive-filters select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.acv-archive-date{white-space:nowrap;color:#64748b!important;font-size:12px}.acv-method{display:inline-flex;min-width:54px;justify-content:center;padding:3px 7px;border-radius:4px;font-size:11px;font-weight:700}.acv-method-post{background:#ecfdf5;color:#047857}.acv-method-put,.acv-method-patch{background:#eff6ff;color:#1d4ed8}.acv-method-delete{background:#fef2f2;color:#b91c1c}.acv-view-btn{color:#2563eb}.acv-view-btn:hover{border-color:#bfdbfe;background:#eff6ff}.acv-archive-modal{max-width:760px}.acv-archive-summary{display:grid;gap:7px;padding:12px;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;color:#475569;font-size:13px}.acv-json-section h4{margin:0 0 7px;color:#334155;font-size:13px}.acv-json-section pre{max-height:260px;margin:0;padding:12px;overflow:auto;border:1px solid #e2e8f0;border-radius:6px;background:#0f172a;color:#e2e8f0;font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word}@media (max-width: 760px){.acv-archive-header,.acv-archive-filters{align-items:stretch;flex-direction:column}.acv-archive-search input,.acv-archive-filters select{width:100%}}.acv-status{display:inline-block;padding:2px 10px;border-radius:20px;font-size:12px;font-weight:500}.acv-status.scheduled,.acv-status.pending{background:#eff6ff;color:#1d4ed8}.acv-status.confirmed{background:#f0fdf4;color:#15803d}.acv-status.completed,.acv-status.paid{background:#f0fdf4;color:#166534}.acv-status.cancelled{background:#fef2f2;color:#b91c1c}.acv-status.no_show{background:#fefce8;color:#854d0e}.acv-status.rescheduled{background:#f1f5f9;color:#475569}.acv-code-tag{font-size:12px;background:#f3f4f6;padding:2px 8px;border-radius:4px;color:#374151;font-family:monospace}.acv-empty{padding:32px;text-align:center;color:#9ca3af;font-size:14px}.svc-dur-hint{font-size:.78rem;color:#6366f1;margin-top:4px;margin-bottom:4px}.svc-dur-hint--warn{color:#f59e0b;font-weight:500}.multi-pick-wrap{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:6px}.pick-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 8px 3px 10px;border-radius:20px;font-size:.78rem;font-weight:500}.pick-pill--doctor{background:#ede9fe;color:#6d28d9}.pick-pill--service{background:#d1fae5;color:#065f46}.pick-pill-x{display:flex;align-items:center;background:none;border:none;cursor:pointer;padding:0;color:inherit;opacity:.6;line-height:1}.pick-pill-x:hover{opacity:1}.multi-pick-wrap .form-select{flex:1;min-width:160px}.appts-page{display:flex;flex-direction:column;gap:16px;padding:20px 24px;height:100%;overflow-y:auto;background:var(--bg, #f4f6fb)}.appts-header-card{background:var(--surface, #fff);border-radius:16px;padding:20px 24px;border:1px solid var(--border, #e5e7eb);display:flex;flex-direction:column;gap:18px;flex-shrink:0}.appts-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.appts-title-wrap,.appts-header-actions{display:flex;align-items:center;gap:10px}.appts-title{font-size:22px;font-weight:800;color:var(--text, #111827);margin:0}.appts-count-badge{min-width:28px;height:28px;padding:0 9px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#2f80ed;color:#fff;font-size:14px;font-weight:800}.appts-today-badge{display:inline-flex;align-items:center;gap:5px;background:#eef2ff;color:#6366f1;font-size:12px;font-weight:600;border-radius:20px;padding:3px 10px}.appts-subtitle{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-3, #9ca3af);margin-top:4px}.appts-filters{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;width:100%}.af-group{display:flex;flex-direction:column;gap:6px}.af-group--sort{margin-left:auto}.af-group--bottom{justify-content:flex-end;align-self:flex-end;margin-bottom:0}.af-label{font-size:11px;font-weight:700;color:var(--text-3, #9ca3af);text-transform:uppercase;letter-spacing:.4px;height:13px;line-height:13px}.appts-search{position:relative;display:flex;align-items:center}.search-icon-abs{position:absolute;left:10px;color:#9ca3af;pointer-events:none;flex-shrink:0}.appts-search .search-input{height:36px;box-sizing:border-box;border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:0 14px 0 32px;font-size:14px;width:260px;outline:none;background:var(--bg, #f9fafb);color:var(--text, #111827)}.appts-search .search-input:focus{border-color:#6366f1;background:var(--surface, #fff)}.appts-search--header .search-input{width:300px;height:40px;border-radius:12px;background:var(--bg, #f8fafc)}.period-tabs{display:flex;align-items:center;gap:5px;height:36px}.period-btn{height:36px;box-sizing:border-box;padding:0 14px;border-radius:20px;border:1px solid var(--border, #e5e7eb);font-size:13px;font-weight:500;cursor:pointer;background:var(--bg, #f9fafb);color:var(--text-2, #6b7280);transition:all .15s;white-space:nowrap}.period-btn:hover{border-color:#6366f1;color:#6366f1}.period-btn.active{background:#6366f1;color:#fff;border-color:#6366f1}.sort-select-wrap{position:relative;display:flex;align-items:center}.sort-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:36px;box-sizing:border-box;border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:0 34px 0 12px;font-size:13px;font-weight:500;background:var(--bg, #f9fafb);color:var(--text, #111827);cursor:pointer;outline:none;white-space:nowrap}.sort-select:focus{border-color:#6366f1}.sort-chevron{position:absolute;right:10px;color:#9ca3af;pointer-events:none}.filter-toggle-btn{display:flex;align-items:center;gap:6px;height:36px;box-sizing:border-box;padding:0 16px;border-radius:10px;border:1px solid var(--border, #e5e7eb);background:var(--bg, #f9fafb);color:var(--text-2, #6b7280);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.filter-toggle-btn:hover,.filter-toggle-btn.active{border-color:#6366f1;color:#6366f1;background:#eef2ff}.appts-bday-btn{position:relative}.appts-bday-badge{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 3px;border-radius:999px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.cal-bday-list{display:flex;flex-direction:column;gap:6px}.cal-bday-list-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:var(--bg, #f9fafb);cursor:pointer;transition:background .15s}.cal-bday-list-row:hover{background:#eef2ff}.cal-bday-list-name{font-size:13px;font-weight:600;color:#374151}.cal-bday-list-sub{font-size:12px;color:#9ca3af;margin-top:2px}.appts-filter-extra{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:6px;padding:14px;border-radius:12px;background:var(--bg, #f9fafb);border:1px solid var(--border, #f3f4f6)}.appts-filter-extra .form-select{min-width:0;width:100%;height:36px;box-sizing:border-box}@media (max-width: 900px){.appts-filter-extra{grid-template-columns:repeat(2,minmax(0,1fr))}.af-group--sort{margin-left:0}}@media (max-width: 560px){.appts-filter-extra{grid-template-columns:1fr}}.appts-custom-range{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}.appts-date-field{display:flex;align-items:center;gap:5px}.appts-date-lbl{font-size:11px;font-weight:700;color:var(--text-3, #9ca3af);white-space:nowrap;text-transform:uppercase;letter-spacing:.3px}.appts-date-input{border:1px solid var(--border, #e5e7eb);border-radius:9px;padding:6px 10px;font-size:13px;background:var(--bg, #f9fafb);color:var(--text, #111827);outline:none;cursor:pointer}.appts-date-input:focus{border-color:#6366f1;background:var(--surface, #fff);box-shadow:0 0 0 3px #6366f11a}.appts-date-sep{color:var(--text-3, #9ca3af);font-size:14px}.appts-table-card{background:var(--surface, #fff);border-radius:16px;border:1px solid var(--border, #e5e7eb);overflow:hidden;flex:1;min-height:0}.appts-table-wrap{overflow-x:auto;height:100%}.appts-table{display:block;width:100%;font-size:13px}.appts-table colgroup{display:none}.appts-table thead,.appts-table tbody{display:block;width:100%}.appts-table tr{display:grid;grid-template-columns:13fr 19fr 14fr 14fr 14fr 12fr 14fr;width:100%}.appts-table th{display:block;box-sizing:border-box;padding:10px 16px;text-align:left;font-size:11px;font-weight:700;color:var(--text-3, #9ca3af);text-transform:uppercase;letter-spacing:.5px;background:var(--bg, #f4f6fb);border-bottom:2px solid var(--border, #e5e7eb);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:sticky;top:0;z-index:2}.appts-table td{display:flex;align-items:center;box-sizing:border-box;min-width:0;padding:0 16px;height:60px;border-bottom:1px solid var(--border, #f0f0f5)}.appts-table th+th{border-left:1px solid var(--border, #e5e7eb)}.appts-table td+td{border-left:1px solid var(--border, #f0f0f5)}.appt-row{cursor:pointer;transition:background .1s}.appt-row:hover td{background:var(--bg, #f9fafb)}.appt-row:last-child td{border-bottom:none}.appt-dt{display:flex;flex-direction:column;gap:1px}.appt-date-str{font-size:13px;font-weight:700;color:var(--text, #111827);white-space:nowrap}.appt-time-str{font-size:12px;color:var(--text-3, #9ca3af);white-space:nowrap}.td-clip{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.appt-patient-cell{display:flex;align-items:center;gap:8px;overflow:hidden}.ap-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.ap-name{font-size:13px;font-weight:600;color:var(--text, #111827);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appt-doctor{font-size:13px;color:var(--text, #111827);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appt-room-tag{display:inline-block;flex-shrink:0;margin-top:3px;margin-left:6px;font-size:11px;color:#6366f1;background:#eef2ff;border-radius:6px;padding:1px 6px;white-space:nowrap}.appt-service-col{font-size:13px;color:var(--text, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appt-complaint{font-size:11px;color:var(--text-3, #9ca3af);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appt-pay-col{font-size:13px;font-weight:600;color:var(--text-2, #6b7280);white-space:nowrap}.status-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;white-space:nowrap}.sb-indigo{background:#eef2ff;color:#6366f1}.sb-sky{background:#e0f2fe;color:#0369a1}.sb-orange{background:#fff7ed;color:#ea580c}.sb-green{background:#d1fae5;color:#059669}.sb-gray{background:#f3f4f6;color:#9ca3af}.sb-yellow{background:#fef3c7;color:#d97706}.sb-red{background:#fee2e2;color:#991b1b}.pay-badge{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;white-space:nowrap}.pay-badge--paid{background:#dcfce7;color:#166534}.pay-badge--partial{background:#fef3c7;color:#92400e}.pay-badge--unpaid{background:#fee2e2;color:#991b1b}.pay-badge--none{background:#f1f5f9;color:#475569}.appt-actions{display:flex;gap:5px;align-items:center}.act-btn{padding:5px 10px;border-radius:7px;border:none;font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:opacity .15s;white-space:nowrap}.act-btn:hover{opacity:.75}.act-green{background:#d1fae5;color:#059669}.act-purple{background:#eef2ff;color:#6366f1;padding:5px 8px}.act-paid{background:#d1fae5;color:#059669;padding:5px 8px;cursor:default}.act-red{background:#fee2e2;color:#dc2626;padding:5px 8px}.appts-list-wrap{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.appts-scroll{flex:1;min-height:0;overflow-y:auto;padding:2px 4px 6px}.appt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(370px,1fr));gap:14px}.apc{position:relative;overflow:hidden;display:flex;flex-direction:column;background:var(--surface, #fff);border:1px solid var(--border, #E6EAF0);border-radius:8px;padding:16px 18px 15px 20px;cursor:pointer;box-shadow:var(--shadow-elev, 0 1px 2px rgba(16, 24, 40, .05));transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease}.apc:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--status-color, var(--brand, #2F80ED))}.apc:hover{transform:translateY(-2px);box-shadow:0 10px 24px #1018281a;border-color:var(--brand-100, #D7E7FD)}.apc-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:13px}.apc-time{display:flex;flex-direction:column;gap:1px}.apc-date{font-size:12px;font-weight:600;color:var(--text-3, #93A1B0);text-transform:capitalize}.apc-hours{font-size:17px;font-weight:800;color:var(--text, #1E2A38);letter-spacing:-.02em}.apc-patient{display:flex;align-items:center;gap:11px;margin-bottom:13px;min-width:0}.apc .ap-avatar{width:40px;height:40px;font-size:13px;background:linear-gradient(135deg,var(--brand, #2F80ED),var(--brand-strong, #2563EB))}.apc-pinfo{min-width:0}.apc-name{font-size:15px;font-weight:700;color:var(--text, #1E2A38);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.apc-doctor{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--text-2, #5A6B7B);margin-top:3px;min-width:0}.apc-doctor>svg{color:var(--text-3, #93A1B0);flex-shrink:0}.apc-doctor-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apc-doctor .appt-room-tag{margin-top:0}.apc-body{display:flex;flex-direction:column;gap:7px;padding:13px 0;border-top:1px solid var(--border, #EEF1F6);border-bottom:1px solid var(--border, #EEF1F6);margin-bottom:13px}.apc-row{display:flex;gap:10px;font-size:13px;align-items:baseline}.apc-label{color:var(--text-3, #93A1B0);min-width:62px;flex-shrink:0}.apc-val{color:var(--text, #1E2A38);font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apc-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}.apc-price{font-size:17px;font-weight:800;color:var(--text, #1E2A38);letter-spacing:0;white-space:nowrap}.apc-actions{display:flex;align-items:center;gap:6px}@media (max-width: 560px){.appt-grid{grid-template-columns:1fr}}.type-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.type-consultation{background:#eaf2fe;color:#1d6fe0}.type-repeat{background:#f3f0ff;color:#7c3aed}[data-theme=dark] .type-consultation{background:#2f80ed29;color:#7ab6ff}[data-theme=dark] .type-repeat{background:#7c3aed33;color:#c4b5fd}.apc-badges{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0}.view-title{display:flex;align-items:center;gap:10px;min-width:0}.view-title h3{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis}.btn-open-profile{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px;margin-bottom:12px;border:1.5px solid var(--brand, #2F80ED);background:var(--brand-50, #EAF2FE);color:var(--brand-text, #1D6FE0);border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s ease,transform .15s ease}.btn-open-profile:hover{background:var(--brand-100, #D7E7FD);transform:translateY(-1px)}.type-field{gap:8px}.type-toggle{display:flex;gap:8px}.tt-btn{flex:1;padding:10px 12px;border-radius:9px;cursor:pointer;border:1.5px solid var(--border, #E6EAF0);background:var(--surface, #fff);font-size:13px;font-weight:600;color:var(--text-2, #5A6B7B);transition:background .15s ease,border-color .15s ease,color .15s ease}.tt-btn:hover{border-color:var(--brand, #2F80ED);color:var(--brand-text, #1D6FE0)}.tt-btn.active{background:var(--brand, #2F80ED);border-color:var(--brand, #2F80ED);color:#fff}.appt-list{display:flex;flex-direction:column;gap:8px}.alr{position:relative;overflow:hidden;display:grid;align-items:center;gap:14px;grid-template-columns:54px 40px minmax(220px,1fr) 112px 96px 92px;padding:11px 16px 11px 20px;background:var(--surface, #fff);border:1px solid var(--border, #E6EAF0);border-radius:12px;cursor:pointer;transition:box-shadow .15s ease,transform .15s ease,border-color .15s ease}.alr:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--status-color, var(--brand, #2F80ED))}.alr:hover{box-shadow:0 8px 20px #10182817;transform:translate(2px);border-color:var(--brand-100, #D7E7FD)}.alr-time{display:flex;flex-direction:column}.alr-h1{font-size:14px;font-weight:800;color:var(--text, #1E2A38)}.alr-h2{font-size:11px;color:var(--text-3, #93A1B0);text-transform:capitalize}.alr-av{width:38px;height:38px;font-size:13px;background:linear-gradient(135deg,var(--brand, #2F80ED),var(--brand-strong, #2563EB))}.alr-main{min-width:0}.alr-name{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--text, #1E2A38);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alr-sub{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-2, #5A6B7B);margin-top:2px;min-width:0}.alr-sub>svg{color:var(--text-3, #93A1B0);flex-shrink:0}.alr-sub-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alr-sub .appt-room-tag{margin-top:0}.alr>.status-badge{justify-self:end;text-align:center;max-width:112px;overflow:hidden;text-overflow:ellipsis}.alr-price{display:flex;flex-direction:column;align-items:flex-end;justify-self:end;gap:4px;width:96px;font-size:14px;font-weight:800;color:var(--text, #1E2A38);white-space:nowrap;text-align:right}.alr-actions{display:flex;align-items:center;justify-content:flex-end;justify-self:end;gap:6px;width:92px}@media (max-width: 980px){.alr{grid-template-columns:54px 40px minmax(180px,1fr) 104px 88px 84px;gap:10px;padding-right:12px}.alr>.status-badge{max-width:104px}.alr-price{width:88px;font-size:13px}.alr-actions{width:84px}.act-btn{padding-left:8px;padding-right:8px}}@media (max-width: 720px){.alr{grid-template-columns:52px minmax(0,1fr) auto}.alr-av,.alr>.status-badge,.alr-price{display:none}.alr-actions{justify-content:flex-end}}.appts-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:64px 24px;color:#9ca3af;font-size:14px}.appts-empty-title{font-size:16px;font-weight:600;color:var(--text-2, #6b7280)}.appts-empty-sub{font-size:13px;color:var(--text-3, #9ca3af)}.loading-spinner{width:28px;height:28px;border:3px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.view-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}.view-info-item{display:flex;flex-direction:column;gap:3px}.view-info-item>span:first-child{font-size:11px;color:#9ca3af;text-transform:uppercase;font-weight:600;letter-spacing:.4px}.view-info-item strong{font-size:14px;color:var(--text, #111827)}.view-full{grid-column:1 / -1}.view-actions{display:flex;gap:8px;flex-wrap:wrap}.btn-status{padding:7px 16px;border-radius:8px;border:none;font-size:13px;font-weight:600;cursor:pointer}.btn-status.in_progress{background:#ede9fe;color:#7c3aed}.btn-status.no_show{background:#fef3c7;color:#d97706}.btn-status.cancelled{background:#fee2e2;color:#dc2626}.btn-status.completed{background:#d1fae5;color:#059669}.btn-pay-full{display:flex;align-items:center;gap:6px;padding:8px 18px;border-radius:10px;border:none;background:#6366f1;color:#fff;font-size:13px;font-weight:600;cursor:pointer}.btn-paid-full{display:flex;align-items:center;gap:6px;padding:8px 18px;border-radius:10px;background:#d1fae5;color:#059669;font-size:13px;font-weight:600}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--surface, #fff);border-radius:16px;width:480px;max-width:95vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000026}.pay-appt-info{background:var(--bg, #f9fafb);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:3px}.pay-appt-info strong{font-size:15px;color:var(--text, #111827)}.pay-service-name{font-size:13px;color:var(--text-2, #6b7280)}.import-catalog-form{display:flex;flex-direction:column;gap:14px}.import-catalog-instructions{font-size:13px;color:var(--text-2, #6b7280)}.import-catalog-template-link{display:inline-flex;align-items:center;gap:5px;align-self:flex-start;font-size:12px;font-weight:600;color:#6366f1;text-decoration:none}.import-catalog-template-link:hover{text-decoration:underline}.import-catalog-file-picker{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1.5px dashed var(--border, #d1d5db);border-radius:8px;cursor:pointer;font-size:13px;color:var(--text-2, #6b7280);transition:border-color .15s}.import-catalog-file-picker:hover{border-color:#6366f1}.import-catalog-summary{display:flex;gap:14px;font-size:12.5px}.import-catalog-summary-ok{display:inline-flex;align-items:center;gap:5px;color:#10b981;font-weight:600}.import-catalog-summary-bad{display:inline-flex;align-items:center;gap:5px;color:#d97706;font-weight:600}.import-catalog-preview{max-height:260px;overflow-y:auto;border:1px solid var(--border, #e5e7eb);border-radius:8px}.import-catalog-preview table{width:100%;border-collapse:collapse;font-size:12.5px}.import-catalog-preview th,.import-catalog-preview td{padding:6px 9px;text-align:left;border-bottom:1px solid var(--border, #eef1f6)}.import-catalog-preview th{background:var(--bg, #f9fafb);font-weight:700;color:var(--text-3, #9ca3af);position:sticky;top:0}.import-catalog-row--invalid{background:#fef2f2;color:#b91c1c}.import-catalog-actions{display:flex;justify-content:flex-end;gap:10px}.settings-page{padding:24px;overflow-y:auto;height:100%}.settings-shell{max-width:1240px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.settings-loading{display:flex;align-items:center;justify-content:center;height:200px;color:#9ca3af;font-size:14px}.settings-header{padding:22px 24px;background:linear-gradient(180deg,#0b13300a,#0b133000);border:1px solid var(--border, #e5e7eb);border-radius:18px}.settings-title{font-size:24px;font-weight:800;color:var(--text, #111827);margin:0 0 4px;letter-spacing:-.02em}.settings-sub{font-size:14px;color:var(--text-2, #6b7280);margin:0}.settings-body{display:flex;flex-direction:column;gap:20px}.settings-top-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.85fr);gap:20px;align-items:start}.settings-column{display:flex;flex-direction:column;gap:20px}.settings-card{background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:14px;padding:20px 24px;box-shadow:0 1px 2px #0f172a0a}.settings-card-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--text, #111827);margin-bottom:18px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.s-full{grid-column:1 / -1}.s-label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;color:var(--text-2, #374151)}.s-label-text{font-size:13px;font-weight:500;color:var(--text-2, #374151);margin-bottom:8px}.s-input{border:1px solid var(--border, #d1d5db);border-radius:8px;padding:9px 12px;font-size:14px;outline:none;background:var(--bg, #f9fafb);color:var(--text, #111827);transition:border .15s}.s-input:focus{border-color:#6366f1;background:var(--surface, #fff);box-shadow:0 0 0 3px #6366f114}.s-input.padl{padding-left:36px}.s-input-icon{position:relative;display:flex;align-items:center}.s-input-icon>svg{position:absolute;left:10px;color:#9ca3af;flex-shrink:0}.s-input-icon .s-input{width:100%}.s-textarea{resize:vertical;font-family:inherit}.settings-logo-row{display:flex;align-items:flex-start;gap:20px}.settings-logo-preview{width:72px;height:72px;border-radius:12px;object-fit:cover;border:1px solid var(--border, #e5e7eb);flex-shrink:0}.settings-logo-placeholder{width:72px;height:72px;border-radius:12px;background:#6366f1;color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;flex-shrink:0}.settings-logo-input{display:none}.settings-logo-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.settings-logo-actions .s-btn-primary,.settings-logo-actions .btn-secondary{display:inline-flex;align-items:center;gap:7px}.settings-hint{font-size:12px;color:var(--text-3, #9ca3af);margin-top:6px}.settings-schedule{display:flex;flex-direction:column;gap:20px}.settings-days-row{display:flex;gap:8px;flex-wrap:wrap}.day-btn{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--border, #e5e7eb);background:var(--bg, #f9fafb);color:var(--text-2, #6b7280);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s}.day-btn.active{background:#6366f1;border-color:#6366f1;color:#fff}.day-btn:hover:not(.active){border-color:#6366f1;color:#6366f1}.settings-hours{display:flex;align-items:flex-end;gap:12px}.settings-hours .s-label{flex:1}.settings-dash{font-size:20px;color:var(--text-3, #9ca3af);padding-bottom:10px}.clinic-schedule-list{display:flex;flex-direction:column;gap:8px}.clinic-schedule-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 12px;border:1px solid var(--border, #e5e7eb);border-radius:9px;background:var(--surface, #fff)}.clinic-schedule-row.is-off{background:var(--bg, #f9fafb)}.clinic-schedule-day{display:flex;align-items:center;gap:10px;min-width:70px;color:var(--text, #111827);cursor:pointer}.clinic-schedule-day input{width:17px;height:17px;accent-color:#6366f1}.clinic-schedule-time{display:flex;align-items:center;gap:8px;color:var(--text-2, #6b7280)}.clinic-schedule-time .s-input{width:112px;padding:7px 9px}.clinic-day-off{color:var(--text-3, #9ca3af);font-size:13px;margin-right:12px}@media (max-width: 560px){.clinic-schedule-row{align-items:flex-start;flex-direction:column;gap:9px}.clinic-schedule-time{width:100%}.clinic-schedule-time .s-input{flex:1;min-width:0}}.settings-owner{display:flex;align-items:center;gap:16px}.owner-avatar{width:44px;height:44px;border-radius:50%;background:#6366f1;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.owner-name{font-size:15px;font-weight:600;color:var(--text, #111827)}.owner-email{font-size:13px;color:var(--text-2, #6b7280);margin-top:2px}.settings-actions{display:flex;justify-content:flex-end}.s-btn-primary{display:flex;align-items:center;gap:8px;background:#0b1330;color:#fff;border:none;border-radius:10px;padding:11px 24px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.s-btn-primary:hover{background:#1e2d5a}.s-btn-primary:disabled{opacity:.6}.settings-error{background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;border-radius:8px;padding:10px 14px;font-size:13px}.settings-success{background:#d1fae5;border:1px solid #6ee7b7;color:#059669;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:600}.catalog-layout{display:grid;grid-template-columns:minmax(190px,230px) 1fr;gap:20px}.catalog-nav{display:flex;flex-direction:column;gap:4px}.catalog-nav-btn{border:0;border-radius:7px;background:transparent;color:var(--text-2, #6b7280);padding:9px 11px;text-align:left;font:inherit;font-size:13px;cursor:pointer}.catalog-nav-btn:hover{background:var(--bg, #f3f4f6);color:var(--text, #111827)}.catalog-nav-btn.active{background:#eef2ff;color:#3730a3;font-weight:600}.catalog-panel{min-width:0}.catalog-panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.catalog-panel-title{color:var(--text, #111827);font-size:14px;font-weight:700}.catalog-import-btn{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;background:none;border:1px solid var(--border, #d1d5db);color:var(--text-2, #6b7280);font-size:12.5px;font-weight:600;padding:6px 11px;border-radius:7px;cursor:pointer}.catalog-import-btn:hover{border-color:#6366f1;color:#6366f1}.catalog-add-row{display:flex;gap:8px;align-items:center;margin-bottom:12px}.catalog-add-row .s-input{flex:1;min-width:0}.catalog-add-row .s-btn-primary{padding:10px 14px;white-space:nowrap}.payment-method-fields{display:grid;grid-template-columns:1.2fr .8fr .8fr 1.5fr;gap:10px;margin-bottom:14px;padding:12px;background:#f8faff;border:1px solid #e5eaf5;border-radius:8px}.catalog-list{border-top:1px solid var(--border, #e5e7eb)}.catalog-group+.catalog-group{margin-top:4px}.catalog-group-title{padding:8px 2px 4px;font-size:11px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.3px}.catalog-item{min-height:44px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border, #e5e7eb);color:var(--text, #111827);font-size:13px}.catalog-item.inactive>span:first-child{color:var(--text-3, #9ca3af);text-decoration:line-through}.catalog-status{color:var(--text-3, #9ca3af);font-size:11px}.catalog-actions{display:flex;gap:4px;margin-left:auto}.catalog-icon-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;color:var(--text-2, #6b7280);cursor:pointer}.catalog-icon-btn:hover{background:var(--bg, #f3f4f6);color:var(--text, #111827)}.catalog-icon-btn.danger:hover{background:#fef2f2;color:#dc2626}.catalog-empty{padding:24px 0;color:var(--text-3, #9ca3af);font-size:13px;text-align:center}.btn-secondary{display:inline-flex;align-items:center;gap:6px;background:var(--bg, #f3f4f6);color:var(--text-2, #374151);border:1px solid var(--border, #d1d5db);border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer}.btn-secondary:hover{background:var(--surface, #fff)}.upload-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;background:var(--bg, #f3f4f6);border:1px solid var(--border, #d1d5db);border-radius:8px;font-size:13px;font-weight:600;color:var(--text-2, #374151);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.upload-btn:hover{background:var(--surface, #fff)}.doc-tpl-upload-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:8px}.doc-tpl-upload-row .s-input{flex:1;min-width:160px}.doc-tpl-upload-row select.s-input{flex:0 0 170px}.doc-tpl-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.doc-tpl-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border, #e5e7eb);border-radius:10px;background:var(--bg, #f9fafb)}.doc-tpl-item-main{display:flex;align-items:center;gap:10px;color:var(--text, #111827);min-width:0}.doc-tpl-item-main svg{flex-shrink:0;color:#6366f1}.doc-tpl-name{font-size:14px;font-weight:600}.doc-tpl-meta{font-size:12px;color:var(--text-3, #9ca3af);margin-top:2px}.doc-tpl-item-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.doc-tpl-status{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:4px 9px;border-radius:999px;background:#fef3c7;color:#92400e}.doc-tpl-status.ok{background:#d1fae5;color:#059669}.doc-tpl-consent-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2, #6b7280);margin:4px 0 10px}.doc-tpl-consent-badge{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:4px 9px;border-radius:999px;background:#e0e7ff;color:#4338ca}.doc-tpl-modal{max-width:720px;width:100%}.doc-tpl-modal-body{padding:4px 2px 12px;max-height:60vh;overflow-y:auto}.doc-tpl-warning{display:flex;align-items:flex-start;gap:8px;margin:10px 0}.doc-tpl-fields-table{display:flex;flex-direction:column;gap:8px;margin:14px 0}.doc-tpl-fields-head,.doc-tpl-field-row{display:grid;grid-template-columns:1.1fr 1.1fr 1.4fr 90px 34px;gap:8px;align-items:center}.doc-tpl-fields-head{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3, #9ca3af);padding:0 2px}.doc-tpl-field-row .s-input{width:100%}.doc-tpl-required{display:flex;align-items:center;justify-content:center}.doc-tpl-required input{width:18px;height:18px;cursor:pointer}.doc-tpl-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:12px;border-top:1px solid var(--border, #e5e7eb)}.doc-tpl-text-create-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:4px 0 10px}.doc-tpl-saved-hint{font-size:12px;font-weight:600;color:#059669;margin:4px 0 8px}.doc-tpl-text-modal{max-width:900px}.doc-tpl-text-editor-body{display:flex;flex-direction:column;gap:8px}.doc-tpl-text-editor-head{display:flex;gap:10px;flex-wrap:wrap}.doc-tpl-text-editor-head .s-input{flex:1;min-width:160px}.doc-tpl-text-editor-head select.s-input{flex:0 0 170px}.doc-tpl-text-editor-grid{display:grid;grid-template-columns:1fr 220px;gap:12px;align-items:start}.doc-tpl-textarea{width:100%;min-height:320px;font-family:inherit;line-height:1.5;resize:vertical}.doc-tpl-fields-panel{border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:10px;max-height:400px;overflow-y:auto;background:var(--bg-2, #f9fafb)}.doc-tpl-fields-panel-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3, #9ca3af);margin-bottom:6px}.doc-tpl-fields-panel-group{margin-bottom:10px}.doc-tpl-fields-panel-group-title{font-size:12px;font-weight:600;color:var(--text-2, #6b7280);margin:6px 0 4px}.doc-tpl-field-chip{display:block;width:100%;text-align:left;font-size:12.5px;padding:6px 9px;margin-bottom:4px;border-radius:7px;border:1px solid var(--border, #e5e7eb);background:#fff;color:var(--text, #111827);cursor:pointer;transition:background .12s ease}.doc-tpl-field-chip:hover{background:#eef2ff;border-color:#c7d2fe}@media (max-width: 720px){.doc-tpl-text-editor-grid{grid-template-columns:1fr}}.wa-templates{display:flex;flex-direction:column;gap:14px}.wa-template-row{border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:12px;background:var(--bg, #f9fafb)}.wa-template-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.wa-template-toggle input{width:16px;height:16px;cursor:pointer}.wa-template-row textarea.s-input{width:100%}.wa-log{margin-top:18px;padding-top:16px;border-top:1px solid var(--border, #e5e7eb)}.wa-log-row{display:grid;grid-template-columns:1.1fr 1.3fr .9fr 1.7fr;gap:10px;align-items:center;font-size:12.5px;padding:8px 10px;border:1px solid var(--border, #e5e7eb);border-radius:8px}@media (max-width: 720px){.settings-page{padding:16px}.settings-header{padding:18px 16px}.settings-top-grid,.settings-grid,.catalog-layout{grid-template-columns:1fr}.catalog-nav{flex-direction:row;overflow-x:auto;padding-bottom:4px}.catalog-nav-btn{white-space:nowrap}.catalog-add-row{align-items:stretch;flex-wrap:wrap}.catalog-add-row .s-input{flex-basis:100%}.doc-tpl-upload-row{flex-direction:column;align-items:stretch}.doc-tpl-upload-row .s-input,.doc-tpl-upload-row select.s-input,.doc-tpl-upload-row .upload-btn{flex:none;width:100%;max-width:none}.doc-tpl-item{flex-direction:column;align-items:flex-start}.doc-tpl-fields-head{display:none}.doc-tpl-field-row{grid-template-columns:1fr;gap:6px;padding:10px;border:1px solid var(--border, #e5e7eb);border-radius:8px}.doc-tpl-required{justify-content:flex-start;gap:6px}.wa-log-row{grid-template-columns:1fr}.wa-template-head{flex-wrap:wrap}}.settings-branch-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #e5e7eb}.settings-branch-row small{display:block;color:#6b7280;margin-top:4px}.settings-branch-row .catalog-status{margin-left:8px}.settings-branch-form{margin-top:14px}.settings-branch-default{display:flex;align-items:center;gap:8px;margin-top:12px}.chats-shell{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);height:calc(100vh - 220px);min-height:560px;border:1px solid var(--border, #e5e7eb);border-radius:12px;background:var(--surface, #fff);overflow:hidden}.chats-col{min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--surface, #fff)}.chats-col--list{border-right:1px solid var(--border, #e5e7eb)}.chats-list-toolbar{flex:0 0 auto;padding:10px;border-bottom:1px solid var(--border, #e5e7eb);display:flex;flex-direction:column;gap:8px}.chats-list-toolbar input{width:100%;height:34px;box-sizing:border-box;padding:0 12px 0 34px;border:1px solid var(--border, #e5e7eb);border-radius:9px;background:var(--bg, #f8fafc);outline:none;font-size:13px}.chats-list-toolbar input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #2f80ed1a;background:#fff}.chats-filters{display:flex;gap:5px;overflow-x:auto;padding-bottom:1px}.chats-filter-btn{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border, #e5e7eb);background:transparent;color:var(--text-2, #6b7280);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer}.chats-filter-btn.active{background:var(--brand-50, #eef4ff);border-color:var(--brand);color:var(--brand-strong, #2563eb)}.chats-list{flex:1;min-height:0;overflow-y:auto}.chats-list-item{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;width:100%;padding:11px 12px;border:0;border-bottom:1px solid var(--border, #edf0f4);background:transparent;text-align:left;cursor:pointer}.chats-list-item:hover{background:var(--bg, #f8fafc)}.chats-list-item.active{background:var(--brand-50, #eef4ff)}.chats-list-item-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand-strong, #1d4ed8));color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;font-size:13px;font-weight:800}.chats-list-item-main{min-width:0}.chats-list-item-top,.chats-list-item-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.chats-list-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text, #0f172a);font-size:13.5px;font-weight:800}.chats-list-item-time{flex:0 0 auto;color:var(--text-3, #9ca3af);font-size:11px}.chats-list-item-phone{margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-3, #9ca3af);font-size:11.5px}.chats-list-item-preview{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-2, #64748b);font-size:12.5px}.chats-unread-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--brand);color:var(--brand-text, #fff);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800}.chats-list-item-assignee{margin-top:3px;color:var(--text-3, #9ca3af);font-size:11px}.chats-col--chat{position:relative;background:var(--bg, #f7f8fb)}.chats-empty-state{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px;text-align:center;color:var(--text-3, #94a3b8)}.chats-empty-state p{margin:0;color:var(--text, #0f172a);font-size:16px;font-weight:800}.chats-empty-state span{max-width:280px;color:var(--text-2, #64748b);font-size:13px}.chats-chat-header{position:sticky;top:0;z-index:4;flex:0 0 auto;display:flex;align-items:center;gap:10px;min-height:62px;padding:10px 14px;border-bottom:1px solid var(--border, #e5e7eb);background:#fffffff5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chats-back-btn{display:none}.chats-chat-header-main{min-width:0}.chats-chat-header-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text, #0f172a);font-size:14px;font-weight:800}.chats-chat-header-phone{color:var(--text-3, #94a3b8);font-size:12px}.chats-header-link,.chats-back-btn{width:36px;height:36px;border:1px solid var(--border, #e5e7eb);border-radius:10px;background:#fff;color:var(--text-2, #64748b);align-items:center;justify-content:center;text-decoration:none;cursor:pointer}.chats-header-link{display:inline-flex;margin-left:auto}.chats-header-link:hover,.chats-back-btn:hover{color:var(--brand);border-color:var(--brand)}.chats-window-badge{margin-left:auto;display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border-radius:999px;background:#fff7ed;color:#b45309;font-size:11px;font-weight:800}.chats-window-badge+.chats-header-link{margin-left:0}.chats-assignee-select{max-width:168px;height:34px;margin-left:auto;border:1px solid var(--border, #e5e7eb);border-radius:9px;background:#fff;color:var(--text-2, #64748b);font-size:12px;font-weight:700;padding:0 8px}.chats-window-badge+.chats-assignee-select{margin-left:0}.chats-assignee-select+.chats-header-link{margin-left:0}.chats-messages{position:relative;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:18px 18px 20px;display:flex;flex-direction:column;gap:7px;background:linear-gradient(180deg,#ffffff9e,#fff0),var(--bg, #f7f8fb)}.chats-date-separator{align-self:center;margin:8px 0;padding:4px 10px;border:1px solid var(--border, #e5e7eb);border-radius:999px;background:#ffffffe0;color:var(--text-2, #64748b);font-size:11.5px;font-weight:800}.chats-bubble{max-width:min(68%,560px);min-width:70px;padding:8px 10px 6px;border-radius:12px;box-shadow:0 1px 2px #0f172a0d;font-size:13.5px;line-height:1.42}.chats-bubble--inbound{align-self:flex-start;background:#fff;color:var(--text, #0f172a);border-bottom-left-radius:4px}.chats-bubble--outbound{align-self:flex-end;background:var(--brand, #2f80ed);color:#fff;border-bottom-right-radius:4px}.chats-bubble--outbound .chats-bubble-body{color:#fff}.chats-bubble-body{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.chats-bubble-meta{display:flex;justify-content:flex-end;align-items:center;gap:3px;margin-top:3px;font-size:10.5px;opacity:.78}.chats-status-read{color:#38bdf8;opacity:1}.chats-status-failed{color:#ef4444;opacity:1}.chats-media{display:flex;flex-direction:column;gap:7px;min-width:min(250px,64vw)}.chats-media-loading{min-width:180px;padding:10px 12px;border-radius:9px;background:#94a3b824;color:inherit;font-size:12px}.chats-image-button{display:block;padding:0;border:0;background:transparent;cursor:zoom-in}.chats-media img,.chats-media video{display:block;width:100%;max-width:min(340px,64vw);max-height:340px;border-radius:9px;object-fit:cover;background:#0f172a14}.chats-media video{object-fit:contain}.chats-audio{min-width:min(300px,66vw);display:flex;flex-direction:column;gap:7px}.chats-audio--voice{min-width:min(280px,64vw)}.chats-audio audio{width:100%;height:34px;border-radius:999px;overflow:hidden}.chats-attachment-title{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800}.chats-bubble--outbound .chats-attachment-title{color:#fff}.chats-bubble--outbound .chats-audio audio{filter:saturate(.9)}.chats-bubble--failed{outline:1px solid rgba(239,68,68,.28)}.chats-bubble--outbound.chats-bubble--failed{background:#f97373}.chats-doc-card{display:grid;grid-template-columns:36px minmax(0,1fr) 26px;align-items:center;gap:10px;min-width:min(310px,68vw);color:inherit;text-decoration:none}.chats-doc-card>svg:first-child{width:36px;height:36px;padding:9px;border-radius:9px;background:#ffffff38}.chats-bubble--inbound .chats-doc-card>svg:first-child{background:var(--brand-50, #eef4ff);color:var(--brand)}.chats-doc-card strong,.chats-doc-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chats-doc-card strong{font-size:13px}.chats-doc-card small{margin-top:2px;font-size:11px;opacity:.75}.chats-bubble--outbound .chats-doc-card small{color:#ffffffc7}.chats-drop-overlay{position:absolute;top:14px;right:14px;bottom:14px;left:14px;z-index:5;border:2px dashed var(--brand);border-radius:12px;background:#eff6ffeb;color:var(--brand-strong, #2563eb);display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:900}.chats-jump-btn{position:sticky;bottom:8px;align-self:center;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border, #e5e7eb);border-radius:999px;background:#fff;color:var(--brand-strong, #2563eb);padding:6px 12px;font-size:12px;font-weight:800;cursor:pointer;box-shadow:0 4px 12px #0f172a1a}.chats-send-error{flex:0 0 auto;margin:0;border-radius:0;border-left:0;border-right:0}.chats-composer{position:sticky;bottom:0;z-index:4;flex:0 0 auto;display:grid;grid-template-columns:42px minmax(0,1fr) 42px 42px;gap:9px;padding:12px 14px;border-top:1px solid var(--border, #e5e7eb);background:#fffffffa;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chats-recording-panel{grid-column:1 / -1;display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:9px;padding:9px 12px;border:1px solid #fecaca;border-radius:12px;background:#fef2f2;color:#991b1b;font-size:13px}.chats-recording-dot{width:9px;height:9px;border-radius:50%;background:#ef4444;animation:chats-recording-blink 1s ease-in-out infinite}.chats-recording-panel strong{font-size:13px}.chats-recording-panel span:last-of-type{font-variant-numeric:tabular-nums;font-weight:900}.chats-recording-panel button{border:0;border-radius:999px;background:#dc2626;color:#fff;padding:6px 12px;font-size:12px;font-weight:900;cursor:pointer}.chats-attachment-preview{grid-column:1 / -1;display:grid;grid-template-columns:44px minmax(0,1fr) 34px;align-items:center;gap:10px;padding:8px;border:1px solid var(--border, #e5e7eb);border-radius:10px;background:var(--bg, #f8fafc)}.chats-attachment-preview img,.chats-attachment-icon{width:44px;height:44px;border-radius:9px;object-fit:cover}.chats-attachment-icon{background:var(--brand-50, #eef4ff);color:var(--brand);display:inline-flex;align-items:center;justify-content:center}.chats-attachment-preview strong,.chats-attachment-preview span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chats-attachment-preview strong{color:var(--text, #0f172a);font-size:13px}.chats-attachment-preview span{margin-top:2px;color:var(--text-3, #94a3b8);font-size:11.5px}.chats-attachment-preview--voice{grid-template-columns:44px minmax(0,1fr) 34px;background:#fff}.chats-attachment-preview--voice audio{width:100%;height:32px;margin-top:5px;border-radius:999px}.chats-attach-wrap{position:relative}.chats-icon-btn,.chats-send-btn{width:42px;height:42px;border:1px solid var(--border, #e5e7eb);border-radius:50%;background:#fff;color:var(--text-2, #64748b);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease,color .15s ease}.chats-icon-btn:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-1px)}.chats-icon-btn:disabled,.chats-icon-btn.disabled{opacity:.45;pointer-events:none}.chats-voice-btn.recording{border-color:#ef4444;background:#fef2f2;color:#dc2626;animation:chats-recording-pulse 1.2s ease-in-out infinite}.chats-send-btn{border:0;background:#dbeafe;color:#60a5fa}.chats-send-btn.ready:not(:disabled){background:var(--brand, #2f80ed);color:#fff;box-shadow:0 8px 18px #2f80ed42}.chats-send-btn.ready:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 10px 22px #2f80ed52}.chats-send-btn:disabled{cursor:default;box-shadow:none}.chats-attach-menu{position:absolute;left:0;bottom:48px;z-index:8;width:172px;padding:6px;border:1px solid var(--border, #e5e7eb);border-radius:10px;background:#fff;box-shadow:0 12px 30px #0f172a24}.chats-attach-menu button{width:100%;display:flex;align-items:center;gap:8px;border:0;border-radius:8px;background:transparent;padding:9px 10px;color:var(--text, #0f172a);font-size:13px;font-weight:700;cursor:pointer}.chats-attach-menu button:hover{background:var(--bg, #f8fafc)}.chats-composer-input{min-width:0;min-height:40px;max-height:132px;resize:none;overflow-y:auto;border-radius:18px;padding:10px 15px;line-height:20px;background:#fff}.chats-spin{animation:chats-spin .8s linear infinite}@keyframes chats-spin{to{transform:rotate(360deg)}}@keyframes chats-recording-pulse{0%,to{box-shadow:0 0 #ef44442e}50%{box-shadow:0 0 0 6px #ef444400}}@keyframes chats-recording-blink{0%,to{opacity:1}50%{opacity:.35}}.chats-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0f172ad1;display:flex;align-items:center;justify-content:center;padding:28px}.chats-viewer img{max-width:min(980px,94vw);max-height:88vh;border-radius:10px;object-fit:contain;box-shadow:0 18px 50px #00000059}.chats-viewer-close{position:fixed;top:18px;right:18px;width:40px;height:40px;border:0;border-radius:50%;background:#ffffff24;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}@media (max-width: 1180px){.chats-shell{grid-template-columns:300px minmax(0,1fr)}.chats-bubble{max-width:min(74%,540px)}}@media (max-width: 720px){.chats-shell{display:block;height:calc(100vh - 168px);min-height:520px}.chats-col--list,.chats-col--chat{height:100%}.chats-shell--active .chats-col--list{display:none}.chats-shell:not(.chats-shell--active) .chats-col--chat{display:none}.chats-col--list{border-right:0}.chats-back-btn{display:inline-flex}.chats-chat-header{min-height:58px;padding:9px 10px}.chats-window-badge,.chats-assignee-select{display:none}.chats-messages{padding:14px 10px 16px}.chats-bubble{max-width:86%}.chats-media,.chats-audio,.chats-doc-card{min-width:min(260px,78vw)}.chats-media img,.chats-media video{max-width:78vw}.chats-composer{padding:9px}.chats-composer-input{border-radius:18px}}.wa-tabs{display:flex;gap:6px;margin:14px 0 18px;padding:4px;background:var(--bg, #f3f4f6);border-radius:12px;width:fit-content}.wa-tab-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 18px;border:none;background:transparent;color:var(--text-2);font-size:13px;font-weight:500;cursor:pointer;border-radius:9px;transition:all .15s;white-space:nowrap}.wa-tab-btn:hover:not(.active){color:var(--text);background:#fff9}.wa-tab-btn:disabled{cursor:not-allowed;opacity:.45;color:var(--text-3)}.wa-tab-btn.active{color:var(--brand-strong);background:var(--surface, #fff);font-weight:600;box-shadow:0 1px 4px #0f172a1a}.wa-tab-content{display:flex;flex-direction:column;gap:16px}.wa-local-tag{font-size:10px;font-weight:600;text-transform:uppercase;color:var(--text-3);background:var(--brand-50);border-radius:999px;padding:2px 8px;margin-left:8px;vertical-align:middle}.wa-automations-list{display:flex;flex-direction:column;gap:6px}.wa-automation-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-md, 8px);font-size:13px}.wa-automation-dot{width:8px;height:8px;border-radius:50%}.wa-automation-dot.on{background:#2e9e5b}.wa-automation-dot.off{background:var(--text-3)}.wa-automation-name{flex:1}.wa-automation-status{color:var(--text-3);font-size:12px}.wa-profile-grid{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.wa-profile-row{display:flex;justify-content:space-between;font-size:13px;border-bottom:1px dashed var(--border);padding-bottom:6px}.wa-profile-label{color:var(--text-3)}.wa-profile-value{display:inline-flex;align-items:center;gap:5px;font-weight:500}.wa-profile-status-on{color:#2e9e5b}.wa-profile-status-off{color:var(--status-danger)}.wa-connect-btn{margin-top:8px}.wa-power-control{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding:13px 14px;border:1px solid var(--border);border-radius:10px}.wa-power-control strong,.wa-power-control small{display:block}.wa-power-control small{margin-top:3px;color:var(--text-3);font-size:12px}.wa-power-switch{width:46px;height:26px;flex:0 0 auto;padding:3px;border:0;border-radius:999px;background:#cbd5e1;cursor:pointer;transition:background .2s ease}.wa-power-switch span{display:block;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .2s ease}.wa-power-switch.is-on{background:#22c55e}.wa-power-switch.is-on span{transform:translate(20px)}.wa-power-switch:disabled{cursor:wait;opacity:.6}.wa-connect-info{display:flex;gap:8px;align-items:flex-start;margin-top:10px;padding:10px;background:var(--brand-50);border-radius:var(--radius-md, 8px);font-size:12px;color:var(--text-2)}.wa-profile-unsynced{display:inline-block;font-size:12px;color:var(--text-3);background:var(--border);border-radius:999px;padding:3px 10px}.wa-stats-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.wa-stat-card{background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:14px;padding:16px 18px;display:flex;flex-direction:column;gap:6px;box-shadow:0 1px 2px #0f172a0a}.wa-stat-value{font-size:26px;font-weight:800;color:var(--text, #111827);letter-spacing:-.02em}.wa-stat-label{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--text-2, #6b7280)}.wa-stat-card--danger .wa-stat-value{color:#dc2626}.qr-add-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.qr-add-row input:nth-child(1){flex:0 0 200px;height:38px;box-sizing:border-box}.qr-add-row input:nth-child(2){flex:1;min-width:200px;height:38px;box-sizing:border-box}.qr-add-row .s-btn-primary{white-space:nowrap;height:38px;box-sizing:border-box;display:inline-flex;align-items:center}.qr-list{display:flex;flex-direction:column;gap:8px}.qr-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border:1px solid var(--border, #e5e7eb);border-radius:12px;background:var(--surface, #fff);transition:box-shadow .15s,border-color .15s}.qr-item:hover{border-color:#c7d2fe;box-shadow:0 3px 10px #0f172a0f}.qr-item-main{min-width:0}.qr-item-title{font-size:13.5px;font-weight:700;color:var(--text, #111827)}.qr-item-body{font-size:12.5px;color:var(--text-2, #6b7280);margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qr-item-edit{display:flex;gap:8px;flex:1}.qr-item-edit input:nth-child(1){flex:0 0 200px;height:36px;box-sizing:border-box}.qr-item-edit input:nth-child(2){flex:1;height:36px;box-sizing:border-box}.qr-item-actions{display:flex;gap:4px;flex-shrink:0}.wa-templates{display:flex;flex-direction:column;gap:12px}.wa-template-row{border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:14px 16px;background:var(--surface, #fff);transition:box-shadow .15s,border-color .15s}.wa-template-row:hover{border-color:#c7d2fe;box-shadow:0 3px 10px #0f172a0f}.wa-template-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.wa-template-toggle{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text, #111827)}.wa-template-toggle input{width:16px;height:16px;cursor:pointer;accent-color:var(--brand)}.wa-template-row textarea.s-input{width:100%;box-sizing:border-box;height:auto;min-height:96px;padding:11px 12px;border-radius:10px;line-height:1.45;resize:vertical}.wa-template-head .s-btn-primary{height:34px;padding:0 16px;font-size:12.5px}.wa-template-head h3{margin:0 0 8px;color:var(--text, #0f172a);font-size:16px}.wa-template-actions{display:flex;justify-content:flex-end;margin-top:12px}.wa-template-actions .s-btn-primary{height:38px;padding:0 18px}.wa-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:16px}.wa-filter-search{flex:1;min-width:220px}.wa-filter-search .s-input{width:100%}.wa-filters select.s-input{flex:0 0 160px}.wa-filter-date{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--text-2, #6b7280)}.wa-filter-date .s-input{width:148px}.wa-log-table{display:flex;flex-direction:column;gap:6px}.wa-log-row{display:grid;grid-template-columns:1.1fr 1.2fr 1fr .9fr 1.5fr;gap:10px;align-items:center;font-size:12.5px;padding:8px 10px;border:1px solid var(--border, #e5e7eb);border-radius:8px}.wa-log-patient{font-weight:600;color:var(--text, #111827)}.wa-log-trigger{color:var(--text-2, #6b7280)}.wa-log-doctor{color:var(--text-2, #6b7280);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-log-status{font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:.03em}.wa-log-status-pending{color:#b45309}.wa-log-status-sent{color:#2563eb}.wa-log-status-delivered{color:#0891b2}.wa-log-status-read{color:#16a34a}.wa-log-status-failed{color:#dc2626}.wa-log-reply{color:var(--text-3, #9ca3af);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:16px}.wa-pagination-info{font-size:12.5px;color:var(--text-2, #6b7280)}.wa-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.wa-section-head h2{margin:0;color:var(--text, #0f172a);font-size:20px}.wa-section-head p{margin:4px 0 0;color:var(--text-2, #64748b);font-size:13px}.wa-status-tabs{display:flex;gap:6px;margin-bottom:12px;overflow-x:auto}.wa-status-tabs button{border:1px solid var(--border, #e5e7eb);border-radius:999px;background:#fff;color:var(--text-2, #64748b);padding:7px 12px;font-size:12.5px;font-weight:800;white-space:nowrap;cursor:pointer}.wa-status-tabs button.active{border-color:var(--brand);background:var(--brand-50, #eef4ff);color:var(--brand-strong, #2563eb)}.wa-campaign-help,.wa-campaign-note{display:grid;gap:5px;padding:12px 14px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:#1e3a8a}.wa-campaign-help{margin-bottom:12px}.wa-campaign-help strong,.wa-campaign-note strong{font-size:13px;font-weight:900;color:#1e40af}.wa-campaign-help span,.wa-campaign-note span{font-size:12.5px;line-height:1.45;color:#475569}.wa-job-list{display:flex;flex-direction:column;gap:10px}.wa-job-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--border, #e5e7eb);border-radius:12px;background:#fff}.wa-job-main{min-width:0}.wa-job-main strong,.wa-job-main span,.wa-job-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-job-main strong{color:var(--text, #0f172a);font-size:14px}.wa-job-main span{margin-top:3px;color:var(--text-2, #64748b);font-size:12.5px}.wa-job-main small{margin-top:3px;color:var(--text-3, #94a3b8);font-size:11.5px}.wa-job-status{border-radius:999px;padding:5px 10px;background:var(--bg, #f8fafc);color:var(--text-2, #64748b);font-size:11px;font-weight:900}.wa-job-status--scheduled{background:#eff6ff;color:#2563eb}.wa-job-status--processing{background:#fef3c7;color:#b45309}.wa-job-status--completed{background:#dcfce7;color:#15803d}.wa-job-status--failed{background:#fee2e2;color:#dc2626}.wa-job-status--cancelled{background:#f1f5f9;color:#64748b}.wa-job-stats{display:grid;grid-template-columns:repeat(5,auto);gap:6px;color:var(--text-3, #94a3b8);font-size:11px}.wa-job-stats span{white-space:nowrap}.wa-job-stats b{color:var(--text, #0f172a)}.wa-empty-box{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:28px;border:1px dashed var(--border, #cbd5e1);border-radius:12px;background:#fff;text-align:center}.wa-empty-box h3{margin:0;color:var(--text, #0f172a)}.wa-empty-box p{max-width:420px;margin:0;color:var(--text-2, #64748b);font-size:13px}.wa-meta-filters{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(130px,170px));gap:10px;margin:12px 0 14px}.wa-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wa-meta-card{min-width:0;border:1px solid var(--border, #e5e7eb);border-radius:12px;background:#fff;padding:14px}.wa-meta-card strong,.wa-meta-card span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-meta-card strong{color:var(--text, #0f172a);font-size:14px}.wa-meta-card span{margin-top:3px;color:var(--text-3, #94a3b8);font-size:11.5px;font-weight:900}.wa-meta-card p{min-height:52px;margin:10px 0 12px;color:var(--text-2, #64748b);font-size:12.5px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.wa-meta-status{flex:0 0 auto;border-radius:999px;padding:5px 8px;background:#f1f5f9;color:#64748b;font-size:10px}.wa-meta-status--APPROVED{background:#dcfce7;color:#15803d}.wa-meta-status--PENDING{background:#fef3c7;color:#b45309}.wa-meta-status--REJECTED,.wa-meta-status--DISABLED,.wa-meta-status--PAUSED{background:#fee2e2;color:#dc2626}.wa-meta-actions{display:flex;gap:8px;flex-wrap:wrap}.wa-template-preview-modal{width:min(560px,94vw);max-height:86vh;overflow:hidden;border-radius:14px;background:#fff;box-shadow:0 20px 60px #0f172a38}.wa-template-preview-chat{padding:18px;background:#e7f1ea}.wa-template-preview-bubble{max-width:420px;border-radius:8px;background:#fff;padding:12px;box-shadow:0 1px 2px #0f172a1f}.wa-template-preview-bubble strong,.wa-template-preview-bubble small{display:block;color:var(--text, #0f172a)}.wa-template-preview-bubble p{margin:7px 0;color:var(--text, #0f172a);white-space:pre-wrap;line-height:1.4}.wa-template-preview-bubble small{color:var(--text-3, #94a3b8)}.wa-template-buttons{display:flex;flex-direction:column;gap:6px;margin-top:10px}.wa-template-buttons button{border:0;border-top:1px solid #e5e7eb;background:transparent;color:var(--brand, #2563eb);padding:8px;font-weight:800}.wa-template-vars{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:14px 18px 18px}.wa-template-vars strong{color:var(--text, #0f172a)}.wa-template-vars span{border-radius:999px;background:var(--bg, #f8fafc);color:var(--text-2, #64748b);padding:5px 9px;font-size:12px;font-weight:900}.wa-mapping-box{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--border, #e5e7eb);border-radius:12px;background:var(--bg, #f8fafc)}.wa-mapping-box>strong{color:var(--text, #0f172a)}.wa-mapping-box label{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;align-items:center}.wa-mapping-box label span{color:var(--text-2, #64748b);font-weight:900}.wa-automation-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,260px);gap:10px;margin:10px 0}.wa-automation-grid label{display:flex;flex-direction:column;gap:5px;color:var(--text-2, #64748b);font-size:12px;font-weight:800}.wa-automation-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900}.wa-automation-badge--success{background:#dcfce7;color:#15803d}.wa-automation-badge--warning{background:#fef3c7;color:#b45309}.wa-automation-badge--danger{background:#fee2e2;color:#dc2626}.wa-automation-badge--neutral{background:#f1f5f9;color:#64748b}.wa-reminder-field{display:grid;gap:5px;margin:10px 0 12px;padding:11px 12px;border:1px solid var(--border, #e5e7eb);border-radius:10px;background:var(--bg, #f8fafc)}.wa-reminder-field span,.wa-reminder-message>span,.wa-reminder-preview>span{color:var(--text-3, #94a3b8);font-size:11px;font-weight:900;text-transform:uppercase}.wa-reminder-field strong{color:var(--text, #0f172a);font-size:13.5px}.wa-reminder-message{display:grid;gap:6px}.wa-placeholder-chips{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.wa-placeholder-chips button{border:1px solid #dbeafe;border-radius:999px;background:#eff6ff;color:#2563eb;padding:6px 10px;font-size:12px;font-weight:900;cursor:pointer}.wa-placeholder-chips button:hover{background:#dbeafe}.wa-reminder-preview{display:grid;gap:7px;padding:12px;border:1px solid #dbeafe;border-radius:12px;background:#f8fbff}.wa-reminder-preview p{margin:0;color:var(--text, #0f172a);font-size:13px;line-height:1.5;white-space:pre-wrap}.wa-wizard-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0f172a6b;display:flex;align-items:center;justify-content:center;padding:20px}.wa-wizard{width:min(760px,96vw);max-height:88vh;overflow:hidden;display:flex;flex-direction:column;border-radius:14px;background:#fff;box-shadow:0 20px 60px #0f172a38}.wa-wizard-head{display:flex;justify-content:space-between;gap:14px;padding:18px 20px 12px;border-bottom:1px solid var(--border, #e5e7eb)}.wa-wizard-head h3{margin:0;color:var(--text, #0f172a)}.wa-wizard-head p{margin:3px 0 0;color:var(--text-2, #64748b);font-size:13px}.wa-wizard-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:12px 20px;border-bottom:1px solid var(--border, #e5e7eb)}.wa-wizard-steps span{border-radius:999px;background:var(--bg, #f8fafc);color:var(--text-3, #94a3b8);padding:6px 9px;text-align:center;font-size:11.5px;font-weight:900}.wa-wizard-steps span.active{background:var(--brand-50, #eef4ff);color:var(--brand-strong, #2563eb)}.wa-wizard-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:16px 20px}.wa-selected-count{color:var(--text-2, #64748b);font-size:12.5px;font-weight:800}.wa-patient-pick-list{max-height:360px;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.wa-patient-pick{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:center;padding:10px;border:1px solid var(--border, #e5e7eb);border-radius:10px;cursor:pointer}.wa-patient-pick:hover{background:var(--bg, #f8fafc)}.wa-patient-pick strong,.wa-patient-pick small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-patient-pick strong{color:var(--text, #0f172a);font-size:13px}.wa-patient-pick small{margin-top:2px;color:var(--text-3, #94a3b8);font-size:11.5px}.wa-template-pick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wa-template-source-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:4px;border-radius:12px;background:var(--bg, #f8fafc)}.wa-template-source-tabs button{border:0;border-radius:9px;background:transparent;color:var(--text-2, #64748b);padding:9px 12px;font-weight:900;cursor:pointer}.wa-template-source-tabs button.active{background:#fff;color:var(--brand-strong, #2563eb);box-shadow:0 1px 4px #0f172a14}.wa-template-pick{min-width:0;border:1px solid var(--border, #e5e7eb);border-radius:12px;background:#fff;padding:12px;text-align:left;cursor:pointer}.wa-template-pick.active{border-color:var(--brand);background:var(--brand-50, #eef4ff)}.wa-template-pick strong,.wa-template-pick span,.wa-template-pick p{display:block;overflow:hidden;text-overflow:ellipsis}.wa-template-pick strong{color:var(--text, #0f172a);font-size:13.5px;white-space:nowrap}.wa-template-pick span{margin-top:3px;color:var(--text-3, #94a3b8);font-size:11px;font-weight:900}.wa-template-pick p{margin:8px 0 0;color:var(--text-2, #64748b);font-size:12px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.wa-radio-row{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid var(--border, #e5e7eb);border-radius:10px;color:var(--text, #0f172a);font-weight:800}.wa-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wa-time-grid label{display:flex;flex-direction:column;gap:5px;color:var(--text-2, #64748b);font-size:12px;font-weight:800}.wa-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wa-review-grid div,.wa-preview-box{padding:12px;border:1px solid var(--border, #e5e7eb);border-radius:10px;background:var(--bg, #f8fafc)}.wa-review-grid span,.wa-preview-box span{display:block;color:var(--text-3, #94a3b8);font-size:11px;font-weight:900;text-transform:uppercase}.wa-review-grid strong{display:block;margin-top:4px;color:var(--text, #0f172a)}.wa-preview-box p{margin:8px 0 0;color:var(--text, #0f172a);white-space:pre-wrap}.wa-wizard-actions{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid var(--border, #e5e7eb)}.wa-job-detail-modal{width:min(980px,96vw);max-height:88vh;overflow:hidden;display:flex;flex-direction:column;border-radius:14px;background:#fff;box-shadow:0 20px 60px #0f172a38}.wa-job-detail-body{overflow-y:auto;display:flex;flex-direction:column;gap:14px;padding:16px 20px}.wa-detail-stats{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.wa-detail-stats span{border:1px solid var(--border, #e5e7eb);border-radius:10px;background:var(--bg, #f8fafc);padding:10px;color:var(--text-2, #64748b);font-size:11px;font-weight:800}.wa-detail-stats b{display:block;margin-top:3px;color:var(--text, #0f172a);font-size:16px}.wa-recipient-table{overflow-x:auto;border:1px solid var(--border, #e5e7eb);border-radius:12px}.wa-recipient-table>div{min-width:840px;display:grid;grid-template-columns:1.4fr 1fr .9fr 1.1fr 1.5fr;gap:10px;padding:10px 12px;border-bottom:1px solid var(--border, #e5e7eb);color:var(--text-2, #64748b);font-size:12px}.wa-recipient-table>div:last-child{border-bottom:0}.wa-recipient-table .head{background:var(--bg, #f8fafc);color:var(--text, #0f172a);font-weight:900}.wa-recipient-table span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-mapping-box label{display:grid;grid-template-columns:72px minmax(180px,1fr);gap:5px 8px;align-items:center}.wa-mapping-box label small{grid-column:2;color:#64748b}.wa-mapping-missing{color:#b45309!important;font-weight:600}.wa-recipient-check{display:flex;justify-content:space-between;gap:12px;margin-top:8px;padding:8px 10px;border-radius:6px;background:#f0fdf4;color:#166534;font-size:12px}.wa-recipient-check.missing{background:#fff7ed;color:#9a3412}@media (max-width: 900px){.wa-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wa-job-card{grid-template-columns:1fr;align-items:stretch}.wa-job-stats{grid-template-columns:repeat(3,auto);justify-content:start}.wa-meta-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.wa-meta-grid{grid-template-columns:1fr}.wa-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.wa-section-head{flex-direction:column}.wa-section-head .s-btn-primary{width:100%;justify-content:center}.wa-template-pick-grid,.wa-review-grid,.wa-time-grid{grid-template-columns:1fr}.wa-wizard-backdrop{align-items:flex-end;padding:0}.wa-wizard{width:100%;max-height:92vh;border-radius:16px 16px 0 0}.wa-wizard-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.wa-meta-filters,.wa-mapping-box label,.wa-automation-grid,.wa-log-row{grid-template-columns:1fr}.wa-template-head{flex-wrap:wrap}.wa-filters select.s-input{flex:1 1 140px}.qr-add-row input:nth-child(1),.qr-add-row input:nth-child(2){flex:1 1 100%}.qr-item{flex-direction:column;align-items:stretch}.qr-item-edit{flex-direction:column}.qr-item-actions{align-self:flex-end}}.tasks-page{height:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--bg, #f4f6fb);color:var(--text, #111827)}.tasks-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;background:var(--surface, #fff);border-bottom:1px solid var(--border, #e5e7eb)}.tasks-header-actions{display:flex;align-items:center;gap:10px}.tasks-title-wrap{display:flex;align-items:center;gap:12px}.tasks-title-icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border, #e2e8f0);border-radius:8px;background:var(--bg, #f8fafc);color:var(--text, #0b1330);flex-shrink:0}.tasks-title-wrap h1{margin:0;font-size:21px;letter-spacing:0}.tasks-title-wrap p{margin:3px 0 0;color:var(--text-2, #64748b);font-size:13px}.tasks-header .btn-primary{display:inline-flex;align-items:center;gap:8px}.tasks-toolbar{display:flex;flex-direction:column;gap:10px;padding:14px 24px;background:var(--surface, #fff);border-bottom:1px solid var(--border, #e5e7eb)}.tasks-toolbar-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tasks-month-nav{display:flex;align-items:center;gap:4px;height:36px;padding:0 3px;background:var(--bg, #f4f6fb);border:1px solid var(--border, #eef1f6);border-radius:20px}.tmn-all{padding:6px 13px;border-radius:20px;border:1.5px solid var(--border, #e5e7eb);background:var(--surface, #fff);font-size:13px;font-weight:600;color:var(--text-2, #64748b);cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s,background .15s}.tmn-all:hover,.tmn-all.active{border-color:#6366f1;color:#6366f1;background:#6366f114}.tmn-arrow{width:26px;height:26px;border-radius:50%;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-2, #64748b);transition:background .15s,color .15s;flex-shrink:0}.tmn-arrow:hover:not(:disabled){background:var(--surface, #fff);color:#6366f1;box-shadow:0 1px 4px #10182814}.tmn-arrow:disabled{opacity:.35;cursor:default}.tmn-label{padding:0 18px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:18px;border:none;background:#6366f1;color:#fff;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s,box-shadow .15s;box-shadow:0 2px 6px #6366f14d}.tmn-label:hover{background:#5457e5}.tmn-label.inactive{color:var(--text-2, #64748b);background:transparent;font-weight:600;box-shadow:none}.tmn-label.inactive:hover{background:var(--surface, #fff)}.tasks-search-wrap{position:relative;flex:0 0 220px;display:flex;align-items:center}.tasks-search-wrap svg{position:absolute;left:12px;color:var(--text-2, #64748b);pointer-events:none}.tasks-search{width:100%;height:36px;padding:0 12px 0 36px;border:1px solid var(--border, #d1d5db);border-radius:10px;background:var(--bg, #f4f6fb);color:var(--text, #111827);outline:none;font-size:13.5px;transition:border-color .15s,box-shadow .15s,background .15s}.tasks-search:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;background:var(--surface,#fff)}.tasks-assignee-filter{height:36px;width:170px;flex-shrink:0;font-size:13px;border-radius:10px}.tasks-filter-select{height:36px;width:auto;max-width:190px;flex-shrink:0;font-size:13px;font-weight:500;border-radius:10px;border:1px solid var(--border,#d1d5db);background:var(--bg,#f4f6fb);color:var(--text,#111827);padding:0 28px 0 12px;outline:none;cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;transition:border-color .15s,box-shadow .15s}.tasks-filter-select:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.tasks-board{flex:1;overflow-x:auto;overflow-y:hidden;display:flex;gap:12px;padding:16px 20px;align-items:flex-start}.tasks-column{flex:1 1 0;min-width:200px;display:flex;flex-direction:column;background:var(--bg, #f4f6fb);border:1px solid var(--border, #e5e7eb);border-top:4px solid var(--col-color, #94a3b8);border-radius:14px;max-height:100%;transition:border-color .15s,box-shadow .15s;box-shadow:0 2px 8px #0000000d;overflow:hidden}.tasks-column.drag-over{box-shadow:0 0 0 3px rgba(var(--col-color, #6366f1),.2),0 2px 8px #0000000d;border-color:var(--col-color, #6366f1)}.tasks-column-header{display:flex;align-items:center;gap:8px;padding:12px 14px 10px;font-weight:700;font-size:14px;color:var(--text, #111827);flex-shrink:0;background:var(--surface, #fff);border-bottom:1px solid var(--border, #e5e7eb)}.tasks-column-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--col-color, #94a3b8)}.tasks-column-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px}.tasks-column-count{font-size:11.5px;font-weight:700;color:var(--col-color, #64748b);background:color-mix(in srgb,var(--col-color, #94a3b8) 12%,transparent);border-radius:20px;padding:2px 9px;min-width:22px;text-align:center}.tasks-column-body{flex:1;overflow-y:auto;padding:8px 10px 10px;display:flex;flex-direction:column;gap:8px;min-height:90px;background:var(--bg, #f4f6fb)}.task-card{background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:12px 12px 10px;cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:box-shadow .18s,border-color .18s,transform .18s;box-shadow:0 1px 3px #0000000d}.task-card:hover{border-color:#a5b4fc;box-shadow:0 6px 20px #0f172a1a;transform:translateY(-2px)}.task-card:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.task-card.dragging{opacity:.35;transform:rotate(1.5deg)}.task-card.drag-over-before{box-shadow:inset 0 3px #6366f1}.task-card-title{font-size:14px;font-weight:600;color:var(--text, #111827);line-height:1.35;word-break:break-word}.task-card-desc{margin:0;font-size:12.5px;color:var(--text-2, #64748b);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}.task-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}.task-due{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;color:var(--text-2, #64748b);background:var(--bg, #f4f6fb);border-radius:20px;padding:3px 9px;white-space:nowrap}.task-due.overdue{color:#dc2626;background:#fef2f2}[data-theme=dark] .task-due.overdue{background:#dc262626;color:#fca5a5}.task-assignee-avatar{width:26px;height:26px;border-radius:50%;flex-shrink:0;object-fit:cover;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff}.task-card.task-prio--low{border-left-width:3px;border-left-color:#94a3b8}.task-card.task-prio--high{border-left-width:3px;border-left-color:#f59e0b}.task-card.task-prio--urgent{border-left-width:3px;border-left-color:#ef4444}.task-due.soon{color:#b45309;background:#fef3c7}[data-theme=dark] .task-due.soon{background:#f59e0b26;color:#fbbf24}.task-card-people{display:flex;align-items:center;gap:6px;min-width:0;justify-content:flex-end}.task-prio-flag{display:inline-flex;flex-shrink:0}.task-assignee{display:inline-flex;align-items:center;gap:6px;min-width:0}.task-assignee-name{font-size:11.5px;font-weight:600;color:var(--text-2, #64748b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:92px}.tasks-prio-toggle{display:flex;gap:6px}.tpr-btn{flex:1;padding:8px 6px;border-radius:8px;border:1.5px solid var(--border, #e5e7eb);background:var(--surface, #fff);font-size:12.5px;font-weight:600;color:var(--text-2, #64748b);cursor:pointer;transition:border-color .15s,color .15s}.tpr-btn:hover{border-color:#6366f1}.tasks-filter-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tfc-sep{width:1px;height:22px;background:var(--border, #dfe3ea);flex-shrink:0}.tfc-chip{display:inline-flex;align-items:center;gap:5px;height:36px;padding:0 15px;border-radius:18px;border:1px solid var(--border, #e5e7eb);background:var(--bg, #f4f6fb);font-size:12.5px;font-weight:600;color:var(--text-2, #64748b);cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s,background .15s,box-shadow .15s}.tfc-chip:hover{border-color:#6366f1;color:#6366f1}.tfc-chip.active{border-color:#6366f1;color:#6366f1;background:#eef2ff}.tfc-chip.tfc-red.active{border-color:#dc2626;color:#dc2626;background:#fef2f2}.tfc-chip.tfc-yellow.active{border-color:#b45309;color:#b45309;background:#fef3c7}[data-theme=dark] .tfc-sep{background:var(--border)}.tasks-column-empty{text-align:center;padding:16px 8px;font-size:12.5px;color:var(--text-3, #9ca3af)}.tasks-add-card{display:flex;align-items:center;justify-content:center;gap:6px;padding:9px;border:1px dashed var(--border, #d1d5db);border-radius:8px;background:transparent;color:var(--text-2, #64748b);font-size:13px;font-weight:600;cursor:pointer;margin-top:2px;flex-shrink:0}.tasks-add-card:hover{border-color:#6366f1;color:#6366f1;background:#6366f10f}.tasks-state{flex:1;padding:48px 20px;text-align:center;color:var(--text-3, #9ca3af)}.tasks-textarea{resize:vertical;font-family:inherit}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:var(--surface, #fff);border-radius:16px;width:480px;max-width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000026}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border, #e5e7eb)}.modal-header h3{margin:0;font-size:16px;font-weight:700;color:var(--text, #111827)}.modal-close{background:none;border:none;cursor:pointer;color:#9ca3af;display:flex}.modal-body{padding:20px 22px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.modal-footer{display:flex;gap:10px;justify-content:flex-end;padding-top:8px}.form-label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600;color:var(--text-2, #374151)}.form-input{border:1px solid var(--border, #d1d5db);border-radius:8px;padding:8px 12px;font-size:14px;outline:none;background:var(--bg, #fff);color:var(--text, #111827)}.form-input:focus{border-color:#6366f1}.form-select{border:1px solid var(--border, #d1d5db);border-radius:8px;padding:8px 12px;font-size:14px;outline:none;background:var(--bg, #fff);color:var(--text, #111827)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-error{background:#fee2e2;color:#dc2626;border-radius:8px;padding:8px 12px;font-size:13px}.btn-primary{background:#6366f1;color:#fff;border:none;border-radius:10px;padding:9px 20px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}.btn-primary:hover{background:#4f46e5}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--bg, #f9fafb);color:var(--text, #374151);border:1px solid var(--border, #d1d5db);border-radius:10px;padding:9px 20px;font-size:14px;font-weight:600;cursor:pointer}.btn-danger{display:inline-flex;align-items:center;gap:6px;background:#fef2f2;color:#dc2626;border:1px solid #fca5a5;border-radius:10px;padding:9px 16px;font-size:14px;font-weight:600;cursor:pointer;margin-right:auto}.btn-danger:hover{background:#fee2e2}[data-theme=dark] .btn-danger{background:#dc26261f;color:#fca5a5;border-color:#f871713d}@media (max-width: 720px){.tasks-header{flex-direction:column;align-items:flex-start;padding:16px}.tasks-toolbar{padding:12px 16px}.tasks-search-wrap{width:100%}.tasks-board{padding:16px}.tasks-column{flex:0 0 82vw;width:82vw}.form-row{grid-template-columns:1fr}}.cc-patient-link{padding:0;border:0;background:transparent;color:#2563eb;font:inherit;font-weight:700;text-align:left;cursor:pointer}.cc-patient-link:hover{text-decoration:underline}.cc-analytics-table tbody tr{cursor:pointer}.cc-analytics-table tbody tr:hover,.cc-analytics-table tbody tr.is-selected{background:#eff6ff}.cc-manager-appointments{margin-top:14px;padding:16px;border:1px solid #dbe7f4;border-radius:14px;background:#fff;box-shadow:0 6px 18px #0f172a0d}.cc-manager-appointments>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.cc-manager-appointments h3{margin:0;color:#172033;font-size:16px}.cc-manager-appointments p{margin:4px 0 0;color:#94a3b8;font-size:12px}.cc-manager-appointments>header button{border:0;background:transparent;color:#64748b;cursor:pointer}.cc-page{width:100%;max-width:none;box-sizing:border-box;margin:0;padding:24px clamp(24px,3vw,56px) 48px;color:var(--text,#172033)}.cc-page button,.cc-page input,.cc-page select,.cc-page textarea{font:inherit}.cc-page button{cursor:pointer}.cc-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.cc-eyebrow{display:flex;align-items:center;gap:6px;color:#2563eb;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}.cc-header h1{font-size:29px;line-height:1.15;margin:0;font-weight:760;letter-spacing:-.025em}.cc-header p{margin:6px 0 0;color:var(--text-2,#758196);font-size:14px}.cc-primary{border:0;background:#2563eb;color:#fff;border-radius:10px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:650;box-shadow:0 5px 14px #2563eb33;transition:.15s}.cc-primary:hover{background:#1d4ed8;transform:translateY(-1px)}.cc-primary:disabled{opacity:.55;cursor:not-allowed;transform:none}.cc-error{display:flex;align-items:center;gap:9px;margin:18px 0 -4px;padding:11px 13px;background:#fff1f2;border:1px solid #fecdd3;border-radius:10px;color:#be123c;font-size:13px}.cc-error span{flex:1}.cc-error button{border:0;background:transparent;color:inherit;display:flex}.cc-tabs{display:flex;gap:3px;width:max-content;max-width:100%;overflow:auto;padding:5px;background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:13px;margin:18px 0 24px;box-shadow:0 2px 8px #0f172a06}.cc-tabs button{display:flex;align-items:center;gap:7px;border:0;border-radius:8px;background:transparent;padding:9px 14px;color:var(--text-2,#64748b);font-size:13px;font-weight:650;white-space:nowrap;transition:background .15s,color .15s}.cc-tabs button:hover{color:#2563eb;background:#f5f9ff}.cc-tabs button.active{color:#fff;background:#2563eb;box-shadow:0 3px 8px #2563eb38}.cc-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:13px}.cc-section-heading>div:first-child{flex:1 1 260px}.cc-section-heading h2{font-size:18px;letter-spacing:-.01em;margin:0 0 2px}.cc-section-heading p{font-size:12px;color:var(--text-2,#7b8798);margin:0}.cc-section-heading>button{border:0;background:transparent;color:#2563eb;display:flex;align-items:center;gap:5px;font-size:12px;font-weight:700}.cc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cc-metric{--tone:#2563eb;--soft:#eff6ff;display:flex;align-items:center;gap:13px;background:var(--surface,#fff);border:1px solid var(--border,#e1e7ef);border-radius:12px;padding:15px 16px;min-height:66px;box-shadow:0 3px 10px #0f172a06;transition:.16s}.cc-metric:hover{transform:translateY(-2px);box-shadow:0 9px 22px #0f172a12}.cc-metric-icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--soft);color:var(--tone);flex:0 0 auto}.cc-metric small{display:block;color:var(--text-2,#788598);font-size:12px;margin-bottom:3px}.cc-metric strong{display:block;font-size:23px;line-height:1;font-weight:750}.cc-metric--amber{--tone:#d97706;--soft:#fff7e6}.cc-metric--violet{--tone:#7c3aed;--soft:#f3efff}.cc-metric--red{--tone:#dc2626;--soft:#fff0f0}.cc-metric--cyan{--tone:#0891b2;--soft:#ecfeff}.cc-metric--rose{--tone:#e11d48;--soft:#fff1f2}.cc-metric--green{--tone:#059669;--soft:#ecfdf5}.cc-metric--indigo{--tone:#4f46e5;--soft:#eef2ff}.cc-metric--slate{--tone:#475569;--soft:#f1f5f9}.cc-dashboard-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(360px,.9fr);gap:14px;margin-top:14px}.cc-panel{background:var(--surface,#fff);border:1px solid var(--border,#e1e7ef);border-radius:14px;padding:19px;box-shadow:0 3px 10px #0f172a06}.cc-panel-title{display:flex;align-items:flex-start;justify-content:space-between;color:#2563eb;margin-bottom:17px}.cc-panel-title h3{color:var(--text,#172033);font-size:16px;margin:0 0 3px}.cc-panel-title p{color:var(--text-2,#7b8798);font-size:12px;margin:0}.cc-funnel-line{display:grid;grid-template-columns:140px 1fr 28px;gap:10px;align-items:center;margin:11px 0;font-size:12px}.cc-funnel-line>div{height:7px;background:var(--bg,#edf1f7);border-radius:10px;overflow:hidden}.cc-funnel-line i{display:block;height:100%;background:linear-gradient(90deg,#3b82f6,#6366f1);border-radius:10px}.cc-funnel-line b{text-align:right}.cc-quick-actions>button{width:100%;display:grid;grid-template-columns:38px 1fr 16px;align-items:center;gap:10px;text-align:left;border:0;border-top:1px solid var(--border,#edf1f5);background:transparent;padding:11px 2px;color:var(--text,#172033)}.cc-quick-actions>button>span{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#eff6ff;color:#2563eb}.cc-quick-actions>button div{display:flex;flex-direction:column}.cc-quick-actions>button small{color:var(--text-2,#7b8798);font-size:11px;margin-top:2px}.cc-quick-actions>button>svg{color:#94a3b8}.cc-quick-actions>button:disabled{opacity:.5}.cc-telephony{display:flex;gap:11px;align-items:center;margin-top:14px;padding:14px 17px;border-radius:12px;background:#f8fafc;border:1px dashed #cbd5e1;color:#64748b}.cc-telephony div{display:flex;flex-direction:column}.cc-telephony b{font-size:13px;color:#475569}.cc-telephony span{font-size:12px;margin-top:2px}.cc-view-switch{display:flex;background:var(--bg,#f1f4f8);padding:3px;border-radius:9px}.cc-view-switch button{border:0;background:transparent;padding:7px 11px;border-radius:7px;display:flex;align-items:center;gap:6px;color:var(--text-2,#64748b);font-size:12px;font-weight:600}.cc-view-switch button.active{background:var(--surface,#fff);color:#2563eb;box-shadow:0 1px 4px #0f172a1f}.cc-filters{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(135px,.7fr)) auto auto;gap:8px;background:var(--surface,#fff);border:1px solid var(--border,#e1e7ef);padding:10px;border-radius:12px;margin-bottom:16px}.cc-filters input,.cc-filters select,.cc-modal input,.cc-modal select,.cc-modal textarea,.cc-stage-select select{width:100%;box-sizing:border-box;border:1px solid var(--border,#dce3ec);background:var(--surface,#fff);color:var(--text,#172033);border-radius:8px;padding:9px 10px;outline:none}.cc-filters select{min-width:0}.cc-filters input:focus,.cc-filters select:focus,.cc-modal input:focus,.cc-modal select:focus,.cc-modal textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.cc-search{position:relative}.cc-search svg{position:absolute;left:10px;top:10px;color:#94a3b8}.cc-search input{padding-left:34px}.cc-filter-submit,.cc-filter-reset{border-radius:8px;padding:0 12px;font-size:12px;font-weight:650}.cc-filter-submit{border:0;background:#eff6ff;color:#2563eb;display:flex;align-items:center;gap:6px}.cc-filter-reset{border:0;background:transparent;color:#64748b}.cc-kanban{display:flex;gap:12px;overflow-x:auto;align-items:flex-start;padding-bottom:15px}.cc-column{width:274px;min-width:274px;background:var(--bg,#f1f4f8);border:1px solid var(--border,#e5eaf1);border-radius:12px;overflow:hidden}.cc-column>header{display:flex;align-items:center;gap:8px;padding:12px}.cc-column>header i{width:8px;height:8px;border-radius:50%}.cc-column>header h3{flex:1;font-size:13px;margin:0}.cc-column>header span{font-size:11px;font-weight:700;background:var(--surface,#fff);border-radius:12px;padding:3px 7px;color:#64748b}.cc-column-body{padding:0 8px 8px;min-height:80px}.cc-lead{display:block;width:100%;text-align:left;background:var(--surface,#fff);color:var(--text,#172033);border:1px solid var(--border,#e0e6ef);border-radius:10px;padding:12px;margin-bottom:8px;box-shadow:0 2px 5px #0f172a08;transition:.15s}.cc-lead:hover{border-color:#a9c5f7;box-shadow:0 6px 16px #2563eb14;transform:translateY(-1px)}.cc-lead-top{display:flex;justify-content:space-between;gap:7px}.cc-lead-top b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cc-lead-top em{font-style:normal;font-size:9px;padding:2px 5px;border-radius:5px}.cc-lead-top .priority-high{color:#b45309;background:#fef3c7}.cc-lead-top .priority-urgent{color:#be123c;background:#ffe4e6}.cc-lead-phone,.cc-lead small{display:flex;align-items:center;gap:5px;margin-top:7px;color:#69778a;font-size:11px}.cc-lead-phone{font-size:12px;color:#334155}.cc-lead footer{border-top:1px solid var(--border,#edf1f5);margin-top:10px;padding-top:9px;display:flex;justify-content:space-between;gap:8px;font-size:10px;color:#748196}.cc-lead footer time{display:flex;align-items:center;gap:3px;white-space:nowrap}.cc-clinic-tag{color:#2563eb!important}.cc-column-empty{padding:20px;text-align:center;color:#94a3b8;font-size:11px;border:1px dashed #d5dce6;border-radius:9px}.cc-loading,.cc-mini-empty{text-align:center;color:#8a96a8;padding:30px 10px;font-size:13px}.cc-table-wrap{background:var(--surface,#fff);border:1px solid var(--border,#e1e7ef);border-radius:12px;overflow:auto}.cc-table{width:100%;border-collapse:collapse;min-width:850px}.cc-table th,.cc-table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--border,#e8edf3);font-size:12px}.cc-table th{background:var(--bg,#f8fafc);color:#64748b;font-weight:650}.cc-table tbody tr{cursor:pointer}.cc-table tbody tr:hover{background:#f8fbff}.cc-table td b{font-size:13px}.cc-table td small{display:block;color:#8190a4;margin-top:3px}.cc-stage-pill{display:inline-flex;border-radius:20px;background:#eef4ff;color:#2563eb;padding:4px 9px;font-size:11px;font-weight:650}.cc-empty-state{text-align:center;background:var(--surface,#fff);border:1px solid var(--border,#e1e7ef);border-radius:14px;padding:30px 20px;min-height:180px;display:flex;align-items:center;justify-content:center;flex-direction:column}.cc-empty-state>div{width:48px;height:48px;border-radius:13px;background:#eff6ff;color:#2563eb;display:grid;place-items:center;margin:0 auto 11px}.cc-empty-state h2{font-size:16px;margin:0 0 6px}.cc-empty-state p{color:#7b8798;font-size:12px;margin:0 auto 15px;max-width:520px}.cc-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cc-icon-add{width:34px;height:34px;border:0;border-radius:8px;background:#eff6ff;color:#2563eb;display:grid;place-items:center}.cc-settings-list>div{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border,#edf1f5);padding:11px 2px;font-size:13px}.cc-settings-list>div span{display:flex;align-items:center;gap:9px}.cc-settings-list i{width:8px;height:8px;border-radius:50%;background:#cbd5e1}.cc-settings-list i.active{background:#10b981}.cc-settings-list small{color:#8793a4}.cc-stage-number{width:23px;height:23px;border-radius:7px;display:grid;place-items:center;background:#eef4ff;color:#2563eb;font-size:10px}.cc-settings-shell{display:grid;grid-template-columns:230px minmax(0,1fr);gap:14px;align-items:start}.cc-settings-nav{background:var(--surface,#fff);border:1px solid var(--border,#e1e7ef);border-radius:13px;padding:7px;position:sticky;top:12px}.cc-settings-nav button{width:100%;border:0;background:transparent;color:var(--text-2,#657287);border-radius:8px;padding:10px;display:grid;grid-template-columns:20px 1fr 14px;gap:7px;align-items:center;text-align:left;font-size:12px}.cc-settings-nav button>svg:last-child{opacity:.35}.cc-settings-nav button.active{background:#eff6ff;color:#2563eb;font-weight:650}.cc-settings-content{min-width:0}.cc-config-list input{border:0;background:transparent;color:var(--text,#172033);font-weight:600;outline:none;padding:6px}.cc-config-list select{border:1px solid var(--border,#dce3ec);border-radius:7px;background:var(--surface,#fff);color:var(--text,#172033);padding:6px;font-size:11px}.cc-settings-pipeline{margin-top:18px;border:1px solid var(--border,#e1e7ef);border-radius:12px;padding:0 14px;background:var(--surface,#fff)}.cc-settings-pipeline-title{display:flex;align-items:baseline;gap:9px;padding:13px 0 9px}.cc-settings-pipeline-title b{font-size:14px;color:var(--text,#172033)}.cc-settings-pipeline-title small{font-size:11px;color:#7b8798}.cc-status-toggle{border:0;border-radius:20px;background:#ecfdf5;color:#059669;padding:5px 10px;font-size:10px;font-weight:700}.cc-manager-list article{display:grid;grid-template-columns:40px 1fr auto;gap:11px;align-items:center;border-top:1px solid var(--border,#edf1f5);padding:12px 1px}.cc-manager-avatar{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;color:#1e40af;font-weight:750}.cc-manager-list article div{display:flex;flex-direction:column}.cc-manager-list article b{font-size:13px}.cc-manager-list article small{font-size:10px;color:#8793a4;margin-top:3px}.cc-manager-list article>strong{text-align:right;font-size:17px}.cc-manager-list article>strong small{display:block;font-weight:400}.cc-sla-form{max-width:520px;display:flex;flex-direction:column;gap:14px}.cc-sla-form label{background:var(--bg,#f8fafc);padding:14px;border-radius:10px}.cc-sla-form label>span{display:block;font-size:12px;font-weight:650;margin-bottom:7px}.cc-sla-form input{width:130px;border:1px solid var(--border,#dce3ec);border-radius:8px;padding:9px;background:var(--surface,#fff);color:var(--text,#172033)}.cc-sla-form small{display:block;color:#8390a2;font-size:10px;margin-top:7px}.cc-sla-form .cc-primary{align-self:flex-start}.cc-channel-card{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;border-top:1px solid var(--border,#edf1f5);padding:15px 2px;color:#64748b}.cc-channel-card>svg{padding:10px;border-radius:10px;background:var(--bg,#f1f5f9)}.cc-channel-card.connected>svg{color:#10b981;background:#ecfdf5}.cc-channel-card div{display:flex;flex-direction:column}.cc-channel-card b{font-size:13px;color:var(--text,#172033)}.cc-channel-card small{font-size:10px;margin-top:3px}.cc-channel-card button{border:0;background:#eff6ff;color:#2563eb;border-radius:8px;padding:8px 11px;font-size:11px;font-weight:650}.cc-channel-card>span{font-size:10px;background:#f1f5f9;border-radius:20px;padding:5px 9px}.cc-modal-overlay,.cc-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;display:flex}.cc-modal-overlay{align-items:center;justify-content:center;padding:20px}.cc-modal{width:min(620px,100%);max-height:92vh;overflow:auto;background:var(--surface,#fff);color:var(--text,#172033);border-radius:16px;box-shadow:0 25px 70px #0f172a40}.cc-modal>header,.cc-card>header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 22px;border-bottom:1px solid var(--border,#e5eaf1)}.cc-modal>header h2,.cc-card>header h2{margin:0;font-size:19px}.cc-modal>header p{margin:4px 0 0;color:#7b8798;font-size:12px}.cc-modal>header button,.cc-card>header>button{border:0;background:transparent;color:#8390a2;display:flex}.cc-modal-body{display:flex;flex-direction:column;gap:13px;padding:20px 22px}.cc-modal label{display:flex;flex-direction:column;gap:6px;flex:1}.cc-modal label>span{font-size:12px;font-weight:650;color:#475569}.cc-form-row{display:flex;gap:12px}.cc-modal textarea{resize:vertical}.cc-modal>footer{display:flex;justify-content:flex-end;gap:9px;padding:15px 22px;border-top:1px solid var(--border,#e5eaf1)}.cc-secondary{border:1px solid var(--border,#dbe2ea);background:var(--surface,#fff);color:var(--text,#172033);padding:10px 15px;border-radius:9px}.cc-overlay{justify-content:flex-end}.cc-card{width:min(540px,100%);height:100%;overflow:auto;background:var(--surface,#fff);color:var(--text,#172033);box-shadow:-18px 0 55px #0f172a33}.cc-card>header h2{margin-top:10px;font-size:23px}.cc-card>header p{display:flex;gap:5px;align-items:center;margin:6px 0 0;color:#64748b}.cc-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:16px 20px}.cc-actions button{border:1px solid var(--border,#dce4ee);background:var(--surface,#fff);color:var(--text,#27364b);border-radius:9px;padding:10px 5px;display:flex;flex-direction:column;align-items:center;gap:5px;font-size:10px}.cc-actions button:hover{border-color:#93b4ed;color:#2563eb;background:#f8fbff}.cc-card-section{padding:4px 20px 20px}.cc-card-section h3{font-size:14px;border-bottom:1px solid var(--border,#e7ecf2);padding-bottom:10px}.cc-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cc-detail-grid label{background:var(--bg,#f7f9fc);border-radius:9px;padding:10px}.cc-detail-grid span,.cc-stage-select>span{display:block;font-size:10px;color:#8592a3;margin-bottom:4px}.cc-detail-grid b{font-size:12px}.cc-stage-select{position:relative;display:block;margin-top:12px}.cc-stage-select select{-webkit-appearance:none;-moz-appearance:none;appearance:none}.cc-stage-select svg{position:absolute;right:10px;bottom:10px;color:#8190a4;pointer-events:none}.cc-timeline{position:relative;padding-left:6px}.cc-timeline article{position:relative;display:flex;gap:11px;padding:0 0 18px 14px;border-left:1px solid #d8e2ef}.cc-timeline article>i{position:absolute;left:-4px;top:2px;width:7px;height:7px;border-radius:50%;background:#3b82f6;box-shadow:0 0 0 3px #dbeafe}.cc-timeline article b{display:block;font-size:12px}.cc-timeline article small{display:block;color:#8793a4;font-size:10px;margin-top:3px}.cc-contact-summary{display:flex;align-items:center;gap:11px;margin:0 20px 18px;padding:13px;background:var(--bg,#f7f9fc);border-radius:11px}.cc-contact-avatar{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;font-weight:750}.cc-contact-summary>div:nth-child(2){display:flex;flex-direction:column;flex:1}.cc-contact-summary b{font-size:12px}.cc-contact-summary span{font-size:10px;color:#8190a4;margin-top:3px}.cc-contact-summary button{border:0;background:transparent;color:#2563eb;display:flex;align-items:center;gap:4px;font-size:10px;font-weight:650}.cc-settings-list>div span>span{display:flex;align-items:flex-start;flex-direction:column;gap:2px}.cc-settings-list>div span>span small{font-size:10px}.cc-assignment-modes{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cc-assignment-modes>button{display:flex;flex-direction:column;align-items:flex-start;gap:5px;border:1px solid var(--border,#dfe6ef);border-radius:11px;background:var(--surface,#fff);color:var(--text,#172033);padding:15px;text-align:left}.cc-assignment-modes>button svg{color:#64748b}.cc-assignment-modes>button b{font-size:13px}.cc-assignment-modes>button small{font-size:10px;color:#8190a4}.cc-assignment-modes>button.active{border-color:#3b82f6;background:#f5f9ff;box-shadow:0 0 0 2px #3b82f614}.cc-assignment-modes>button.active svg{color:#2563eb}.cc-assignment-team{margin-top:18px}.cc-assignment-team h4{font-size:12px}.cc-assignment-team label{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;padding:10px 2px;border-top:1px solid var(--border,#edf1f5);font-size:12px}.cc-assignment-team label small{color:#8793a4;font-size:10px}.cc-crm-tasks{width:100%;max-width:none}.cc-task-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:15px}.cc-task-summary button{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border,#e1e7ef);background:var(--surface,#fff);color:var(--text-2,#66758a);border-radius:11px;padding:13px 15px;text-align:left}.cc-task-summary button b{font-size:20px;color:var(--text,#172033)}.cc-task-summary button.active{border-color:#78a7f5;background:#f5f9ff;color:#2563eb}.cc-task-summary button.active b{color:#2563eb}.cc-task-list{display:flex;flex-direction:column;gap:9px}.cc-task-item{display:grid;grid-template-columns:29px 1fr 25px;gap:12px;align-items:start;border:1px solid var(--border,#e1e7ef);background:var(--surface,#fff);border-radius:12px;padding:14px 15px;transition:.15s}.cc-task-item:hover{box-shadow:0 7px 18px #0f172a0d;border-color:#b4caef}.cc-task-item.done{opacity:.63}.cc-task-check{width:21px;height:21px;border-radius:50%;border:2px solid #aab7c8;background:transparent;color:#10b981;display:grid;place-items:center;padding:0;margin-top:2px}.cc-task-item.done .cc-task-check{border-color:#10b981;background:#ecfdf5}.cc-task-main>div{display:flex;gap:9px;align-items:center}.cc-task-main b{font-size:14px}.cc-task-main p{font-size:12px;color:#768499;margin:6px 0}.cc-task-main footer{display:flex;gap:13px;align-items:center}.cc-task-main footer button,.cc-task-main footer span{display:flex;align-items:center;gap:4px;border:0;background:transparent;color:#718096;font-size:11px;padding:0}.cc-task-main footer button{color:#2563eb}.cc-task-priority{font-size:9px;border-radius:12px;padding:3px 7px;background:#f1f5f9;color:#64748b}.cc-task-priority.high{background:#fff7e6;color:#b45309}.cc-task-priority.urgent{background:#fff1f2;color:#be123c}.cc-task-arrow{border:0;background:transparent;color:#94a3b8;padding:3px}.cc-task-modal{max-width:520px}.cc-workspace{min-height:360px}.cc-open-module{border:0;background:transparent;color:#2563eb;font-size:12px;font-weight:650;display:flex;align-items:center;gap:5px}.cc-chats-embed{height:calc(100vh - 260px);min-height:510px;border:1px solid var(--border,#e1e7ef);border-radius:13px;overflow:hidden;background:var(--surface,#fff)}.cc-chats-embed .wa-chats{height:100%;border:0;border-radius:0}.cc-call-empty{max-width:620px;text-align:center;margin:28px auto;padding:24px}.cc-call-empty>div{width:52px;height:52px;margin:0 auto 12px;display:grid;place-items:center;border-radius:14px;background:#eff6ff;color:#2563eb}.cc-call-empty h3{margin:0;font-size:17px}.cc-call-empty p{font-size:12px;line-height:1.55;color:#748196;max-width:520px;margin:8px auto 15px}.cc-call-list{max-width:none;background:var(--surface,#fff);border:1px solid var(--border,#e1e7ef);border-radius:13px;overflow:hidden}.cc-call-list article{display:grid;grid-template-columns:38px 1fr 70px 150px;gap:12px;align-items:center;padding:13px 15px;border-bottom:1px solid var(--border,#edf1f5)}.cc-call-list article:last-child{border-bottom:0}.cc-call-direction{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#eef4ff;color:#2563eb}.cc-call-direction.inbound{background:#ecfdf5;color:#059669}.cc-call-list article div{display:flex;flex-direction:column}.cc-call-list b{font-size:13px}.cc-call-list small,.cc-call-list time{font-size:11px;color:#8190a4;margin-top:3px}.cc-call-list>article>span:nth-last-child(2){font-size:12px;font-weight:650}.cc-analytics-period{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;flex:0 1 auto;flex-wrap:wrap}.cc-analytics-period label{display:flex;flex-direction:column;gap:4px;color:#64748b;font-size:10px;font-weight:650}.cc-analytics-period input,.cc-analytics-period select{height:38px;box-sizing:border-box;border:1px solid var(--border,#dce3ec);border-radius:8px;background:var(--surface,#fff);color:var(--text,#172033);padding:8px 10px;font:inherit}.cc-analytics-period select{min-width:210px}.cc-analytics-period button{height:38px;white-space:nowrap}.cc-analytics-period .cc-primary{padding:0 14px}.cc-analytics-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.cc-analytics-kpis article{display:flex;align-items:center;gap:11px;border:1px solid var(--border,#e1e7ef);border-radius:12px;background:var(--surface,#fff);padding:14px}.cc-analytics-kpis article>span{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#eff6ff;color:#2563eb}.cc-analytics-kpis article div{display:flex;flex-direction:column;gap:3px}.cc-analytics-kpis small{color:#7b8798;font-size:10px}.cc-analytics-kpis b{color:var(--text,#172033);font-size:19px}.cc-analytics-table-wrap{overflow:auto;border:1px solid var(--border,#e1e7ef);border-radius:13px;background:var(--surface,#fff)}.cc-analytics-table{width:100%;min-width:1180px;border-collapse:collapse}.cc-analytics-table th,.cc-analytics-table td{padding:12px;border-bottom:1px solid var(--border,#e9edf3);text-align:left;font-size:12px}.cc-analytics-table th{background:var(--bg,#f7f9fc);color:#64748b;font-size:10px;white-space:nowrap}.cc-analytics-table td>b,.cc-analytics-table td>strong{display:block;color:var(--text,#172033);font-size:13px}.cc-analytics-table td>small{display:block;margin-top:3px;color:#8491a4;font-size:9px;white-space:nowrap}.cc-analytics-table td>small.is-danger{color:#dc2626}.cc-analytics-manager{display:flex;align-items:center;gap:8px;min-width:190px}.cc-analytics-manager>span{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;color:#1e40af;font-weight:750}.cc-analytics-manager div{display:flex;flex-direction:column}.cc-analytics-manager b{font-size:12px}.cc-analytics-manager small{color:#8491a4;font-size:9px;margin-top:2px}.cc-conversion{color:#059669!important}.cc-analytics-note{margin:10px 2px 0;color:#8190a4;font-size:10px}[data-theme=dark] .cc-telephony,[data-theme=dark] .cc-table tbody tr:hover{background:#202737}[data-theme=dark] .cc-filter-submit,[data-theme=dark] .cc-icon-add,[data-theme=dark] .cc-stage-pill,[data-theme=dark] .cc-stage-number{background:#1e3152}.cc-page ::-webkit-scrollbar{height:8px;width:8px}.cc-page ::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.cc-shift-actions{display:flex;gap:10px;align-items:center}.cc-shift-actions button{display:inline-flex;align-items:center;gap:7px}.cc-danger-button{min-height:42px;padding:0 16px;border:1px solid #fecaca;border-radius:12px;background:#fff;color:#dc2626;font-weight:700}.cc-active-shift{display:flex;align-items:center;gap:14px;margin:0 0 20px;padding:18px 20px;background:#eef6ff;border:1px solid #bfdbfe;border-radius:16px;color:#2563eb}.cc-active-shift div{display:flex;flex-direction:column;gap:4px}.cc-active-shift b{color:#172033;font-size:16px}.cc-active-shift span{color:#64748b;font-size:14px}.cc-archive-lead{margin-top:14px;display:inline-flex;gap:7px;align-items:center;border:0;background:transparent;color:#64748b;font-weight:700}.cc-archive-lead:hover{color:#dc2626}.cc-booking-modal{width:min(760px,calc(100vw - 32px))}@media (max-width:1200px){.cc-grid,.cc-filters{grid-template-columns:repeat(3,1fr)}.cc-search{grid-column:span 2}.cc-analytics-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width:800px){.cc-page{padding:20px 16px 90px}.cc-header{align-items:flex-start}.cc-header h1{font-size:26px}.cc-header p{max-width:280px}.cc-tabs{overflow:auto}.cc-tabs button{padding:11px 12px;white-space:nowrap}.cc-grid{grid-template-columns:repeat(2,1fr)}.cc-dashboard-row,.cc-settings-grid,.cc-settings-shell{grid-template-columns:1fr}.cc-settings-nav{position:static;display:flex;overflow:auto}.cc-settings-nav button{min-width:150px}.cc-filters{grid-template-columns:1fr 1fr}.cc-search{grid-column:1/-1}.cc-form-row{flex-direction:column}.cc-actions{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.cc-header{flex-direction:column}.cc-header .cc-primary{width:100%}.cc-grid,.cc-analytics-kpis{grid-template-columns:1fr}.cc-metric{min-height:64px}.cc-filters{grid-template-columns:1fr}.cc-filter-submit,.cc-filter-reset{padding:10px}.cc-detail-grid{grid-template-columns:1fr}.cc-analytics-period{width:100%}.cc-analytics-period label{flex:1}.cc-analytics-period input{width:100%;box-sizing:border-box}}.assistant-uploads-page{max-width:920px;margin:0 auto;padding:30px 24px 64px;color:#172033}.assistant-uploads-header span{display:flex;align-items:center;gap:7px;color:#2563eb;font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.assistant-uploads-header h1{margin:7px 0 5px;font-size:29px}.assistant-uploads-header p{margin:0;color:#64748b}.assistant-upload-card,.assistant-history{margin-top:22px;border:1px solid #dfe7f2;border-radius:16px;background:#fff;box-shadow:0 8px 25px #0f172a0d;padding:20px}.assistant-upload-card form{display:grid;gap:15px}.assistant-label{display:grid;gap:7px;color:#475569;font-weight:700;font-size:13px}.assistant-search{position:relative}.assistant-search svg{position:absolute;left:12px;top:11px;color:#94a3b8}.assistant-search input,.assistant-label select{box-sizing:border-box;width:100%;height:42px;padding:0 12px;border:1px solid #cfd9e7;border-radius:10px;background:#fff;font:inherit;color:#172033}.assistant-search input{padding-left:38px}.assistant-patient-list{display:flex;flex-wrap:wrap;gap:8px;min-height:30px}.assistant-patient-list button{border:1px solid #dbe4ef;background:#f8fafc;color:#334155;border-radius:9px;padding:8px 10px;font:inherit;font-size:13px;cursor:pointer}.assistant-patient-list button.selected{border-color:#2563eb;background:#eff6ff;color:#1d4ed8;font-weight:700}.assistant-patient-list span{color:#94a3b8;font-size:13px}.assistant-selected{padding:10px 12px;background:#eff6ff;border-radius:9px;color:#1d4ed8}.assistant-file{min-height:76px;border:1px dashed #8fb4ef;border-radius:12px;background:#f8fbff;display:flex;align-items:center;justify-content:center;gap:10px;color:#2563eb;font-weight:650;cursor:pointer;text-align:center;padding:8px}.assistant-file input{display:none}.assistant-price{font-size:16px;color:#475569}.assistant-price b{color:#172033}.assistant-submit{height:44px;justify-content:center;gap:8px;border:0;border-radius:10px;background:#2563eb;color:#fff;font:inherit;font-weight:750;display:flex;cursor:pointer}.assistant-submit:disabled{opacity:.6}.assistant-history h2{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:17px}.assistant-history p{color:#64748b}.assistant-history article{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid #e8edf4;padding:12px 0}.assistant-history article div{display:flex;flex-direction:column;gap:3px}.assistant-history article b{font-size:13px}.assistant-history article span{font-size:12px;color:#718096}@media (max-width:640px){.assistant-uploads-page{padding:20px 14px 40px}.assistant-history article{align-items:flex-start;flex-direction:column;gap:5px}}.assistant-service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.assistant-service-list>span{color:#94a3b8;font-size:13px}.assistant-service-list button{min-height:72px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;padding:12px;border:1px solid #dbe4ef;border-radius:11px;background:#f8fafc;color:#334155;font:inherit;text-align:left;cursor:pointer}.assistant-service-list button:hover{border-color:#8fb4ef;background:#f5f9ff}.assistant-service-list button.selected{border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 2px #2563eb1a}.assistant-service-list button b{font-size:13px}.assistant-service-list button span{color:#2563eb;font-weight:750;font-size:14px}@media (max-width:640px){.assistant-service-list{grid-template-columns:1fr}}.assistant-history-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;border:0;border-top:1px solid #e8edf4;background:transparent;padding:12px 0;color:#172033;text-align:left;font:inherit;cursor:pointer}.assistant-history-item:hover{background:#f8fbff}.assistant-history-item div{display:flex;flex-direction:column;gap:3px}.assistant-history-item b{font-size:13px}.assistant-history-item span{font-size:12px;color:#718096}@media (max-width:640px){.assistant-history-item{align-items:flex-start;flex-direction:column;gap:5px}}.assistant-patient-list .assistant-load-error,.assistant-service-list .assistant-load-error{color:#dc2626}.assistant-history-filters{display:flex;flex-wrap:wrap;gap:10px;margin:-2px 0 16px}.assistant-history-filters label{display:grid;gap:4px;color:#64748b;font-size:12px;font-weight:700}.assistant-history-filters input,.assistant-history-filters select{height:34px;min-width:128px;border:1px solid #dbe4ef;border-radius:8px;background:#fff;color:#334155;padding:0 8px;font:inherit}.expenses-page{max-width:1440px;padding-top:28px}.expenses-header{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:22px;padding:24px 26px;border:1px solid #dce7f7;border-radius:18px;background:linear-gradient(110deg,#fff,#f4f8ff);box-shadow:0 8px 28px #234c8f0f}.expenses-header .section-kicker{display:flex;align-items:center;gap:7px;color:#2f80ed;font-weight:750;letter-spacing:.07em;text-transform:uppercase;font-size:12px}.expenses-header .page-title{margin:7px 0 0;font-size:32px;letter-spacing:-.035em}.expenses-header p{margin:7px 0 0;color:#71809a;font-size:15px}.expenses-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.expenses-filters{display:flex;align-items:center;gap:16px;padding:13px 18px;margin-bottom:16px;border-radius:14px}.expenses-filters label{display:flex;gap:9px;align-items:center;color:#52627b;font-weight:700;font-size:13px}.expenses-filters input{border:1px solid #d7e0ee;border-radius:9px;padding:9px 11px;color:#17233b;background:#fff;font:inherit}.expenses-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.expense-stat{background:#fff;border:1px solid #e1e8f2;border-radius:16px;padding:21px 22px;display:flex;align-items:center;gap:14px;box-shadow:0 6px 20px #172b4d0a}.expense-stat-icon{color:#ed653c;background:#fff0eb;padding:11px;border-radius:12px;display:flex}.expense-stat small{display:block;color:#8694ab;margin-bottom:4px}.expense-stat strong{font-size:25px;color:#18233a}.expenses-table-card{overflow:hidden;border-radius:16px}.expenses-table-heading{padding:22px 22px 15px;display:flex;align-items:center;justify-content:space-between}.expenses-table-heading h3{margin:0;color:#18233a;font-size:18px}.expenses-table-heading p{margin:5px 0 0;color:#8796ad;font-size:13px}.expenses-table{width:100%;border-collapse:collapse}.expenses-table th{background:#f7f9fc;color:#75839a;font-size:11px;letter-spacing:.04em;text-transform:uppercase;text-align:left;padding:13px 18px}.expenses-table td{padding:16px 18px;border-top:1px solid #edf1f6;color:#35435a}.expenses-table tbody tr{transition:background .15s ease}.expenses-table tbody tr:hover{background:#f8fbff}.expense-amount{color:#d04424!important;font-weight:750;white-space:nowrap}.expense-actions-cell{width:94px;text-align:right!important;white-space:nowrap}.expense-icon-btn{width:32px;height:32px;display:inline-grid;place-items:center;margin-left:5px;border:1px solid #dbe4f1;border-radius:8px;background:#fff;color:#397be0;cursor:pointer}.expense-icon-btn:hover{background:#edf5ff;border-color:#aecdff}.expense-icon-btn--danger{color:#dd4b39}.expense-icon-btn--danger:hover{background:#fff0ee;border-color:#fec9c1}.expense-icon-btn:disabled{opacity:.5;cursor:not-allowed}.expenses-empty{min-height:210px;color:#8796ad;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px}.expenses-empty strong{color:#44536b}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f1f376b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:expenses-overlay-in .16s ease both}.expenses-modal{width:min(540px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;background:#fff;border:1px solid #dce6f4;border-radius:18px;padding:24px;box-shadow:0 24px 80px #08173542;display:flex;flex-direction:column;gap:16px;animation:expenses-modal-in .2s ease both}.expenses-modal label{display:flex;flex-direction:column;gap:7px;color:#43536b;font-size:14px;font-weight:700}.expenses-modal input,.expenses-modal textarea{border:1px solid #d6dfeb;border-radius:10px;padding:11px 12px;font:inherit;resize:vertical;transition:border-color .15s,box-shadow .15s}.expenses-modal input:focus,.expenses-modal textarea:focus{outline:0;border-color:#2f80ed;box-shadow:0 0 0 3px #2f80ed21}.expenses-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.expenses-modal .modal-head{display:flex;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid #edf1f6}.expenses-modal .modal-head h3{margin:0;font-size:21px}.expenses-modal .modal-head p{margin:5px 0 0;color:#8796ad}.expenses-modal .modal-close{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:9px;background:#f5f7fb;cursor:pointer;color:#71809a}.expenses-modal .modal-close:hover{background:#feeceb;color:#dd4a2d}.expenses-modal .modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:5px;padding-top:15px;border-top:1px solid #edf1f6}@keyframes expenses-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes expenses-modal-in{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:700px){.expenses-header{flex-direction:column}.expenses-summary{grid-template-columns:1fr}.expenses-filters{flex-wrap:wrap}.expenses-form-grid{grid-template-columns:1fr}.expenses-actions{width:100%}.expenses-actions .btn-primary{flex:1}.expenses-table th,.expenses-table td{padding:12px 10px;font-size:13px}.expenses-table{min-width:700px}}.toast-stack{position:fixed;top:20px;right:20px;z-index:99999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast-item{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;font-size:13.5px;font-weight:500;min-width:260px;max-width:380px;box-shadow:0 8px 24px #0f172a26;pointer-events:all;animation:toast-in .22s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@keyframes toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.toast-item--error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.toast-item--success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.toast-item--info{background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb}.toast-icon{flex-shrink:0}.toast-text{flex:1;line-height:1.4}.toast-close{background:none;border:none;cursor:pointer;opacity:.55;display:flex;align-items:center;padding:2px;color:inherit;flex-shrink:0;border-radius:4px}.toast-close:hover{opacity:1;background:#0000000f}[data-theme=dark] .toast-item--error{background:#2d1212;border-color:#7f1d1d;color:#f87171}[data-theme=dark] .toast-item--success{background:#052e16;border-color:#14532d;color:#4ade80}[data-theme=dark] .toast-item--info{background:#0c1a2e;border-color:#1e3a5f;color:#60a5fa}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a6b;display:flex;align-items:center;justify-content:center;z-index:100000;padding:20px;animation:confirm-fade-in .15s ease}@keyframes confirm-fade-in{0%{opacity:0}to{opacity:1}}.confirm-modal{background:#fff;border-radius:14px;width:100%;max-width:380px;padding:22px 22px 18px;box-shadow:0 20px 50px #0f172a40;animation:confirm-pop-in .18s ease}@keyframes confirm-pop-in{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#eef2fb;color:#2563eb;margin-bottom:12px}.confirm-icon--danger{background:#fef2f2;color:#dc2626}.confirm-title{font-size:16px;font-weight:700;color:#0b1330;margin:0 0 6px}.confirm-message{font-size:13.5px;color:#6b7280;line-height:1.5;margin:0 0 18px}.confirm-actions{display:flex;justify-content:flex-end;gap:10px}.confirm-btn{border-radius:8px;padding:8px 16px;font-size:13.5px;font-weight:600;cursor:pointer;border:none;transition:filter .15s,background .15s}.confirm-btn--cancel{background:#f3f4f6;color:#374151}.confirm-btn--cancel:hover{background:#e5e7eb}.confirm-btn--ok{background:#0b1330;color:#fff}.confirm-btn--ok:hover{filter:brightness(1.15)}.confirm-btn--danger{background:#dc2626}.confirm-btn--danger:hover{filter:brightness(1.1)}[data-theme=dark] .confirm-overlay{background:#020617b8}[data-theme=dark] .confirm-modal{background:var(--surface);box-shadow:0 20px 50px #00000080}[data-theme=dark] .confirm-title{color:var(--text)}[data-theme=dark] .confirm-message{color:var(--text-2)}[data-theme=dark] .confirm-icon{background:#6366f124;color:#818cf8}[data-theme=dark] .confirm-icon--danger{background:#ef444424;color:#f87171}[data-theme=dark] .confirm-btn--cancel{background:var(--bg);color:var(--text)}[data-theme=dark] .confirm-btn--cancel:hover{background:#ffffff14}
