:root{--primary:#0e7490;--primary-dark:#0c5f73;--primary-light:#67e8f9;--primary-bg:#ecfeff;--secondary:#6366f1;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--sidebar-width:260px;--header-height:64px;--radius:8px;--shadow:0 1px 3px rgba(0,0,0,0.1),0 1px 2px rgba(0,0,0,0.06);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -2px rgba(0,0,0,0.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -4px rgba(0,0,0,0.1);--bg-body:#f9fafb;--bg-card:#ffffff;--bg-header:#ffffff;--bg-table-head:#f9fafb;--bg-table-hover:#f9fafb;--bg-modal:#ffffff;--bg-input:#ffffff;--border-color:#e5e7eb;--border-light:#f3f4f6;--text-primary:#111827;--text-secondary:#374151;--text-muted:#6b7280;--text-faint:#9ca3af;--badge-success-bg:#d1fae5;--badge-success-text:#065f46;--badge-warning-bg:#fef3c7;--badge-warning-text:#92400e;--badge-danger-bg:#fee2e2;--badge-danger-text:#991b1b;--badge-info-bg:#dbeafe;--badge-info-text:#1e40af;--badge-secondary-bg:#e5e7eb;--badge-secondary-text:#374151;--stat-patients-bg:#dbeafe;--stat-patients-text:#2563eb;--stat-doctors-bg:#d1fae5;--stat-doctors-text:#059669;--stat-appointments-bg:#fef3c7;--stat-appointments-text:#d97706;--stat-revenue-bg:#ede9fe;--stat-revenue-text:#7c3aed;--btn-secondary-bg:#e5e7eb;--btn-secondary-text:#374151;--btn-secondary-hover:#d1d5db;--btn-icon-hover-bg:#f3f4f6;--btn-icon-hover-text:#374151;--btn-edit-hover-bg:#eef2ff;--btn-delete-hover-bg:#fef2f2;--modal-overlay:rgba(0,0,0,0.5);--sidebar-bg:linear-gradient(180deg,#111175,#1a30b5);--sidebar-border:rgba(255,255,255,0.08);--sidebar-text:rgba(255,255,255,0.6);--sidebar-text-active:#ffd54f;--sidebar-text-heading:#ffffff;--sidebar-text-faint:rgba(255,255,255,0.35);--sidebar-text-fainter:rgba(255,255,255,0.2);--sidebar-text-faintest:rgba(255,255,255,0.18);--sidebar-link-dev:rgba(255,255,255,0.3);--sidebar-active-bg:rgba(255,255,255,0.15);--sidebar-btn-bg:rgba(255,255,255,0.08);--sidebar-btn-text:rgba(255,255,255,0.5);--sidebar-subtitle:rgba(255,255,255,0.45);--sidebar-logo-bg:white}[data-theme=dark]{--bg-body:#0f1117;--bg-card:#1a1c2e;--bg-header:#1a1c2e;--bg-table-head:#15172a;--bg-table-hover:#1f2140;--bg-modal:#1e2035;--bg-input:#252840;--border-color:#2e3150;--border-light:#252840;--text-primary:#f1f2f6;--text-secondary:#c8cbd5;--text-muted:#8b8fa5;--text-faint:#5d6179;--shadow:0 1px 3px rgba(0,0,0,0.4),0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.4),0 2px 4px -2px rgba(0,0,0,0.3);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.5),0 4px 6px -4px rgba(0,0,0,0.4);--badge-success-bg:#064e3b;--badge-success-text:#6ee7b7;--badge-warning-bg:#78350f;--badge-warning-text:#fcd34d;--badge-danger-bg:#7f1d1d;--badge-danger-text:#fca5a5;--badge-info-bg:#1e3a5f;--badge-info-text:#93c5fd;--badge-secondary-bg:#2e3150;--badge-secondary-text:#c8cbd5;--stat-patients-bg:#1e3a5f;--stat-patients-text:#60a5fa;--stat-doctors-bg:#064e3b;--stat-doctors-text:#34d399;--stat-appointments-bg:#78350f;--stat-appointments-text:#fbbf24;--stat-revenue-bg:#3b1f7a;--stat-revenue-text:#a78bfa;--btn-secondary-bg:#2e3150;--btn-secondary-text:#c8cbd5;--btn-secondary-hover:#3a3d5c;--btn-icon-hover-bg:#252840;--btn-icon-hover-text:#c8cbd5;--btn-edit-hover-bg:#1e2460;--btn-delete-hover-bg:#3b1111;--modal-overlay:rgba(0,0,0,0.7);--sidebar-bg:linear-gradient(180deg,#13152a,#1a1c2e);--sidebar-border:#2e3150;--sidebar-text:#8b8fa5;--sidebar-text-active:#67e8f9;--sidebar-text-heading:#f1f2f6;--sidebar-text-faint:#5d6179;--sidebar-text-fainter:#4a4d65;--sidebar-text-faintest:#3e4158;--sidebar-link-dev:#5d6179;--sidebar-active-bg:rgba(14,116,144,0.15);--sidebar-btn-bg:#252840;--sidebar-btn-text:#8b8fa5;--sidebar-subtitle:#5d6179;--sidebar-logo-bg:#252840}*{box-sizing:border-box;margin:0;padding:0;transition:background-color .3s ease,border-color .3s ease,color .3s ease}body,html{height:100%;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--bg-body);color:var(--text-primary);line-height:1.6;-webkit-text-size-adjust:100%}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit;-webkit-tap-highlight-color:transparent}input,select,textarea{font-family:inherit;-webkit-appearance:none}input[type=checkbox],input[type=radio]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;width:16px;height:16px;accent-color:var(--primary)}.app-layout{display:flex;min-height:100vh}.main-area{flex:1 1;display:flex;flex-direction:column;min-width:0}.page-content{flex:1 1;padding:24px;margin-top:var(--header-height)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:12px;flex-wrap:wrap}.page-header h1{font-size:1.75rem;font-weight:700;color:var(--text-primary)}.card{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;border:1px solid var(--border-color);overflow-x:auto}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px;margin-bottom:24px}.stats-grid.stats-grid-4{grid-template-columns:repeat(4,1fr)}.stat-card{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 24px;display:flex;align-items:center;gap:16px;transition:transform .15s,box-shadow .15s;border:1px solid var(--border-color)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-icon{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.stat-icon.patients{background:var(--stat-patients-bg);color:var(--stat-patients-text)}.stat-icon.doctors{background:var(--stat-doctors-bg);color:var(--stat-doctors-text)}.stat-icon.appointments{background:var(--stat-appointments-bg);color:var(--stat-appointments-text)}.stat-icon.revenue{background:var(--stat-revenue-bg);color:var(--stat-revenue-text)}.stat-info h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:2px}.stat-info p{font-size:1.6rem;font-weight:700;color:var(--text-primary)}.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:var(--radius);font-size:.875rem;font-weight:600;border:none;transition:all .15s;white-space:nowrap}.btn-primary{background:var(--primary);color:white}.btn-primary:hover{background:var(--primary-dark)}.btn-success{background:var(--success);color:white}.btn-success:hover{background:#059669}.btn-danger{background:var(--danger);color:white}.btn-danger:hover{background:#dc2626}.btn-secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text)}.btn-secondary:hover{background:var(--btn-secondary-hover)}.btn-sm{padding:6px 12px;font-size:.8rem}.btn:disabled,.btn[disabled]{opacity:.5;cursor:not-allowed;pointer-events:none;box-shadow:none}.btn-danger:disabled,.btn-danger[disabled],.btn-primary:disabled,.btn-primary[disabled]{filter:brightness(.92) saturate(.7)}.btn-icon{padding:8px;border-radius:6px;background:transparent;border:none;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;transition:all .15s}.btn-icon:hover{background:var(--btn-icon-hover-bg);color:var(--btn-icon-hover-text)}.btn-icon.edit:hover{color:var(--secondary);background:var(--btn-edit-hover-bg)}.btn-icon.delete:hover{color:var(--danger);background:var(--btn-delete-hover-bg)}.table-container{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;border:1px solid var(--border-color)}.table-toolbar{padding:16px 20px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.search-input{flex:1 1;min-width:180px;max-width:320px;padding:8px 14px 8px 36px;border:1px solid var(--border-color);border-radius:var(--radius);font-size:.875rem;outline:none;transition:border-color .15s;background-color:var(--bg-input);color:var(--text-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%239ca3af' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85zm-5.242.156a5 5 0 1 1 0-10 5 5 0 0 1 0 10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:10px}.search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(14,116,144,.1)}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:collapse;min-width:600px}thead{background:var(--bg-table-head)}th{text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border-color);white-space:nowrap}td,th{padding:12px 16px}td{font-size:.85rem;border-bottom:1px solid var(--border-light);color:var(--text-secondary)}tr:hover td{background:var(--bg-table-hover)}.actions-cell{display:flex;gap:4px}.badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:20px;font-size:.75rem;font-weight:600;white-space:nowrap}.badge-success{background:var(--badge-success-bg);color:var(--badge-success-text)}.badge-warning{background:var(--badge-warning-bg);color:var(--badge-warning-text)}.badge-danger{background:var(--badge-danger-bg);color:var(--badge-danger-text)}.badge-info{background:var(--badge-info-bg);color:var(--badge-info-text)}.badge-secondary{background:var(--badge-secondary-bg);color:var(--badge-secondary-text)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--modal-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s;padding:16px}.modal-overlay.modal-overlay-stacked{z-index:2000}.modal{border-radius:12px;box-shadow:var(--shadow-lg);width:100%;max-width:560px;max-height:90vh;overflow-y:auto;animation:slideUp .2s;border:1px solid var(--border-color)}.modal,.modal-header{background:var(--bg-modal)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color);position:-webkit-sticky;position:sticky;top:0;z-index:1}.modal-header h2{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.modal-body{padding:20px}.modal-body p{color:var(--text-muted)}.modal-footer{padding:14px 20px;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:10px;position:-webkit-sticky;position:sticky;bottom:0;background:var(--bg-modal)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.form-control{width:100%;padding:10px 14px;border:1px solid var(--border-color);border-radius:var(--radius);font-size:.875rem;outline:none;transition:border-color .15s;background:var(--bg-input);color:var(--text-primary)}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(14,116,144,.1)}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}select.form-control{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}textarea.form-control{resize:vertical;min-height:80px}.empty-state{text-align:center;padding:50px 20px;color:var(--text-faint)}.empty-state svg{font-size:3rem;margin-bottom:12px}.empty-state p{font-size:1rem;margin-bottom:4px}.empty-state .sub{font-size:.85rem}.loading{display:flex;align-items:center;justify-content:center;padding:60px}.spinner{width:36px;height:36px;border:3px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}.user-badge{display:flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border-radius:8px;border:1px solid var(--border-color)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}@media (min-width:1280px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px) and (max-width:1279px){.stats-grid{grid-template-columns:repeat(3,1fr);gap:16px}.stat-card{padding:16px 18px}.stat-info p{font-size:1.4rem}}@media (max-width:1023px){.page-content{padding:20px 16px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:14px}.stat-card{padding:16px 18px}.stat-icon{width:44px;height:44px;font-size:1.25rem}.stat-info p{font-size:1.35rem}.page-header h1{font-size:1.4rem}.card{padding:18px}td,th{padding:10px 14px}.table-toolbar{padding:12px 16px}.modal{max-width:500px}.modal-header{padding:14px 18px}.modal-body{padding:18px}.modal-footer{padding:12px 18px}}@media (max-width:767px){.page-content{padding:16px 12px}.page-header{margin-bottom:16px}.page-header h1{font-size:1.25rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat-card{padding:14px;gap:10px}.stat-icon{width:40px;height:40px;font-size:1.1rem;border-radius:10px}.stat-info h3{font-size:.7rem}.stat-info p{font-size:1.15rem}.card{padding:14px}.card,.table-container{border-radius:10px}.table-toolbar{padding:12px 14px;gap:8px;flex-wrap:wrap}.search-input{max-width:100%;min-width:0}table{min-width:500px}th{font-size:.7rem}td,th{padding:10px 12px}td{font-size:.8rem}.btn{padding:9px 16px;font-size:.82rem}.form-row{grid-template-columns:1fr!important;gap:0}.modal{max-width:100%;border-radius:12px}.modal-header h2{font-size:1rem}.hide-mobile{display:none!important}.user-badge span{display:none}}@media (max-width:479px){.page-content{padding:12px 10px}.page-header{margin-bottom:12px;gap:8px}.page-header h1{font-size:1.1rem}.stats-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-card{padding:12px 10px;gap:8px;flex-direction:column;align-items:flex-start}.stat-icon{width:36px;height:36px;font-size:1rem;border-radius:8px}.stat-info h3{font-size:.65rem}.stat-info p{font-size:1.05rem}.card{padding:12px}.table-toolbar{padding:10px 12px}.search-input{font-size:.82rem;padding:7px 12px 7px 34px}table{min-width:420px}th{font-size:.68rem}td,th{padding:8px 10px}td{font-size:.78rem}.btn{padding:8px 14px;font-size:.8rem}.btn-sm{padding:5px 10px;font-size:.75rem}.form-group{margin-bottom:12px}.form-control{padding:9px 12px;font-size:.82rem}.modal-overlay{padding:8px}.modal-header{padding:12px 14px}.modal-header h2{font-size:.95rem}.modal-body{padding:14px}.modal-footer{padding:10px 14px}.empty-state{padding:30px 14px}.empty-state svg{font-size:2rem}.empty-state p{font-size:.85rem}.empty-state .sub{font-size:.75rem}.hide-mobile-sm{display:none!important}}@media (max-width:359px){.stats-grid{grid-template-columns:1fr;gap:8px}.stat-card{flex-direction:row;align-items:center}.page-header{flex-direction:column;align-items:flex-start}.btn{width:100%;justify-content:center}}.bmi-display{display:flex;flex-direction:column;align-items:flex-start}.barcode-modal-content{display:flex;flex-direction:column;align-items:center;gap:16px}.barcode-patient-info{text-align:center}.barcode-patient-info h3{font-size:1.15rem;font-weight:700;color:var(--text-primary);margin-bottom:4px}.barcode-patient-info p{font-size:.85rem;color:var(--text-muted);margin-bottom:2px}.barcode-display{background:#ffffff;border-radius:var(--radius);padding:16px;border:1px solid var(--border-color);display:flex;justify-content:center;align-items:center;width:100%}.barcode-display svg{max-width:100%;height:auto}.barcode-success-icon{color:var(--success);display:flex;justify-content:center;animation:fadeIn .3s}.barcode-hint{font-size:.75rem;color:var(--text-faint);text-align:center}.modal.modal-wide{max-width:640px}.modal.modal-bank-deposit{max-width:720px;width:95vw}.bank-deposit-stats-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:767px){.modal.modal-bank-deposit{max-width:100%;width:100%}.bank-deposit-stats-grid{grid-template-columns:1fr;gap:12px}}@media (max-width:479px){.modal.modal-bank-deposit{max-height:85vh}}.schedule-container{display:flex;flex-direction:column;gap:10px}.schedule-day{border-left:1px solid var(--border-color);border-radius:var(--radius);overflow:hidden;border:1px solid var(--border-color);border-left-width:3px;transition:border-color .2s}.schedule-day-active{border-left-color:var(--primary)}.schedule-day-header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:var(--bg-table-head)}.schedule-day-label{display:flex;align-items:center;gap:10px}.schedule-day-short{font-size:.68rem;font-weight:700;letter-spacing:.06em;color:var(--primary);background:var(--primary-bg);padding:2px 7px;border-radius:4px;min-width:34px;text-align:center}[data-theme=dark] .schedule-day-short{background:rgba(14,116,144,.18)}.schedule-day-full{font-weight:600;font-size:.88rem;color:var(--text-primary)}.schedule-add-slot{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:.73rem;font-weight:600;border:1px dashed var(--border-color);background:transparent;color:var(--primary);cursor:pointer;transition:all .15s}.schedule-add-slot:hover{background:var(--primary-bg);border-color:var(--primary);border-style:solid}[data-theme=dark] .schedule-add-slot:hover{background:rgba(14,116,144,.12)}.schedule-day-body{padding:10px 14px}.schedule-slots{display:flex;flex-direction:column;gap:8px}.schedule-slot{display:flex;align-items:center;gap:8px}.schedule-time-input{padding:7px 10px;border:1px solid var(--border-color);border-radius:6px;font-size:.85rem;font-family:inherit;outline:none;background:var(--bg-input);color:var(--text-primary);transition:border-color .15s;width:130px;min-width:0}.schedule-time-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(14,116,144,.1)}.schedule-slot-separator{font-size:.78rem;color:var(--text-muted);font-weight:500;flex-shrink:0}.schedule-slot-empty{display:flex;align-items:center;gap:6px;font-size:.82rem;color:var(--text-faint);font-style:italic;padding:2px 0}.schedule-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:.73rem;font-weight:600;border:none;cursor:pointer;background:var(--badge-info-bg);color:var(--badge-info-text);transition:all .15s}.schedule-badge:hover{filter:brightness(.95);transform:scale(1.03)}.schedule-badge-empty{font-size:.73rem;color:var(--text-faint);font-style:italic}.schedule-dot{position:absolute;top:3px;right:3px;width:7px;height:7px;border-radius:50%;background:var(--success);border:1.5px solid var(--bg-card)}.btn-icon.schedule:hover{color:var(--primary);background:var(--primary-bg)}[data-theme=dark] .btn-icon.schedule:hover{background:rgba(14,116,144,.15)}@media (max-width:767px){.modal.modal-wide{max-width:100%}.schedule-time-input{width:auto;flex:1 1;padding:6px;font-size:.8rem}.schedule-day-body,.schedule-day-header{padding:8px 10px}.schedule-slot{gap:5px}}@media (max-width:479px){.schedule-day-full{display:none}.schedule-time-input{padding:5px 4px;font-size:.78rem}}.modal.modal-appointment{max-width:880px;width:92vw}.modal.modal-appointment .modal-header{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);border-bottom:none}.modal.modal-appointment .modal-header h2{color:#ffffff}.modal.modal-appointment .modal-header .btn-icon{color:rgba(255,255,255,.8)}.modal.modal-appointment .modal-header .btn-icon:hover{color:#ffffff;background:rgba(255,255,255,.15)}.modal.modal-appointment .modal-body{padding:24px}.modal.modal-appointment .modal-footer{border-top:1px solid var(--border-color);padding:16px 24px;gap:12px}@media (min-width:1280px){.modal.modal-appointment{max-width:920px}}@media (max-width:1023px){.modal.modal-appointment{max-width:700px;width:94vw}}@media (max-width:767px){.modal.modal-appointment{max-width:100%;width:100%;border-radius:18px 18px 0 0;max-height:94vh;align-self:flex-end}.modal-overlay:has(.modal-appointment){align-items:flex-end;padding:0}.modal.modal-appointment .modal-body{padding:16px}.modal.modal-appointment .modal-header{padding:14px 16px;border-radius:18px 18px 0 0}.modal.modal-appointment .modal-footer{padding:12px 16px}.modal.modal-appointment .form-row{grid-template-columns:1fr!important;gap:0}}@media (max-width:479px){.modal.modal-appointment{border-radius:16px 16px 0 0;max-height:95vh}.modal.modal-appointment .modal-body{padding:14px 12px}.modal.modal-appointment .modal-header{padding:12px 14px;border-radius:16px 16px 0 0}.modal.modal-appointment .modal-header h2{font-size:.95rem}.modal.modal-appointment .modal-footer{padding:10px 12px;gap:8px}.modal.modal-appointment .modal-footer .btn{padding:9px 14px;font-size:.8rem;flex:1 1}}@media (max-width:359px){.modal.modal-appointment{max-height:97vh}.modal.modal-appointment .modal-body{padding:10px 8px}.modal.modal-appointment .modal-footer .btn{padding:8px 12px;font-size:.78rem}}.apt-form{display:flex;flex-direction:column;gap:0}.apt-step{border:1px solid var(--border-color);border-radius:12px;margin-bottom:16px;background:var(--bg-card)}.apt-step-last{margin-bottom:0}.apt-step-header{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--bg-table-head);border-bottom:1px solid var(--border-light);border-radius:11px 11px 0 0}.apt-step-number{width:28px;height:28px;border-radius:50%;background:var(--primary);color:#ffffff;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;flex-shrink:0}.apt-step-label{display:flex;flex-direction:column;gap:1px;flex:1 1;min-width:0}.apt-step-title{font-size:.9rem;font-weight:700;color:var(--text-primary)}.apt-step-hint{font-size:.75rem;color:var(--text-muted)}.apt-step-check{width:24px;height:24px;border-radius:50%;background:var(--success);color:#ffffff;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;flex-shrink:0;animation:fadeIn .2s}.apt-step-body{padding:18px}.apt-patient-card{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:10px;background:var(--primary-bg);border:1.5px solid var(--primary);animation:slideUp .2s}[data-theme=dark] .apt-patient-card{background:rgba(14,116,144,.1)}.apt-patient-avatar{width:44px;height:44px;border-radius:50%;background:var(--primary);color:#ffffff;display:flex;align-items:center;justify-content:center;font-size:.88rem;font-weight:700;flex-shrink:0;letter-spacing:.5px}.apt-patient-info{display:flex;flex-direction:column;gap:4px;flex:1 1;min-width:0}.apt-patient-name{font-size:1rem;font-weight:700;color:var(--text-primary)}.apt-patient-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:.8rem;color:var(--text-muted)}.apt-patient-meta span{display:inline-flex;align-items:center;gap:3px}.apt-card-clear{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:none;background:rgba(0,0,0,.06);color:var(--text-muted);cursor:pointer;transition:all .15s;flex-shrink:0}[data-theme=dark] .apt-card-clear{background:rgba(255,255,255,.08)}.apt-card-clear:hover{background:var(--badge-danger-bg);color:var(--danger)}.apt-barcode-input{border:2px dashed var(--primary)!important;background:var(--primary-bg)!important;font-weight:500}[data-theme=dark] .apt-barcode-input{background:rgba(14,116,144,.06)!important}.apt-barcode-input:focus{border-style:solid!important;box-shadow:0 0 0 4px rgba(14,116,144,.12)!important}.apt-divider-text{display:flex;align-items:center;gap:14px;margin:4px 0 12px}.apt-divider-text:after,.apt-divider-text:before{content:"";flex:1 1;height:1px;background:var(--border-color)}.apt-divider-text span{font-size:.72rem;font-weight:600;color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.apt-doctor-chip{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:var(--radius);border:1.5px solid var(--primary);background:var(--primary-bg);min-height:42px}[data-theme=dark] .apt-doctor-chip{background:rgba(14,116,144,.1)}.apt-doctor-chip-avatar{width:32px;height:32px;border-radius:50%;background:var(--secondary);color:#ffffff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;flex-shrink:0}.apt-doctor-chip-info{display:flex;flex-direction:column;flex:1 1;min-width:0}.apt-doctor-chip-name{font-size:.88rem;font-weight:600;color:var(--text-primary)}.apt-doctor-chip-spec,.form-hint{font-size:.73rem;color:var(--text-muted)}.form-hint{display:block;margin-top:4px;font-weight:500}.mercantile-holiday-note{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 8px;margin-top:6px;padding:6px 10px;background:color-mix(in srgb,var(--warning,#d97706) 12%,var(--bg-card,#fff));border:1px solid color-mix(in srgb,var(--warning,#d97706) 28%,var(--border-color,#e5e7eb));border-radius:6px;font-size:.75rem;line-height:1.35;color:var(--text-primary)}.mercantile-holiday-note--inline{display:inline;margin-top:0;margin-left:4px;padding:0;border:none;background:none;font-size:.7rem;color:var(--text-muted,#64748b)}.mercantile-holiday-pill{display:inline-block;padding:1px 7px;border-radius:4px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:color-mix(in srgb,var(--warning,#b45309) 18%,transparent);color:var(--text-primary,#0f172a)}.mercantile-holiday-name{font-weight:500;color:var(--text-primary)}.mercantile-restricted-hint{margin:6px 0 0;font-size:.75rem;line-height:1.35;color:var(--danger,#b91c1c);font-weight:500}.modal.modal-appointment .apt-doctor-leave-warning{margin-top:8px;color:#dc2626;font-weight:600;font-size:.8125rem;line-height:1.4}[data-theme=dark] .modal.modal-appointment .apt-doctor-leave-warning{color:#f87171}.rcpt-date-holiday-stack{display:flex;flex-direction:column;align-items:center;width:100%;max-width:520px;margin:0 auto}.rcpt-merc-holiday{max-width:100%;align-self:stretch;text-align:left;margin-top:8px}.mcal-field{position:relative;display:block;width:100%;max-width:100%}.mcal-field--sm{max-width:200px}.mcal-field__btn{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:40px;padding:10px 12px 10px 14px;text-align:left;font-size:.875rem;line-height:1.2;border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-input);color:var(--text-primary);cursor:pointer;transition:border-color .15s,background .15s}.mcal-field--sm .mcal-field__btn{min-height:36px;padding:6px 10px;font-size:.8rem}.mcal-field__btn:hover:not(:disabled){border-color:var(--primary,#2563eb);background:var(--bg-card)}.mcal-field__btn:disabled{opacity:.55;cursor:not-allowed}.mcal-field__value{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mcal-field__icon{flex-shrink:0;color:var(--text-muted,#64748b);opacity:.9}.mcal-pop{position:fixed;width:min(292px,calc(100vw - 16px));max-height:min(420px,90vh);overflow:auto;padding:10px 10px 6px;background:var(--bg-card,#fff);color:var(--text-primary,#0f172a);border:1px solid var(--border-color,#e5e7eb);border-radius:10px;box-shadow:0 10px 40px rgba(0,0,0,.12),0 0 0 1px color-mix(in srgb,var(--border-color) 60%,transparent);animation:mcalFade .12s ease}@keyframes mcalFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.mcal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;-webkit-user-select:none;-moz-user-select:none;user-select:none;gap:4px}.mcal-title{font-size:.82rem;font-weight:700;text-align:center;flex:1 1;color:var(--text-primary);letter-spacing:.02em}.mcal-nav-btn{width:30px;height:30px;border:none;background:var(--bg-body,#f8fafc);color:var(--text-secondary,#334155);border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .12s}.mcal-nav-btn:hover{background:var(--bg-table-head,#f1f5f9);color:var(--primary,#2563eb)}.mcal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:1px;gap:1px;margin-bottom:2px}.mcal-wd{text-align:center;font-size:.6rem;font-weight:600;color:var(--text-muted,#94a3b8);text-transform:uppercase;letter-spacing:.04em;padding:1px 0 3px}.mcal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:2px;gap:2px;margin-top:2px}.mcal-day--pad{background:transparent;pointer-events:none}.mcal-day,.mcal-day--pad{min-height:32px;border:none}.mcal-day{min-width:0;position:relative;background:var(--bg-body,#f8fafc);color:var(--text-primary,#0f172a);font-size:.8rem;font-weight:500;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:1px 0 3px;line-height:1;transition:background .1s,color .1s,box-shadow .1s}.mcal-day--disabled,.mcal-day:disabled{opacity:.35;cursor:not-allowed;background:var(--bg-table-stripe,transparent)}.mcal-day:hover:not(:disabled){background:color-mix(in srgb,var(--primary,#2563eb) 10%,var(--bg-body))}.mcal-day--today{font-weight:800;box-shadow:0 0 0 1.5px color-mix(in srgb,var(--primary,#2563eb) 50%,var(--border-color)) inset}.mcal-day--mercantile:not(:disabled){background:color-mix(in srgb,var(--warning,#d97706) 14%,var(--bg-body,#f8fafc));color:var(--text-primary);font-weight:600}.mcal-day--mercantile:hover:not(:disabled){background:color-mix(in srgb,var(--warning,#b45309) 22%,var(--bg-body))}.mcal-day--selected,.mcal-day--selected:disabled{background:var(--primary,#2563eb)!important;color:#fff!important;opacity:1!important;box-shadow:0 1px 4px color-mix(in srgb,var(--primary) 35%,transparent);font-weight:700}.mcal-holiday-dot{display:block;width:4px;height:4px;border-radius:50%;background:var(--warning,#d97706);box-shadow:0 0 0 .5px var(--text-primary,#0f172a)}.mcal-day--selected .mcal-holiday-dot,.mcal-day:disabled .mcal-holiday-dot{display:none}.mcal-day--selected.mcal-day--mercantile{color:#fff}.mcal-legend{display:flex;align-items:center;gap:6px;margin-top:8px;padding:4px 2px 0;border-top:1px solid var(--border-light,#e2e8f0);font-size:.6rem;color:var(--text-muted,#94a3b8);line-height:1.3;flex-wrap:wrap}.mcal-legend-sample{display:inline-block;width:12px;height:12px;border-radius:3px;background:color-mix(in srgb,var(--warning,#d97706) 14%,var(--bg-body,#f8fafc));box-shadow:0 0 0 .5px var(--border-color) inset}.mcal-legend-text{text-transform:uppercase;letter-spacing:.04em;font-weight:500}.mcal-legend-sub{display:block;text-transform:none;letter-spacing:.01em;font-weight:500;font-size:.58rem;line-height:1.25;color:var(--text-muted);margin-top:4px}.mapt-toolbar-mcal{min-width:0;flex:0 0 auto;width:150px}.apt-slots-section{margin-top:4px}.apt-fee-section,.apt-slots-section{padding-top:16px;border-top:1px solid var(--border-light)}.apt-fee-section{margin-top:16px}.apt-new-charge-hint{font-size:.82rem;color:var(--text-muted);line-height:1.45;margin-bottom:14px}.apt-new-charge-card{margin-top:14px;padding:16px;background:var(--gray-50);border:1px solid var(--border-color);border-radius:10px;transition:border-color .2s,box-shadow .2s}.apt-new-charge-card:hover{border-color:var(--primary-light,rgba(14,116,144,.35))}[data-theme=dark] .apt-new-charge-card{background:var(--gray-900);border-color:var(--gray-700)}[data-theme=dark] .apt-new-charge-card:hover{border-color:var(--gray-600)}.apt-new-charge-header{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px}.apt-new-charge-icon{flex-shrink:0;margin-top:2px;color:var(--primary)}.apt-new-charge-title{display:block;font-size:.9rem;font-weight:700;color:var(--text-secondary)}.apt-new-charge-subtitle{display:block;font-size:.75rem;color:var(--text-muted);margin-top:2px}.apt-new-charge-fields{display:grid;grid-template-columns:1fr auto auto auto;grid-gap:12px;gap:12px;align-items:end;margin-bottom:14px}.apt-new-charge-field{display:flex;flex-direction:column;gap:4px}.apt-new-charge-field label{font-size:.75rem;font-weight:600;color:var(--text-muted)}.apt-new-charge-name{min-width:0}.apt-new-charge-amount{width:90px}.apt-new-charge-total{display:flex;flex-direction:column;gap:4px;padding:8px 12px;background:var(--primary-bg);border-radius:8px;min-width:100px}.apt-new-charge-total label{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.apt-new-charge-total-value{font-size:1rem;font-weight:700;color:var(--primary)}.apt-new-charge-actions{display:flex;flex-wrap:wrap;gap:10px}.apt-new-charge-btn-save,.apt-new-charge-btn-use{display:inline-flex;align-items:center;gap:6px}.apt-spin{animation:spin .7s linear infinite}@media (max-width:600px){.apt-new-charge-fields{grid-template-columns:1fr 1fr}.apt-new-charge-total{grid-column:1/-1}.apt-new-charge-amount{width:100%}}@media (max-width:400px){.apt-new-charge-fields{grid-template-columns:1fr}.apt-new-charge-actions{flex-direction:column}.apt-new-charge-actions .btn{width:100%;justify-content:center}}.apt-charges-hint{font-size:.78rem;color:var(--text-muted);margin-bottom:8px}.apt-selected-charges{margin-top:12px;padding:12px;background:var(--gray-50);border:1px solid var(--border-color);border-radius:8px}[data-theme=dark] .apt-selected-charges{background:var(--gray-900)}.apt-selected-charges-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.apt-selected-charge-row{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--bg-modal);border-radius:6px;border:1px solid var(--border-light)}.apt-selected-charge-info{flex:1 1;display:flex;flex-direction:column;gap:6px}.apt-selected-charge-label{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.apt-selected-charge-inputs{display:flex;gap:8px}.apt-charge-input{width:80px;padding:6px 8px;font-size:.85rem}.apt-remove-charge-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:rgba(239,68,68,.1);color:#ef4444;cursor:pointer;transition:background .15s;flex-shrink:0}.apt-remove-charge-btn:hover{background:rgba(239,68,68,.2)}.apt-selected-charges-total{display:flex;flex-wrap:wrap;gap:12px 20px;padding-top:10px;border-top:1px solid var(--border-color);font-size:.85rem}.apt-selected-charges-total strong{color:var(--primary)}.apt-slots-label{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:10px}.apt-slots-day{display:inline-flex;padding:1px 8px;border-radius:4px;font-size:.7rem;font-weight:700;letter-spacing:.03em;background:var(--badge-info-bg);color:var(--badge-info-text);margin-left:4px}.searchable-field,.searchable-input-wrap{position:relative}.searchable-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-faint);pointer-events:none;z-index:1}.searchable-input{padding-left:34px!important}.search-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;background:var(--bg-modal);border:1px solid var(--border-color);border-radius:var(--radius);max-height:240px;overflow-y:auto;box-shadow:var(--shadow-lg);animation:fadeIn .12s}.search-dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 14px;font-size:.85rem;color:var(--text-secondary);cursor:pointer;transition:background .1s;border-bottom:1px solid var(--border-light)}.search-dropdown-item:last-child{border-bottom:none}.search-dropdown-item.highlighted,.search-dropdown-item:hover{background:var(--primary-bg)}[data-theme=dark] .search-dropdown-item.highlighted,[data-theme=dark] .search-dropdown-item:hover{background:rgba(14,116,144,.08)}.search-dropdown-avatar{width:32px;height:32px;border-radius:50%;background:var(--primary);color:#ffffff;display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:700;flex-shrink:0;letter-spacing:.5px}.search-dropdown-avatar.doctor{background:var(--secondary)}.search-dropdown-info{display:flex;flex-direction:column;gap:1px;flex:1 1;min-width:0}.search-dropdown-primary{font-size:.85rem;font-weight:600;color:var(--text-primary)}.search-dropdown-primary,.search-dropdown-secondary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-dropdown-secondary{font-size:.73rem;color:var(--text-muted)}.time-slots-grid{display:flex;flex-wrap:wrap;gap:10px}.time-slot-btn{display:inline-flex;align-items:center;gap:7px;padding:11px 20px;border-radius:10px;font-size:.85rem;font-weight:600;border:2px solid var(--border-color);background:var(--bg-input);color:var(--text-secondary);cursor:pointer;transition:all .18s}.time-slot-range{white-space:nowrap}.time-slot-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg);transform:translateY(-1px);box-shadow:0 2px 8px rgba(14,116,144,.12)}[data-theme=dark] .time-slot-btn:hover{background:rgba(14,116,144,.1);box-shadow:0 2px 8px rgba(14,116,144,.08)}.time-slot-btn.active{border-color:var(--primary);background:var(--primary);color:#ffffff;box-shadow:0 3px 10px rgba(14,116,144,.25)}.time-slot-btn.active:hover{background:var(--primary-dark);color:#ffffff;transform:translateY(-1px)}.no-slots-msg{display:flex;align-items:center;gap:8px;padding:14px 16px;border-radius:10px;background:var(--badge-warning-bg);color:var(--badge-warning-text);font-size:.84rem;font-weight:500;line-height:1.5}@media (max-width:767px){.apt-step{border-radius:10px;margin-bottom:12px}.apt-step-header{padding:12px 14px;gap:10px}.apt-step-number{width:26px;height:26px;font-size:.74rem}.apt-step-title{font-size:.85rem}.apt-step-body{padding:14px}.apt-patient-card{padding:12px 14px;gap:10px}.apt-patient-avatar{width:38px;height:38px;font-size:.82rem}.apt-patient-name{font-size:.92rem}.apt-patient-meta{gap:8px;font-size:.76rem}.time-slots-grid{gap:8px}.time-slot-btn{padding:10px 14px;font-size:.82rem;flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 8px);min-width:0;justify-content:center;border-radius:8px}.search-dropdown{max-height:200px}.search-dropdown-item{padding:9px 12px;gap:8px}.search-dropdown-avatar{width:28px;height:28px;font-size:.64rem}.apt-doctor-chip{padding:7px 10px;min-height:38px}.apt-doctor-chip-avatar{width:28px;height:28px;font-size:.64rem}}@media (max-width:479px){.apt-step{border-radius:8px;margin-bottom:10px}.apt-step-header{padding:10px 12px}.apt-step-body{padding:12px}.apt-step-hint{font-size:.68rem}.apt-patient-card{flex-wrap:wrap;padding:10px 12px}.apt-patient-avatar{width:34px;height:34px;font-size:.76rem}.apt-patient-meta{gap:6px;font-size:.73rem}.apt-divider-text{margin:2px 0 8px}.time-slot-btn{padding:9px 10px;font-size:.78rem;flex:1 1 100%;border-radius:8px}.search-dropdown-item{padding:8px 10px;font-size:.8rem;gap:6px}.no-slots-msg{padding:10px 12px;font-size:.8rem}.searchable-icon{left:10px}.searchable-input{padding-left:30px!important}.apt-card-clear{width:26px;height:26px}}@media (max-width:359px){.apt-step-number{width:24px;height:24px;font-size:.7rem}.apt-step-title{font-size:.8rem}.time-slot-btn{padding:8px;font-size:.75rem;gap:4px}.apt-patient-meta .badge{font-size:.68rem;padding:1px 7px}}.view-toggle{display:inline-flex;border:1px solid var(--border-color);border-radius:var(--radius);overflow:hidden;margin-left:auto}.view-toggle-btn{display:flex;align-items:center;justify-content:center;padding:6px 12px;border:none;background:var(--bg-card);color:var(--text-faint);cursor:pointer;transition:all .15s}.view-toggle-btn:first-child{border-right:1px solid var(--border-color)}.view-toggle-btn:hover{color:var(--primary);background:var(--primary-bg)}.view-toggle-btn.active{color:#fff;background:var(--primary)}.sessions-container{padding:16px}.sessions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:16px;gap:16px}.session-card{border:1px solid var(--border-color);border-radius:14px;background:var(--bg-card);display:flex;flex-direction:column;transition:box-shadow .2s,border-color .2s,transform .15s}.session-card:hover{border-color:var(--primary-light);box-shadow:0 6px 24px rgba(0,0,0,.08);transform:translateY(-2px)}.session-card-top{display:flex;align-items:center;gap:12px;padding:18px 18px 12px}.session-doctor-avatar{width:46px;height:46px;min-width:46px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark,#0e7490));color:#fff;display:flex;align-items:center;justify-content:center;font-size:.88rem;font-weight:700;letter-spacing:.03em}.session-card-title{font-size:1rem;font-weight:700;color:var(--text-primary);line-height:1.3}.session-card-body{padding:0 18px 12px;display:flex;flex-direction:column;gap:6px}.session-card-detail{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--text-secondary)}.session-card-detail svg{color:var(--text-faint);flex-shrink:0}.session-day-tag{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:4px;font-size:.68rem;font-weight:700;letter-spacing:.03em;background:var(--badge-info-bg);color:var(--badge-info-text)}.session-card-stats{padding:0 18px 14px;display:flex;flex-wrap:wrap;gap:6px}.session-card-stats .badge{font-size:.7rem}.session-card-actions{display:flex;gap:8px;padding:0 18px 18px}.session-card-btn{flex:1 1;text-align:center;justify-content:center;font-size:.82rem;padding:8px 0;border-radius:8px;display:inline-flex;align-items:center;gap:5px}.modal-session-detail{max-width:1100px;width:96vw}.sd-content{display:flex;flex-direction:column;gap:16px}.sd-header-card{display:flex;align-items:center;gap:14px;padding:16px;border-radius:12px;background:var(--bg-table-head);border:1px solid var(--border-light)}.sd-doctor-avatar{width:50px;height:50px;min-width:50px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark,#0e7490));color:#fff;display:flex;align-items:center;justify-content:center;font-size:.95rem;font-weight:700}.sd-header-info{flex:1 1;min-width:0}.sd-doctor-name{font-size:1.05rem;font-weight:700;color:var(--text-primary);margin-bottom:4px}.sd-header-meta{display:flex;flex-wrap:wrap;gap:14px}.sd-header-meta>span{display:inline-flex;align-items:center;gap:5px;font-size:.82rem;color:var(--text-secondary)}.sd-table-wrap{overflow-x:auto;border:1px solid var(--border-light);border-radius:10px}.sd-table{width:100%;border-collapse:collapse;font-size:.85rem}.sd-table thead{background:var(--bg-table-head)}.sd-table th{padding:10px 14px;text-align:left;font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);white-space:nowrap;border-bottom:1px solid var(--border-color)}.sd-table td{padding:12px 14px;color:var(--text-secondary);border-bottom:1px solid var(--border-light);white-space:nowrap}.sd-table tbody tr:last-child td{border-bottom:none}.sd-table tbody tr:hover{background:var(--primary-bg)}.sd-td-num{font-weight:700;text-align:center;width:40px}.sd-notes,.sd-td-num{color:var(--text-faint)}.sd-notes{font-size:.78rem;font-style:italic;white-space:normal;max-width:160px}@media (max-width:768px){.modal-session-detail{max-width:100%}.sd-header-card{flex-direction:column;align-items:flex-start;gap:10px;padding:14px}.sd-header-meta{gap:10px}.sd-table td,.sd-table th{padding:8px 10px;font-size:.78rem}}@media (max-width:480px){.sessions-grid{grid-template-columns:1fr;gap:10px}.sessions-container{padding:10px}.session-card-top{padding:14px 14px 10px}.session-card-body,.session-card-stats{padding:0 14px 10px}.session-card-actions{padding:0 14px 14px;gap:6px}}.apt-add-patient-btn{width:100%;justify-content:center;padding:12px 20px;font-size:.88rem;border:2px dashed var(--border-color);border-radius:10px;background:transparent;color:var(--primary);transition:all .18s}.apt-add-patient-btn:hover{border-color:var(--primary);border-style:solid;background:var(--primary-bg);color:var(--primary-dark)}[data-theme=dark] .apt-add-patient-btn:hover{background:rgba(14,116,144,.1)}.apt-new-patient-form{border:1.5px solid var(--primary);border-radius:10px;padding:16px;background:var(--primary-bg);animation:slideUp .2s}[data-theme=dark] .apt-new-patient-form{background:rgba(14,116,144,.06)}.apt-new-patient-header{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border-color)}.apt-new-patient-title{display:inline-flex;align-items:center;gap:6px;font-size:.9rem;font-weight:700;color:var(--primary)}.apt-new-patient-shortcuts{font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:2px;margin-left:auto}.apt-kbd{display:inline-block;padding:2px 6px;font-size:.7rem;font-family:inherit;font-weight:600;line-height:1.2;color:var(--text-secondary);background:var(--gray-100);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 1px 0 var(--border-color)}[data-theme=dark] .apt-kbd{background:var(--gray-800);border-color:var(--gray-600);color:var(--gray-300)}.apt-kbd-inline{display:inline-block;padding:1px 5px;margin-left:6px;font-size:.7rem;font-family:inherit;font-weight:600;color:var(--text-muted);background:rgba(0,0,0,.06);border:1px solid var(--border-color);border-radius:3px}.apt-patient-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.apt-card-print{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:none;background:rgba(14,116,144,.12);color:var(--primary);cursor:pointer;transition:all .15s;flex-shrink:0}.apt-card-print:hover{background:var(--primary);color:#ffffff;transform:scale(1.08)}[data-theme=dark] .apt-card-print{background:rgba(14,116,144,.18)}[data-theme=dark] .apt-card-print:hover{background:var(--primary);color:#ffffff}@media (max-width:479px){.apt-new-patient-form{padding:12px}.apt-new-patient-header{margin-bottom:10px;padding-bottom:8px}.apt-new-patient-title{font-size:.82rem}.apt-add-patient-btn{padding:10px 14px;font-size:.82rem}.apt-card-print{width:28px;height:28px}}.status-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:none;border-radius:20px;padding:3px 24px 3px 10px;font-size:.75rem;font-weight:600;font-family:inherit;cursor:pointer;outline:none;transition:all .15s;white-space:nowrap;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:10px}.status-select:hover{filter:brightness(.92)}.status-select:focus{box-shadow:0 0 0 3px rgba(14,116,144,.15)}.status-select.badge-warning{background-color:var(--badge-warning-bg);color:var(--badge-warning-text)}.status-select.badge-info{background-color:var(--badge-info-bg);color:var(--badge-info-text)}.status-select.badge-success{background-color:var(--badge-success-bg);color:var(--badge-success-text)}.status-select.badge-danger{background-color:var(--badge-danger-bg);color:var(--badge-danger-text)}.status-select.badge-secondary{background-color:var(--badge-secondary-bg);color:var(--badge-secondary-text)}.status-select option{background:var(--bg-modal);color:var(--text-primary);font-weight:500;padding:6px 10px}.status-select-sm{padding:2px 22px 2px 8px;font-size:.73rem;background-size:9px;background-position:right 6px center}@media (max-width:479px){.status-select{padding:2px 20px 2px 8px;font-size:.7rem;background-size:8px;background-position:right 6px center}.status-select-sm{padding:2px 18px 2px 6px;font-size:.68rem}}.rpt-tabs{display:flex;gap:4px;padding:4px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius);margin-bottom:16px;box-shadow:var(--shadow)}.rpt-tab{flex:1 1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:none;background:transparent;color:var(--text-muted);font-size:.88rem;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s}.rpt-tab:hover{background:var(--bg-table-head);color:var(--text-primary)}.rpt-tab.active{background:var(--primary);color:#fff;box-shadow:0 2px 8px rgba(14,116,144,.3)}.rpt-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 7px;border-radius:12px;font-size:.72rem;font-weight:700;background:rgba(255,255,255,.2)}.rpt-tab:not(.active) .rpt-tab-count{background:var(--bg-table-head);color:var(--text-muted)}.rpt-filters-panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius);margin-bottom:16px;box-shadow:var(--shadow);overflow:hidden}.rpt-filters-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .15s}.rpt-filters-header:hover{background:var(--bg-table-head)}.rpt-filters-title{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.88rem;color:var(--text-primary)}.rpt-active-filter-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;font-size:.68rem;font-weight:700;background:var(--primary-bg);color:var(--primary)}[data-theme=dark] .rpt-active-filter-badge{background:rgba(14,116,144,.2)}.rpt-filters-actions{display:flex;align-items:center;gap:10px;color:var(--text-muted)}.rpt-clear-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--border-color);border-radius:6px;background:transparent;color:var(--danger);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s}.rpt-clear-btn:hover{background:var(--badge-danger-bg)}.rpt-filters-body{padding:0 16px 16px;border-top:1px solid var(--border-color)}.rpt-date-presets{display:flex;gap:6px;padding:14px 0 12px;flex-wrap:wrap}.rpt-preset-btn{padding:6px 16px;border:1px solid var(--border-color);border-radius:20px;background:transparent;color:var(--text-muted);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.rpt-preset-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg)}[data-theme=dark] .rpt-preset-btn:hover{background:rgba(14,116,144,.15)}.rpt-preset-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.rpt-filter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:12px;gap:12px}.rpt-filter-group{display:flex;flex-direction:column;gap:4px}.rpt-filter-group label{display:flex;align-items:center;gap:5px;font-size:.76rem;font-weight:600;color:var(--text-muted)}.rpt-filter-group .form-control{padding:7px 10px;font-size:.82rem}.rpt-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.rpt-stats-grid-4col{grid-template-columns:repeat(4,1fr)}.rpt-stat-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}.rpt-stat-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.rpt-stat-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;flex-shrink:0}.rpt-stat-info{display:flex;flex-direction:column;min-width:0}.rpt-stat-num{font-size:1.1rem;font-weight:700;color:var(--text-primary);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rpt-stat-label{font-size:.72rem;color:var(--text-muted);font-weight:500;margin-top:2px}.rpt-stat-total .rpt-stat-icon{background:var(--stat-appointments-bg);color:var(--stat-appointments-text)}.rpt-stat-scheduled .rpt-stat-icon{background:var(--badge-info-bg);color:var(--badge-info-text)}.rpt-stat-completed .rpt-stat-icon{background:var(--badge-success-bg);color:var(--badge-success-text)}.rpt-stat-cancelled .rpt-stat-icon{background:var(--badge-danger-bg);color:var(--badge-danger-text)}.rpt-stat-patients .rpt-stat-icon{background:var(--stat-patients-bg);color:var(--stat-patients-text)}.rpt-stat-fees .rpt-stat-icon{background:var(--stat-revenue-bg);color:var(--stat-revenue-text)}.table-container tfoot td{padding:10px 12px;font-size:.85rem;border-top:2px solid var(--border-color)}@media (max-width:768px){.rpt-filter-grid{grid-template-columns:1fr 1fr}.rpt-stats-grid,.rpt-stats-grid-4col{grid-template-columns:repeat(2,1fr)}.rpt-stat-card{padding:10px 12px}.rpt-stat-num{font-size:.95rem}}@media (max-width:479px){.rpt-tabs{flex-direction:row}.rpt-tab{padding:8px 10px;font-size:.8rem;gap:5px}.rpt-filter-grid{grid-template-columns:1fr}.rpt-stats-grid{gap:8px}.rpt-stats-grid,.rpt-stats-grid-4col{grid-template-columns:1fr 1fr}.rpt-date-presets{gap:4px}.rpt-preset-btn{padding:5px 12px;font-size:.75rem}}.rcpt-loading{align-items:center;justify-content:center;gap:16px;color:var(--text-muted);font-size:.9rem}.rcpt-loading,.rcpt-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-body)}.rcpt-header{justify-content:space-between;padding:0 24px;height:64px;background:var(--bg-card);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow);position:-webkit-sticky;position:sticky;top:0;z-index:100}.rcpt-header,.rcpt-header-left{display:flex;align-items:center;gap:16px}.rcpt-header-left{flex-shrink:0}.rcpt-back-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border:none;border-radius:var(--radius);font-size:.82rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.rcpt-back-btn:hover{background:var(--btn-secondary-hover);transform:translateX(-2px)}.rcpt-brand{gap:10px}.rcpt-brand,.rcpt-brand-icon{display:flex;align-items:center}.rcpt-brand-icon{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;justify-content:center;font-weight:700;font-size:1.1rem}.rcpt-brand-text h1{font-size:1rem;font-weight:700;color:var(--text-primary);line-height:1.2;margin:0}.rcpt-brand-text span{font-size:.7rem;color:var(--text-muted);line-height:1}.rcpt-header-center{flex:1 1;display:flex;justify-content:center}.rcpt-date-nav{display:flex;align-items:center;gap:0;background:var(--bg-body);border-radius:var(--radius);padding:4px;border:1px solid var(--border-color)}.rcpt-date-arrow{width:34px;height:34px;border-radius:6px;border:none;background:transparent;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;flex-shrink:0}.rcpt-date-arrow:hover{background:var(--bg-card);color:var(--primary)}.rcpt-date-display{display:flex;align-items:center;gap:8px;padding:4px 10px;color:var(--text-primary);cursor:pointer;border-radius:6px;margin:0 2px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.rcpt-date-display:hover{background:var(--bg-card)}.rcpt-date-input-hidden{position:absolute;width:0;height:0;opacity:0;pointer-events:none;overflow:hidden}.rcpt-date-label{font-size:.85rem;font-weight:600;white-space:nowrap}.rcpt-today-badge{padding:2px 8px;border-radius:10px;font-size:.68rem;font-weight:600;letter-spacing:.3px}.rcpt-today-badge,.rcpt-today-btn{background:var(--primary);color:#fff}.rcpt-today-btn{padding:5px 12px;margin-left:6px;border:none;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .2s;flex-shrink:0}.rcpt-today-btn:hover{background:var(--primary-dark)}.rcpt-header-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.rcpt-theme-btn{width:36px;height:36px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-body);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.rcpt-theme-btn:hover{background:var(--bg-card);color:var(--primary);border-color:var(--primary)}.rcpt-leave-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 10px 0 8px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-body);color:var(--text-primary);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.rcpt-leave-btn:hover{background:color-mix(in srgb,var(--primary) 10%,var(--bg-body));border-color:var(--primary);color:var(--primary)}.leave-req-form .form-row{display:flex;gap:12px;flex-wrap:wrap}.leave-req-who{margin:0 0 8px;font-size:.9rem}.leave-req-sub{font-size:.8rem;color:var(--text-muted);font-weight:400}.leave-req-quick{margin:0 0 4px}.leave-req-label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:4px}.leave-req-quick-btns{display:flex;gap:6px;flex-wrap:wrap}.leave-req-hint{font-size:.75rem;color:var(--text-muted);margin:4px 0 0;line-height:1.3}.modal-leave-request-footer{display:flex;justify-content:flex-end;gap:8px;width:100%}.modal.modal-leave-request.modal-leave-request-wide{max-width:780px;width:min(95vw,780px)}@media (max-width:820px){.modal.modal-leave-request.modal-leave-request-wide{max-width:100%;width:100%}}.page-header-sub{display:block;font-size:.82rem;color:var(--text-muted);font-weight:500;margin-top:4px}.leave-req-picker{margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--border-light,#e2e8f0)}.leave-req-pick-seg{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.leave-req-seg-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-body);color:var(--text-secondary);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.leave-req-seg-btn:hover{border-color:var(--primary,#2563eb);color:var(--primary,#2563eb)}.leave-req-seg-btn.active{border-color:var(--primary,#2563eb);background:color-mix(in srgb,var(--primary) 10%,var(--bg-card,#fff));color:var(--primary,#1d4ed8)}.leave-req-mine-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}.leave-req-selected-badg{font-size:.8rem;margin:0 0 4px;color:var(--text-primary)}.leave-req-pick-list{max-height:220px;overflow-y:auto;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-input,#fff)}.leave-req-pick-item{display:block;width:100%;text-align:left;padding:8px 10px;border:none;border-bottom:1px solid var(--border-light,#f1f5f9);background:transparent;cursor:pointer;color:var(--text-primary);font-size:.8rem;line-height:1.3;transition:background .1s}.leave-req-pick-item:last-child{border-bottom:none}.leave-req-pick-item:hover{background:var(--bg-table-hover,#f8fafc)}.leave-req-pick-item.pick-item--sel{background:color-mix(in srgb,var(--primary) 12%,var(--bg-input));box-shadow:inset 0 0 0 1px var(--primary)}.pick-item-line1{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-weight:600}.pick-item-line2{font-size:.75rem;color:var(--text-muted);margin-top:2px}.pick-item-role{font-size:.68rem;font-weight:500;padding:1px 6px;border-radius:4px;background:var(--bg-table-head,#f1f5f9);color:var(--text-secondary)}.leave-req-empty{padding:14px 10px;margin:0;text-align:center;font-size:.8rem;color:var(--text-muted)}.rcpt-user-badge{display:flex;align-items:center;gap:8px}.rcpt-user-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.85rem}.rcpt-stats-bar{display:flex;gap:12px;padding:16px 24px;overflow-x:auto;flex-shrink:0}.rcpt-stat-card{display:flex;align-items:center;gap:12px;padding:14px 20px;border-radius:var(--radius);background:var(--bg-card);border:1px solid var(--border-color);min-width:160px;flex:1 1;transition:transform .2s,box-shadow .2s}.rcpt-stat-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.rcpt-stat-num{display:block;font-size:1.15rem;font-weight:700;color:var(--text-primary);line-height:1.2}.rcpt-stat-label{display:block;font-size:.72rem;color:var(--text-muted);line-height:1}.rcpt-stat-appointments,.rcpt-stat-appointments .rcpt-stat-num{color:var(--stat-appointments-text)}.rcpt-stat-sessions,.rcpt-stat-sessions .rcpt-stat-num{color:var(--primary)}.rcpt-stat-patients,.rcpt-stat-patients .rcpt-stat-num{color:var(--stat-patients-text)}.rcpt-stat-revenue,.rcpt-stat-revenue .rcpt-stat-num{color:var(--stat-revenue-text)}.rcpt-stat-collected,.rcpt-stat-collected .rcpt-stat-num{color:var(--success)}.rcpt-toolbar{display:flex;align-items:center;justify-content:space-between;padding:0 24px 12px;gap:12px;flex-wrap:wrap}.rcpt-toolbar-left{display:flex;align-items:center;gap:10px;flex:1 1;min-width:280px}.rcpt-patient-alltime-toggle{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s,border-color .2s,color .2s}.rcpt-patient-alltime-toggle:hover{border-color:var(--primary);color:var(--primary)}.rcpt-patient-alltime-toggle.active{background:var(--primary);border-color:var(--primary);color:#fff}.rcpt-alltime-search-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--primary);white-space:nowrap}.rcpt-search-wrap{position:relative;flex:1 1;max-width:420px}.rcpt-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-faint);pointer-events:none}.rcpt-search-input{width:100%;padding:9px 36px 9px 38px;border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);font-size:.85rem;outline:none;transition:border-color .2s,box-shadow .2s}.rcpt-search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(14,116,144,.1)}.rcpt-search-input::placeholder{color:var(--text-faint)}.rcpt-search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;border:none;background:var(--btn-secondary-bg);justify-content:center;cursor:pointer}.rcpt-filter-wrap,.rcpt-search-clear{color:var(--text-muted);display:flex;align-items:center}.rcpt-filter-wrap{gap:6px}.rcpt-filter-select{padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);font-size:.82rem;outline:none;cursor:pointer}.rcpt-toolbar-right{display:flex;align-items:center;gap:10px}.rcpt-view-toggle{display:flex;border:1px solid var(--border-color);border-radius:var(--radius);overflow:hidden}.rcpt-view-btn{display:flex;align-items:center;gap:5px;padding:7px 14px;border:none;background:var(--bg-card);color:var(--text-muted);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s}.rcpt-view-btn:not(:last-child){border-right:1px solid var(--border-color)}.rcpt-view-btn.active{background:var(--primary);color:#fff}.rcpt-view-btn:not(.active):hover{background:var(--bg-body);color:var(--text-primary)}.rcpt-add-btn{display:flex;align-items:center;gap:6px;padding:8px 18px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s,transform .15s;white-space:nowrap}.rcpt-add-btn:hover{background:var(--primary-dark);transform:translateY(-1px)}.rcpt-doctor-schedule-btn{display:flex;align-items:center;gap:8px;padding:8px 18px;background:var(--bg-card);color:var(--text-primary);border:2px solid var(--secondary,#8b5cf6);border-radius:var(--radius);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.rcpt-doctor-schedule-btn:hover{background:rgba(139,92,246,.08);color:var(--secondary);transform:translateY(-1px)}.rcpt-open-billing-btn{display:flex;align-items:center;gap:8px;padding:8px 18px;background:var(--bg-card);color:var(--text-primary);border:2px solid var(--primary);border-radius:var(--radius);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.rcpt-open-billing-btn:hover{background:var(--primary-bg);color:var(--primary);transform:translateY(-1px);box-shadow:0 2px 8px rgba(14,116,144,.2)}.rcpt-content{flex:1 1;padding:0 24px 24px;overflow-y:auto}.rcpt-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--text-muted);gap:12px;text-align:center}.rcpt-empty h3{font-size:1.1rem;color:var(--text-secondary);margin:0}.rcpt-empty p{font-size:.85rem;margin:0}.rcpt-sessions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:16px;gap:16px}.rcpt-session-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:20px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:14px}.rcpt-session-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.rcpt-sc-header{display:flex;align-items:center;gap:12px}.rcpt-sc-avatar{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--secondary),#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem;flex-shrink:0}.rcpt-sc-info{flex:1 1;min-width:0}.rcpt-sc-info h3{font-size:.95rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rcpt-sc-spec{display:block;font-size:.73rem;color:var(--text-muted)}.rcpt-sc-count{width:38px;height:38px;border-radius:10px;background:var(--primary-bg);color:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.1rem;flex-shrink:0}.rcpt-sc-details{display:flex;gap:16px;flex-wrap:wrap}.rcpt-sc-detail{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-muted)}.rcpt-sc-badges{display:flex;gap:6px;flex-wrap:wrap}.rcpt-sc-actions{display:flex;gap:8px;padding-top:4px;border-top:1px solid var(--border-light)}.rcpt-sc-btn{flex:1 1;display:flex;align-items:center;justify-content:center;gap:5px;padding:8px 12px;border:none;border-radius:8px;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .15s}.rcpt-sc-btn-add{background:var(--btn-secondary-bg);color:var(--btn-secondary-text)}.rcpt-sc-btn-add:hover{background:var(--btn-secondary-hover)}.rcpt-sc-btn-view{background:var(--primary);color:#fff}.rcpt-sc-btn-view:hover{background:var(--primary-dark)}.rcpt-table-container{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.rcpt-table-scroll{overflow-x:auto}.rcpt-table{width:100%;border-collapse:collapse}.rcpt-table thead th{background:var(--bg-table-head);padding:12px 14px;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color);white-space:nowrap}.rcpt-table tbody td{padding:11px 14px;font-size:.84rem;color:var(--text-secondary);border-bottom:1px solid var(--border-light);white-space:nowrap}.rcpt-table tbody tr:hover{background:var(--bg-table-hover)}.rcpt-table tbody tr:last-child td{border-bottom:none}.rcpt-td-num{color:var(--text-faint);font-size:.78rem;font-weight:500;width:36px;text-align:center}.modal-doctor-schedule .modal{max-width:920px;max-height:90vh;display:flex;flex-direction:column}.modal-doctor-schedule .modal-body{overflow-y:auto;padding:0}.ds-modal-content{display:flex;flex-direction:column;min-height:400px}.ds-modal-tabs{display:flex;border-bottom:1px solid var(--border-color);padding:0 24px;gap:4px}.ds-tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:transparent;color:var(--text-muted);font-size:.9rem;font-weight:500;cursor:pointer;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s}.ds-tab:hover{color:var(--text-primary)}.ds-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.ds-spec-tab{padding:20px 24px;display:flex;flex-direction:column;gap:16px;flex:1 1;overflow-y:auto}.ds-spec-search{position:relative;display:flex;align-items:center}.ds-spec-search input{flex:1 1;padding:10px 14px 10px 40px;border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);font-size:.9rem;outline:none}.ds-spec-search input:focus{border-color:var(--primary)}.ds-spec-search>svg:first-child{position:absolute;left:12px;color:var(--text-faint)}.ds-spec-label{font-size:.8rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:8px}.ds-spec-list{display:flex;flex-wrap:wrap;gap:8px}.ds-spec-btn{padding:8px 16px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .15s}.ds-spec-btn.selected,.ds-spec-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg)}.ds-spec-btn.selected{font-weight:600}.ds-spec-empty{font-size:.9rem;color:var(--text-muted);margin:0;padding:12px 0}.ds-spec-doctor-list{display:flex;flex-direction:column;gap:8px}.ds-spec-doctor-btn{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-card);color:var(--text-primary);text-align:left;cursor:pointer;transition:all .15s}.ds-spec-doctor-btn:hover{border-color:var(--primary);background:var(--primary-bg)}.ds-spec-doc-avatar{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,var(--secondary),#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0}.ds-spec-doc-info{flex:1 1;display:flex;flex-direction:column;gap:2px}.ds-spec-doc-name{font-weight:600;font-size:.9rem}.ds-spec-doc-spec{font-size:.8rem;color:var(--text-muted)}.ds-spec-doctor-btn>svg:last-child{color:var(--text-faint);flex-shrink:0}.ds-search-row{display:flex;align-items:center;gap:10px;position:relative}.ds-search-row .ds-search-bar{flex:1 1}.ds-search-bar-dropdown{position:relative}.ds-doctor-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;max-height:240px;overflow-y:auto;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);z-index:100;padding:6px}.ds-doctor-drop-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:6px;background:transparent;color:var(--text-primary);text-align:left;cursor:pointer;transition:background .15s}.ds-doctor-drop-item.selected,.ds-doctor-drop-item:hover{background:var(--primary-bg)}.ds-doctor-drop-avatar{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,var(--secondary),#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;flex-shrink:0}.ds-doctor-drop-info{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.ds-doctor-drop-name{font-weight:600;font-size:.88rem}.ds-doctor-drop-spec{font-size:.75rem;color:var(--text-muted)}.ds-doctor-drop-empty{padding:16px;text-align:center;font-size:.85rem;color:var(--text-muted)}.ds-clear-doctor-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);color:var(--text-muted);font-size:.82rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s}.ds-clear-doctor-btn:hover{border-color:var(--danger,#ef4444);color:var(--danger)}.ds-modal-top{padding:0 24px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.ds-week-nav{gap:16px;margin-bottom:12px}.ds-nav-btn,.ds-week-nav{display:flex;align-items:center;justify-content:center}.ds-nav-btn{width:36px;height:36px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);cursor:pointer;transition:all .15s}.ds-nav-btn:hover{background:var(--primary-bg);border-color:var(--primary);color:var(--primary)}.ds-week-label{font-size:.9rem;font-weight:600;color:var(--text-primary)}.ds-date-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:6px;gap:6px;margin-bottom:12px}.ds-date-cell{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;border-radius:8px;border:2px solid transparent;background:var(--bg-body);color:var(--text-secondary);font-size:.8rem;cursor:pointer;transition:all .15s}.ds-date-cell:hover{background:var(--bg-table-hover)}.ds-date-cell.selected{border-color:var(--primary);background:var(--primary-bg);color:var(--primary);font-weight:600}.ds-date-cell.today{box-shadow:0 0 0 1px var(--primary)}.ds-date-cell.has-schedule{background:rgba(34,197,94,.15);border-color:rgba(34,197,94,.5);color:#16a34a}.ds-date-cell.has-schedule:hover{background:rgba(34,197,94,.25)}.ds-date-cell.has-schedule .ds-date-num{color:#16a34a}.ds-date-cell.has-schedule.selected{background:rgba(34,197,94,.25);border-color:#16a34a;color:#15803d}.ds-date-day{font-size:.65rem;text-transform:uppercase;opacity:.8}.ds-date-num{font-size:1rem;font-weight:700}.ds-date-count{font-size:.65rem;background:var(--primary);color:#fff;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.ds-search-bar{position:relative;display:flex;align-items:center}.ds-search-bar input{flex:1 1;padding:10px 36px 10px 40px;border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);font-size:.9rem;outline:none}.ds-search-bar input:focus{border-color:var(--primary)}.ds-search-bar>svg:first-child{position:absolute;left:12px;color:var(--text-faint)}.ds-search-clear{position:absolute;right:8px;width:24px;height:24px;border-radius:50%;border:none;background:var(--btn-secondary-bg);color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.ds-modal-body{padding:16px 24px 24px;flex:1 1;overflow-y:auto}.ds-hint{font-size:.85rem;color:var(--text-muted);margin:0 0 12px}.modal-override-schedule .modal{max-width:560px}.modal-override-schedule .modal-body,.override-modal-content{padding:0}.override-modal-info{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;background:linear-gradient(135deg,var(--primary-bg) 0,rgba(14,116,144,.04) 100%);border-bottom:1px solid var(--border-color)}.override-modal-info svg{flex-shrink:0;color:var(--primary);margin-top:2px}.override-modal-info p{font-size:.88rem;color:var(--text-secondary);margin:0;line-height:1.5}.override-modal-steps{padding:20px;display:flex;flex-direction:column;gap:24px}.override-step{display:flex;flex-direction:column;gap:10px}.override-step-label{display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:600;color:var(--text-primary)}.override-step-num{width:24px;height:24px;border-radius:50%;background:var(--primary);color:white;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}.override-date-options{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.override-date-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);border-radius:10px;font-size:.88rem;font-weight:500;cursor:pointer;transition:all .15s}.override-date-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg)}.override-date-btn.active{border-color:var(--primary);background:var(--primary);color:white}.override-date-picker{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--text-muted)}.override-date-picker input{padding:8px 12px;border-radius:8px;border:1px solid var(--border-color)}.override-mcal-wrap{min-width:200px;flex:1 1;max-width:260px}.override-date-display{font-size:.8rem;color:var(--text-muted);margin:4px 0 0}.override-doctor-chip{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--primary-bg);border:1px solid var(--primary-light,rgba(14,116,144,.3));border-radius:12px}.override-doctor-avatar{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--primary-dark,#0d5a6e));color:white;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem;flex-shrink:0}.override-doctor-info{flex:1 1;min-width:0}.override-doctor-info strong{display:block;font-size:.95rem;color:var(--text-primary)}.override-doctor-info span{font-size:.8rem;color:var(--text-muted)}.override-doctor-change{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);border-radius:8px;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s}.override-doctor-change:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg)}.override-doctor-search{position:relative}.override-doctor-search .searchable-input-wrap{border:1px solid var(--border-color);border-radius:10px;padding:10px 14px}.override-doctor-dropdown{margin-top:4px;max-height:220px}.override-badge{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:6px;background:var(--primary-bg);color:var(--primary);margin-left:8px}.override-slots-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 20px;background:var(--bg-body);border:2px dashed var(--border-color);border-radius:12px;text-align:center}.override-slots-empty svg{color:var(--text-faint)}.override-slots-empty p{margin:0;font-size:.9rem;color:var(--text-secondary)}.override-slots-empty-hint{font-size:.8rem!important;color:var(--text-muted)!important}.override-add-first{margin-top:4px}.override-slots-list{display:flex;flex-direction:column;gap:10px}.override-slot-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.override-slot-row .schedule-time-input{width:110px;padding:9px 12px;border-radius:8px}.override-slot-to{font-size:.82rem;color:var(--text-muted);font-weight:500}.override-slot-remove{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:var(--text-muted);border-radius:8px;cursor:pointer;transition:all .15s}.override-slot-remove:hover{background:rgba(239,68,68,.12);color:var(--danger)}.override-add-slot{align-self:flex-start}.override-modal-footer{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.ds-empty{text-align:center;padding:40px 20px;color:var(--text-muted)}.ds-empty svg{opacity:.5;margin-bottom:8px}.ds-doctor-list{gap:12px}.ds-doctor-card,.ds-doctor-list{display:flex;flex-direction:column}.ds-doctor-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:14px;gap:10px}.ds-doc-header{gap:12px}.ds-doc-avatar,.ds-doc-header{display:flex;align-items:center}.ds-doc-avatar{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,var(--secondary),#8b5cf6);color:#fff;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0}.ds-doc-info{flex:1 1;min-width:0}.ds-doc-info h4{font-size:.9rem;font-weight:700;color:var(--text-primary);margin:0}.ds-doc-info span{font-size:.75rem;color:var(--text-muted)}.ds-doc-booked{font-size:.8rem;font-weight:600;color:var(--primary);background:var(--primary-bg);padding:4px 10px;border-radius:6px}.ds-doc-slots{display:flex;flex-wrap:wrap;gap:6px}.ds-slot-row{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-body);border-radius:6px;font-size:.8rem;color:var(--text-secondary)}.ds-slot-row span:first-child{font-weight:600;color:var(--text-primary)}.ds-slot-cnt{font-size:.75rem;color:var(--text-muted)}.ds-no-schedule{font-size:.8rem;color:var(--text-muted);font-style:italic}.ds-doc-sessions{display:flex;flex-direction:column;gap:4px}.ds-session-row{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--bg-body);border-radius:6px;font-size:.82rem;cursor:pointer;transition:background .15s}.ds-session-row:hover{background:var(--primary-bg)}.ds-session-row span:first-of-type{font-weight:600;flex:1 1}.ds-add-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .2s;margin-top:4px}.ds-add-btn:hover{background:var(--primary-dark)}.modal-payment .modal{max-width:560px}.modal-add-charges.modal-payment .modal{max-width:720px}.modal.modal-open-billing{max-width:540px}.open-billing-content{gap:24px}.open-billing-hero{display:flex;gap:16px;padding:20px;background:linear-gradient(135deg,var(--primary-bg) 0,rgba(99,102,241,.06) 100%);border:1px solid var(--border-light);border-radius:12px}.open-billing-hero-icon{width:52px;height:52px;border-radius:12px;background:var(--primary);color:white;display:flex;align-items:center;justify-content:center;flex-shrink:0}.open-billing-hero-text h3{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 6px}.open-billing-hero-text p{font-size:.85rem;color:var(--text-muted);margin:0;line-height:1.45}.open-billing-charges-section{padding:16px;background:var(--bg-body);border:1px solid var(--border-color);border-radius:12px}.open-billing-label{display:block;font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:10px}.open-billing-search-wrap{position:relative}.open-billing-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.open-billing-search-input{padding-left:42px!important}.open-billing-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;box-shadow:var(--shadow-lg);z-index:100;max-height:220px;overflow-y:auto}.open-billing-dropdown-item{width:100%;padding:12px 14px;border:none;background:transparent;text-align:left;cursor:pointer;font-size:.9rem;display:flex;justify-content:space-between;align-items:center;transition:background .15s}.open-billing-dropdown-item:hover{background:var(--bg-body)}.open-billing-dropdown-item.highlighted{background:var(--primary-bg);color:var(--primary)}.open-billing-dropdown-item.highlighted .open-billing-dropdown-price{color:var(--primary)}.open-billing-dropdown-price{color:var(--primary);font-weight:600;font-size:.9rem}.open-billing-empty-hint{margin:14px 0 0;font-size:.82rem;color:var(--text-muted)}.open-billing-selected-list{margin-top:14px;padding-top:14px;border-top:1px solid var(--border-color)}.open-billing-selected-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:.9rem;border-bottom:1px solid var(--border-light)}.open-billing-selected-item:last-of-type{border-bottom:none}.open-billing-selected-name{color:var(--text-secondary)}.open-billing-selected-row{display:flex;align-items:center;gap:10px}.open-billing-selected-amount{font-weight:600;color:var(--text-primary)}.open-billing-remove-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;transition:all .15s}.open-billing-remove-btn:hover{background:var(--btn-delete-hover-bg);color:var(--danger)}.open-billing-selected-total{display:flex;justify-content:space-between;font-weight:700;margin-top:10px;padding-top:10px;border-top:2px dashed var(--border-color);font-size:.95rem}.open-billing-payment-section{display:flex;flex-direction:column;gap:18px}.open-billing-total-card{display:flex;flex-direction:column;gap:4px;padding:18px 20px;background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:white;border-radius:12px;box-shadow:0 4px 12px rgba(14,116,144,.25)}.open-billing-total-label{font-size:.82rem;font-weight:500;opacity:.9}.open-billing-total-value{font-size:1.35rem;font-weight:800;letter-spacing:.5px}.open-billing-form-group,.open-billing-form-row{margin-top:0}.open-billing-change{margin-top:8px;font-size:.9rem;color:var(--success)}.pay-content{display:flex;flex-direction:column;gap:20px}.pay-patient-info{display:flex;align-items:center;gap:14px;padding:16px;background:var(--bg-body);border-radius:var(--radius);border:1px solid var(--border-light)}.pay-patient-avatar{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.05rem;flex-shrink:0}.pay-patient-details h3{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 4px}.pay-patient-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.78rem;color:var(--text-muted)}.pay-methods-label{display:block;font-size:.82rem;font-weight:600;color:var(--text-secondary);margin-bottom:10px}.pay-method-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px}.pay-method-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;border:2px solid var(--border-color);border-radius:10px;background:var(--bg-card);cursor:pointer;transition:all .2s}.pay-method-btn.active,.pay-method-btn:hover{border-color:var(--method-color);background:var(--bg-body)}.pay-method-btn.active{box-shadow:0 0 0 3px color-mix(in srgb,var(--method-color) 15%,transparent)}.pay-method-icon{color:var(--text-muted);transition:color .2s}.pay-method-btn.active .pay-method-icon,.pay-method-btn:hover .pay-method-icon{color:var(--method-color)}.pay-method-name{font-size:.72rem;font-weight:600;color:var(--text-muted);transition:color .2s}.pay-method-btn.active .pay-method-name{color:var(--method-color)}.pay-form{display:flex;flex-direction:column;gap:14px}.pay-amount-input{font-size:1.05rem!important;font-weight:600!important;letter-spacing:.5px}.pay-summary{background:var(--bg-body);border:1px solid var(--border-color);border-radius:var(--radius);padding:14px 18px;display:flex;flex-direction:column;gap:8px}.pay-summary-row{display:flex;justify-content:space-between;align-items:center;font-size:.84rem;color:var(--text-secondary)}.pay-summary-amount{font-weight:600}.pay-summary-divider{height:1px;background:var(--border-color);margin:4px 0}.pay-summary-balance{font-size:.95rem;font-weight:700;color:var(--text-primary)}.pay-summary-balance .pay-summary-amount{color:var(--danger);font-size:1rem}.pay-summary-change{font-size:.95rem;font-weight:700;color:var(--text-primary)}.pay-summary-change .pay-summary-amount{color:var(--success);font-size:1rem}.pay-cash-section{background:var(--bg-body);padding:14px}.pay-cash-section,.pay-change-display{border:1px solid var(--border-color);border-radius:var(--radius)}.pay-change-display{padding:10px 14px;background:var(--bg-card);font-size:1.05rem;font-weight:700;color:var(--text-faint);letter-spacing:.5px;min-height:44px;display:flex;align-items:center}.pay-change-display.has-change{color:var(--success);border-color:var(--success);background:var(--badge-success-bg)}.apt-detail-content{display:flex;flex-direction:column;gap:20px}.apt-detail-section{border-bottom:1px solid var(--border-light);padding-bottom:16px}.apt-detail-section:last-child{border-bottom:none;padding-bottom:0}.apt-detail-section h4{font-size:.85rem;font-weight:700;color:var(--text-primary);margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.apt-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:12px;gap:12px}.apt-detail-item{display:flex;flex-direction:column;gap:3px}.apt-detail-label{font-size:.72rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.3px;font-weight:500}.apt-detail-value{font-size:.88rem;color:var(--text-primary);font-weight:500}@media (max-width:1023px){.rcpt-header{padding:0 16px;gap:10px}.rcpt-brand-text h1{font-size:.9rem}.rcpt-brand-text span{display:none}.rcpt-stats-bar{padding:12px 16px;gap:8px}.rcpt-stat-card{padding:10px 14px;min-width:130px}.rcpt-toolbar{padding:0 16px 10px}.rcpt-content{padding:0 16px 16px}.rcpt-sessions-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:767px){.rcpt-header{flex-wrap:wrap;height:auto;padding:10px 14px;gap:8px}.rcpt-header-left{order:1}.rcpt-header-right{order:2}.rcpt-header-center{order:3;width:100%;justify-content:center}.rcpt-back-btn span{display:none}.rcpt-back-btn{padding:7px 10px}.rcpt-brand-icon{width:32px;height:32px;font-size:.95rem}.rcpt-stats-bar{padding:10px 14px;gap:6px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.rcpt-stat-card{min-width:120px;flex:0 0 auto;padding:8px 12px}.rcpt-stat-num{font-size:.95rem}.rcpt-toolbar{padding:0 14px 8px}.rcpt-toolbar,.rcpt-toolbar-left{flex-direction:column;align-items:stretch}.rcpt-toolbar-left{min-width:0}.rcpt-search-wrap{max-width:100%}.rcpt-toolbar-right{justify-content:space-between}.rcpt-content{padding:0 14px 14px}.rcpt-sessions-grid{grid-template-columns:1fr}.pay-method-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:479px){.rcpt-header{padding:8px 10px}.rcpt-brand{display:none}.rcpt-date-label{font-size:.78rem}.rcpt-stats-bar{padding:8px 10px}.rcpt-stat-card{padding:6px 10px;min-width:100px;gap:8px}.rcpt-stat-num{font-size:.85rem}.rcpt-stat-label{font-size:.65rem}.rcpt-content{padding:0 10px 10px}.rcpt-session-card{padding:14px}}.cashier-indicator{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:.78rem;font-weight:600;border:none;cursor:pointer;transition:all .2s;white-space:nowrap}.cashier-active-indicator{background:rgba(16,185,129,.12);color:#10b981;border:1px solid rgba(16,185,129,.25)}.cashier-active-indicator:hover{background:rgba(16,185,129,.2)}.cashier-inactive-indicator{background:var(--btn-secondary-bg);color:var(--text-secondary);border:1px solid var(--border-color)}.cashier-inactive-indicator:hover{background:var(--btn-secondary-hover)}@keyframes cashierPulse{0%,to{opacity:1}50%{opacity:.4}}.cashier-pulse{animation:cashierPulse 1.5s ease-in-out infinite}.modal.modal-cashier-session{max-width:720px;width:94vw}.modal.modal-cashier-session .modal-body{padding:0}.cs-start{padding:28px 28px 20px}.cs-start-hero{text-align:center;margin-bottom:20px}.cs-start-icon{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 14px}.cs-start-hero h3{font-size:1.2rem;font-weight:700;color:var(--text-primary);margin-bottom:6px}.cs-start-hero p{font-size:.85rem;color:var(--text-muted);max-width:360px;margin:0 auto;line-height:1.5}.cs-start-info{background:var(--bg-table-head);border-radius:var(--radius);padding:12px 16px;margin-bottom:16px;display:flex;flex-direction:column;gap:6px}.cs-info-row{display:flex;justify-content:space-between;font-size:.82rem}.cs-info-row>span:first-child{color:var(--text-muted)}.cs-info-row>span:last-child{font-weight:600;color:var(--text-primary)}.cs-amount-group{margin-bottom:0}.cs-amount-input{font-size:1.3rem!important;font-weight:700!important;text-align:center;padding:14px!important;letter-spacing:.5px}.cs-active{padding:20px 24px}.cs-session-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:8px}.cs-session-status{display:flex;align-items:center;gap:6px;color:#10b981;font-weight:700;font-size:.9rem}.cs-session-meta{display:flex;align-items:center;gap:14px;font-size:.78rem;color:var(--text-muted)}.cs-session-meta span{display:flex;align-items:center;gap:4px}.cs-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;margin-bottom:16px}.cs-stat{gap:10px;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--border-color);background:var(--bg-card)}.cs-stat,.cs-stat-icon{display:flex;align-items:center}.cs-stat-icon{width:36px;height:36px;border-radius:8px;justify-content:center;flex-shrink:0}.cs-stat-start .cs-stat-icon{background:#dbeafe;color:#2563eb}.cs-stat-cash .cs-stat-icon{background:#d1fae5;color:#059669}.cs-stat-card .cs-stat-icon{background:#ede9fe;color:#7c3aed}.cs-stat-bankdeposit .cs-stat-icon{background:#d1fae5;color:#059669}.cs-stat-expense .cs-stat-icon{background:#fce7f3;color:#db2777}[data-theme=dark] .cs-stat-start .cs-stat-icon{background:#1e3a5f;color:#60a5fa}[data-theme=dark] .cs-stat-cash .cs-stat-icon{background:#064e3b;color:#34d399}[data-theme=dark] .cs-stat-card .cs-stat-icon{background:#3b1f7a;color:#a78bfa}[data-theme=dark] .cs-stat-bankdeposit .cs-stat-icon{background:#064e3b;color:#34d399}[data-theme=dark] .cs-stat-expense .cs-stat-icon{background:#831843;color:#f9a8d4}.cs-stat-info{display:flex;flex-direction:column;min-width:0}.cs-stat-value{font-size:.95rem;font-weight:700;color:var(--text-primary)}.cs-stat-label{font-size:.7rem;color:var(--text-muted);margin-top:1px}.cs-expected-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;border-radius:var(--radius);margin-bottom:14px}.cs-expected-label{display:flex;align-items:center;gap:8px;font-size:.88rem;font-weight:600}.cs-expected-value{font-size:1.2rem;font-weight:800;letter-spacing:.3px}.cs-summary-row{display:flex;justify-content:space-between;padding:8px 0;font-size:.85rem;border-bottom:1px solid var(--border-light)}.cs-summary-row>span:first-child{color:var(--text-muted)}.cs-summary-val{font-weight:700;color:var(--text-primary)}.cs-cash-breakdown{margin-top:14px;border-top:1px solid var(--border-color);padding-top:12px}.cs-cash-breakdown h4{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:700;color:var(--text-primary);margin-bottom:10px}.cs-cash-breakdown-list{display:flex;flex-direction:column;gap:5px;max-height:180px;overflow-y:auto}.cs-cash-breakdown-item{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:var(--bg-table-head);border-radius:6px;gap:10px}.cs-cash-breakdown-info{display:flex;flex-direction:column;min-width:0}.cs-cash-breakdown-name{font-size:.82rem;font-weight:600;color:var(--text-primary)}.cs-cash-breakdown-id{font-size:.7rem;color:var(--text-muted)}.cs-cash-breakdown-meta{font-size:.62rem;color:var(--text-muted);margin-top:1px;opacity:.9}.cs-cash-breakdown-amt{font-size:.85rem;font-weight:700;color:#059669;flex-shrink:0}.cs-cash-breakdown-total{display:flex;justify-content:space-between;padding:8px 10px;margin-top:8px;background:var(--bg-table-head);border-radius:6px;font-weight:700;font-size:.9rem}.cs-end-cash-breakdown{display:flex;flex-direction:column;gap:3px;padding:6px 16px 8px;background:var(--bg-table-head);border-top:1px dashed var(--border-color)}.cs-end-cash-breakdown-item{display:flex;justify-content:space-between;align-items:flex-start;font-size:.78rem;padding:3px 0;gap:8px}.cs-end-cash-breakdown-left{display:flex;flex-direction:column;min-width:0}.cs-end-cash-meta,.cs-end-cash-name{color:var(--text-muted)}.cs-end-cash-meta{font-size:.6rem;opacity:.85;margin-top:1px}.cs-end-cash-amt{font-weight:600;color:#059669}.cs-doctor-sessions{margin-top:14px;border-top:1px solid var(--border-color);padding-top:12px}.cs-doctor-sessions h4{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:700;color:var(--text-primary);margin-bottom:10px}.cs-doctor-sessions-list{display:flex;flex-direction:column;gap:10px;max-height:220px;overflow-y:auto}.cs-doctor-session-item{padding:10px 12px;background:var(--bg-table-head);border-radius:6px;border-left:3px solid #7c3aed}.cs-doctor-session-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:6px;margin-bottom:6px}.cs-doctor-session-name{font-size:.9rem;font-weight:700;color:var(--text-primary)}.cs-doctor-session-meta{font-size:.75rem;color:var(--text-muted)}.cs-doctor-session-row{display:flex;justify-content:space-between;font-size:.8rem;padding:2px 0}.cs-doctor-session-row span:first-child{color:var(--text-muted)}.cs-doctor-session-split{display:flex;flex-wrap:wrap;gap:8px;font-size:.72rem;color:var(--text-muted);margin-top:4px}.cs-doctor-session-fees span:last-child{color:#7c3aed;font-weight:700}.cs-end-doctor-sessions{padding:8px 16px 10px;background:var(--bg-table-head);border-top:1px dashed var(--border-color)}.cs-end-doctor-sessions-title{font-size:.75rem;font-weight:700;color:var(--text-muted);margin-bottom:6px;text-transform:uppercase}.cs-end-doctor-session-item{display:flex;flex-direction:column;gap:2px;padding:4px 0;font-size:.78rem;border-bottom:1px solid var(--border-light)}.cs-end-doctor-session-item:last-child{border-bottom:none}.cs-end-doctor-session-name{font-weight:600;color:var(--text-primary)}.cs-end-doctor-session-stats{font-size:.72rem;color:var(--text-muted)}.cs-expenses-section{margin-top:18px;border-top:1px solid var(--border-color);padding-top:14px}.cs-expenses-section h4{display:flex;align-items:center;gap:6px;font-size:.88rem;font-weight:700;color:var(--text-primary);margin-bottom:10px}.cs-expenses-list{display:flex;flex-direction:column;gap:6px}.cs-expense-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--bg-table-head);border-radius:6px;gap:10px}.cs-expense-info{display:flex;flex-direction:column;min-width:0}.cs-expense-desc{font-size:.82rem;font-weight:600;color:var(--text-primary)}.cs-expense-cat{font-size:.7rem;color:var(--text-muted)}.cs-expense-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.cs-expense-amt{font-size:.85rem;font-weight:700;color:#db2777}.cs-end{padding:20px 24px}.cs-end-summary{margin-bottom:18px}.cs-end-summary h4{font-size:.95rem;font-weight:700;color:var(--text-primary);margin-bottom:10px}.cs-end-grid{display:flex;flex-direction:column;gap:1px;background:var(--border-light);border-radius:var(--radius);overflow:hidden;border:1px solid var(--border-color)}.cs-end-row{display:flex;justify-content:space-between;padding:10px 16px;font-size:.85rem;background:var(--bg-card)}.cs-end-row>span:first-child{color:var(--text-muted)}.cs-end-row>span:last-child{font-weight:700;color:var(--text-primary)}.cs-end-row-expense>span:last-child{color:#db2777}.cs-end-row-total{background:var(--bg-table-head);font-weight:600}.cs-end-row-total>span:last-child{font-weight:800;color:var(--primary)}.cs-expected-bar-end{margin-bottom:18px}.cs-diff-alert{margin-top:14px;padding:14px 16px;border-radius:var(--radius);border:1px solid}.cs-diff-under{background:#fef2f2;border-color:#fecaca;color:#dc2626}.cs-diff-over{background:#fefce8;border-color:#fde68a;color:#d97706}[data-theme=dark] .cs-diff-under{background:rgba(220,38,38,.1);border-color:rgba(220,38,38,.3)}[data-theme=dark] .cs-diff-over{background:rgba(217,119,6,.1);border-color:rgba(217,119,6,.3)}.cs-diff-header{font-weight:700;font-size:.9rem}.cs-diff-header,.cs-diff-ok{display:flex;align-items:center;gap:8px}.cs-diff-ok{margin-top:14px;padding:12px 16px;border-radius:var(--radius);background:#d1fae5;border:1px solid #a7f3d0;color:#059669;font-weight:600;font-size:.85rem}[data-theme=dark] .cs-diff-ok{background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.3);color:#34d399}.expense-form{display:flex;flex-direction:column;gap:14px}@media (max-width:767px){.modal.modal-cashier-session{max-width:100%;width:100%;border-radius:18px 18px 0 0;max-height:94vh;align-self:flex-end}.modal-overlay:has(.modal-cashier-session){align-items:flex-end;padding:0}.cs-stats-grid{grid-template-columns:repeat(2,1fr)}.cs-active,.cs-end,.cs-start{padding:16px}.cashier-indicator span{display:none}.cashier-indicator{padding:8px}}@media (max-width:479px){.cs-stats-grid{grid-template-columns:1fr}.cs-expected-bar{flex-direction:column;text-align:center;gap:4px}}.expenses-page{padding:24px;max-width:1100px;margin:0 auto}.expenses-page h1{font-size:1.5rem;font-weight:700;color:var(--text-primary);gap:10px}.expenses-filters,.expenses-page h1{margin-bottom:20px;display:flex;align-items:center}.expenses-filters{gap:12px;flex-wrap:wrap}.expenses-filters .form-control{max-width:200px}.expenses-summary-bar{display:flex;gap:14px;margin-bottom:20px;flex-wrap:wrap}.expenses-summary-card{display:flex;align-items:center;gap:10px;padding:14px 18px;border-radius:var(--radius);background:var(--bg-card);border:1px solid var(--border-color);flex:1 1;min-width:160px}.expenses-summary-card .icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#fce7f3;color:#db2777}[data-theme=dark] .expenses-summary-card .icon{background:#831843;color:#f9a8d4}.expenses-summary-card .info{display:flex;flex-direction:column}.expenses-summary-card .info .val{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.expenses-summary-card .info .lbl{font-size:.72rem;color:var(--text-muted)}.expenses-table-wrap{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border-color);overflow:hidden}.expenses-table{width:100%;border-collapse:collapse}.expenses-table td,.expenses-table th{padding:10px 14px;text-align:left;font-size:.85rem;border-bottom:1px solid var(--border-light)}.expenses-table th{background:var(--bg-table-head);font-weight:600;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.expenses-table td{color:var(--text-primary)}.expenses-table tr:hover td{background:var(--bg-table-hover)}.expenses-empty{text-align:center;padding:60px 20px;color:var(--text-muted)}.expenses-empty svg{color:var(--text-faint);margin-bottom:12px}.expenses-empty h3{font-size:1.1rem;color:var(--text-secondary);margin-bottom:6px}@media (max-width:767px){.expenses-page{padding:16px}.expenses-summary-bar{flex-direction:column}.expenses-filters .form-control{max-width:100%}.expenses-table-wrap{overflow-x:auto}}.dash-section-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:12px}.dash-card-title,.dash-section-label{display:flex;align-items:center;gap:8px;font-weight:700}.dash-card-title{font-size:1rem;color:var(--text-primary);margin-bottom:16px}.dash-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:12px;font-size:.72rem;font-weight:700;background:var(--primary);color:#fff}.stat-currency{font-size:1.25rem!important}.dash-two-col{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px;margin-bottom:24px}.dash-cashier-list{display:flex;flex-direction:column;gap:10px}.dash-cashier-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-card)}.dash-cashier-item.dash-cashier-ongoing{border-left:4px solid var(--primary)}.dash-cashier-item.dash-cashier-ended{border-left:4px solid var(--text-muted)}.dash-cashier-info{display:flex;flex-direction:column;gap:2px}.dash-cashier-email{font-weight:700;color:var(--text-primary);font-size:.9rem}.dash-cashier-time{font-size:.78rem;color:var(--text-muted)}.dash-cashier-amount{font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-top:2px}.dash-status-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;margin-bottom:16px}.dash-status-item{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:10px;border:1px solid var(--border-color);transition:transform .15s,box-shadow .15s}.dash-status-item:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.dash-status-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dash-status-scheduled .dash-status-icon{background:var(--badge-warning-bg);color:var(--badge-warning-text)}.dash-status-completed .dash-status-icon{background:var(--badge-success-bg);color:var(--badge-success-text)}.dash-status-cancelled .dash-status-icon{background:var(--badge-danger-bg);color:var(--badge-danger-text)}.dash-status-info{display:flex;flex-direction:column}.dash-status-count{font-size:1.25rem;font-weight:800;color:var(--text-primary);line-height:1.2}.dash-status-label{font-size:.72rem;color:var(--text-muted);font-weight:500}.dash-progress-section{padding-top:12px;border-top:1px solid var(--border-light)}.dash-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.78rem;color:var(--text-muted);font-weight:500}.dash-progress-pct{font-weight:700;color:var(--success)}.dash-progress-bar{height:8px;border-radius:4px;background:var(--border-color);overflow:hidden}.dash-progress-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,var(--success),#34d399);transition:width .6s ease;min-width:0}.dash-pay-grid{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}.dash-pay-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:10px;border:1px solid var(--border-color);transition:background .15s}.dash-pay-item:hover{background:var(--bg-table-head)}.dash-pay-icon{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dash-pay-cash{background:var(--badge-success-bg);color:var(--badge-success-text)}.dash-pay-card{background:var(--badge-info-bg);color:var(--badge-info-text)}.dash-pay-bankdeposit{background:#d1fae5;color:#059669}.dash-pay-info{display:flex;flex-direction:column;flex:1 1;min-width:0}.dash-pay-label{font-size:.73rem;color:var(--text-muted);font-weight:500}.dash-pay-amount{font-size:.9rem;font-weight:700;color:var(--text-primary)}.dash-pay-summary{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--border-light);padding-top:12px}.dash-pay-summary-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:.82rem;color:var(--text-muted);font-weight:500}.dash-pay-val{font-weight:700;font-size:.88rem}.dash-pay-val-success{color:var(--success)}.dash-pay-val-danger{color:var(--danger)}@media (min-width:1280px){.stats-grid.stats-grid-4{grid-template-columns:repeat(4,1fr)}}@media (min-width:1024px) and (max-width:1279px){.stats-grid.stats-grid-4{grid-template-columns:repeat(4,1fr);gap:14px}.stat-currency{font-size:1.1rem!important}}@media (max-width:1023px){.stats-grid.stats-grid-4{grid-template-columns:repeat(2,1fr)}.dash-two-col{grid-template-columns:1fr;gap:16px}}@media (max-width:767px){.stats-grid.stats-grid-4{grid-template-columns:repeat(2,1fr);gap:10px}.dash-two-col{grid-template-columns:1fr;gap:12px}.dash-status-grid{grid-template-columns:repeat(3,1fr);gap:8px}.dash-status-item{padding:10px;gap:8px}.dash-status-icon{width:32px;height:32px}.dash-status-count{font-size:1.05rem}.dash-pay-icon{width:30px;height:30px}.stat-currency{font-size:1rem!important}}@media (max-width:479px){.stats-grid.stats-grid-4{grid-template-columns:1fr 1fr;gap:8px}.dash-status-grid{grid-template-columns:1fr;gap:6px}.dash-status-item{flex-direction:row}.stat-currency{font-size:.9rem!important}.dash-card-title{font-size:.9rem}}@media (max-width:359px){.stats-grid.stats-grid-4{grid-template-columns:1fr;gap:8px}}.profile-page{min-height:calc(100vh - var(--header-height) - 48px)}.profile-layout,.profile-page{width:100%;display:flex;flex-direction:column}.profile-layout{gap:24px;flex:1 1}.profile-header-card{display:flex;align-items:center;gap:24px;padding:28px 24px;flex-wrap:wrap}.profile-header-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:white;display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:700;flex-shrink:0}.profile-header-info{flex:1 1;min-width:0}.profile-header-name{font-size:1.35rem;font-weight:700;color:var(--text-primary);margin:0 0 4px;line-height:1.3}.profile-header-email{font-size:.9rem;color:var(--text-muted);margin:0 0 10px;word-break:break-all}.profile-role-badge{display:inline-block;padding:4px 12px;font-size:.8rem;font-weight:600}.profile-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:24px;gap:24px;flex:1 1;align-content:start}.profile-details-card,.profile-password-card{padding:24px}.profile-section-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:20px}.profile-section-title{font-size:1.05rem;font-weight:700;color:var(--text-primary);margin:0 0 20px;display:flex;align-items:center}.profile-section-header .profile-section-title{margin:0}.profile-edit-actions{display:flex;gap:8px;align-items:center}.profile-details-form .form-group{margin-bottom:16px}.profile-details-form .form-group:last-child{margin-bottom:0}.profile-details-list{display:flex;flex-direction:column}.profile-detail-item{display:flex;align-items:flex-start;gap:14px;padding:14px 0;border-bottom:1px solid var(--border-color)}.profile-detail-item-last{border-bottom:none;padding-bottom:0}.profile-detail-icon{width:40px;height:40px;border-radius:10px;background:var(--primary-bg);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-detail-content{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.profile-detail-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-weight:600}.profile-detail-value{font-size:.95rem;font-weight:600;color:var(--text-primary);word-break:break-word}.profile-detail-email{word-break:break-all;font-size:.9rem}.profile-password-form .form-group{margin-bottom:18px}.profile-password-form .form-group:last-of-type{margin-bottom:22px}.profile-submit-btn{min-width:160px}@media (max-width:1023px){.profile-grid{grid-template-columns:1fr;gap:20px}}@media (max-width:767px){.profile-page{min-height:auto}.profile-header-card{flex-direction:column;text-align:center;padding:24px 20px;gap:16px}.profile-header-avatar{width:72px;height:72px;font-size:1.5rem}.profile-header-name{font-size:1.2rem}.profile-grid{gap:20px}.profile-details-card,.profile-password-card{padding:20px 18px}.profile-section-header{flex-direction:column;align-items:flex-start}.profile-section-title{font-size:1rem;margin-bottom:18px}.profile-detail-item{padding:12px 0}.profile-submit-btn{width:100%;min-width:0}}@media (max-width:479px){.profile-header-card{padding:20px 16px}.profile-header-avatar{width:64px;height:64px;font-size:1.25rem}.profile-header-name{font-size:1.1rem}.profile-header-email{font-size:.85rem}.profile-details-card,.profile-password-card{padding:18px 16px}.profile-detail-item{flex-direction:column;align-items:flex-start;gap:8px}.profile-detail-icon{width:36px;height:36px}.profile-edit-actions{width:100%;justify-content:flex-end}}@media (max-width:359px){.profile-header-card{padding:16px 12px}.profile-header-avatar{width:56px;height:56px;font-size:1.1rem}.profile-details-card,.profile-password-card{padding:16px 12px}}