@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media (width<=1024px){.dental-workspace{flex-direction:column}.odontogram-panel{min-width:unset;width:100%;padding:16px;overflow-x:auto}.arch{justify-content:flex-start;min-width:600px;padding-bottom:8px}.treatment-sidebar{width:100%}.dental-module{padding:16px!important}}@media (width<=768px){.odontogram-panel{padding:8px!important;overflow-x:hidden!important}.arch{min-width:unset!important;justify-content:center!important;gap:6px!important;padding-bottom:0!important}.quadrant{gap:2px!important}.divider-left{border-left:1.5px solid var(--border)!important;padding-left:6px!important}.tooth-container{gap:4px!important;padding:2px!important}.tooth-svg{width:17px!important;height:28px!important}.tooth-number{margin-top:2px!important;font-size:9px!important}}@media (width<=1024px){.patients-module{flex-direction:column;height:auto;overflow:visible}.patients-module.has-selection .patients-list-sidebar{display:none!important}.patients-module.has-selection .patient-details-pane{width:100%!important;height:calc(100vh - 150px)!important;display:block!important;overflow-y:auto!important}.patients-module.no-selection .patients-list-sidebar{width:100%!important;height:calc(100vh - 150px)!important;display:flex!important}.patients-module.no-selection .patient-details-pane{display:none!important}.back-to-list-btn{border:1px solid var(--border);border-radius:var(--radius-md);color:var(--primary);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-sm);background:#fff;align-items:center;gap:8px;margin-bottom:16px;padding:8px 16px;font-size:14px;font-weight:600;width:auto!important;display:flex!important}.back-to-list-btn:hover{background:var(--primary-light);border-color:var(--primary)}.back-to-list-btn ion-icon{font-size:18px}.patients-header-title button.btn-primary,.chip{width:auto!important}.action-icn{width:48px!important;height:48px!important}.pane-header{flex-direction:column;align-items:flex-start;gap:24px;padding:24px 16px}.profile-hero{justify-content:space-between;width:100%}.quick-actions{justify-content:space-around;width:100%}.tabs-nav{white-space:nowrap;padding:0 16px;overflow-x:auto}.tab-btn{padding:16px 12px}.tab-content{padding:24px 16px}.transactions-table{white-space:nowrap;display:block;overflow-x:auto}}@keyframes pulse{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 #ef444400}}@media (width<=768px){.patients-module.has-selection .patients-list-sidebar{display:none!important}.patients-module.has-selection .patient-details-pane{width:100%!important;height:calc(100vh - 160px)!important;display:block!important;overflow-y:auto!important}.patients-module.no-selection .patients-list-sidebar{width:100%!important;height:calc(100vh - 160px)!important;display:flex!important}.patients-module.no-selection .patient-details-pane{display:none!important}.tabs-nav{white-space:normal!important;flex-wrap:wrap!important;gap:8px!important;padding:12px 8px!important;overflow-x:hidden!important}.tab-btn{border-radius:var(--radius-md)!important;border:1px solid var(--border)!important;background:var(--bg-color)!important;border-bottom:1px solid var(--border)!important;flex:calc(50% - 8px)!important;justify-content:center!important;padding:10px 6px!important;font-size:13px!important}.tab-btn.active{color:var(--primary)!important;background:var(--primary-light)!important;border-color:var(--primary)!important;border-bottom:1px solid var(--primary)!important}.transactions-table{width:100%!important;box-shadow:none!important;background:0 0!important;display:block!important;overflow-x:hidden!important}.transactions-table thead{display:none!important}.transactions-table tbody{flex-direction:column!important;gap:12px!important;width:100%!important;display:flex!important}.transactions-table tr{background:var(--card-bg)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-sm)!important;border:1px solid var(--border)!important;flex-direction:column!important;width:100%!important;padding:16px!important;display:flex!important}.transactions-table td{border-bottom:1px dashed var(--border)!important;text-align:right!important;justify-content:space-between!important;align-items:center!important;width:100%!important;padding:8px 0!important;font-size:14px!important;display:flex!important}.transactions-table td:last-child{border-bottom:none!important}.transactions-table td:before{content:attr(data-label)!important;color:var(--text-muted)!important;text-align:left!important;font-weight:600!important}.prescriptions-grid{grid-template-columns:1fr!important;gap:16px!important}}@media (width<=1024px){.calendar-module{height:auto;padding:16px}.calendar-header{flex-direction:column;align-items:flex-start;gap:16px;width:100%}.cal-controls{flex-wrap:nowrap!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;width:100%!important;display:flex!important}.cal-controls .btn-icon{border:1px solid var(--border)!important;background:#fff!important;border-radius:50%!important;flex-shrink:0!important;justify-content:center!important;align-items:center!important;width:40px!important;height:40px!important;display:flex!important}.cal-controls .btn-today{white-space:nowrap!important;border:1px solid var(--border)!important;border-radius:var(--radius-md)!important;background:#fff!important;flex-shrink:0!important;width:auto!important;padding:8px 16px!important;font-size:14px!important;font-weight:500!important}.current-week{text-align:center!important;flex-grow:1!important;min-width:auto!important;margin:0!important;font-size:18px!important}.view-toggles{background:0 0!important;border:none!important;flex-wrap:wrap!important;gap:8px!important;width:100%!important;padding:0!important;display:flex!important}.toggle-btn{text-align:center!important;border:1px solid var(--border)!important;border-radius:var(--radius-md)!important;background:#fff!important;flex:1!important;width:auto!important;padding:10px 0!important}.toggle-btn.active{border-color:var(--primary)!important;color:var(--primary)!important;background:#3b82f61a!important}.new-apt-btn{justify-content:center!important;width:100%!important;margin-top:8px!important;margin-left:0!important}.calendar-grid-container{height:500px;overflow-x:auto}.timetable{min-width:800px}}@media (width<=768px){.calendar-grid-container{overflow-x:hidden!important}.timetable{min-width:100%!important}.current-week{min-width:unset;font-size:18px}}@media (width<=1024px){.clinical-chat-module{flex-direction:column;height:auto}.chat-sidebar{border-right:none;border-bottom:1px solid var(--border);width:100%;height:300px}.chat-main-area{height:500px;padding:16px}.chat-messages{padding:16px}}@media (width<=768px){.clinical-chat-module{flex-direction:row!important;height:calc(100vh - 120px)!important}.chat-sidebar{border-bottom:none!important;width:100%!important;height:100%!important}.chat-main-area{width:100%!important;height:100%!important;padding:0!important}.chat-widget{border:none!important;border-radius:0!important;height:100%!important}.patient-chat-layout{gap:0!important;min-height:calc(100vh - 280px)!important}.patient-chat-sidebar{width:100%!important;box-shadow:none!important;border:none!important;border-radius:0!important}}:root{--font-family:"Inter", sans-serif;--bg-color:#f7f9fc;--header-bg:#fff;--card-bg:#fff;--text-main:#1f2937;--text-muted:#6b7280;--primary:#0ea5e9;--primary-hover:#0284c7;--primary-light:#e0f2fe;--success:#10b981;--danger:#ef4444;--warning:#f59e0b;--border:#e5e7eb;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-lg:0 10px 15px -3px #0000000a, 0 4px 6px -2px #00000005;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--transition:all .25s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;max-width:100vw;overflow-x:hidden}#root{flex-direction:column;width:100%;min-height:100vh;display:flex}.main-content{flex-direction:column;flex:1;width:100%;max-width:1600px;margin:0 auto;display:flex}.top-header{background:var(--header-bg);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);z-index:50;position:sticky;top:0}.header-container{justify-content:space-between;align-items:center;max-width:1600px;height:80px;margin:0 auto;padding:0 40px;display:flex}.patient-action-row{justify-content:space-between;align-items:center;gap:16px;margin-top:16px;display:flex}.brand{color:var(--text-main);letter-spacing:-.5px;align-items:center;gap:12px;font-size:22px;font-weight:700;display:flex}.brand ion-icon{color:var(--primary);background:var(--primary-light);border-radius:8px;padding:4px;font-size:32px}.top-nav{gap:24px;height:100%;display:flex}.nav-item{color:var(--text-muted);transition:var(--transition);cursor:pointer;border-bottom:3px solid #0000;align-items:center;gap:8px;padding:0 12px;font-size:15px;font-weight:500;text-decoration:none;display:flex}.nav-item:hover{color:var(--primary)}.nav-item.active{color:var(--primary);border-bottom-color:var(--primary)}.nav-item ion-icon{font-size:20px}.header-actions{align-items:center;gap:20px;display:flex}.search-box{align-items:center;display:flex;position:relative}.search-box ion-icon{color:var(--text-muted);font-size:18px;position:absolute;left:14px}.search-box input{border:1px solid var(--border);border-radius:var(--radius-full);background-color:var(--bg-color);color:var(--text-main);width:220px;transition:var(--transition);outline:none;padding:10px 16px 10px 42px;font-family:inherit;font-size:14px}.search-box input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);background:#fff;width:280px}.icon-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border-radius:50%;justify-content:center;align-items:center;padding:8px;font-size:20px;display:flex;position:relative}.icon-btn:hover{color:var(--primary);border-color:var(--primary);background-color:var(--primary-light)}.badge{background-color:var(--danger);border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;top:0;right:0}.user-profile{cursor:pointer;border-left:1px solid var(--border);align-items:center;gap:12px;padding-left:12px;display:flex}.avatar{background-color:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:600;display:flex}.user-info h4{font-size:14px;font-weight:600;line-height:1.2}.user-info p{color:var(--text-muted);font-size:12px}.page-title-banner{background:var(--bg-color);padding:32px 40px}.page-title-banner h1{color:var(--text-main);letter-spacing:-.5px;font-size:28px;font-weight:700}.page-title-banner p{color:var(--text-muted);margin-top:6px;font-size:15px}.fade-in{animation:.4s ease-out fadeIn}.dashboard,.patients-module,.calendar-module{width:100%;max-width:1600px;margin:0 auto}.dashboard{padding:0 40px}@media (width<=768px){.landing-nav{flex-direction:column!important;gap:16px!important;padding:16px 20px!important}.landing-nav-links{flex-direction:column!important;gap:12px!important;width:100%!important}.landing-nav-links a,.landing-nav-links button{text-align:center!important;width:100%!important;margin:0!important}.landing-hero{margin-top:32px!important;padding:0 20px!important}.landing-title{font-size:36px!important}.landing-subtitle{font-size:18px!important}.landing-hero-buttons{flex-direction:column!important;gap:16px!important;width:100%!important}.landing-hero-buttons button{width:100%!important}.landing-section{padding:40px 20px!important}.landing-h2{font-size:28px!important}.landing-app-buttons{width:100%;flex-direction:column!important}.landing-app-buttons button{width:100%!important;margin:0!important}.landing-pricing-grid{align-items:center;flex-direction:column!important;gap:20px!important}.pricing-card{width:100%!important;transform:none!important}.landing-footer{text-align:center;flex-direction:column!important;gap:16px!important;padding:20px!important}.landing-mockup{height:250px!important;margin-top:40px!important}}@media (width<=1024px){.header-container{flex-wrap:wrap;gap:16px;height:auto;padding:16px}.top-nav{justify-content:flex-start;width:100%;padding-bottom:8px;overflow-x:auto}.top-nav::-webkit-scrollbar{height:4px}.top-nav::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.header-actions{justify-content:flex-end;gap:16px}.search-box{display:none!important}.user-profile .user-info{display:none}.page-title-banner{padding:24px 16px}.page-title-banner h1{font-size:24px}.widgets-grid{grid-template-columns:1fr!important;padding:0 16px!important}.dashboard{padding:0 16px!important}.form-grid,.split-medical,.fin-stats{grid-template-columns:1fr!important}}.patient-header{color:#fff;z-index:100;transition:var(--transition);background:#1e293b;justify-content:space-between;align-items:center;padding:16px 40px;display:flex;position:sticky;top:0;box-shadow:0 4px 6px -1px #0000001a}.patient-brand{align-items:center;gap:8px;font-size:20px;font-weight:700;display:flex}.patient-brand ion-icon{color:var(--primary);background:#0ea5e926;border-radius:8px;padding:6px;font-size:24px}.patient-nav-actions{align-items:center;gap:16px;display:flex}.patient-nav-actions button.nav-tab{color:#cbd5e1;cursor:pointer;transition:var(--transition);background:0 0;border:none;border-radius:6px;padding:8px 12px;font-size:15px;font-weight:500}.patient-nav-actions button.nav-tab:hover{color:#fff;background:#ffffff0d}.patient-nav-actions button.nav-tab.active{color:#fff;background:#0ea5e926;font-weight:600}.patient-user-greeting{color:#e2e8f0;border-left:1px solid #334155;margin-left:16px;padding-left:16px;font-size:14px}.patient-logout-btn{color:#cbd5e1;cursor:pointer;transition:var(--transition);background:0 0;border:1px solid #334155;border-radius:8px;padding:8px 16px;font-size:14px;font-weight:600}.patient-logout-btn:hover{color:#fff;background:#ffffff0d;border-color:#475569}.patient-main{flex-direction:column;flex:1;width:100%;max-width:1200px;margin:0 auto;padding:40px;display:flex}.patient-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin-top:16px;display:grid}.patient-card{background:#fff;border-radius:20px;flex-direction:column;padding:28px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 10px 15px -3px #00000005,0 4px 6px -2px #00000003,inset 0 0 0 1px #e5e7ebb3}.patient-card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #0000000d,0 10px 10px -5px #00000005}.patient-card-icon-wrapper{border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:20px;font-size:24px;display:flex}.patient-card-title{color:#0f172a;margin-bottom:8px;font-size:18px;font-weight:700}.patient-card-desc{color:var(--text-muted);flex:1;font-size:14px;line-height:1.5}.chat-back-btn{color:var(--primary);cursor:pointer;width:36px;height:36px;transition:var(--transition);background:#0ea5e914;border:none;border-radius:50%;justify-content:center;align-items:center;margin-right:8px;font-size:20px;display:none}.chat-back-btn:hover{background:#0ea5e926}@media (width<=1024px){.patient-header{padding:16px 24px}}@media (width<=768px){.patient-header{text-align:center;flex-direction:column;align-items:stretch;gap:16px;padding:16px}.patient-brand{justify-content:center}.patient-nav-actions{flex-direction:column;gap:12px;width:100%}.patient-nav-actions button.nav-tab{text-align:center;width:100%}.patient-user-greeting{border-left:none;margin-top:4px;margin-left:0;padding-left:0;font-size:13px}.patient-logout-btn{text-align:center;width:100%}.patient-main{padding:20px 16px}.patient-grid{grid-template-columns:1fr;gap:16px}.patient-card{padding:20px}.chat-back-btn{display:flex}.clinical-chat-module.chat-active .chat-sidebar,.clinical-chat-module.list-active .chat-main-area,.patient-chat-layout.chat-active .patient-chat-sidebar,.patient-chat-layout.list-active>div:not(.patient-chat-sidebar){display:none}}.patient-chat-layout{flex:1;gap:24px;min-height:500px;display:flex}.patient-chat-sidebar{border-radius:var(--radius-lg);width:300px;box-shadow:var(--shadow-sm);border:1px solid var(--border);background:#fff;padding:16px}@media (width<=768px){.top-header{padding-top:max(env(safe-area-inset-top), 24px)!important}.header-container{gap:12px;flex-flow:row!important;justify-content:space-between!important;align-items:center!important;height:64px!important;padding:12px 16px!important;display:flex!important}.brand{flex-grow:1;justify-content:flex-start;width:auto!important;font-size:18px!important}.brand ion-icon[name=medkit]{padding:3px;font-size:24px}.search-box,.user-info{display:none}.top-nav{display:none!important}.header-actions{align-items:center!important;gap:8px!important;width:auto!important;display:flex!important;position:static!important}.page-title-banner{padding:20px 16px}.page-title-banner h1{font-size:22px}.main-content{padding:0}.panel{padding:20px!important}.auth-container{width:100%!important;margin:16px!important;padding:24px!important}.auth-wrapper{padding:16px}input,select,textarea{font-size:16px!important}.grid,.appointments-grid,.patient-action-row,.invite-form-row,.patients-header-title{gap:12px;flex-direction:column!important;align-items:stretch!important}.settings-page{padding:16px!important}.settings-card{padding:20px!important}.invite-input,.invite-select{width:100%!important;min-width:100%!important}.treatment-archive-card,div[style*="min-width: 500px"],div[style*="minWidth: 500px"],div[style*=min-width\:500px],.timetable{min-width:100%!important}.calendar-grid-container{overflow-x:hidden!important}.main-content,.dashboard,.patients-module,.calendar-module,.dental-module,.settings-page,.clinical-chat-module,.patient-details-pane{max-width:100vw!important;overflow-x:hidden!important}table:not(.timetable){width:100%!important;display:block!important}table:not(.timetable) thead{display:none!important}table:not(.timetable) tbody{flex-direction:column!important;gap:12px!important;width:100%!important;display:flex!important}table:not(.timetable) tr{background:var(--card-bg)!important;border:1px solid var(--border)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-sm)!important;flex-direction:column!important;width:100%!important;margin-bottom:8px!important;padding:12px 16px!important;display:flex!important}table:not(.timetable) td{border-bottom:1px dashed var(--border)!important;text-align:right!important;justify-content:space-between!important;align-items:center!important;width:100%!important;padding:8px 0!important;font-size:14px!important;display:flex!important}table:not(.timetable) td:last-child{border-bottom:none!important}table:not(.timetable) td:before{color:var(--text-muted)!important;float:left!important;text-align:left!important;font-weight:600!important}.dashboard table tr td:first-child:before{content:"Dată & Oră:"}.dashboard table tr td:nth-child(2):before{content:"Medic Curant:"}.dashboard table tr td:nth-child(3):before{content:"Pacient:"}.dashboard table tr td:nth-child(4):before{content:"Procedură:"}.dashboard table tr td:nth-child(5):before{content:"Suma Totală:"}.dashboard table tr td:nth-child(6):before{content:"Achitat:"}.dashboard table tr td:nth-child(7):before{content:"Restanță:"}div[style*=boxShadow] table tr td:first-child:before{content:"Nume:"}div[style*=boxShadow] table tr td:nth-child(2):before{content:"Email:"}div[style*=boxShadow] table tr td:nth-child(3):before{content:"Rol:"}div[style*=boxShadow] table tr td:nth-child(4):before{content:"Acțiuni:"}.treatments-panel table tr td:first-child:before{content:"Cod:"}.treatments-panel table tr td:nth-child(2):before{content:"Denumire:"}.treatments-panel table tr td:nth-child(3):before{content:"Preț (RON):"}.treatments-panel table tr td:nth-child(4):before{content:"Șterge:"}.inventory-module table tr td:first-child:before{content:"Produs / Material:"}.inventory-module table tr td:nth-child(2):before{content:"Stoc Curent:"}.inventory-module table tr td:nth-child(3):before{content:"Limită Alertă:"}.inventory-module table tr td:nth-child(4):before{content:"Status:"}.inventory-module table tr td:nth-child(5):before{content:"Acțiuni:"}.treatment-archive-card table tr td:first-child:before,div[style*=minWidth] table tr td:first-child:before{content:"Data:"}.treatment-archive-card table tr td:nth-child(2):before,div[style*=minWidth] table tr td:nth-child(2):before{content:"Pacient:"}.treatment-archive-card table tr td:nth-child(3):before,div[style*=minWidth] table tr td:nth-child(3):before{content:"Procedură:"}.treatment-archive-card table tr td:nth-child(4):before,div[style*=minWidth] table tr td:nth-child(4):before{content:"Dinte:"}.treatment-archive-card table tr td:nth-child(5):before,div[style*=minWidth] table tr td:nth-child(5):before{content:"Cost:"}.treatment-archive-card table tr td:nth-child(6):before,div[style*=minWidth] table tr td:nth-child(6):before{content:"Stare:"}.table-responsive{width:100%;display:block;overflow-x:hidden!important}.landing-hero{text-align:center;flex-direction:column!important;padding:40px 20px!important}.landing-hero h1{font-size:32px!important}.landing-section{padding:40px 20px!important}.browser-mockup{border-radius:8px!important;width:100%!important;height:300px!important}button:not(.btn-icon):not(.toggle-btn):not(.chat-back-btn):not(.icon-btn):not(.btn-today):not(.nav-tab):not(.patient-logout-btn):not(.action-icn):not(.back-to-list-btn):not(.chip):not(.action-btn):not(.tab-btn):not(.patient-portal-close-btn){width:100%!important}button.action-btn{width:auto!important}}.treatment-configurator{background:var(--card-bg);border-radius:var(--radius-lg)}.category-item{border:1px solid #0000;transition:all .2s ease-in-out}.category-item:hover{color:var(--primary)!important;background:#0ea5e90d!important}.category-item.active{border-color:#0ea5e933;box-shadow:0 2px 4px #0ea5e90d}.treatments-panel table input{border:1px solid #0000;border-radius:4px;outline:none;transition:all .15s}.treatments-panel table input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light);background:var(--bg-color)!important}.treatments-panel table tr:hover{background:#0ea5e905}@media (width<=768px){.treatment-configurator{flex-direction:column!important}.categories-sidebar{border-bottom:1px solid var(--border);padding-bottom:20px;border-right:none!important;width:100%!important;padding-right:0!important}.categories-list{max-height:250px!important}.treatments-panel{width:100%!important}}@media (width<=1600px){.header-container{padding:0 20px}.top-nav{gap:12px}.nav-item{gap:6px;padding:0 8px;font-size:14px}.header-actions{gap:12px}.search-box input{width:150px}.search-box input:focus{width:180px}}@media (width<=1440px){.brand-text{display:none}.top-nav{gap:10px}.nav-item{gap:4px;padding:0 6px;font-size:13.5px}.user-info p{display:none}}@media (width<=1280px){.user-info{display:none}.top-nav{gap:8px}.nav-item{gap:4px;padding:0 6px;font-size:13px}}.mobile-bottom-nav{-webkit-backdrop-filter:blur(20px);z-index:1000;height:64px;padding-bottom:env(safe-area-inset-bottom);background:#ffffffd9;border-top:1px solid #e5e7ebb3;grid-template-columns:repeat(5,1fr);display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 12px #00000008}@media (width<=768px){.clinical-app-layout{height:100vh!important;flex-direction:column!important;height:-webkit-fill-available!important;display:flex!important;overflow:hidden!important}.clinical-app-layout .main-content{-webkit-overflow-scrolling:touch!important;padding-bottom:calc(88px + env(safe-area-inset-bottom))!important;flex:1!important;overflow-y:auto!important}.mobile-bottom-nav{display:grid}.patient-details-pane,.dashboard,.calendar-module,.appointments-module,.clinical-chat-module,.settings-page,.medical-tab,.consents-tab,.prescriptions-tab,.tab-content,.dental-module,.treatments-panel{padding-bottom:0!important}}.mobile-nav-item{color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:4px 0;font-size:10px;font-weight:500;display:flex}.mobile-nav-item ion-icon{font-size:22px;transition:transform .2s}.mobile-nav-item:active ion-icon{transform:scale(.9)}.mobile-nav-item.active{color:var(--primary);font-weight:600}.mobile-more-menu-overlay{-webkit-backdrop-filter:blur(4px);z-index:1100;opacity:0;pointer-events:none;background:#0f172a66;transition:opacity .3s cubic-bezier(.4,0,.2,1);position:fixed;inset:0}.mobile-more-menu-overlay.show{opacity:1;pointer-events:auto}.mobile-more-menu-sheet{-webkit-backdrop-filter:blur(20px);z-index:1200;padding:16px 20px calc(24px + env(safe-area-inset-bottom)) 20px;background:#fffffff2;border-top-left-radius:24px;border-top-right-radius:24px;flex-direction:column;max-height:85vh;transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -10px 25px -5px #0000001a}.mobile-more-menu-sheet.show{transform:translateY(0)}.sheet-header{justify-content:space-between;align-items:center;margin-bottom:20px;padding-top:10px;display:flex;position:relative}.sheet-handle{background:var(--border);cursor:pointer;border-radius:2px;width:36px;height:4px;position:absolute;top:-4px;left:50%;transform:translate(-50%)}.sheet-header h3{color:var(--text-main);font-size:18px;font-weight:700}.sheet-header .close-btn{background:var(--bg-color);width:32px;height:32px;color:var(--text-muted);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:flex}.sheet-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px;display:grid}.sheet-grid-item{cursor:pointer;transition:var(--transition);background:#0ea5e908;border:1px solid #0ea5e914;border-radius:16px;flex-direction:column;align-items:center;gap:10px;padding:16px 8px;display:flex}.sheet-grid-item:active{background:var(--primary-light);transform:scale(.95)}.sheet-grid-item.active{background:var(--primary-light);border-color:var(--primary);color:var(--primary);font-weight:600}.sheet-grid-item .icon-wrapper{background:var(--primary-light);width:44px;height:44px;color:var(--primary);border-radius:12px;justify-content:center;align-items:center;font-size:22px;display:flex}.sheet-grid-item span{color:var(--text-main);text-align:center;font-size:13px;font-weight:500}.sheet-footer{border-top:1px solid var(--border);margin-top:auto;padding-top:16px}.sheet-logout-btn{color:var(--danger)!important;cursor:pointer!important;width:100%!important;transition:var(--transition)!important;background:#ef444414!important;border:1px solid #ef444426!important;border-radius:12px!important;justify-content:center!important;align-items:center!important;gap:10px!important;padding:12px!important;font-size:15px!important;font-weight:600!important;display:flex!important}.sheet-logout-btn:active{background:#ef444426!important}.dashboard-report-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.dashboard-report-filters{gap:12px;display:flex}.dashboard-revenue-banner{color:#047857;background:#10b9811a;border:1px solid #10b981;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:16px;display:flex}.dashboard-revenue-banner .banner-label{font-weight:600}.dashboard-revenue-banner .banner-value{font-size:20px;font-weight:700}@media (width<=768px){.dashboard-report-header{flex-direction:column!important;align-items:stretch!important;gap:16px!important}.dashboard-report-filters{flex-direction:column!important;gap:8px!important}.dashboard-report-filters select{appearance:none;transition:var(--transition);width:100%!important;height:46px!important;box-shadow:var(--shadow-sm)!important;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'></polyline></svg>")!important;background-position:right 12px center!important;background-repeat:no-repeat!important;background-size:16px!important;padding-right:40px!important;font-size:15px!important;font-weight:500!important}.dashboard-report-filters select:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px #0ea5e926!important}.dashboard-revenue-banner{flex-direction:column!important;align-items:flex-start!important;gap:8px!important}.dashboard-revenue-banner .banner-value{font-size:22px!important}}button,.nav-item,.mobile-nav-item,.chip,.tab-btn,select,option,.sheet-grid-item,.patient-card{-webkit-user-select:none!important;user-select:none!important;-webkit-tap-highlight-color:transparent!important}.filter-chips::-webkit-scrollbar{display:none!important}.top-nav::-webkit-scrollbar{display:none!important}.tabs-nav::-webkit-scrollbar{display:none!important}.filter-chips,.top-nav,.tabs-nav{-ms-overflow-style:none!important;scrollbar-width:none!important}.dental-module{padding:40px;animation:.5s fadeIn}.module-header{margin-bottom:32px}.module-header h2{margin-bottom:8px;font-size:24px}.module-header p{color:var(--text-muted)}.dental-workspace{align-items:flex-start;gap:32px;display:flex}.odontogram-panel{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;flex:1;gap:40px;min-width:600px;padding:40px;display:flex}.arch{justify-content:center;gap:24px;display:flex}.quadrant{gap:8px;display:flex}.divider-left{border-left:2px solid var(--border);padding-left:24px}.tooth-container{cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:8px;padding:8px;transition:transform .2s;display:flex}.tooth-container:hover{background:#3b82f60d;transform:translateY(-5px)}.tooth-number{color:var(--text-muted);font-size:13px;font-weight:600}.treatment-sidebar{flex-direction:column;gap:24px;width:320px;display:flex}.action-card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--primary);padding:24px}.action-card h3{margin-bottom:8px;font-size:18px}.action-card p{color:var(--text-muted);margin-bottom:20px;font-size:13px}.action-buttons{flex-direction:column;gap:12px;display:flex}.btn-action{border-radius:var(--radius-md);cursor:pointer;border:none;align-items:center;gap:8px;padding:12px 16px;font-family:inherit;font-size:14px;font-weight:500;transition:all .2s;display:flex}.btn-action ion-icon{font-size:18px}.btn-action.red{color:#ef4444;background:#ef44441a}.btn-action.red:hover{color:#fff;background:#ef4444}.btn-action.blue{color:#3b82f6;background:#3b82f61a}.btn-action.blue:hover{color:#fff;background:#3b82f6}.btn-action.dark{background:var(--border);color:var(--text-main)}.btn-action.dark:hover{color:#fff;background:#1f2937}.btn-action.ghost{color:var(--text-muted);background:0 0}.btn-action.ghost:hover{background:var(--bg-color)}.empty-state{background:var(--card-bg);border-radius:var(--radius-lg);text-align:center;color:var(--text-muted);box-shadow:var(--shadow-sm);padding:40px 24px}.empty-state ion-icon{color:var(--border);margin-bottom:16px;font-size:48px}.financial-summary{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px}.financial-summary h3{border-bottom:1px solid var(--border);margin-bottom:16px;padding-bottom:12px;font-size:16px}.fin-row{justify-content:space-between;margin-bottom:12px;font-size:14px;display:flex}.text-red{color:#ef4444}.btn-primary{background:var(--primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;padding:12px 24px;font-weight:600;transition:background .2s}.btn-primary:hover{background:var(--primary-hover)}@media (width<=1024px){.dental-workspace{flex-direction:column}.odontogram-panel{min-width:unset;width:100%;padding:16px;overflow-x:auto}.arch{justify-content:flex-start;min-width:600px;padding-bottom:8px}.treatment-sidebar{width:100%}.dental-module{padding:16px!important}}@media (width<=768px){.odontogram-panel{padding:8px!important;overflow-x:hidden!important}.arch{min-width:unset!important;justify-content:center!important;gap:6px!important;padding-bottom:0!important}.quadrant{gap:2px!important}.divider-left{border-left:1.5px solid var(--border)!important;padding-left:6px!important}.tooth-container{gap:4px!important;padding:2px!important}.tooth-svg{width:17px!important;height:28px!important}.tooth-number{margin-top:2px!important;font-size:9px!important}}.patients-module{background:var(--bg-color);height:calc(100vh - 100px);display:flex;overflow:hidden}.patients-list-sidebar{background:var(--card-bg);border-right:1px solid var(--border);z-index:1;flex-direction:column;width:380px;display:flex}.filters-header{border-bottom:1px solid var(--border);flex-direction:column;gap:16px;padding:24px;display:flex}.filter-chips{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.chip{border-radius:var(--radius-full);background:var(--bg-color);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:var(--transition);padding:6px 14px;font-size:13px;font-weight:500}.chip:hover{background:var(--border)}.chip.active{background:var(--primary);color:#fff;border-color:var(--primary)}.list-container{flex-direction:column;flex:1;gap:8px;padding:16px;display:flex;overflow-y:auto}.patient-card{border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);background:#fff;border:1px solid #0000;align-items:center;gap:16px;padding:16px;display:flex}.patient-card:hover{background:var(--bg-color);transform:translate(4px)}.patient-card.active{background:#3b82f60d;border-color:#3b82f633}.patient-avatar-sm{background:linear-gradient(135deg, var(--primary), #8b5cf6);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:18px;font-weight:600;display:flex}.patient-info-sm{flex:1}.patient-name-sm{color:var(--text-main);margin-bottom:4px;font-size:15px;font-weight:600}.patient-meta-sm{color:var(--text-muted);font-size:13px}.patient-card ion-icon{color:var(--text-muted);opacity:0;transition:opacity .2s}.patient-card:hover ion-icon,.patient-card.active ion-icon{opacity:1}.add-patient-btn{justify-content:center;align-items:center;gap:8px;margin:16px;display:flex}.patient-details-pane{background:var(--bg-color);flex:1;overflow-y:auto}.pane-header{background:var(--card-bg);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:40px;display:flex}.profile-hero{align-items:center;gap:24px;display:flex}.hero-avatar{background:linear-gradient(135deg, var(--primary), #8b5cf6);color:#fff;width:80px;height:80px;box-shadow:var(--shadow-md);border-radius:50%;justify-content:center;align-items:center;font-size:32px;font-weight:700;display:flex}.hero-text h2{margin-bottom:8px;font-size:28px;font-weight:700}.hero-text p{color:var(--text-muted);font-size:15px}.quick-actions{gap:12px;display:flex}.action-icn{cursor:pointer;width:48px;height:48px;box-shadow:var(--shadow-sm);background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:24px;transition:all .2s;display:flex}.action-icn:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.action-icn.green{color:var(--success)}.action-icn.blue{color:var(--primary)}.action-icn.dark{color:var(--text-main)}.tabs-nav{background:var(--card-bg);border-bottom:1px solid var(--border);padding:0 40px;display:flex}.tab-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;align-items:center;gap:8px;padding:20px 24px;font-size:15px;font-weight:500;transition:all .2s;display:flex}.tab-btn:hover{color:var(--text-main);background:var(--bg-color)}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary)}.tab-btn ion-icon{font-size:18px}.tab-content{padding:40px;animation:.3s fadeIn}.form-grid{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);grid-template-columns:1fr 1fr;gap:24px;padding:32px;display:grid}.input-group{flex-direction:column;gap:8px;display:flex}.input-group.full-width{grid-column:1/-1}.input-group label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.input-field{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-color);color:var(--text-main);transition:var(--transition);outline:none;padding:12px 16px;font-family:inherit;font-size:15px}.input-field:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px #3b82f61a}.medical-tab{flex-direction:column;gap:32px;display:flex}.alert-box{border-radius:var(--radius-md);align-items:flex-start;gap:16px;padding:20px;display:flex}.alert-box.warning{border-left:4px solid var(--danger);color:#b91c1c;background:#ef44441a}.alert-box ion-icon{color:var(--danger);font-size:24px}.split-medical{grid-template-columns:1fr 1fr;gap:24px;display:grid}.med-box{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:32px}.med-box h3{border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:12px;font-size:16px}.checkbox-wrap{cursor:pointer;align-items:center;gap:12px;margin-bottom:12px;font-size:15px;display:flex}.textarea-field{border:1px solid var(--border);border-radius:var(--radius-md);resize:vertical;outline:none;width:100%;min-height:100px;margin-top:16px;padding:12px;font-family:inherit;font-size:14px}.textarea-field:focus{border-color:var(--primary)}.fin-stats{grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:40px;display:grid}.fin-card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;border:1px solid #0000;padding:32px}.fin-card.border-danger{border-color:#ef44444d}.fin-card h4{color:var(--text-muted);text-transform:uppercase;margin-bottom:12px;font-size:14px}.fin-card p{font-size:32px;font-weight:700}.text-success p{color:var(--success)}.text-danger p{color:var(--danger)}.transactions-table{border-collapse:collapse;background:var(--card-bg);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);overflow:hidden}.transactions-table th,.transactions-table td{text-align:left;border-bottom:1px solid var(--border);padding:16px 24px}.transactions-table th{color:var(--text-muted);text-transform:uppercase;background:#f3f5f880;font-size:13px;font-weight:600}.transactions-table tr:last-child td{border-bottom:none}.mt-4{margin-top:24px}.mb-2{margin-bottom:12px}.mt-2{margin-top:12px}.w-full{width:calc(100% - 32px)}.prescriptions-grid{grid-template-columns:1fr 1fr;gap:32px;display:grid}.back-to-list-btn{display:none}@media (width<=1024px){.patients-module{flex-direction:column;height:auto;overflow:visible}.patients-module.has-selection .patients-list-sidebar{display:none!important}.patients-module.has-selection .patient-details-pane{width:100%!important;height:calc(100vh - 150px)!important;display:block!important;overflow-y:auto!important}.patients-module.no-selection .patients-list-sidebar{width:100%!important;height:calc(100vh - 150px)!important;display:flex!important}.patients-module.no-selection .patient-details-pane{display:none!important}.back-to-list-btn{border:1px solid var(--border);border-radius:var(--radius-md);color:var(--primary);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-sm);background:#fff;align-items:center;gap:8px;margin-bottom:16px;padding:8px 16px;font-size:14px;font-weight:600;width:auto!important;display:flex!important}.back-to-list-btn:hover{background:var(--primary-light);border-color:var(--primary)}.back-to-list-btn ion-icon{font-size:18px}.patients-header-title button.btn-primary,.chip{width:auto!important}.action-icn{width:48px!important;height:48px!important}.pane-header{flex-direction:column;align-items:flex-start;gap:24px;padding:24px 16px}.profile-hero{justify-content:space-between;width:100%}.quick-actions{justify-content:space-around;width:100%}.tabs-nav{white-space:nowrap;padding:0 16px;overflow-x:auto}.tab-btn{padding:16px 12px}.tab-content{padding:24px 16px}.transactions-table{white-space:nowrap;display:block;overflow-x:auto}}@media (width<=768px){.patients-module.has-selection .patients-list-sidebar{display:none!important}.patients-module.has-selection .patient-details-pane{width:100%!important;height:calc(100vh - 160px)!important;display:block!important;overflow-y:auto!important}.patients-module.no-selection .patients-list-sidebar{width:100%!important;height:calc(100vh - 160px)!important;display:flex!important}.patients-module.no-selection .patient-details-pane{display:none!important}.tabs-nav{white-space:normal!important;flex-wrap:wrap!important;gap:8px!important;padding:12px 8px!important;overflow-x:hidden!important}.tab-btn{border-radius:var(--radius-md)!important;border:1px solid var(--border)!important;background:var(--bg-color)!important;border-bottom:1px solid var(--border)!important;flex:calc(50% - 8px)!important;justify-content:center!important;padding:10px 6px!important;font-size:13px!important}.tab-btn.active{color:var(--primary)!important;background:var(--primary-light)!important;border-color:var(--primary)!important;border-bottom:1px solid var(--primary)!important}.transactions-table{width:100%!important;box-shadow:none!important;background:0 0!important;display:block!important;overflow-x:hidden!important}.transactions-table thead{display:none!important}.transactions-table tbody{flex-direction:column!important;gap:12px!important;width:100%!important;display:flex!important}.transactions-table tr{background:var(--card-bg)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-sm)!important;border:1px solid var(--border)!important;flex-direction:column!important;width:100%!important;padding:16px!important;display:flex!important}.transactions-table td{border-bottom:1px dashed var(--border)!important;text-align:right!important;justify-content:space-between!important;align-items:center!important;width:100%!important;padding:8px 0!important;font-size:14px!important;display:flex!important}.transactions-table td:last-child{border-bottom:none!important}.transactions-table td:before{content:attr(data-label)!important;color:var(--text-muted)!important;text-align:left!important;font-weight:600!important}.prescriptions-grid{grid-template-columns:1fr!important;gap:16px!important}}.patient-card.debt-warning{background:#fef3c726!important;border-left:5px solid #eab308!important}.patient-card.debt-warning:hover{background:#fef3c74d!important}.patient-card.debt-critical{animation:2.5s infinite pulse;background:#fee2e226!important;border-left:5px solid #ef4444!important}.patient-card.debt-critical:hover{background:#fee2e24d!important}.patient-avatar-sm.debt-warning{background:linear-gradient(135deg,#eab308,#ca8a04)!important}.patient-avatar-sm.debt-critical{background:linear-gradient(135deg,#ef4444,#dc2626)!important}.debt-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:4px;margin-top:6px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-block}.debt-badge.debt-warning{color:#854d0e;background:#fef3c7;border:1px solid #fde68a}.debt-badge.debt-critical{color:#991b1b;background:#fee2e2;border:1px solid #fca5a5}.calendar-module{background:var(--bg-color);flex-direction:column;height:calc(100vh - 100px);padding:40px;display:flex;overflow:hidden}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.cal-controls{align-items:center;gap:16px;display:flex}.cal-controls .btn-icon{border:1px solid var(--border);cursor:pointer;width:36px;height:36px;transition:var(--transition);background:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex}.cal-controls .btn-icon:hover{background:var(--bg-color)}.current-week{text-align:center;min-width:280px;font-size:20px;font-weight:600}.btn-today{border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;background:#fff;padding:8px 16px;font-weight:500}.view-toggles{border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;align-items:center;gap:4px;padding:4px;display:flex}.toggle-btn{border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border:none;padding:8px 16px;font-size:14px;font-weight:500}.toggle-btn.active{color:var(--primary);background:#3b82f61a}.new-apt-btn{align-items:center;gap:8px;margin-left:16px;display:flex}.calendar-grid-container{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border);flex:1;position:relative;overflow-y:auto}.timetable{grid-template-columns:70px repeat(5,1fr);grid-auto-rows:60px;min-width:800px;display:grid;position:relative}.time-header-corner{border-bottom:1px solid var(--border);border-right:1px solid var(--border);background:var(--card-bg);z-index:2;height:50px;position:sticky;top:0}.day-header{text-align:center;border-bottom:1px solid var(--border);border-right:1px solid var(--border);background:var(--card-bg);z-index:2;height:50px;padding:16px;font-weight:600;position:sticky;top:0}.time-label{text-align:right;color:var(--text-muted);padding-right:12px;font-size:12px;font-weight:500;position:relative;transform:translateY(-8px)}.time-label.half-hour{color:#0000}.grid-cell{border-top:1px solid var(--border);border-right:1px solid var(--border);height:60px}.grid-cell.half-cell{border-top:1px dashed var(--border)}.appointment-block{border-radius:var(--radius-md);color:#fff;box-shadow:var(--shadow-md);z-index:3;cursor:pointer;border-left:4px solid #0003;padding:8px 12px;font-size:13px;transition:transform .2s;position:absolute;overflow:hidden}.appointment-block:hover{z-index:4;transform:scale(1.02)}.apt-header{margin-bottom:4px;font-size:14px}.apt-body{opacity:.9;font-size:12px}.bg-blue{background-color:#3b82f6}.bg-yellow{background-color:#f59e0b}.bg-green{background-color:#10b981}.bg-red{background-color:#ef4444}.bg-gray{background-color:#64748b}@media (width<=1024px){.calendar-module{height:auto;padding:16px}.calendar-header{flex-direction:column;align-items:flex-start;gap:16px;width:100%}.cal-controls{flex-wrap:nowrap!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;width:100%!important;display:flex!important}.cal-controls .btn-icon{border:1px solid var(--border)!important;background:#fff!important;border-radius:50%!important;flex-shrink:0!important;justify-content:center!important;align-items:center!important;width:40px!important;height:40px!important;display:flex!important}.cal-controls .btn-today{white-space:nowrap!important;border:1px solid var(--border)!important;border-radius:var(--radius-md)!important;background:#fff!important;flex-shrink:0!important;width:auto!important;padding:8px 16px!important;font-size:14px!important;font-weight:500!important}.current-week{text-align:center!important;flex-grow:1!important;min-width:auto!important;margin:0!important;font-size:18px!important}.view-toggles{background:0 0!important;border:none!important;flex-wrap:wrap!important;gap:8px!important;width:100%!important;padding:0!important;display:flex!important}.toggle-btn{text-align:center!important;border:1px solid var(--border)!important;border-radius:var(--radius-md)!important;background:#fff!important;flex:1!important;width:auto!important;padding:10px 0!important}.toggle-btn.active{border-color:var(--primary)!important;color:var(--primary)!important;background:#3b82f61a!important}.new-apt-btn{justify-content:center!important;width:100%!important;margin-top:8px!important;margin-left:0!important}.calendar-grid-container{height:500px;overflow-x:auto}.timetable{min-width:800px}}@media (width<=768px){.calendar-grid-container{overflow-x:hidden!important}.timetable{min-width:100%!important}.current-week{min-width:unset;font-size:18px}}.chat-widget{border-radius:var(--radius-lg);height:100%;box-shadow:var(--shadow-sm);border:1px solid var(--border);background:#fff;flex-direction:column;display:flex;overflow:hidden}.chat-empty-state{height:100%;color:var(--text-muted);background:var(--bg-color);border-radius:var(--radius-lg);border:1px dashed var(--border);flex-direction:column;justify-content:center;align-items:center;display:flex}.chat-empty-state ion-icon{opacity:.5;margin-bottom:16px;font-size:48px}.chat-header{background:var(--card-bg);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.chat-header-info{align-items:center;gap:16px;display:flex}.chat-avatar{background:linear-gradient(135deg, var(--primary), #8b5cf6);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;font-weight:600;display:flex}.chat-title h4{margin-bottom:2px;font-size:16px}.chat-role{color:var(--text-muted);font-size:12px}.chat-messages{background:#f8fafc;flex-direction:column;flex:1;gap:16px;padding:24px;display:flex;overflow-y:auto}.chat-bubble-wrapper{width:100%;display:flex}.chat-bubble-wrapper.mine{justify-content:flex-end}.chat-bubble-wrapper.theirs{justify-content:flex-start}.chat-bubble{border-radius:16px;max-width:70%;padding:12px 16px;font-size:14px;line-height:1.5;position:relative}.mine .chat-bubble{background:var(--primary);color:#fff;border-bottom-right-radius:4px}.theirs .chat-bubble{color:var(--text-main);box-shadow:var(--shadow-sm);background:#fff;border-bottom-left-radius:4px}.chat-time{opacity:.7;text-align:right;margin-top:4px;font-size:11px;display:block}.chat-input-area{border-top:1px solid var(--border);background:#fff;align-items:center;gap:12px;padding:16px 24px;display:flex}.chat-input-area input{border-radius:var(--radius-full);border:1px solid var(--border);background:var(--bg-color);transition:var(--transition);outline:none;flex:1;padding:12px 16px}.chat-input-area input:focus{border-color:var(--primary);background:#fff}.btn-send{background:var(--primary);color:#fff;cursor:pointer;width:44px;height:44px;transition:var(--transition);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:flex}.btn-send:hover:not(:disabled){transform:scale(1.05)}.btn-send:disabled{background:var(--border);cursor:not-allowed;opacity:.7}.clinical-chat-module{background:var(--bg-color);height:calc(100vh - 100px);display:flex}.chat-sidebar{background:var(--card-bg);border-right:1px solid var(--border);flex-direction:column;width:380px;display:flex}.chat-main-area{flex:1;padding:24px}@media (width<=1024px){.clinical-chat-module{flex-direction:column;height:auto}.chat-sidebar{border-right:none;border-bottom:1px solid var(--border);width:100%;height:300px}.chat-main-area{height:500px;padding:16px}.chat-messages{padding:16px}}@media (width<=768px){.clinical-chat-module{flex-direction:row!important;height:calc(100vh - 120px)!important}.chat-sidebar{border-bottom:none!important;width:100%!important;height:100%!important}.chat-main-area{width:100%!important;height:100%!important;padding:0!important}.chat-widget{border:none!important;border-radius:0!important;height:100%!important}.patient-chat-layout{gap:0!important;min-height:calc(100vh - 280px)!important}.patient-chat-sidebar{width:100%!important;box-shadow:none!important;border:none!important;border-radius:0!important}}
