.layout{display:flex;min-height:100vh}.sidebar{width:260px;background:var(--color-surface);color:var(--color-text-primary);padding:24px 0;position:fixed;height:100vh;overflow-y:auto;z-index:100;border-right:1px solid var(--color-border);box-shadow:0 1px 3px #0000000a;display:flex;flex-direction:column}.sidebar-header{padding:0 24px 32px;border-bottom:1px solid var(--color-border)}.logo{font-size:28px;font-weight:700;margin:0 0 4px;letter-spacing:1px}.logo-subtitle{font-size:12px;opacity:.8;margin:0}.nav-menu{list-style:none;padding:24px 0;margin:0}.nav-menu li{margin:0}.nav-link{display:flex;align-items:center;gap:12px;padding:14px 24px;color:var(--color-text-secondary);text-decoration:none;transition:all .2s;font-size:15px;font-weight:500}.nav-link:hover{background-color:#0f766e0d;color:var(--color-text-primary)}.nav-link.active{background-color:#0f766e14;color:var(--color-primary);border-left:3px solid var(--color-primary)}.nav-icon{width:20px;height:20px;flex-shrink:0}.main-content{flex:1;margin-left:260px;padding:32px;background-color:var(--color-bg);min-height:100vh}@media (max-width: 768px){.sidebar{width:80px}.sidebar-header{padding:0 16px 24px}.logo{font-size:20px}.logo-subtitle{display:none}.nav-link{padding:14px 16px;justify-content:center}.nav-link span:not(.nav-icon){display:none}.main-content{margin-left:80px;padding:20px}}.dashboard{max-width:1400px}.dashboard-header{margin-bottom:32px}.dashboard-header h1{font-size:32px;font-weight:700;color:var(--color-text-primary);margin:0 0 8px}.dashboard-subtitle{font-size:16px;color:var(--color-text-secondary);margin:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin-bottom:32px}.stat-card{background:var(--color-surface);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a;display:flex;align-items:center;gap:20px;transition:transform .2s,box-shadow .2s;border:1px solid var(--color-border)}.stat-card:hover{transform:translateY(-2px);box-shadow:0 2px 6px #00000014,0 4px 12px #0000000f}.stat-card-warning{border-left:4px solid var(--color-warning)}.stat-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:#0f766e14;border-radius:12px;color:var(--color-primary);flex-shrink:0}.stat-value{font-size:32px;font-weight:700;color:var(--color-text-primary);margin-bottom:4px}.stat-label{font-size:14px;color:var(--color-text-secondary)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.dashboard-card{background:var(--color-surface);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a;border:1px solid var(--color-border)}.dashboard-card h2{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0 0 20px}.appointment-list,.risk-list{list-style:none;padding:0;margin:0}.appointment-item,.risk-item{padding:16px;border-bottom:1px solid var(--color-border);transition:background-color .2s}.appointment-item:last-child,.risk-item:last-child{border-bottom:none}.appointment-item:hover,.risk-item:hover{background-color:#0f766e08}.appointment-item{display:flex;gap:16px}.appointment-time{font-size:14px;font-weight:600;color:var(--color-primary);min-width:140px}.appointment-details{flex:1}.appointment-patient{font-size:16px;font-weight:500;color:var(--color-text-primary);margin-bottom:8px}.appointment-meta{display:flex;gap:8px;flex-wrap:wrap}.risk-item{background:#ef444414;border-radius:8px;margin-bottom:12px;border-left:4px solid var(--color-error)}.risk-header{display:flex;justify-content:space-between;margin-bottom:8px}.risk-priority{font-size:12px;font-weight:600;color:var(--color-error);text-transform:uppercase}.risk-summary{font-size:14px;color:var(--color-text-primary);margin-bottom:12px;line-height:1.5}.risk-flags{display:flex;gap:8px;flex-wrap:wrap}@media (max-width: 1024px){.dashboard-grid{grid-template-columns:1fr}}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}.appointment-item{flex-direction:column}.appointment-time{min-width:auto}}.appointment-list-container{display:grid;gap:16px}.appointment-card{background:var(--color-surface);border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a;transition:box-shadow .2s;border:1px solid var(--color-border)}.appointment-card:hover{box-shadow:0 2px 6px #00000014,0 4px 12px #0000000f}.appointment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.appointment-time-large{font-size:24px;font-weight:700;color:var(--color-primary)}.appointment-actions{display:flex;gap:8px}.btn-sm{padding:6px 12px;font-size:13px}.appointment-body{display:flex;flex-direction:column;gap:12px}.appointment-patient-name{font-size:18px;font-weight:600;color:var(--color-text-primary)}.appointment-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.detail-item{display:flex;flex-direction:column;gap:4px}.appointment-program{margin-top:8px}.appointment-notes{margin-top:12px;padding:12px;background:#0f766e0d;border-radius:8px;font-size:14px;color:var(--color-text-primary);line-height:1.5}@media (max-width: 768px){.appointment-header{flex-direction:column;align-items:flex-start;gap:12px}.appointment-actions{width:100%}.appointment-actions .btn{flex:1}.appointment-details-grid{grid-template-columns:1fr}}.slot-management{display:flex;flex-direction:column;gap:32px}.slot-group{background:var(--color-surface);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a;border:1px solid var(--color-border)}.slot-group-title{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 20px}.slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.slot-card{border:2px solid var(--color-border);border-radius:8px;padding:16px;transition:all .2s;background:var(--color-surface)}.slot-card:hover{border-color:var(--color-primary);box-shadow:0 2px 6px #0000000f}.slot-card.available{border-color:var(--color-success);background:#22c55e0d}.slot-card.booked{border-color:var(--color-secondary);background:#3b82f60d}.slot-card.blocked{border-color:var(--color-error);background:#ef44440d;opacity:.8}.slot-card.cancelled{border-color:#ff9800;background:#ff98000d}.slot-time{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.slot-type{font-size:14px;color:var(--color-text-secondary);margin-bottom:12px;text-transform:capitalize}.slot-actions{display:flex;gap:8px;flex-wrap:wrap}.slot-actions .btn{flex:1;min-width:70px}@media (max-width: 768px){.slots-grid{grid-template-columns:1fr}}.slot-calendar{background:var(--color-surface);border-radius:12px;padding:24px;border:1px solid var(--color-border);box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a}.legend-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.available-dot{background:var(--color-success)}.booked-dot{background:var(--color-secondary)}.blocked-dot{background:var(--color-error)}.cancelled-dot{background:#ff9800}.calendar-day{aspect-ratio:1;min-height:60px;padding:8px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;transition:all .2s;position:relative}.calendar-day:hover:not(:disabled){background:#0f766e0d;border-color:var(--color-primary);transform:scale(1.05);z-index:10}.calendar-day.has-slots{border-width:2px}.calendar-day.has-available{border-color:var(--color-success)}.calendar-day.has-booked{border-color:var(--color-secondary)}.calendar-day.has-blocked{border-color:var(--color-error)}.day-stats{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:auto;width:100%}.stat-indicators{display:flex;gap:2px;justify-content:center}.stat-dot{width:6px;height:6px;border-radius:50%}.stat-dot.available{background:var(--color-success)}.stat-dot.booked{background:var(--color-secondary)}.stat-dot.blocked{background:var(--color-error)}.stat-dot.cancelled{background:#ff9800}.slot-count{font-size:10px;font-weight:600;color:var(--color-text-secondary)}.calendar-day.selected .slot-count{color:#fff}.day-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;padding:8px 12px;background:var(--color-text-primary);color:#fff;border-radius:6px;font-size:12px;white-space:nowrap;z-index:100;box-shadow:0 2px 8px #0003;pointer-events:none}.day-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:var(--color-text-primary)}.selected-date-slots{border-top:2px solid var(--color-border);padding-top:20px;margin-top:20px}.slots-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.slots-header h4{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0}.slots-summary{display:flex;gap:16px;flex-wrap:wrap}.summary-item{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500}.summary-item.available{color:var(--color-success)}.summary-item.booked{color:var(--color-secondary)}.summary-item.blocked{color:var(--color-error)}.summary-item.cancelled{color:#ff9800}.slots-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.slot-item{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:8px;border:1px solid var(--color-border);transition:all .2s}.slot-item.available{background:#22c55e0d;border-color:var(--color-success)}.slot-item.booked{background:#3b82f60d;border-color:var(--color-secondary)}.slot-item.blocked{background:#ef44440d;border-color:var(--color-error)}.slot-item.cancelled{background:#ff98000d;border-color:#ff9800}.slot-time{font-size:15px;font-weight:600;color:var(--color-text-primary)}.slot-type{font-size:13px;color:var(--color-text-secondary);text-transform:capitalize}.slot-status{display:flex;justify-content:flex-end}.status-badge{padding:4px 10px;border-radius:6px;font-size:11px;font-weight:500;text-transform:uppercase}.status-badge.available{background:#22c55e26;color:var(--color-success)}.status-badge.booked{background:#3b82f626;color:var(--color-secondary)}.status-badge.blocked{background:#ef444426;color:var(--color-error)}.status-badge.cancelled{background:#ff980026;color:#ff9800}.no-slots-message{text-align:center;padding:40px 20px;color:var(--color-text-secondary);border-top:2px solid var(--color-border);margin-top:20px}.no-slots-message svg{margin-bottom:12px;opacity:.5}.no-slots-message p{margin:0;font-size:14px}@media (max-width: 768px){.slot-calendar{padding:16px}.calendar-header{margin-bottom:16px}.calendar-month-year{font-size:18px}.calendar-legend{gap:12px;font-size:12px}.calendar-grid{gap:2px}.calendar-day{min-height:50px;padding:4px}.day-number{font-size:12px}.slot-count{font-size:9px}.slots-header{flex-direction:column;align-items:flex-start}.slots-list{grid-template-columns:1fr}}@media (max-width: 480px){.calendar-day{min-height:45px;padding:2px}.day-number{font-size:11px}.calendar-day-header{padding:8px 4px;font-size:10px}.calendar-nav-btn{padding:6px 8px}.calendar-month-year{font-size:16px}.slots-summary{flex-direction:column;gap:8px}}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}textarea.input{resize:vertical;min-height:80px;font-family:inherit}.time-picker{width:100%}.time-picker.disabled{opacity:.6;pointer-events:none}.time-picker-input-wrapper{margin-bottom:12px}.time-picker-input{width:100%;padding:10px 14px;border:2px solid var(--color-border);border-radius:8px;font-size:16px;font-weight:500;text-align:center;background:var(--color-surface);color:var(--color-text-primary);transition:all .2s;font-family:inherit}.time-picker-input:focus{outline:none;border-color:var(--color-primary);background:#0f766e0d}.time-picker-input:disabled{background:#00000005;cursor:not-allowed}.time-picker-input::placeholder{color:var(--color-text-secondary);opacity:.6}.time-picker-container{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;background:var(--color-surface);border:2px solid var(--color-border);border-radius:8px;min-height:200px}.time-selector{display:flex;flex-direction:column;align-items:center;flex:1;max-width:80px;position:relative}.time-selector.period-selector{max-width:70px}.time-scroll-btn{width:100%;padding:8px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;border-radius:4px;flex-shrink:0}.time-scroll-btn:hover:not(:disabled){background:#0f766e1a;color:var(--color-primary)}.time-scroll-btn:disabled{opacity:.3;cursor:not-allowed}.time-scroll-list{flex:1;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;width:100%;max-height:144px;position:relative;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent;padding-top:48px;padding-bottom:48px;scroll-snap-type:y mandatory}.time-scroll-list::-webkit-scrollbar{width:4px}.time-scroll-list::-webkit-scrollbar-track{background:transparent}.time-scroll-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}.time-scroll-list::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.time-scroll-list:before{content:"";position:absolute;top:48px;left:0;right:0;height:48px;background:#0f766e0d;border-radius:4px;pointer-events:none;z-index:0;border:1px solid rgba(15,118,110,.2)}.time-item{height:48px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none;border-radius:4px;margin:0 4px;position:relative;z-index:1;scroll-snap-align:start}.time-item:hover{background:#0f766e0d;color:var(--color-text-primary)}.time-item.selected{color:var(--color-primary);font-weight:600;font-size:20px;background:#0f766e26}.period-item{font-size:16px;font-weight:500}.period-item.selected{font-size:18px}.time-separator{font-size:24px;font-weight:600;color:var(--color-text-primary);padding:0 4px;flex-shrink:0}@media (max-width: 768px){.time-picker-input{font-size:14px;padding:8px 12px}.time-picker-container{min-height:180px;padding:6px;gap:6px}.time-selector{max-width:70px}.time-selector.period-selector{max-width:60px}.time-item{font-size:16px;height:44px}.time-item.selected{font-size:18px}.time-separator{font-size:20px}.time-scroll-list{max-height:132px}}@media (max-width: 480px){.time-picker-input{font-size:14px;padding:8px 10px}.time-picker-container{min-height:160px;padding:4px;gap:4px}.time-selector{max-width:60px}.time-selector.period-selector{max-width:50px}.time-item{font-size:14px;height:40px}.time-item.selected{font-size:16px}.time-separator{font-size:18px}.time-scroll-list{max-height:120px}}.modal-large{max-width:800px;max-height:90vh;overflow-y:auto}.success-message{display:flex;align-items:center;gap:10px;padding:12px 16px;margin-bottom:20px;background:#22c55e1a;border:1px solid #22c55e;border-radius:8px;color:#16a34a;font-size:14px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-completion-bar{position:relative;height:32px;margin-bottom:20px;background:#0000000d;border-radius:16px;overflow:hidden}.completion-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,var(--color-primary),#14b8a6);transition:width .3s ease;border-radius:16px}.completion-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:12px;font-weight:500;color:var(--color-text-primary);z-index:1}.mode-selector{display:flex;gap:12px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--color-border)}.mode-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:2px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.mode-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#0f766e0d}.mode-btn.active{border-color:var(--color-primary);background:#0f766e1a;color:var(--color-primary)}.recurring-slot-form{display:flex;flex-direction:column;gap:24px}.label{display:flex;align-items:center;gap:6px;margin-bottom:8px}.help-icon{color:var(--color-text-secondary);cursor:help;opacity:.6;transition:opacity .2s}.help-icon:hover{opacity:1;color:var(--color-primary)}.input-error{border-color:var(--color-error)!important;background-color:#ef44440d!important}.error-message{display:flex;align-items:center;gap:6px;margin-top:6px;padding:8px 12px;background:#ef44441a;border:1px solid var(--color-error);border-radius:6px;color:var(--color-error);font-size:13px;animation:shake .3s ease}.error-message.submit-error{margin-top:16px;margin-bottom:0}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.success-indicator{display:flex;align-items:center;gap:6px;margin-top:8px;padding:6px 12px;background:#22c55e1a;border-radius:6px;color:#16a34a;font-size:13px;font-weight:500}.helper-text{display:block;margin-top:6px;color:var(--color-text-secondary);font-size:12px}.days-selector{display:flex;gap:8px;flex-wrap:wrap}.day-btn{flex:1;min-width:60px;padding:10px 16px;border:2px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.day-btn:hover{border-color:var(--color-primary);background:#0f766e0d;transform:translateY(-1px)}.day-btn.selected{border-color:var(--color-primary);background:var(--color-primary);color:#fff;box-shadow:0 2px 4px #0f766e33}.duration-selector{display:flex;gap:8px;flex-wrap:wrap}.duration-btn{padding:10px 20px;border:2px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.duration-btn:hover{border-color:var(--color-primary);background:#0f766e0d;transform:translateY(-1px)}.duration-btn.selected{border-color:var(--color-primary);background:var(--color-primary);color:#fff;box-shadow:0 2px 4px #0f766e33}.time-range-group{display:grid;grid-template-columns:1fr 1fr;gap:16px}.time-picker-wrapper{width:100%}.time-picker-wrapper.input-error .time-picker-input{border-color:var(--color-error);background-color:#ef44440d}.time-picker-wrapper.input-error .time-picker-container{border-color:var(--color-error)}.time-range-info{margin-top:8px;padding:8px 12px;background:#0f766e0d;border-radius:6px;font-size:13px;color:var(--color-text-secondary);display:flex;align-items:center;gap:6px}.time-range-info.success{background:#22c55e1a;border:1px solid #22c55e;color:#16a34a}.slots-preview-info{margin-top:12px;padding:12px;background:#0f766e14;border-radius:8px;display:flex;flex-direction:column;gap:4px;align-items:flex-start}.slots-preview-info.success{background:#22c55e1a;border:1px solid #22c55e}.slots-preview-info.warning{background:#ef44441a;border:1px solid var(--color-error)}.slots-preview-info strong{color:var(--color-text-primary);font-size:14px;display:flex;align-items:center;gap:6px}.slots-preview-info small{color:var(--color-text-secondary);font-size:12px;margin-left:22px}.time-slots-container{display:flex;flex-direction:column;gap:12px}.time-slot-row{display:flex;align-items:center;gap:12px}.time-input-group{display:flex;align-items:center;gap:12px;flex:1}.time-separator{color:var(--color-text-secondary);font-weight:500}.btn-remove{padding:8px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-error);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-remove:hover{background:#ef44441a;border-color:var(--color-error)}.btn-add-slot{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:2px dashed var(--color-border);border-radius:8px;background:#0f766e08;color:var(--color-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-add-slot:hover{border-color:var(--color-primary);background:#0f766e14}.weeks-selector{display:flex;align-items:center;gap:12px}.weeks-selector .input{max-width:100px}.weeks-label{font-size:14px;color:var(--color-text-secondary)}.preview-section{padding:20px;background:#0f766e08;border-radius:8px;border:1px solid var(--color-border)}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.preview-header h3{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0;display:flex;align-items:center;gap:8px}.btn-toggle-preview{padding:6px 12px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-text-secondary);font-size:13px;cursor:pointer;transition:all .2s}.btn-toggle-preview:hover{border-color:var(--color-primary);color:var(--color-primary)}.conflict-warning{display:flex;align-items:center;gap:8px;padding:12px;background:#ef44441a;border:1px solid var(--color-error);border-radius:6px;color:var(--color-error);font-size:14px;margin-bottom:16px}.preview-slots{margin-top:16px}.preview-stats{display:flex;gap:16px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--color-border);font-size:13px;flex-wrap:wrap}.stat-item{display:flex;align-items:center;gap:6px;color:var(--color-text-secondary)}.stat-item.success{color:#16a34a}.stat-item.error{color:var(--color-error)}.preview-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.preview-slot-item{display:grid;grid-template-columns:120px 60px 140px 100px auto;gap:12px;align-items:center;padding:10px 12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;font-size:13px;transition:all .2s}.preview-slot-item:hover{box-shadow:0 2px 4px #0000001a}.preview-slot-item.conflict{background:#ef44440d;border-color:var(--color-error)}.preview-date{font-weight:500;color:var(--color-text-primary)}.preview-day{color:var(--color-text-secondary);font-size:12px}.preview-time{color:var(--color-text-primary);font-weight:500}.preview-type{color:var(--color-text-secondary);font-size:12px;text-transform:capitalize}.conflict-icon{color:var(--color-error)}.preview-more{text-align:center;padding:12px;color:var(--color-text-secondary);font-size:13px;font-style:italic}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--color-text-primary)}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary:disabled{background:var(--color-border);color:var(--color-text-secondary)}@media (max-width: 768px){.modal-overlay{align-items:flex-start;padding:0}.modal-large{max-width:100%;width:100%;max-height:100vh;height:100vh;border-radius:0;padding:16px;margin:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-header{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.modal-title{font-size:18px}.modal-close{width:36px;height:36px;font-size:28px}.form-completion-bar{height:28px;margin-bottom:16px}.completion-text{font-size:11px}.success-message{padding:10px 12px;font-size:13px;margin-bottom:16px}.mode-selector{flex-direction:column;gap:8px;margin-bottom:20px;padding-bottom:16px}.mode-btn{padding:14px 16px;font-size:15px}.recurring-slot-form{gap:20px}.form-group{margin-bottom:16px}.label{font-size:13px;margin-bottom:6px}.help-icon{width:16px;height:16px}.form-row{display:flex;flex-direction:column;gap:16px}.days-selector{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.day-btn{min-width:auto;padding:10px 8px;font-size:13px}.duration-selector{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.duration-btn{padding:12px 16px;font-size:14px}.time-range-group{grid-template-columns:1fr;gap:16px}.time-picker-wrapper{width:100%}.time-picker-input-wrapper{margin-bottom:10px}.time-picker-input{padding:12px 14px;font-size:18px;text-align:center}.time-picker-container{flex-direction:row;justify-content:center;align-items:center;gap:4px;padding:8px 4px;flex-wrap:nowrap}.time-selector{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:center}.time-scroll-list{max-height:120px;width:100%}.time-item{padding:8px 4px;font-size:14px;text-align:center}.time-scroll-btn{padding:4px 8px;min-width:32px}.time-separator{padding:0 4px;font-size:18px;font-weight:600;align-self:center}.period-selector{flex:0 0 auto;min-width:60px}.time-range-info{padding:10px 12px;font-size:12px;flex-wrap:wrap}.slots-preview-info{padding:10px 12px}.slots-preview-info strong{font-size:13px}.slots-preview-info small{font-size:11px;margin-left:20px}.weeks-selector{flex-direction:column;align-items:stretch;gap:8px}.weeks-selector .input{max-width:100%;width:100%}.weeks-label{font-size:13px}.helper-text{font-size:11px}.preview-section{padding:16px;margin-top:8px}.preview-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:12px}.preview-header h3{font-size:15px;width:100%}.btn-toggle-preview{width:100%;padding:10px 12px;font-size:13px;text-align:center}.conflict-warning{padding:10px 12px;font-size:13px;flex-wrap:wrap}.preview-stats{flex-direction:column;gap:8px;font-size:12px}.stat-item{font-size:12px}.preview-list{max-height:250px}.preview-slot-item{grid-template-columns:1fr;gap:8px;padding:12px;font-size:12px}.preview-date,.preview-time{font-size:13px;font-weight:600}.preview-day,.preview-type{font-size:11px}.error-message{padding:8px 10px;font-size:12px}.success-indicator{padding:6px 10px;font-size:12px}.checkbox-label{font-size:13px}.modal-actions{flex-direction:column-reverse;gap:10px;margin-top:20px;padding-top:20px}.btn{width:100%;padding:14px 20px;font-size:15px;font-weight:500}.btn-outline{order:2}.btn-primary{order:1}}@media (max-width: 480px){.modal-large{padding:12px}.modal-title{font-size:16px}.form-completion-bar{height:24px;margin-bottom:12px}.completion-text{font-size:10px}.days-selector{grid-template-columns:repeat(3,1fr);gap:6px}.day-btn{padding:10px 6px;font-size:12px}.duration-selector{grid-template-columns:1fr;gap:6px}.duration-btn{padding:12px 14px}.time-picker-container{gap:2px;padding:6px 2px}.time-scroll-list{max-height:100px}.time-item{padding:6px 2px;font-size:13px}.preview-section{padding:12px}.preview-list{max-height:200px}.preview-slot-item{padding:10px}.label{font-size:12px}.helper-text{font-size:10px}.weeks-label{font-size:12px}}@media (max-width: 768px) and (orientation: landscape){.modal-large{max-height:100vh;overflow-y:auto}.time-picker-container{gap:6px}.time-scroll-list{max-height:80px}}.appointments-page{max-width:1400px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;flex-wrap:wrap;gap:16px}.page-header h1{font-size:32px;font-weight:700;color:var(--color-text-primary);margin:0 0 8px}.page-subtitle{font-size:16px;color:var(--color-text-secondary);margin:0}.page-actions{display:flex;gap:12px;flex-wrap:wrap}.tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid var(--color-border)}.tab{padding:12px 24px;background:none;border:none;border-bottom:2px solid transparent;font-size:15px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .2s;margin-bottom:-2px}.date-selector{margin-bottom:24px}@media (max-width: 768px){.page-header{flex-direction:column}.page-actions{width:100%}.page-actions .btn{flex:1}}.program-list{display:grid;gap:24px}.program-card{background:var(--color-surface);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a;transition:box-shadow .2s;border:1px solid var(--color-border)}.program-card:hover{box-shadow:0 2px 6px #00000014,0 4px 12px #0000000f}.program-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--color-border)}.program-name{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 8px}.program-description{font-size:14px;color:var(--color-text-secondary);margin:0;line-height:1.5}.program-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:20px}.detail-row{display:flex;flex-direction:column;gap:4px}.detail-label{font-size:12px;color:var(--color-text-secondary);text-transform:uppercase;font-weight:500}.detail-value{font-size:14px;color:var(--color-text-primary);font-weight:500}.program-metrics{margin-bottom:16px;padding:16px;background:#0f766e0d;border-radius:8px}.metrics-label{font-size:13px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.metrics-tags{display:flex;flex-wrap:wrap;gap:8px}.metric-tag{padding:4px 12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;font-size:12px;color:var(--color-text-primary);text-transform:capitalize}.program-outcomes{margin-bottom:16px;padding:16px;background:#3b82f60d;border-radius:8px;font-size:14px;color:var(--color-text-primary);line-height:1.5}.program-patients{margin-bottom:20px;padding:16px;background:#22c55e0d;border-radius:8px}.program-patients strong{display:block;font-size:13px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.patients-list{display:flex;flex-direction:column;gap:8px}.patient-item{display:flex;align-items:center;justify-content:space-between;gap:8px}.patient-tag{padding:4px 12px;background:var(--color-surface);border:1px solid var(--color-success);border-radius:6px;font-size:12px;color:#15803d;font-weight:500;flex:1}.btn-link{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:12px;padding:4px 8px;text-decoration:underline;transition:color .2s}.btn-link:hover{color:var(--color-secondary)}.program-actions{display:flex;gap:12px;flex-wrap:wrap;padding-top:20px;border-top:1px solid var(--color-border)}@media (max-width: 768px){.program-header{flex-direction:column;gap:12px}.program-details{grid-template-columns:1fr}.program-actions{flex-direction:column}.program-actions .btn{width:100%}}.modal-large{max-width:800px}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;padding:16px;background:#0f766e0d;border-radius:8px;margin-top:8px}.form-hint{font-size:12px;color:var(--color-error);margin-top:8px}.enrollment-content{max-height:60vh;overflow-y:auto;margin-bottom:24px}.enrollment-section{margin-bottom:32px}.enrollment-section h3{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 16px}.patients-list{display:flex;flex-direction:column;gap:12px}.patient-card{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#0f766e08;border-radius:8px;border:1px solid var(--color-border)}.patient-actions{display:flex;gap:8px;align-items:center}.patient-name{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:4px}.patient-details{font-size:13px;color:var(--color-text-secondary);margin-bottom:4px}.patient-history{font-size:12px;color:var(--color-text-primary);margin-top:4px}.trend-visualization{display:flex;flex-direction:column;gap:24px}.trend-controls{display:flex;gap:16px;flex-wrap:wrap}.control-group{flex:1;min-width:200px}.trend-content{display:flex;flex-direction:column;gap:24px}.trend-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.summary-card{background:var(--color-surface);border-radius:8px;padding:16px;border:1px solid var(--color-border)}.summary-label{font-size:12px;color:var(--color-text-secondary);text-transform:uppercase;font-weight:500;margin-bottom:8px;display:block}.summary-value{font-size:20px;font-weight:700;color:var(--color-text-primary);display:flex;align-items:center;gap:8px}.summary-value.positive{color:var(--color-success)}.summary-value.negative,.trend-increasing{color:var(--color-error)}.trend-decreasing{color:var(--color-success)}.trend-stable{color:var(--color-text-secondary)}.chart-section{background:var(--color-surface);border-radius:12px;padding:24px;border:1px solid var(--color-border)}.chart-section h3{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 20px}.simple-chart{width:100%}.chart-container{width:100%;position:relative;margin-bottom:12px}.chart-svg{width:100%;height:100%}.chart-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--color-text-secondary);padding:0 4px}.chart-label{flex:1;text-align:center}.chart-empty{text-align:center;padding:60px 20px;color:var(--color-text-secondary)}.baseline-comparison{background:var(--color-surface);border-radius:12px;padding:24px;border:1px solid var(--color-border)}.baseline-comparison h3{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 20px}.comparison-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.comparison-item{display:flex;flex-direction:column;gap:8px}.comparison-label{font-size:13px;color:var(--color-text-secondary)}.comparison-value{font-size:18px;font-weight:600;color:var(--color-text-primary)}.comparison-value.target{color:var(--color-success)}.loading,.empty-state{text-align:center;padding:40px;color:var(--color-text-secondary)}@media (max-width: 1024px){.trend-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.trend-visualization{gap:16px}.trend-controls{flex-direction:column}.control-group{min-width:100%}.trend-summary{grid-template-columns:1fr}.chart-section,.baseline-comparison{padding:16px}.comparison-values{grid-template-columns:1fr}}@media (max-width: 480px){.summary-card{padding:12px}.summary-value{font-size:18px}.chart-container{height:150px!important}}.ai-health-intelligence{display:flex;flex-direction:column;gap:24px}.intelligence-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px}.intelligence-header h3{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 4px}.header-actions{display:flex;gap:12px;flex-wrap:wrap}.insights-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.summary-card{background:var(--color-surface);border-radius:12px;padding:20px;border:1px solid var(--color-border);display:flex;align-items:center;gap:16px}.summary-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center}.summary-icon.high-priority{background:#ef44441a;color:var(--color-error)}.summary-icon.unread{background:#0f766e1a;color:var(--color-primary)}.summary-icon.total{background:#3b82f61a;color:var(--color-secondary)}.summary-content{flex:1}.summary-value{font-size:24px;font-weight:700;color:var(--color-text-primary);margin-bottom:4px}.summary-label{font-size:13px;color:var(--color-text-secondary)}.filters{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:16px;background:#0f766e08;border-radius:8px;border:1px solid var(--color-border)}.filter-group{display:flex;align-items:center;gap:8px}.filter-group label{font-size:14px;color:var(--color-text-secondary);white-space:nowrap}.filter-group .select{min-width:150px}.insight-card{background:var(--color-surface);border-radius:12px;padding:24px;border:1px solid var(--color-border);transition:all .2s}.insight-card:hover{box-shadow:0 2px 8px #00000014}.insight-card.high{border-left:4px solid var(--color-error);background:#ef444405}.insight-card.medium{border-left:4px solid var(--color-warning);background:#f59e0b05}.insight-card.low{border-left:4px solid var(--color-secondary)}.insight-card.info{border-left:4px solid var(--color-accent)}.insight-card.reviewed{opacity:.7}.insight-title-section{display:flex;align-items:flex-start;gap:12px;flex:1}.insight-title{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 8px}.insight-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.insight-type{font-size:12px;color:var(--color-text-secondary);text-transform:capitalize}.insight-date{font-size:12px;color:var(--color-text-secondary)}.review-badge{padding:4px 12px;background:#ef44441a;color:var(--color-error);border-radius:6px;font-size:12px;font-weight:500}.insight-details{margin:16px 0;padding:16px;background:#0f766e0d;border-radius:8px;font-size:14px;color:var(--color-text-primary)}.insight-details ul{margin:8px 0 0;padding-left:20px}.insight-details li{margin-bottom:4px}.risk-flags{margin:16px 0;padding:16px;background:#ef444414;border-radius:8px}.risk-flags strong{display:block;margin-bottom:8px;font-size:13px;color:var(--color-error)}.flags-list{display:flex;flex-wrap:wrap;gap:8px}.risk-flag{padding:4px 12px;background:var(--color-surface);border:1px solid var(--color-error);border-radius:6px;font-size:12px;color:var(--color-error);font-weight:500}.recommendations{margin:16px 0;padding:16px;background:#5eead414;border-radius:8px}.recommendations strong{display:block;margin-bottom:8px;font-size:13px;color:var(--color-text-primary)}.recommendations ul{margin:0;padding-left:20px;list-style-type:disc}.recommendations li{font-size:14px;color:var(--color-text-primary);line-height:1.6;margin-bottom:6px}.insight-actions{display:flex;justify-content:flex-end;margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border)}.btn-sm{padding:8px 16px;font-size:13px}.reviewed-badge{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#22c55e1a;color:var(--color-success);border-radius:6px;font-size:13px;font-weight:500}.severity-high{color:var(--color-error)}.severity-medium{color:var(--color-warning)}.severity-low{color:var(--color-secondary)}.severity-info{color:var(--color-accent)}@media (max-width: 1024px){.insights-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.ai-health-intelligence{gap:16px}.intelligence-header{flex-direction:column}.intelligence-header h3{font-size:20px}.header-actions{width:100%}.header-actions .btn{flex:1}.insights-summary{grid-template-columns:1fr}.summary-card{padding:16px}.filters{flex-direction:column;align-items:stretch;padding:12px}.filter-group{flex-direction:column;align-items:stretch}.filter-group .select{width:100%}.insight-card{padding:16px}.insight-title{font-size:16px}}@media (max-width: 480px){.intelligence-header h3{font-size:18px}.summary-value{font-size:20px}.insight-card{padding:12px}.insight-title{font-size:15px}.insight-summary{font-size:14px}}.check-in-system{display:flex;flex-direction:column;gap:24px}.check-in-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px}.check-in-header h3{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 4px}.check-in-form-card{background:var(--color-surface);border-radius:12px;padding:24px;border:1px solid var(--color-border);box-shadow:0 2px 8px #0000000f}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.form-header h4{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0}.btn-close{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.btn-close:hover{background:#0000000d;color:var(--color-text-primary)}.metrics-form{margin:24px 0}.metrics-form h5{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0 0 20px}.metric-form-item{margin-bottom:24px;padding:20px;background:#0f766e08;border-radius:8px;border:1px solid var(--color-border)}.metric-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.metric-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--color-text-primary);text-transform:capitalize}.metric-input-group{display:flex;align-items:center;gap:8px;margin-bottom:12px}.metric-input-group .input{flex:1}.metric-input-group .unit{font-size:14px;color:var(--color-text-secondary);min-width:50px}.bp-inputs{display:flex;align-items:center;gap:8px;flex:1}.bp-inputs input{flex:1;max-width:100px}.bp-inputs span{color:var(--color-text-secondary);font-weight:500}.notes-input{margin-top:8px;font-size:13px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid var(--color-border)}.check-in-history{background:var(--color-surface);border-radius:12px;padding:24px;border:1px solid var(--color-border)}.check-in-history h4{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 20px}.check-ins-list{display:flex;flex-direction:column;gap:12px}.check-in-item{display:flex;gap:16px;padding:16px;background:#0f766e08;border-radius:8px;border:1px solid var(--color-border);transition:all .2s}.check-in-item:hover{background:#0f766e0d}.check-in-item.missed{background:#ef44440d;border-color:#ef444433}.check-in-status{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:#0f766e1a;flex-shrink:0}.check-in-status .completed{color:var(--color-success)}.check-in-status .missed{color:var(--color-error)}.check-in-content{flex:1}.check-in-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.check-in-date{font-size:16px;font-weight:600;color:var(--color-text-primary)}.check-in-metrics{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}.metric-preview{display:flex;flex-direction:column;gap:4px;padding:8px 12px;background:var(--color-surface);border-radius:6px;border:1px solid var(--color-border);min-width:120px}.metric-name{font-size:11px;color:var(--color-text-secondary);text-transform:capitalize}.metric-value{font-size:14px;font-weight:600;color:var(--color-text-primary)}.more-metrics{font-size:12px;color:var(--color-text-secondary);font-style:italic;align-self:center}.check-in-time{font-size:12px;color:var(--color-text-secondary);margin-top:8px}@media (max-width: 768px){.check-in-header{flex-direction:column}.check-in-header .btn{width:100%}.bp-inputs{flex-direction:column;align-items:stretch}.bp-inputs input{max-width:100%}.check-in-item,.check-in-metrics{flex-direction:column}.metric-preview{width:100%}}.checkin-calendar{background:var(--color-surface);border-radius:12px;padding:24px;border:1px solid var(--color-border);box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.calendar-nav-btn{background:none;border:1px solid var(--color-border);border-radius:8px;padding:8px 12px;cursor:pointer;color:var(--color-text-primary);display:flex;align-items:center;justify-content:center;transition:all .2s}.calendar-nav-btn:hover{background:#0f766e0d;border-color:var(--color-primary)}.calendar-nav-btn:disabled{opacity:.5;cursor:not-allowed}.calendar-month-year{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0}.calendar-legend{display:flex;gap:20px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--color-border);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-secondary)}.legend-icon{flex-shrink:0}.legend-icon.completed{color:var(--color-success)}.legend-icon.missed{color:var(--color-error)}.legend-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0}.today-dot{background:var(--color-primary);border:2px solid var(--color-surface);box-shadow:0 0 0 2px var(--color-primary)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:24px}.calendar-day-header{padding:12px 8px;text-align:center;font-size:12px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase}.calendar-day{aspect-ratio:1;min-height:50px;padding:8px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;transition:all .2s;position:relative}.calendar-day:hover:not(:disabled){background:#0f766e0d;border-color:var(--color-primary);transform:scale(1.05)}.calendar-day:disabled{opacity:.3;cursor:not-allowed}.calendar-day.other-month{opacity:.3}.calendar-day.today{border-color:var(--color-primary);border-width:2px;background:#0f766e0d}.calendar-day.selected{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.calendar-day.selected .day-number{color:#fff}.calendar-day.has-checkin.completed{background:#22c55e1a;border-color:var(--color-success)}.calendar-day.has-checkin.missed{background:#ef44441a;border-color:var(--color-error)}.day-number{font-size:14px;font-weight:500;color:var(--color-text-primary)}.calendar-day.selected .day-number{color:#fff;font-weight:600}.day-status{display:flex;align-items:center;justify-content:center;margin-top:auto}.status-icon{flex-shrink:0}.status-icon.completed{color:var(--color-success)}.status-icon.missed{color:var(--color-error)}.calendar-day.selected .status-icon{color:#fff}.selected-date-details{border-top:2px solid var(--color-border);padding-top:20px;margin-top:20px}.details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.details-header h4{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0}.status-badge{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;text-transform:capitalize}.status-badge.completed{background:#22c55e26;color:var(--color-success)}.status-badge.missed{background:#ef444426;color:var(--color-error)}.checkin-details{display:flex;flex-direction:column;gap:16px}.details-section{display:flex;flex-direction:column;gap:8px}.details-section strong{font-size:14px;color:var(--color-text-primary);margin-bottom:8px}.checkin-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.metric-item{display:flex;flex-direction:column;gap:4px;padding:12px;background:#0f766e0d;border-radius:8px}.metric-name{font-size:12px;color:var(--color-text-secondary);text-transform:capitalize}.missed-notice{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#ef44441a;border-radius:8px;border:1px solid rgba(239,68,68,.2)}.missed-notice svg{color:var(--color-error);flex-shrink:0;margin-top:2px}.missed-notice p{margin:0;color:var(--color-text-primary);font-size:14px}.frequency-info{font-size:12px;color:var(--color-text-secondary);margin-top:4px}.no-checkin{padding:16px;text-align:center;color:var(--color-text-secondary);font-size:14px;margin:0}@media (max-width: 768px){.checkin-calendar{padding:16px}.calendar-header{margin-bottom:16px}.calendar-month-year{font-size:18px}.calendar-legend{gap:12px;font-size:12px}.calendar-grid{gap:2px}.calendar-day{min-height:40px;padding:4px}.day-number{font-size:12px}.status-icon{width:12px;height:12px}.details-header{flex-direction:column;align-items:flex-start}.checkin-metrics{grid-template-columns:1fr}}@media (max-width: 480px){.calendar-day{min-height:35px;padding:2px}.day-number{font-size:11px}.calendar-day-header{padding:8px 4px;font-size:10px}.calendar-nav-btn{padding:6px 8px}.calendar-month-year{font-size:16px}}.doctor-intervention{display:flex;flex-direction:column;gap:32px}.intervention-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px}.intervention-header h3{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 4px}.care-plan-meta{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--color-text-secondary);text-align:right}.care-section{background:var(--color-surface);border-radius:12px;padding:24px;border:1px solid var(--color-border)}.add-item-form{background:#0f766e08;border-radius:8px;padding:20px;margin-bottom:20px;border:1px solid var(--color-border)}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:16px}.goals-list,.interventions-list{display:flex;flex-direction:column;gap:12px}.goal-card,.intervention-card{display:flex;justify-content:space-between;align-items:flex-start;padding:16px;background:#0f766e08;border-radius:8px;border:1px solid var(--color-border);transition:all .2s}.goal-card:hover,.intervention-card:hover{background:#0f766e0d}.goal-content,.intervention-content{flex:1}.goal-metric{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:12px;text-transform:capitalize}.goal-values{display:flex;gap:24px;flex-wrap:wrap}.goal-target,.goal-current{display:flex;flex-direction:column;gap:4px}.goal-target .label,.goal-current .label{font-size:12px;color:var(--color-text-secondary)}.goal-target .value,.goal-current .value{font-size:16px;font-weight:600;color:var(--color-text-primary)}.goal-actions{display:flex;align-items:center;gap:12px}.btn-icon{background:none;border:1px solid var(--color-border);border-radius:6px;padding:6px;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-icon:hover{border-color:var(--color-primary);color:var(--color-primary);background:#0f766e0d}.edit-form{width:100%;display:flex;flex-direction:column;gap:12px}.intervention-header-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.intervention-description{font-size:15px;color:var(--color-text-primary);line-height:1.6;margin-bottom:8px}.intervention-dates{display:flex;gap:16px;font-size:12px;color:var(--color-text-secondary)}.status-badge{padding:4px 12px;border-radius:6px;font-size:12px;font-weight:500;text-transform:capitalize}.status-badge.active{background:#22c55e26;color:var(--color-success)}.status-badge.completed{background:#3b82f626;color:var(--color-secondary)}.status-badge.paused{background:#f59e0b26;color:var(--color-warning)}.status-badge.discontinued{background:#ef444426;color:var(--color-error)}.review-section{background:var(--color-surface);border-radius:12px;padding:24px;border:1px solid var(--color-border)}.review-card{display:flex;align-items:center;gap:16px}.review-card svg{color:var(--color-primary)}.review-card strong{display:block;font-size:14px;color:var(--color-text-primary);margin-bottom:4px}.review-card p{font-size:16px;color:var(--color-text-secondary);margin:0}.review-card .btn{margin-left:auto}@media (max-width: 768px){.intervention-header{flex-direction:column}.care-plan-meta{text-align:left}.goal-values{flex-direction:column;gap:12px}.intervention-header-row{flex-wrap:wrap}.review-card{flex-direction:column;align-items:flex-start}.review-card .btn{margin-left:0;width:100%}}.patient-engagement{display:flex;flex-direction:column;gap:24px}.engagement-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px}.engagement-header h3{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 4px}.engagement-score-card{background:linear-gradient(135deg,#0f766e1a,#3b82f61a);border-radius:12px;padding:32px;border:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px}.score-content{display:flex;align-items:center;gap:32px}.score-value{display:flex;flex-direction:column;align-items:center}.score-number{font-size:64px;font-weight:700;color:var(--color-primary);line-height:1}.score-label{font-size:14px;color:var(--color-text-secondary);margin-top:8px}.score-level{display:flex;align-items:center;gap:8px}.level-text{font-size:18px;font-weight:600}.level-success{color:var(--color-success)}.level-info{color:var(--color-secondary)}.level-warning{color:var(--color-warning)}.level-error{color:var(--color-error)}.score-breakdown{display:flex;gap:32px;flex-wrap:wrap}.breakdown-item{display:flex;flex-direction:column;gap:4px}.breakdown-label{font-size:12px;color:var(--color-text-secondary)}.breakdown-value{font-size:20px;font-weight:600;color:var(--color-text-primary)}.engagement-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.metric-card{background:var(--color-surface);border-radius:12px;padding:20px;border:1px solid var(--color-border);display:flex;align-items:center;gap:16px}.metric-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center}.metric-icon.completed{background:#22c55e1a;color:var(--color-success)}.metric-icon.missed{background:#ef44441a;color:var(--color-error)}.metric-icon.adherence{background:#0f766e1a;color:var(--color-primary)}.metric-icon.time{background:#3b82f61a;color:var(--color-secondary)}.metric-info{flex:1}.metric-value{font-size:24px;font-weight:700;color:var(--color-text-primary);margin-bottom:4px}.metric-label{font-size:13px;color:var(--color-text-secondary)}.reminders-section{background:var(--color-surface);border-radius:12px;padding:24px;border:1px solid var(--color-border)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.section-header h4{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0}.reminder-form{background:#0f766e08;border-radius:8px;padding:20px;margin-bottom:20px;border:1px solid var(--color-border)}.reminders-list{display:flex;flex-direction:column;gap:12px}.reminder-item{display:flex;gap:16px;padding:16px;background:#0f766e08;border-radius:8px;border:1px solid var(--color-border)}.reminder-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:#0f766e1a;flex-shrink:0}.reminder-icon .sent{color:var(--color-success)}.reminder-icon .pending{color:var(--color-warning)}.reminder-content{flex:1}.reminder-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.reminder-type{font-size:14px;font-weight:600;color:var(--color-text-primary);text-transform:capitalize}.reminder-message{font-size:14px;color:var(--color-text-primary);line-height:1.5;margin-bottom:8px}.reminder-meta{display:flex;gap:16px;font-size:12px;color:var(--color-text-secondary)}.reminder-actions{display:flex;align-items:center}.progress-summary{background:var(--color-surface);border-radius:12px;padding:24px;border:1px solid var(--color-border)}.progress-summary h4{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 20px}.progress-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.progress-item{display:flex;flex-direction:column;gap:4px}.progress-label{font-size:12px;color:var(--color-text-secondary);text-transform:uppercase}.progress-value{font-size:16px;font-weight:600;color:var(--color-text-primary)}.capitalize{text-transform:capitalize}.empty-state p{font-size:14px;margin:0}@media (max-width: 768px){.engagement-header{flex-direction:column}.engagement-header .btn{width:100%}.engagement-score-card{flex-direction:column;text-align:center}.score-content{flex-direction:column;gap:16px}.score-breakdown{justify-content:center}.engagement-metrics{grid-template-columns:1fr}.reminder-item{flex-direction:column}.reminder-actions,.reminder-actions .btn{width:100%}.progress-details{grid-template-columns:1fr}}.patient-monitoring-dashboard{display:flex;flex-direction:column;gap:24px}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;flex-wrap:wrap;gap:16px}.dashboard-header h2{font-size:28px;font-weight:700;color:var(--color-text-primary);margin:0 0 4px}.subtitle{font-size:16px;color:var(--color-text-secondary);margin:0}.header-stats{display:flex;gap:12px;flex-wrap:wrap}.stat-badge{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#0f766e14;border-radius:8px;font-size:14px;font-weight:500;color:var(--color-text-primary)}.tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid var(--color-border);flex-wrap:wrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:none;border:none;border-bottom:2px solid transparent;font-size:14px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .2s;margin-bottom:-2px}.tab:hover{color:var(--color-primary)}.tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.alert-banner{display:flex;align-items:center;gap:12px;padding:16px 20px;border-radius:8px;margin-bottom:24px}.alert-banner.alert-high{background:#ef44441a;border:1px solid var(--color-error);color:var(--color-error)}.alert-banner strong{display:block;margin-bottom:4px}.alert-banner p{margin:0;font-size:13px;opacity:.9}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:32px}.metric-card{background:var(--color-surface);border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a;border:1px solid var(--color-border)}.metric-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.metric-label{font-size:13px;color:var(--color-text-secondary);text-transform:uppercase;font-weight:500}.metric-value{font-size:24px;font-weight:700;color:var(--color-text-primary)}.metric-value.high-risk{color:var(--color-error)}.metric-value.medium-risk{color:var(--color-warning)}.metric-value.low-risk{color:var(--color-success)}.metric-details{display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--color-text-secondary)}.metric-details .positive{color:var(--color-success);font-weight:500}.metric-details .warning{color:var(--color-warning);font-weight:500}.metric-details .negative{color:var(--color-error);font-weight:500}.progress-bar{width:100%;height:8px;background:#0000000d;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:var(--color-primary);transition:width .3s}.comparison-section{margin-bottom:32px}.comparison-section h3{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 20px}.comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.comparison-card{background:var(--color-surface);border-radius:8px;padding:16px;border:1px solid var(--color-border)}.comparison-metric-name{font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:12px;text-transform:capitalize}.comparison-values{display:flex;justify-content:space-between;gap:16px}.baseline-value,.current-value{display:flex;flex-direction:column;gap:4px}.baseline-value .label,.current-value .label{font-size:11px;color:var(--color-text-secondary);text-transform:uppercase}.baseline-value .value,.current-value .value{font-size:16px;font-weight:600;color:var(--color-text-primary)}.value-with-trend{display:flex;align-items:center;gap:6px}.trend-improving{color:var(--color-success)}.trend-declining{color:var(--color-error)}.activity-section{margin-top:32px}.activity-section h3{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 16px}.activity-list{display:flex;flex-direction:column;gap:12px}.activity-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--color-surface);border-radius:8px;border:1px solid var(--color-border)}.activity-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;background:#0f766e14}.activity-icon .completed{color:var(--color-success)}.activity-icon .missed{color:var(--color-error)}.activity-content{flex:1}.activity-title{font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:4px}.activity-time{font-size:12px;color:var(--color-text-secondary)}.empty-state{text-align:center;padding:20px;color:var(--color-text-secondary);font-size:14px}@media (max-width: 1024px){.metrics-grid,.comparison-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.dashboard-header{flex-direction:column}.dashboard-header h2{font-size:24px}.header-stats{width:100%}.stat-badge{flex:1;min-width:120px}.tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:4px}.tabs::-webkit-scrollbar{height:4px}.tabs::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}.tab{white-space:nowrap;font-size:13px;padding:10px 16px}.metrics-grid,.comparison-grid{grid-template-columns:1fr}.alert-banner{flex-direction:column;align-items:flex-start;gap:8px}.activity-item{flex-direction:column;align-items:flex-start}}@media (max-width: 480px){.dashboard-header h2{font-size:20px}.subtitle{font-size:14px}.stat-badge{font-size:12px;padding:6px 12px}.tab{font-size:12px;padding:8px 12px}.metric-card{padding:16px}.metric-value{font-size:20px}.comparison-card{padding:12px}}.programs-page{max-width:1400px}.continuous-care-page{display:flex;flex-direction:column;gap:24px}.filters-section{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:8px}.search-box{flex:1;min-width:250px;position:relative;display:flex;align-items:center}.search-box svg{position:absolute;left:12px;color:var(--color-text-secondary);pointer-events:none}.search-box .input{padding-left:40px}.filter-select{min-width:200px}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:var(--color-surface);border-radius:12px;padding:20px;border:1px solid var(--color-border);display:flex;align-items:center;gap:16px;box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a}.stat-icon{width:48px;height:48px;border-radius:10px;background:#0f766e1a;color:var(--color-primary);display:flex;align-items:center;justify-content:center}.stat-content{flex:1}.stat-value{font-size:24px;font-weight:700;color:var(--color-text-primary);margin-bottom:4px}.stat-label{font-size:13px;color:var(--color-text-secondary)}.patients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.patient-card{background:var(--color-surface);border-radius:12px;padding:20px;border:1px solid var(--color-border);box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a;transition:all .2s;display:flex;flex-direction:column;gap:16px}.patient-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.patient-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.patient-info{flex:1}.patient-name{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 4px}.patient-program{font-size:14px;color:var(--color-text-secondary);margin:0}.risk-badge{padding:4px 12px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap}.risk-badge.high{background:#ef444426;color:var(--color-error)}.patient-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px;background:#0f766e08;border-radius:8px}.metric-item{display:flex;flex-direction:column;gap:4px;text-align:center}.metric-label{font-size:11px;color:var(--color-text-secondary);text-transform:uppercase}.metric-value{font-size:16px;font-weight:600;color:var(--color-text-primary)}.metric-value.high{color:var(--color-error)}.metric-value.medium{color:var(--color-warning)}.metric-value.low,.metric-value.good{color:var(--color-success)}.metric-value.poor{color:var(--color-error)}.patient-actions{display:flex;gap:8px}.patient-actions .btn{flex:1}.empty-state{text-align:center;padding:60px 20px;color:var(--color-text-secondary)}.empty-state svg{margin-bottom:16px;opacity:.5}.empty-state p{font-size:16px;margin:0 0 8px}.empty-subtitle{font-size:14px;opacity:.8}@media (max-width: 1024px){.patients-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.continuous-care-page{gap:16px}.page-header h1{font-size:24px}.filters-section{flex-direction:column}.search-box,.filter-select{width:100%}.stats-cards,.patients-grid{grid-template-columns:1fr}.patient-card{padding:16px}.patient-name{font-size:16px}.patient-metrics{grid-template-columns:1fr;gap:8px}.patient-actions .btn{width:100%}}@media (max-width: 480px){.page-header h1{font-size:20px}.page-subtitle{font-size:13px}.stat-card{padding:16px}.stat-value{font-size:20px}.patient-card{padding:12px}.patient-name{font-size:15px}.metric-value{font-size:14px}}.pre-consultation-view{display:flex;flex-direction:column;gap:24px}.view-header{margin-bottom:8px}.view-header h2{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 8px}.pre-consultation-layout{display:grid;grid-template-columns:350px 1fr;gap:24px}.appointments-panel,.insights-panel{background:var(--color-surface);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a;border:1px solid var(--color-border)}.appointments-panel h3,.insights-panel h3{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 20px}.appointments-list{display:flex;flex-direction:column;gap:12px}.appointment-item{padding:16px;border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s;background:var(--color-surface)}.appointment-item:hover{border-color:var(--color-primary);background:#0f766e0d}.appointment-item.active{border-color:var(--color-primary);background:#0f766e14}.appointment-time{font-size:14px;font-weight:600;color:var(--color-primary);margin-bottom:4px}.appointment-patient{font-size:16px;font-weight:500;color:var(--color-text-primary);margin-bottom:4px}.appointment-type{font-size:12px;color:var(--color-text-secondary);text-transform:capitalize}.patient-info,.appointment-info{font-size:14px;color:var(--color-text-secondary);margin:4px 0}.insight-card{background:#5eead40d;border-radius:8px;padding:20px;margin-bottom:16px;border-left:4px solid var(--color-accent)}.insight-header{margin-bottom:12px}.insight-type{font-size:12px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase}.insight-summary{font-size:15px;color:var(--color-text-primary);line-height:1.6;margin-bottom:16px}.insight-highlights,.insight-suggestions{margin-top:16px;padding:12px;background:var(--color-surface);border-radius:6px}.insight-highlights strong,.insight-suggestions strong{display:block;font-size:13px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.insight-highlights li,.insight-suggestions li{font-size:14px;color:var(--color-text-primary);line-height:1.6;margin-bottom:6px}@media (max-width: 1024px){.pre-consultation-layout{grid-template-columns:1fr}}.monitoring-view{display:flex;flex-direction:column;gap:24px}.insights-header{margin-bottom:8px}.insights-header h2{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 8px}.subtitle{font-size:14px;color:var(--color-text-secondary);margin:0}.insights-list{display:flex;flex-direction:column;gap:20px}.insight-card{background:var(--color-surface);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a;border:1px solid var(--color-border);border-left:4px solid var(--color-accent)}.insight-card.insight-risk{border-left-color:var(--color-error);background:#ef44440d}.insight-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.insight-meta{display:flex;flex-direction:column;gap:4px}.insight-type{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase}.insight-date{font-size:13px;color:#9ca3af}.insight-summary{font-size:15px;color:#374151;line-height:1.6;margin-bottom:16px}.insight-highlights,.insight-risk-flags,.insight-suggestions{margin-top:16px;padding:16px;background:#f9fafb;border-radius:8px}.insight-highlights strong,.insight-risk-flags strong,.insight-suggestions strong{display:block;font-size:13px;font-weight:600;color:#374151;margin-bottom:12px}.insight-highlights ul,.insight-suggestions ul{margin:0;padding-left:20px;list-style-type:disc}.insight-highlights li,.insight-suggestions li{font-size:14px;color:#374151;line-height:1.6;margin-bottom:8px}.insight-risk-flags{background:#fee2e2}.risk-flags-list{display:flex;flex-wrap:wrap;gap:8px}.visit-summary-view,.summaries-list{display:flex;flex-direction:column;gap:24px}.summary-card{background:var(--color-surface);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a;border:1px solid var(--color-border)}.summary-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--color-border)}.summary-header h3{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0 0 4px}.summary-date{font-size:14px;color:var(--color-text-secondary);margin:0}.soap-display{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.soap-section{padding:16px;background:#0f766e0d;border-radius:8px;border-left:4px solid var(--color-primary)}.soap-section h4{font-size:14px;font-weight:600;color:var(--color-primary);margin:0 0 8px;text-transform:uppercase}.soap-section p{font-size:14px;color:var(--color-text-primary);line-height:1.6;margin:0}.follow-up-actions{padding:16px;background:#3b82f60d;border-radius:8px;border-left:4px solid var(--color-secondary)}.follow-up-actions h4{font-size:14px;font-weight:600;color:var(--color-text-primary);margin:0 0 12px}.follow-up-actions ul{margin:0;padding-left:20px;list-style-type:disc}.follow-up-actions li{font-size:14px;color:var(--color-text-primary);line-height:1.6;margin-bottom:6px}.empty-state{text-align:center;padding:40px 20px;color:var(--color-text-secondary);font-size:14px}@media (max-width: 768px){.soap-display{grid-template-columns:1fr}}.consultation-assistant{display:flex;flex-direction:column;gap:24px}.consultation-layout{display:grid;grid-template-columns:350px 1fr;gap:24px}.consultation-panel{background:var(--color-surface);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a;border:1px solid var(--color-border)}.patient-header{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--color-border)}.patient-header h3{font-size:20px;margin:0 0 8px}.ai-suggestions-card{background:#5eead414;border-radius:8px;padding:20px;margin-bottom:24px;border-left:4px solid var(--color-accent)}.ai-suggestions-card h4{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0 0 16px}.suggestions-content{display:flex;flex-direction:column;gap:16px}.suggestion-section{font-size:14px;color:var(--color-text-primary)}.suggestion-section strong{display:block;margin-bottom:8px;color:var(--color-text-primary)}.suggestion-section ul{margin:0;padding-left:20px;list-style-type:disc}.suggestion-section li{margin-bottom:6px;line-height:1.5}.soap-notes h4{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 20px}.soap-form{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.summary-actions{display:flex;justify-content:flex-end;padding-top:20px;border-top:1px solid var(--color-border)}@media (max-width: 1024px){.consultation-layout{grid-template-columns:1fr}}.ai-assistant-page{max-width:1400px}.loading{text-align:center;padding:40px;color:var(--color-text-secondary)}.app{min-height:100vh;background-color:var(--color-bg)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.card{background:var(--color-surface);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000f,0 2px 6px #0000000a;margin-bottom:24px;border:1px solid var(--color-border)}.btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{background-color:#0d5d56}.btn-secondary{background-color:var(--color-secondary);color:#fff}.btn-secondary:hover{background-color:#2563eb}.btn-danger{background-color:var(--color-error);color:#fff}.btn-danger:hover{background-color:#dc2626}.btn-success{background-color:var(--color-success);color:#fff}.btn-success:hover{background-color:#16a34a}.btn-outline{background-color:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary)}.btn-outline:hover{background-color:#0f766e0d;border-color:var(--color-primary);color:var(--color-primary)}.btn-sm{padding:6px 12px;font-size:12px}.input{width:100%;padding:10px 14px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;transition:border-color .2s;background-color:var(--color-surface);color:var(--color-text-primary)}.input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0f766e1a}.select{width:100%;padding:10px 14px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;background-color:var(--color-surface);cursor:pointer;color:var(--color-text-primary)}.select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0f766e1a}.label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:var(--color-text-primary)}.badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.badge-success{background-color:#22c55e26;color:#15803d}.badge-warning{background-color:#f59e0b26;color:#d97706}.badge-danger{background-color:#ef444426;color:#dc2626}.badge-info{background-color:#3b82f626;color:#2563eb}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0003;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--color-surface);border-radius:12px;padding:24px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 12px #0000001a,0 8px 24px #00000014;border:1px solid var(--color-border)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-title{font-size:20px;font-weight:600;color:var(--color-text-primary)}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--color-text-secondary);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px}.modal-close:hover{background-color:#0000000d}.form-group{margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.doctor-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--color-bg);padding:20px}.doctor-login-container{max-width:400px;width:100%}.doctor-login-card{padding:32px}.doctor-login-header{margin-bottom:24px}.doctor-login-title{font-size:24px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.doctor-login-subtitle{font-size:14px;color:var(--color-text-secondary);margin-top:8px}.doctor-login-error{margin-bottom:16px;padding:12px 16px;border-radius:8px;border:1px solid rgba(239,68,68,.3);background-color:#ef44441a;color:var(--color-error);font-size:14px}.doctor-login-form{display:flex;flex-direction:column;gap:20px}.doctor-login-field{margin-top:6px}.doctor-login-submit-btn{width:100%;margin-top:8px}.doctor-login-footer{text-align:center;font-size:14px;color:var(--color-text-secondary);margin-top:8px}.doctor-login-link{color:var(--color-primary);text-decoration:none;font-weight:500}.doctor-login-link:hover{text-decoration:underline}@media (max-width: 480px){.doctor-login-page{padding:16px}.doctor-login-card{padding:24px}}.doctor-signup-page{min-height:100vh;background-color:var(--color-bg);padding:40px 20px}.doctor-signup-container{max-width:700px;margin:0 auto}.doctor-signup-card{padding:40px}.doctor-signup-header{margin-bottom:32px}.doctor-signup-title{font-size:28px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.doctor-signup-subtitle{font-size:14px;color:var(--color-text-secondary);margin-top:8px}.doctor-signup-error{margin-bottom:24px;padding:12px 16px;border-radius:8px;border:1px solid rgba(239,68,68,.3);background-color:#ef44441a;color:var(--color-error);font-size:14px}.doctor-signup-form{display:flex;flex-direction:column;gap:24px}.doctor-signup-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.doctor-signup-field{margin-top:6px}.doctor-signup-input-error{border-color:var(--color-error)!important}.doctor-signup-error-message{margin-top:6px;font-size:12px;color:var(--color-error)}.doctor-signup-hint{margin-top:6px;font-size:12px;color:var(--color-text-secondary)}.doctor-signup-password-wrapper{position:relative}.doctor-signup-password-input{padding-right:48px}.doctor-signup-password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--color-text-secondary);padding:4px}.doctor-signup-submit-btn{width:100%;padding:14px;font-size:16px;font-weight:600;margin-top:8px}.doctor-signup-footer{text-align:center;font-size:14px;color:var(--color-text-secondary);margin-top:8px}.doctor-signup-link{color:var(--color-primary);text-decoration:none;font-weight:500}.doctor-signup-link:hover{text-decoration:underline}.doctor-signup-recaptcha{display:none}@media (max-width: 768px){.doctor-signup-form-row{grid-template-columns:1fr}.doctor-signup-page{padding:20px 16px}.doctor-signup-card{padding:24px}}.doctor-verify-otp-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--color-bg);padding:20px}.doctor-verify-otp-container{max-width:400px;width:100%}.doctor-verify-otp-card{padding:32px}.doctor-verify-otp-header{margin-bottom:24px}.doctor-verify-otp-title{font-size:24px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.doctor-verify-otp-title-small{font-size:20px;font-weight:600;color:var(--color-text-primary);margin-bottom:12px}.doctor-verify-otp-subtitle{font-size:14px;color:var(--color-text-secondary);margin-top:8px}.doctor-verify-otp-subtitle-small{font-size:14px;color:var(--color-text-secondary);margin-bottom:20px}.doctor-verify-otp-mobile{font-weight:500}.doctor-verify-otp-error{margin-bottom:16px;padding:12px 16px;border-radius:8px;border:1px solid rgba(239,68,68,.3);background-color:#ef44441a;color:var(--color-error);font-size:14px}.doctor-verify-otp-form{display:flex;flex-direction:column;gap:20px}.doctor-verify-otp-input{margin-top:6px;text-align:center;letter-spacing:8px;font-size:18px;font-weight:600}.doctor-verify-otp-submit-btn{width:100%}.doctor-verify-otp-actions{display:flex;gap:12px;flex-wrap:wrap}.doctor-verify-otp-action-link{flex:1;min-width:120px;text-align:center;text-decoration:none}@media (max-width: 480px){.doctor-verify-otp-page{padding:16px}.doctor-verify-otp-card{padding:24px}}.doctor-profile-page{min-height:100vh;background-color:var(--color-bg);padding:40px 20px}.doctor-profile-container{max-width:700px;margin:0 auto;width:100%;box-sizing:border-box}.doctor-profile-card{padding:40px}.doctor-profile-header{margin-bottom:32px}.doctor-profile-title{font-size:28px!important;font-weight:600!important;color:var(--color-text-primary)!important;margin-bottom:8px!important;margin-top:0!important;line-height:1.2!important}.doctor-profile-subtitle{font-size:14px!important;color:var(--color-text-secondary)!important;margin-top:8px!important;margin-bottom:0!important;line-height:1.5!important}.doctor-profile-error{margin-bottom:24px;padding:12px 16px;border-radius:8px;border:1px solid rgba(239,68,68,.3);background-color:#ef44441a;color:var(--color-error);font-size:14px}.doctor-profile-form{display:flex;flex-direction:column;gap:24px}.doctor-profile-form>div:not(.doctor-profile-form-row){display:flex;flex-direction:column}.doctor-profile-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.doctor-profile-form-row>div{display:flex;flex-direction:column}.doctor-profile-field{margin-top:6px}.doctor-profile-input-error{border-color:var(--color-error)!important}.doctor-profile-error-message{margin-top:6px;font-size:12px;color:var(--color-error)}.doctor-profile-hint{margin-top:6px;font-size:12px;color:var(--color-text-secondary)}.doctor-profile-submit-btn{width:100%;padding:14px;font-size:16px;font-weight:600;margin-top:8px}select.input{background-color:var(--color-surface);cursor:pointer}select.input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0f766e1a}@media (max-width: 768px){.doctor-profile-form-row{grid-template-columns:1fr}.doctor-profile-page{padding:20px 16px}.doctor-profile-card{padding:24px}}.admin-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f766e,#3b82f6);padding:2rem}.admin-login-container{width:100%;max-width:450px}.admin-login-card{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 10px 25px #0000001a}.admin-login-header{text-align:center;margin-bottom:2rem}.admin-login-title{font-size:2rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}.admin-login-subtitle{color:#64748b;font-size:.95rem;margin:0}.admin-login-error{background:#fee2e2;color:#ef4444;padding:.75rem 1rem;border-radius:6px;margin-bottom:1.5rem;font-size:.9rem}.admin-login-form{display:flex;flex-direction:column;gap:1.5rem}.admin-login-field{width:100%;padding:.75rem 1rem;border:1px solid #E2E8F0;border-radius:6px;font-size:1rem;transition:border-color .2s}.admin-login-field:focus{outline:none;border-color:#0f766e}.admin-login-submit-btn{width:100%;padding:.875rem;font-size:1rem;font-weight:600;border-radius:6px;margin-top:.5rem}.admin-login-submit-btn:disabled{opacity:.6;cursor:not-allowed}.admin-login-footer{text-align:center;margin-top:1.5rem;color:#64748b;font-size:.9rem}.admin-login-link{color:#0f766e;text-decoration:none;font-weight:600}.admin-login-link:hover{text-decoration:underline}.admin-signup-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f766e,#3b82f6);padding:2rem}.admin-signup-container{width:100%;max-width:500px}.admin-signup-card{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 10px 25px #0000001a}.admin-signup-header{text-align:center;margin-bottom:2rem}.admin-signup-title{font-size:2rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}.admin-signup-subtitle{color:#64748b;font-size:.95rem;margin:0}.admin-signup-error{background:#fee2e2;color:#ef4444;padding:.75rem 1rem;border-radius:6px;margin-bottom:1.5rem;font-size:.9rem}.admin-signup-form{display:flex;flex-direction:column;gap:1.25rem}.admin-signup-field{width:100%;padding:.75rem 1rem;border:1px solid #E2E8F0;border-radius:6px;font-size:1rem;transition:border-color .2s}.admin-signup-field:focus{outline:none;border-color:#0f766e}.admin-signup-field.error{border-color:#ef4444}.field-error{display:block;color:#ef4444;font-size:.85rem;margin-top:.25rem}.admin-signup-submit-btn{width:100%;padding:.875rem;font-size:1rem;font-weight:600;border-radius:6px;margin-top:.5rem}.admin-signup-submit-btn:disabled{opacity:.6;cursor:not-allowed}.admin-signup-footer{text-align:center;margin-top:1.5rem;color:#64748b;font-size:.9rem}.admin-signup-link{color:#0f766e;text-decoration:none;font-weight:600}.admin-signup-link:hover{text-decoration:underline}.admin-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.admin-dashboard-header{margin-bottom:2rem}.admin-dashboard-header h1{font-size:2rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}.admin-dashboard-subtitle{color:#64748b;font-size:1rem;margin:0}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.admin-stat-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;display:flex;align-items:center;gap:1.25rem;transition:transform .2s,box-shadow .2s}.admin-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.admin-stat-icon{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-stat-content{flex:1}.admin-stat-value{font-size:2rem;font-weight:700;color:#0f172a;margin-bottom:.25rem}.admin-stat-label{font-size:.95rem;color:#64748b;font-weight:500}.admin-stat-sublabel{font-size:.85rem;color:#94a3b8;margin-top:.25rem}.admin-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem}.admin-dashboard-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.admin-card-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #E2E8F0}.admin-card-header h2{font-size:1.25rem;font-weight:600;color:#0f172a;margin:0}.admin-quick-actions{display:flex;flex-direction:column;gap:.75rem}.admin-action-item{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:8px;background:#f8fafc;color:#0f172a;text-decoration:none;transition:background-color .2s;font-weight:500}.admin-action-item:hover{background:#e2e8f0}.admin-status-list{display:flex;flex-direction:column;gap:1.25rem}.admin-status-item{display:flex;flex-direction:column;gap:.5rem}.admin-status-info{display:flex;justify-content:space-between;align-items:center}.admin-status-label{font-size:.95rem;color:#64748b;font-weight:500}.admin-status-value{font-size:.95rem;color:#0f172a;font-weight:600}.admin-status-bar{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.admin-status-fill{height:100%;background:linear-gradient(90deg,#0f766e,#3b82f6);border-radius:4px;transition:width .3s ease}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem;color:#64748b}.error-state{color:#ef4444}@media (max-width: 768px){.admin-dashboard{padding:1rem}.admin-stats-grid,.admin-dashboard-grid{grid-template-columns:1fr}}.admin-doctors-page{padding:2rem;max-width:1400px;margin:0 auto}.admin-doctors-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.admin-doctors-header h1{font-size:2rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}.admin-doctors-subtitle{color:#64748b;font-size:1rem;margin:0}.admin-doctors-filters{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.admin-search-box{display:flex;align-items:center;gap:.75rem;background:#fff;padding:.75rem 1rem;border-radius:8px;box-shadow:0 1px 3px #0000001a}.search-icon{color:#64748b}.admin-search-input{flex:1;border:none;outline:none;font-size:1rem;color:#0f172a}.admin-filter-group{display:flex;align-items:center;gap:.75rem}.admin-filter-select{padding:.5rem 1rem;border:1px solid #E2E8F0;border-radius:6px;font-size:.95rem;background:#fff;color:#0f172a;cursor:pointer}.admin-doctors-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.admin-doctors-table{width:100%;border-collapse:collapse}.admin-doctors-table thead{background:#f8fafc}.admin-doctors-table th{padding:1rem;text-align:left;font-weight:600;color:#0f172a;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.admin-doctors-table td{padding:1rem;border-top:1px solid #E2E8F0;color:#0f172a}.admin-doctors-table tbody tr:hover{background:#f8fafc}.admin-action-buttons{display:flex;gap:.5rem}.btn-icon{padding:.5rem;border:none;background:transparent;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#64748b;transition:all .2s}.btn-icon:hover{background:#f8fafc;color:#0f172a}.btn-icon.btn-success:hover{background:#d1fae5;color:#059669}.btn-icon.btn-danger:hover{background:#fee2e2;color:#dc2626}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.badge-warning{background:#fef3c7;color:#d97706}.badge-success{background:#d1fae5;color:#059669}.badge-danger{background:#fee2e2;color:#dc2626}.badge-info{background:#dbeafe;color:#2563eb}.admin-empty-state{text-align:center;padding:3rem;color:#64748b}.admin-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;padding:1rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.admin-error-message{background:#fee2e2;color:#dc2626;padding:1rem;border-radius:8px;margin-bottom:1rem}.admin-loading{text-align:center;padding:3rem;color:#64748b}@media (max-width: 768px){.admin-doctors-page{padding:1rem}.admin-doctors-header{flex-direction:column;gap:1rem}.admin-doctors-table-container{overflow-x:auto}.admin-filter-group{flex-wrap:wrap}}.admin-doctor-details-page{padding:2rem;max-width:1400px;margin:0 auto}.admin-back-button{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.5rem 1rem;background:transparent;border:1px solid #E2E8F0;border-radius:6px;color:#0f172a;cursor:pointer;font-size:.95rem;transition:all .2s}.admin-back-button:hover{background:#f8fafc;border-color:#0f766e;color:#0f766e}.admin-doctor-details-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.admin-doctor-details-header h1{font-size:2rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}.admin-doctor-meta{display:flex;gap:.5rem}.admin-doctor-actions{display:flex;gap:.75rem}.admin-doctor-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.admin-doctor-details-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.admin-doctor-details-card h2{font-size:1.25rem;font-weight:600;color:#0f172a;margin:0 0 1.5rem;padding-bottom:1rem;border-bottom:1px solid #E2E8F0}.admin-detail-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 0;border-bottom:1px solid #F1F5F9}.admin-detail-item:last-child{border-bottom:none}.admin-detail-item svg{color:#64748b;margin-top:.25rem}.admin-detail-label{font-size:.85rem;color:#64748b;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.5px}.admin-detail-value{font-size:1rem;color:#0f172a;font-weight:500}.admin-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.admin-stat-item{padding:1rem;background:#f8fafc;border-radius:8px}.admin-stat-label{font-size:.85rem;color:#64748b;margin-bottom:.5rem}.admin-stat-value{font-size:1.5rem;font-weight:700;color:#0f172a}.admin-appointments-card{grid-column:1 / -1}.admin-appointments-list{display:flex;flex-direction:column;gap:.75rem}.admin-appointment-item{padding:1rem;background:#f8fafc;border-radius:8px;display:flex;justify-content:space-between;align-items:center}.admin-appointment-date{font-weight:600;color:#0f172a;margin-bottom:.25rem}.admin-appointment-status{font-size:.85rem;color:#64748b}.admin-empty{text-align:center;color:#64748b;padding:2rem}@media (max-width: 768px){.admin-doctor-details-page{padding:1rem}.admin-doctor-details-header{flex-direction:column;gap:1rem}.admin-doctor-details-grid{grid-template-columns:1fr}}.admin-patients-page{padding:2rem;max-width:1400px;margin:0 auto}.admin-patients-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.admin-patients-header h1{font-size:2rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}.admin-patients-subtitle{color:#64748b;font-size:1rem;margin:0}.admin-patients-filters{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.admin-patients-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.admin-patients-table{width:100%;border-collapse:collapse}.admin-patients-table thead{background:#f8fafc}.admin-patients-table th{padding:1rem;text-align:left;font-weight:600;color:#0f172a;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.admin-patients-table td{padding:1rem;border-top:1px solid #E2E8F0;color:#0f172a}.admin-patients-table tbody tr:hover{background:#f8fafc}@media (max-width: 768px){.admin-patients-page{padding:1rem}.admin-patients-header{flex-direction:column;gap:1rem}.admin-patients-table-container{overflow-x:auto}}.admin-analytics-page{padding:2rem;max-width:1400px;margin:0 auto}.admin-analytics-header{margin-bottom:2rem}.admin-analytics-header h1{font-size:2rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}.admin-analytics-subtitle{color:#64748b;font-size:1rem;margin:0}.admin-analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem}.admin-analytics-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.admin-analytics-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #E2E8F0}.admin-analytics-card-header h2{font-size:1.25rem;font-weight:600;color:#0f172a;margin:0}.admin-analytics-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.admin-analytics-stat{padding:1rem;background:#f8fafc;border-radius:8px}.admin-analytics-stat-label{font-size:.85rem;color:#64748b;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.admin-analytics-stat-value{font-size:1.75rem;font-weight:700;color:#0f172a}.admin-error{background:#fee2e2;color:#dc2626;padding:1rem;border-radius:8px;text-align:center}@media (max-width: 768px){.admin-analytics-page{padding:1rem}.admin-analytics-grid{grid-template-columns:1fr}}:root{--color-primary: #0F766E;--color-secondary: #3B82F6;--color-accent: #5EEAD4;--color-bg: #F8FAFC;--color-surface: #FFFFFF;--color-text-primary: #0F172A;--color-text-secondary: #64748B;--color-border: #E2E8F0;--color-success: #22C55E;--color-warning: #F59E0B;--color-error: #EF4444}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg);color:var(--color-text-primary)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
