.clinical-assistant-chat{--provider-primary:#30859f;--provider-primary-rgb:48,133,159;--border-color:#dee2e6;--bg-light:#f8f9fa;--text-muted:#6c757d;--success-color:#28a745;--warning-color:#ffc107;--danger-color:#dc3545;--star-color:#ffc107;--star-empty:#e4e5e9;box-shadow:0 4px 12px rgba(0,0,0,.1);display:flex;flex-direction:column;height:calc(100vh - 180px);min-height:600px}.clinical-assistant-chat .card-body{display:flex;flex-direction:column;flex:1 1;min-height:0;overflow:hidden}.clinical-assistant-chat .mode-toggle{border:1px solid var(--border-color);border-radius:8px;padding:2px}.clinical-assistant-chat .mode-toggle .nav-link{padding:4px 12px;font-size:14px;border-radius:6px;transition:all .2s ease}.clinical-assistant-chat .mode-toggle .nav-link:hover{background-color:var(--bg-light)}.clinical-assistant-chat .mode-toggle .nav-link.active{background-color:var(--provider-primary);color:white}.clinical-assistant-chat .messages-container{background-color:var(--bg-light);overflow-y:auto;flex:1 1;min-height:0}.clinical-assistant-chat .message{max-width:85%}.clinical-assistant-chat .user-message{margin-left:auto;text-align:right}.clinical-assistant-chat .assistant-message{margin-right:auto;text-align:left}.clinical-assistant-chat .message-bubble{display:inline-block;max-width:100%;word-wrap:break-word}.clinical-assistant-chat .user-message .message-bubble{background-color:var(--provider-primary)!important;color:white!important}.clinical-assistant-chat .assistant-message .message-bubble{background-color:white;border:1px solid var(--border-color)}.clinical-assistant-chat .message-content{line-height:1.6}.clinical-assistant-chat .message-content p{margin-bottom:.75rem}.clinical-assistant-chat .message-content p:last-child{margin-bottom:0}.clinical-assistant-chat .message-content strong{color:var(--provider-primary);font-weight:600}.clinical-assistant-chat .message-content ol,.clinical-assistant-chat .message-content ul{margin-bottom:.75rem;padding-left:1.25rem}.clinical-assistant-chat .message-content li{margin-bottom:.25rem}.clinical-assistant-chat .message-content h1,.clinical-assistant-chat .message-content h2,.clinical-assistant-chat .message-content h3,.clinical-assistant-chat .message-content h4{color:var(--provider-primary);margin-top:1rem;margin-bottom:.5rem;font-weight:600}.clinical-assistant-chat .message-content h1:first-child,.clinical-assistant-chat .message-content h2:first-child,.clinical-assistant-chat .message-content h3:first-child,.clinical-assistant-chat .message-content h4:first-child{margin-top:0}.clinical-assistant-chat .user-message .message-content{white-space:pre-wrap}.clinical-assistant-chat .citations-list{max-height:200px;overflow-y:auto}.clinical-assistant-chat .citation-item{font-size:12px}.clinical-assistant-chat .feedback-section{border-color:rgba(0,0,0,.1)!important}.clinical-assistant-chat .feedback-buttons{opacity:.7;transition:opacity .2s ease}.clinical-assistant-chat .feedback-buttons:hover{opacity:1}.clinical-assistant-chat .feedback-btn{padding:4px 8px;border-radius:4px;transition:all .2s ease}.clinical-assistant-chat .feedback-btn:hover:not(:disabled){transform:scale(1.1)}.clinical-assistant-chat .feedback-btn:disabled{opacity:.8}.clinical-assistant-chat .confidence-badge{font-size:.7rem;font-weight:500;text-transform:capitalize;padding:4px 8px}.clinical-assistant-chat .badge-success{background-color:var(--success-color)!important}.clinical-assistant-chat .badge-warning{background-color:var(--warning-color)!important;color:#212529!important}.clinical-assistant-chat .badge-danger{background-color:var(--danger-color)!important}.clinical-assistant-chat .feedback-form{background-color:var(--bg-light);border-radius:8px;padding:12px;margin-top:8px;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.clinical-assistant-chat .feedback-form textarea{border:1px solid var(--border-color);border-radius:6px;font-size:13px;resize:none}.clinical-assistant-chat .feedback-form textarea:focus{border-color:var(--provider-primary);box-shadow:0 0 0 .15rem rgba(var(--provider-primary-rgb),.2);outline:none}.clinical-assistant-chat .star-rating{display:flex;gap:4px}.clinical-assistant-chat .star-rating .star{cursor:pointer;color:var(--star-empty);transition:color .15s ease,transform .15s ease;font-size:18px}.clinical-assistant-chat .star-rating .star:hover{transform:scale(1.2)}.clinical-assistant-chat .star-rating .star.filled,.clinical-assistant-chat .star-rating .star.hovered{color:var(--star-color)}.clinical-assistant-chat .star-rating-label{font-size:12px;color:var(--text-muted)}.clinical-assistant-chat .feedback-submitted{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-muted)}.clinical-assistant-chat .feedback-submitted.positive{color:var(--success-color)}.clinical-assistant-chat .feedback-submitted.negative{color:var(--danger-color)}.clinical-assistant-chat .suggested-questions{background-color:var(--bg-light);flex-shrink:0}.clinical-assistant-chat .input-area{background-color:white;flex-shrink:0}.clinical-assistant-chat .input-area textarea{border:1px solid var(--border-color);border-radius:8px}.clinical-assistant-chat .input-area textarea:focus{border-color:var(--provider-primary);box-shadow:0 0 0 .2rem rgba(var(--provider-primary-rgb),.25)}.clinical-assistant-chat .messages-container::-webkit-scrollbar{width:6px}.clinical-assistant-chat .messages-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.clinical-assistant-chat .messages-container::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.clinical-assistant-chat .messages-container::-webkit-scrollbar-thumb:hover{background:#555}.clinical-assistant-chat .loading-message-text{display:inline-block;animation:fadeInMessage .3s ease-in-out}@keyframes fadeInMessage{0%{opacity:.5;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@media (max-width:992px){.clinical-assistant-chat{height:calc(100vh - 160px);min-height:500px}}@media (max-width:768px){.clinical-assistant-chat{height:calc(100vh - 140px);min-height:400px}.clinical-assistant-chat .message{max-width:90%}.clinical-assistant-chat .input-area textarea{font-size:16px}.clinical-assistant-chat .feedback-form{padding:8px}.clinical-assistant-chat .star-rating .star{font-size:22px}}.floating-ask-ai{position:fixed;z-index:1040}.floating-ask-ai.bottom-right{bottom:30px;right:30px}.floating-ask-ai.bottom-left{bottom:30px;left:30px}.floating-ask-ai.top-right{top:80px;right:30px}.floating-ask-ai.top-left{top:80px;left:30px}.floating-ask-ai .floating-button{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;transition:all .3s ease;border:none}.floating-ask-ai .floating-button:hover{transform:scale(1.1);box-shadow:0 6px 20px rgba(13,110,253,.4)!important}.floating-ask-ai .floating-button:active{transform:scale(.95)}.floating-ask-ai .floating-button .active-indicator{position:absolute;top:5px;right:5px;width:12px;height:12px;background-color:#28a745;border-radius:50%;border:2px solid white;animation:pulse 2s infinite}.clinical-assistant-modal .modal-content{border-radius:12px;overflow:hidden}.clinical-assistant-modal .modal-body{padding:0}@media (max-width:768px){.floating-ask-ai.bottom-right,.floating-ask-ai.top-right{right:20px}.floating-ask-ai.bottom-left,.floating-ask-ai.top-left{left:20px}.floating-ask-ai.bottom-left,.floating-ask-ai.bottom-right{bottom:20px}.floating-ask-ai .floating-button{width:50px;height:50px}}.section-container{border:1px solid #e5e7eb;border-radius:8px;background-color:#ffffff;overflow:hidden}.section-header{display:flex;align-items:center;gap:12px;padding:16px;cursor:pointer;transition:background-color .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.section-header:hover{background-color:#f9fafb}.section-header:focus{outline:2px solid #3b82f6;outline-offset:-2px}.section-icon{font-size:20px}.section-title{flex:1 1;margin:0;font-size:16px;font-weight:600;color:#111827}.expand-icon{font-size:14px;color:#6b7280;transition:transform .2s ease}.section-content{padding:16px;border-top:1px solid #f3f4f6}.update-card{padding:16px;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:12px;background-color:#ffffff;transition:all .15s ease}.update-card:last-child{margin-bottom:0}.update-card.selected{background-color:#f0f9ff;border-color:#3b82f6}.update-card.rejected{opacity:.5;background-color:#fef2f2}.update-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.update-category{font-size:14px;font-weight:600;color:#374151}.ai-confidence-badge{padding:4px 8px;border-radius:4px;font-size:11px;font-weight:700;color:#ffffff;display:inline-flex;align-items:center;gap:4px}.ai-confidence-high{background-color:#10b981}.ai-confidence-medium{background-color:#f59e0b}.ai-confidence-low{background-color:#ef4444}.info-icon{cursor:help;color:#6b7280;font-size:14px}.ai-reasoning{margin:12px 0;padding:12px;background-color:#f9fafb;border-left:3px solid #3b82f6;border-radius:4px}.ai-reasoning-text{font-size:13px;color:#6b7280;line-height:1.5;font-style:italic}.update-actions{display:flex;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid #f3f4f6}.action-button{padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease;border:1px solid;display:inline-flex;align-items:center;gap:6px}.action-button-accept{background-color:#dcfce7;border-color:#10b981;color:#166534}.action-button-accept:hover{background-color:#bbf7d0}.action-button-modify{background-color:#fef3c7;border-color:#f59e0b;color:#92400e}.action-button-modify:hover{background-color:#fde68a}.action-button-reject{background-color:#fee2e2;border-color:#ef4444;color:#991b1b}.action-button-reject:hover{background-color:#fecaca}.category-badge{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;display:inline-block}.category-breakthrough{background-color:#dbeafe;color:#1e40af}.category-safety{background-color:#fee2e2;color:#991b1b}.category-insight{background-color:#d1fae5;color:#065f46}.category-progress{background-color:#e0e7ff;color:#3730a3}@media (max-width:768px){.section-content,.update-card{padding:12px}.update-actions{flex-direction:column}.action-button{width:100%;justify-content:center}}.moment-details{margin:12px 0}.moment-field{margin-bottom:12px}.moment-field:last-child{margin-bottom:0}.moment-field strong{display:block;font-size:12px;font-weight:600;color:#6b7280;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.moment-description{margin:0;padding:8px;background-color:#f9fafb;border-left:3px solid #3b82f6;border-radius:4px;font-size:14px;line-height:1.6;color:#374151}.related-goals{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.goal-tag{padding:4px 10px;background-color:#e0e7ff;color:#3730a3;border-radius:12px;font-size:12px;font-weight:600}.significance-high{color:#dc2626;font-weight:600}.significance-critical{color:#991b1b;font-weight:700}.significance-medium{color:#ea580c;font-weight:600}.significance-low{color:#65a30d}.goal-title{font-size:15px;font-weight:600;color:#111827;margin-bottom:4px}.modified-badge{display:inline-block;padding:2px 8px;background-color:#fef3c7;color:#92400e;border-radius:12px;font-size:11px;font-weight:600;margin-left:8px}.progress-editor{padding:16px;background-color:#fef3c7;border:2px solid #f59e0b;border-radius:8px;margin:12px 0}.progress-editor label{display:block;margin-bottom:8px;font-size:13px;color:#92400e}.editor-controls{display:flex;align-items:center;gap:8px}.progress-input{width:80px;padding:8px 12px;border:1px solid #d97706;border-radius:6px;font-size:14px;font-weight:600}.progress-input:focus{outline:2px solid #f59e0b;outline-offset:2px}.percentage-sign{font-size:14px;font-weight:600;color:#92400e}.risk-badge{padding:4px 12px;border-radius:4px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.risk-level-low{background-color:#d1fae5;color:#065f46}.risk-level-moderate{background-color:#fef3c7;color:#92400e}.risk-level-high{background-color:#fee2e2;color:#991b1b}.risk-level-critical{background-color:#fecaca;color:#7f1d1d;border:2px solid #dc2626}.risk-level-unknown{background-color:#f3f4f6;color:#6b7280}.risk-increase-warning{border-color:#dc2626!important;background-color:#fef2f2!important}.risk-warning-banner{padding:12px;margin:12px 0;background-color:#fef2f2;border:2px solid #dc2626;border-radius:6px;color:#991b1b;font-size:13px;font-weight:600}.frequency-badge{padding:4px 12px;border-radius:4px;font-size:12px;font-weight:600;text-transform:capitalize}.frequency-weekly{background-color:#fef2f2;color:#991b1b}.frequency-biweekly{background-color:#fef3c7;color:#92400e}.frequency-monthly{background-color:#dbeafe;color:#1e40af}.frequency-quarterly{background-color:#d1fae5;color:#065f46}.frequency-biannual{background-color:#e0e7ff;color:#3730a3}.frequency-annual{background-color:#f3f4f6;color:#374151}@media (prefers-color-scheme:dark){.section-container{background-color:#1f2937;border-color:#374151}.section-header:hover{background-color:#374151}.section-title{color:#f3f4f6}.section-content{border-top-color:#374151}.update-card{background-color:#1f2937;border-color:#374151}.update-category{color:#d1d5db}.ai-reasoning,.moment-description{background-color:#374151}.moment-description{color:#d1d5db}.moment-field strong{color:#9ca3af}}.diff-view-panel{padding:16px;background-color:#ffffff;border:1px solid #e5e7eb;border-radius:8px}.diff-view-panel.compact{padding:8px}.diff-field{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #f3f4f6}.diff-field:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.diff-view-panel.compact .diff-field{margin-bottom:8px;padding-bottom:8px}.diff-field-label{font-size:14px;font-weight:600;color:#111827;margin-bottom:8px}.diff-label-small{font-size:12px;font-weight:500;color:#6b7280;margin-right:8px;display:inline-block;min-width:60px}.diff-values-container{display:flex;flex-direction:column;gap:8px}.diff-value-row{display:flex;align-items:center;gap:8px}.diff-value{font-size:14px;color:#111827;flex:1 1}.diff-value-before{color:#6b7280;text-decoration:line-through;opacity:.7}.diff-value-after{color:#111827;font-weight:500}.diff-delta{display:flex;align-items:center;margin-top:4px;padding-left:68px}.diff-delta-value{font-size:12px;font-weight:600;padding:2px 8px;border-radius:4px;display:inline-flex;align-items:center;gap:4px}.diff-delta-up{color:#166534;background-color:#dcfce7}.diff-delta-down{color:#991b1b;background-color:#fee2e2}.diff-delta-none{color:#6b7280;background-color:#f3f4f6}.diff-progress-bar-container{flex:1 1;max-width:200px}.diff-progress-bar{width:100%;height:8px;background-color:#e5e7eb;border-radius:4px;overflow:hidden;position:relative}.diff-progress-bar-fill{height:100%;background-color:#3b82f6;border-radius:4px;transition:width .5s ease-out}.diff-array-container{display:flex;flex-direction:column;gap:12px;margin-top:8px}.diff-array-section{display:flex;flex-direction:column;gap:4px}.diff-array-list{list-style:none;padding:0;margin:0}.diff-array-list li{padding:6px 8px;margin:2px 0;border-radius:4px;font-size:13px;background-color:#f9fafb}.diff-item-added{background-color:#dcfce7!important;border-left:3px solid #10b981;color:#166534}.diff-item-removed{background-color:#fee2e2!important;border-left:3px solid #ef4444;color:#991b1b;text-decoration:line-through;opacity:.7}.diff-empty{font-size:13px;color:#9ca3af;font-style:italic}.diff-empty-state{padding:24px;text-align:center;color:#6b7280;font-size:14px}@media (max-width:768px){.diff-view-panel{padding:12px}.diff-values-container{gap:6px}.diff-value-row{flex-direction:column;align-items:flex-start}.diff-progress-bar-container{max-width:100%;width:100%}.diff-delta{padding-left:0;margin-top:8px}}@media (prefers-color-scheme:dark){.diff-view-panel{background-color:#1f2937;border-color:#374151}.diff-field{border-bottom-color:#374151}.diff-field-label,.diff-value{color:#f3f4f6}.diff-value-before{color:#9ca3af}.diff-array-list li,.diff-progress-bar{background-color:#374151}}.skeleton-box{background:linear-gradient(90deg,#f0f0f0,#f8f8f8 20%,#f0f0f0 40%,#f0f0f0);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px;display:inline-block}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (prefers-color-scheme:dark){.skeleton-box{background:linear-gradient(90deg,#2d3748,#4a5568 20%,#2d3748 40%,#2d3748)}}.modal-skeleton-content{padding:16px}.skeleton-session-info{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;margin-bottom:16px;gap:16px}.skeleton-section{margin-bottom:12px;padding:12px;border:1px solid #e5e7eb;border-radius:8px;background-color:#ffffff}@media (prefers-color-scheme:dark){.skeleton-section{background-color:#1f2937;border-color:#374151}}.skeleton-section-header{display:flex;align-items:center;gap:12px}.skeleton-section-header .skeleton-icon{flex-shrink:0;border-radius:50%}.skeleton-section-header .skeleton-title{flex:1 1}.skeleton-section-header .skeleton-expand{flex-shrink:0;border-radius:50%}.skeleton-section-expanded{margin-bottom:12px;padding:12px;border:1px solid #e5e7eb;border-radius:8px;background-color:#ffffff}@media (prefers-color-scheme:dark){.skeleton-section-expanded{background-color:#1f2937;border-color:#374151}}.skeleton-section-content{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb}@media (prefers-color-scheme:dark){.skeleton-section-content{border-color:#374151}}.skeleton-update-card{padding:16px;margin-bottom:12px;border:1px solid #e5e7eb;border-radius:8px;background-color:#fafafa}@media (prefers-color-scheme:dark){.skeleton-update-card{background-color:#111827;border-color:#374151}}.skeleton-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.skeleton-badge{border-radius:12px}.skeleton-card-body{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.skeleton-card-actions{display:flex;gap:8px;justify-content:flex-start}.skeleton-button{border-radius:6px}@media (max-width:768px){.skeleton-session-info{flex-direction:column;align-items:flex-start}.skeleton-card-actions{flex-direction:column;width:100%}.skeleton-card-actions .skeleton-button{width:100%}}@media (prefers-reduced-motion:reduce){.skeleton-box{animation:none;background:#f0f0f0}@media (prefers-color-scheme:dark){.skeleton-box{background:#2d3748}}}.careplan-update-modal__backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:9998;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.careplan-update-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:900px;max-width:90vw;max-height:90vh;background-color:#ffffff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);z-index:9999;display:flex;flex-direction:column;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.modal-title-section{display:flex;flex-direction:column;gap:4px}.modal-title{font-size:24px;font-weight:600;color:#111827;margin:0}.patient-name{font-size:14px;color:#6b7280;font-weight:500}.close-button{width:32px;height:32px;border-radius:6px;border:none;background-color:transparent;color:#6b7280;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.close-button:hover{background-color:#f3f4f6;color:#111827}.close-button:focus{outline:2px solid #3b82f6;outline-offset:2px}.modal-body{flex:1 1;overflow-y:auto;padding:24px}.session-info{justify-content:space-between;padding:16px;background-color:#f9fafb;border-radius:8px;margin-bottom:24px}.session-details,.session-info{display:flex;align-items:center}.session-details{gap:16px}.session-date,.update-count{font-size:14px;color:#6b7280}.update-count{font-weight:600;color:#111827}.expand-all-button{padding:6px 12px;background-color:#ffffff;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.expand-all-button:hover{background-color:#f9fafb;border-color:#9ca3af}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;gap:16px}.spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.spinner-small{width:16px;height:16px;border:2px solid #ffffff;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite;display:inline-block;margin-right:8px}.error-banner{justify-content:space-between;padding:16px;background-color:#fee2e2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px}.error-banner,.error-content{display:flex;align-items:flex-start;gap:12px}.error-content{flex:1 1}.error-icon{font-size:20px;flex-shrink:0}.error-text{display:flex;flex-direction:column;gap:8px;flex:1 1}.error-message{font-size:14px;color:#991b1b;font-weight:500}.retry-button{padding:6px 12px;border-radius:6px;border:1px solid #dc2626;background-color:#ffffff;color:#dc2626;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:6px;align-self:flex-start}.retry-button:hover{background-color:#dc2626;color:#ffffff;transform:translateY(-1px);box-shadow:0 2px 4px rgba(220,38,38,.2)}.retry-button:active{transform:translateY(0);box-shadow:none}.error-dismiss{width:24px;height:24px;border-radius:4px;border:none;background-color:transparent;color:#991b1b;font-size:16px;cursor:pointer;transition:background-color .15s ease;flex-shrink:0}.error-dismiss:hover{background-color:#fecaca}.empty-state{text-align:center;padding:48px;color:#6b7280}.sections-container{display:flex;flex-direction:column;gap:16px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:24px;border-top:1px solid #e5e7eb;background-color:#f9fafb}.button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease;border:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.button:disabled{opacity:.5;cursor:not-allowed}.button-primary{background-color:#10b981;color:#ffffff}.button-primary:hover:not(:disabled){background-color:#059669}.button-primary:focus{outline:2px solid #10b981;outline-offset:2px}.button-secondary{background-color:#e5e7eb;color:#374151}.button-secondary:hover:not(:disabled){background-color:#d1d5db}.button-outline{background-color:#ffffff;border:1px solid #d1d5db;color:#374151}.button-outline:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.button-danger{background-color:#ef4444;color:#ffffff}.button-danger:hover:not(:disabled){background-color:#dc2626}.confirmation-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.6);z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}.confirmation-dialog{background-color:#ffffff;border-radius:12px;padding:24px;max-width:400px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25)}.confirmation-dialog h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#111827}.confirmation-dialog p{margin:0 0 20px;font-size:14px;color:#6b7280}.confirmation-buttons{display:flex;gap:12px;justify-content:flex-end}@media (max-width:1024px){.careplan-update-modal{width:80vw}}@media (max-width:768px){.careplan-update-modal{width:100vw;max-width:100vw;height:100vh;max-height:100vh;border-radius:0;top:0;left:0;transform:none}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:16px}.modal-title{font-size:20px}.modal-body{padding:16px}.session-info{flex-direction:column;align-items:flex-start;gap:12px}.modal-footer{padding:16px;flex-direction:column-reverse}.modal-footer .button{width:100%}}@media (prefers-color-scheme:dark){.careplan-update-modal{background-color:#1f2937}.modal-header{border-bottom-color:#374151}.modal-title{color:#f3f4f6}.patient-name,.session-date{color:#9ca3af}.update-count{color:#f3f4f6}.close-button:hover{color:#f3f4f6}.close-button:hover,.session-info{background-color:#374151}.expand-all-button{background-color:#1f2937;border-color:#4b5563;color:#d1d5db}.expand-all-button:hover,.modal-footer{background-color:#374151}.modal-footer{border-top-color:#374151}}.careplan-error-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;max-width:90vw;max-height:90vh;background-color:#ffffff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);z-index:10000;display:flex;flex-direction:column;animation:errorSlideIn .3s ease-out}@keyframes errorSlideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.error-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.error-modal-title{font-size:20px;font-weight:600;color:#dc2626;margin:0}.error-modal-body{padding:32px 24px;overflow-y:auto;display:flex;flex-direction:column;align-items:center;text-align:center}.error-icon-large{font-size:64px;margin-bottom:24px;animation:pulse 2s ease-in-out infinite}.error-message-container{width:100%;max-width:500px}.error-primary-message{font-size:16px;color:#374151;line-height:1.6;margin-bottom:24px}.error-details{margin-top:16px;margin-bottom:24px;padding:16px;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;text-align:left}.error-details summary{cursor:pointer;font-weight:600;color:#6b7280;margin-bottom:12px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.error-details summary:hover{color:#374151}.error-stack{margin-top:12px}.error-stack strong{display:block;margin-top:12px;margin-bottom:4px;color:#374151;font-size:14px}.error-stack pre{font-family:Monaco,Menlo,Courier New,monospace;font-size:12px;color:#dc2626;background-color:#ffffff;padding:12px;border-radius:4px;border:1px solid #f3f4f6;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word}.error-suggestions{margin-top:16px;padding:16px;background-color:#eff6ff;border:1px solid #dbeafe;border-radius:8px;text-align:left}.error-suggestions h3{font-size:14px;font-weight:600;color:#1e40af;margin:0 0 12px}.error-suggestions ul{margin:0;padding-left:20px;list-style-type:disc}.error-suggestions li{font-size:14px;color:#1e3a8a;margin-bottom:8px;line-height:1.5}.error-suggestions li:last-child{margin-bottom:0}.error-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background-color:#f9fafb;border-bottom-left-radius:12px;border-bottom-right-radius:12px}.error-modal-footer .button{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease;border:none;outline:none}.error-modal-footer .button:focus{box-shadow:0 0 0 3px rgba(59,130,246,.5)}.error-modal-footer .button-secondary{background-color:#ffffff;color:#374151;border:1px solid #d1d5db}.error-modal-footer .button-secondary:hover{background-color:#f9fafb;border-color:#9ca3af}.error-modal-footer .button-primary{background-color:#3b82f6;color:#ffffff}.error-modal-footer .button-primary:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px rgba(37,99,235,.2)}.error-modal-footer .button-primary:active{transform:translateY(0);box-shadow:none}@media (prefers-color-scheme:dark){.careplan-error-modal{background-color:#1f2937}.error-modal-header{border-color:#374151}.error-modal-title{color:#f87171}.error-primary-message{color:#e5e7eb}.error-details{background-color:#111827;border-color:#374151}.error-details summary{color:#9ca3af}.error-details summary:hover,.error-stack strong{color:#e5e7eb}.error-stack pre{background-color:#0f172a;border-color:#1e293b;color:#fca5a5}.error-suggestions{background-color:#1e3a8a;border-color:#1e40af}.error-suggestions h3{color:#93c5fd}.error-suggestions li{color:#bfdbfe}.error-modal-footer{border-color:#374151;background-color:#111827}.error-modal-footer .button-secondary{background-color:#374151;color:#e5e7eb;border-color:#4b5563}.error-modal-footer .button-secondary:hover{background-color:#4b5563}}@media (max-width:640px){.careplan-error-modal{width:100%;max-width:100vw;border-radius:0}.error-modal-body{padding:24px 16px}.error-modal-footer{flex-direction:column-reverse}.error-modal-footer .button{width:100%}}@media (prefers-reduced-motion:reduce){.careplan-error-modal,.error-icon-large{animation:none}.error-modal-footer .button-primary:hover{transform:none}}.sessions-select{transition:all .2s ease}.sessions-select:hover{border-color:#9ca3af!important}.sessions-select:focus{border-color:#30859F!important;box-shadow:0 0 0 2px rgba(48,133,159,.2)!important;outline:none!important}.chart-point{cursor:pointer;transition:all .2s ease}.chart-point:hover{filter:drop-shadow(0 4px 6px rgba(0,0,0,.1))}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}