.dashboard-container{padding:0;gap:24px;display:flex;flex-direction:column}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px}.stat-card{background:var(--white);border-radius:var(--border-radius);padding:20px;display:flex;flex-direction:column;gap:10px;box-shadow:0 2px 4px #0000000d}.stat-content{display:flex;flex-direction:column;gap:4px}.stat-footer{display:flex;flex-direction:row;align-items:center;gap:12px}.stat-icon{color:var(--graph-color);flex-shrink:0;width:15px;height:15px;display:flex;align-items:center;justify-content:center}.stat-icon i{width:15px;height:15px}.stat-header h3{color:var(--graph-color);margin:0;font-size:var(--text-sm);line-height:1}.stat-content h3{color:var(--text-color);margin:0;font-size:var(--text-sm)}.stat-number{font-family:DM Sans,sans-serif;font-weight:700;margin:0;font-size:var(--text-lg)}.stat-trend{padding:4px 8px;border-radius:4px;font-size:var(--text-xs);font-weight:500;text-align:center;display:inline-block;background-color:#f5f5f5;color:#666}.stat-trend.positive{background-color:#e6f4ea;color:#05a62a}.stat-trend.negative{background-color:#feeced;color:#dc3545}.stat-trend.warning{background-color:#fff8e1;color:#ffc107}.nutritional-plans-badges{display:flex;flex-direction:row;gap:8px}.stat-badge{padding:4px 8px;border-radius:4px;font-size:var(--text-xs);font-weight:500;text-align:center;display:inline-block}.stat-badge.expired{background-color:#feeced;color:#dc3545}.stat-badge.active{background-color:#e6f4ea;color:#05a62a}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px}.chart-card{background:var(--white);border-radius:var(--border-radius);padding:20px;box-shadow:0 2px 4px #0000000d}.chart-card h3{margin-bottom:16px;font-family:DM Sans,sans-serif}.bottom-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px}.activity-card{background:var(--white);border-radius:var(--border-radius);padding:20px;box-shadow:0 2px 4px #0000000d}.activity-card h3{margin-bottom:16px;font-family:DM Sans,sans-serif}.activity-card h3{display:flex;align-items:center;gap:8px}.activity-card h3:has(+#aiAgentActivity):after{content:"🤖";font-size:18px}.activity-list{display:flex;flex-direction:column;gap:16px}.activity-item{display:flex;align-items:center;gap:16px;padding:2px;border-radius:var(--border-radius);background:transparent;transition:transform .2s ease}.activity-item:hover{transform:translate(4px)}.activity-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--border-radius);background:transparent;box-shadow:0 2px 4px #0000001a}.activity-emoji{font-size:24px;line-height:1}.activity-icon i{width:20px;height:20px;color:var(--primary-color)}.activity-details p{margin:0;color:var(--text-color);font-weight:500}.activity-details .activity-meta{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:var(--text-xs);color:#666}.activity-time{color:var(--graph-color);font-size:var(--text-xs)}.activity-patient{color:var(--primary-color);font-weight:500}.activity-amount{font-weight:500}.activity-amount.positive{padding:4px 8px;border-radius:4px;font-size:var(--text-xs);font-weight:500;text-align:center;display:inline-block;background-color:#e6f4ea;color:#05a62a}.activity-amount.negative{padding:4px 8px;border-radius:4px;font-size:var(--text-xs);font-weight:500;text-align:center;display:inline-block;background-color:#feeced;color:#dc3545}@media (max-width: 768px){.charts-grid,.bottom-grid{grid-template-columns:1fr}}.upcoming-total{color:var(--text-color);opacity:.7;font-weight:400}.stat-header{display:flex;align-items:center;gap:8px}.stat-content .info-icon-wrapper{display:inline-flex;align-items:center;cursor:help}.stat-content .info-icon{width:16px;height:16px;color:#666;opacity:.7;transition:opacity .2s ease}.stat-content .info-icon-wrapper:hover .info-icon{opacity:1}.stat-content .info-tooltip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);background:#000c;color:#fff;padding:8px 12px;border-radius:6px;font-size:12px;width:max-content;max-width:250px;white-space:normal;line-height:1.4;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;pointer-events:none;z-index:1010}.stat-content .info-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:4px;border-style:solid;border-color:rgba(0,0,0,.8) transparent transparent transparent}.stat-content .info-icon-wrapper:hover .info-tooltip{opacity:1;visibility:visible}.activity-details{flex:1;display:flex;flex-direction:column}.activity-main{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.activity-text{color:var(--text-color);font-size:var(--text-sm)}.activity-patient{color:var(--primary-color);font-weight:500;font-size:var(--text-sm)}.activity-date{color:var(--graph-color)}.activity-summary{color:var(--graph-color);font-size:var(--text-xs);margin-top:2px;line-height:1.3;opacity:.9}.activity-disclaimer{display:flex;align-items:center;gap:6px;margin:-8px 0 16px;padding:8px 12px;background-color:#f8f9fa;border-radius:6px;font-size:var(--text-xs);color:var(--graph-color);border-left:3px solid #e9ecef}.stripe-loader{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--graph-color)}.stripe-loader .loading-spinner{width:20px;height:20px;border:2px solid #e2e8f0;border-top:2px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.stripe-loader .sync-text{font-size:14px;color:var(--graph-color);font-weight:500}.discrete-sync-loader{width:16px;height:16px;border:2px solid #e2e8f0;border-top:2px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-left:8px;flex-shrink:0;opacity:.7}.stat-footer-with-loader{display:flex;align-items:center;gap:12px}.stat-footer-with-loader .stat-content-main{display:flex;flex-direction:row;align-items:center;gap:12px;flex:1}.stripe-content{display:flex;flex-direction:row;align-items:center;gap:12px}.patients-container{padding:0}.secondary-color-icon{color:var(--secondary-color)!important}.pending-color-icon{color:#f57c00!important}.status-badge.secondary-badge{background-color:#f9e6ff!important;color:var(--secondary-color)!important}.table-actions{display:flex;gap:8px;justify-content:flex-start;align-items:center}.actions-cell{white-space:nowrap}.patient-details{background:#fff;border-radius:var(--border-radius);padding:24px;box-shadow:0 2px 4px #0000000d}.patient-details-header{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:10px}.patient-name-link{display:inline-flex;align-items:center;color:var(--primary-color);text-decoration:none;font-weight:500;gap:10px}.patient-name-link:hover{color:var(--secondary-color)}.expiration-date-warning{background-color:#fff3e0;color:var(--warning-color);padding:4px 8px;border-radius:4px;font-weight:500;display:inline-block}.expiration-date-expired{background-color:#feeced;color:var(--negative-color);padding:4px 8px;border-radius:4px;font-weight:500;display:inline-block}.form-section h4{color:var(--primary-color);margin-bottom:16px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.patient-form-group{display:flex;flex-direction:column;gap:8px}.patient-form-group.full-width{grid-column:1 / -1}.patient-form-group label{font-size:14px;color:#666}.patient-form-group input,.patient-form-group select,.patient-form-group textarea{padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:14px;font-family:inherit}.patient-form-group textarea{resize:vertical;min-height:80px}.patient-form-checkbox,.checkbox-container,.radio-container{display:inline-flex;align-items:center;margin-right:12px;margin-bottom:8px;cursor:pointer}.checkbox-label,.radio-label{margin-left:8px;font-size:14px}.tags-input-container{width:100%}.tags-input{width:100%;padding:8px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-family:DM Sans;margin-bottom:8px}.tags-container{display:flex;flex-wrap:wrap;gap:8px}.tag{background:var(--primary-color);color:#fff;padding:4px 8px;border-radius:var(--border-radius);display:flex;align-items:center;gap:4px}.tag-remove{cursor:pointer}.measurement-date{margin-bottom:20px;max-width:160px}.measurements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:24px}.measurement-section{background:var(--background-color);padding:16px;border-radius:var(--border-radius)}.measurement-section h4{color:var(--primary-color);margin-bottom:16px}.measurement-input{margin-bottom:12px}.measurement-input label{display:block;margin-bottom:4px;font-size:14px;color:#666}.measurement-input input{width:100%;padding:8px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:14px}.measurement-input input:disabled{background-color:#f5f5f5;cursor:not-allowed}.observation-input{width:100%;padding:12px;border:1px solid var(--border-color);border-radius:var(--border-radius);resize:vertical;font-family:inherit}.biometric-actions{margin-top:24px;display:flex}.nutrition-section{margin-bottom:24px;padding:16px;background:var(--background-color);border-radius:var(--border-radius)}.nutrition-section h4{margin-bottom:16px;color:var(--primary-color)}.prep-time-options{display:flex;flex-wrap:wrap;gap:12px}.nutrition-dropdowns-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:20px}.nutrition-dropdown-item{padding:16px;background:var(--background-color);border-radius:var(--border-radius)}.nutrition-dropdown-item h4{margin:0 0 16px;color:var(--primary-color)}.diet-dropdown,.cooking-level-dropdown,.activity-level-dropdown{width:100%}.diet-dropdown select,.cooking-level-dropdown select,.activity-level-dropdown select{width:100%;padding:8px;border:1px solid var(--border-color);border-radius:var(--border-radius);background-color:#fff;font-family:inherit;cursor:pointer;transition:all .2s ease}.diet-dropdown select:focus,.cooking-level-dropdown select:focus,.activity-level-dropdown select:focus{border-color:var(--secondary-color);outline:none;box-shadow:0 0 0 2px #d66ff633}.diet-dropdown select:hover,.cooking-level-dropdown select:hover,.activity-level-dropdown select:hover{border-color:var(--primary-color)}.diet-dropdown optgroup{font-weight:600;color:var(--primary-color);font-size:13px;margin-top:8px}.diet-dropdown option,.cooking-level-dropdown option,.activity-level-dropdown option{padding:8px 12px;font-weight:400;color:var(--text-color)}@media (max-width: 1024px){.nutrition-dropdowns-row{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}}@media (max-width: 768px){.nutrition-dropdowns-row{grid-template-columns:1fr;gap:16px;padding:16px}}.nutrition-sections-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:32px}.nutrition-section-item{padding:16px;background:var(--background-color);border-radius:var(--border-radius)}.nutrition-section-item h4{margin:0 0 16px;color:var(--primary-color)}@media (max-width: 1024px){.nutrition-sections-row{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}}@media (max-width: 768px){.nutrition-sections-row{grid-template-columns:1fr;gap:16px;padding:16px}}.nutrition-sections-row.nutrition-single-item{justify-content:center}.nutrition-section-item.nutrition-centered-item{max-width:400px;width:100%}.macros-distribution{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.patient-macro-input{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.patient-macro-input label{font-size:14px;color:#666;font-weight:500}.patient-macro-percentage{padding:8px;border:1px solid var(--border-color);border-radius:var(--border-radius);width:100%;font-size:14px}.meals-planning{margin-top:16px}.meal-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.patient-calendars-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.patient-calendar-filters{display:flex;gap:16px;align-items:center}.patient-date-range{display:flex;align-items:center;gap:8px}.patient-date-range input{padding:8px;border:1px solid var(--border-color);border-radius:var(--border-radius)}.follow-up-form{max-width:800px}.notes-history-table-wrapper{margin-top:20px;background:#fff;border-radius:var(--border-radius);box-shadow:0 2px 4px #0000000d;overflow-x:auto}.notes-history-table{width:100%;border-collapse:collapse;font-size:14px}.notes-history-table th,.notes-history-table td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--border-color)}.notes-history-table th{background-color:#f8f9fa;font-weight:500;color:#666}.notes-cell{max-width:400px}.notes-preview{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.created-by-cell{min-width:120px;max-width:150px;font-size:13px;color:#666}.notes-actions{display:flex;gap:8px}.patient-calendars-pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:24px}.patient-pagination-btn{background:none;border:1px solid var(--border-color);padding:8px;border-radius:var(--border-radius);cursor:pointer;display:flex;align-items:center;justify-content:center}.patient-pagination-btn:disabled{opacity:.5;cursor:not-allowed}.patient-pagination-btn:not(:disabled):hover{background-color:var(--hover-bg)}.patient-pagination-info{font-size:14px;color:#666}.info-icon-wrapper{position:relative;display:inline-flex;align-items:center;margin-left:4px;vertical-align:middle}.info-icon{width:16px;height:16px;color:#666;cursor:help}.info-tooltip{position:fixed;transform:translate(-50%,-100%);background:#000c;color:#fff;padding:8px 12px;border-radius:6px;font-size:12px;width:max-content;max-width:300px;z-index:1010;white-space:normal;line-height:1.4;visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s ease;pointer-events:none;font-weight:400;margin-top:-5px}.info-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:4px;border-style:solid;border-color:rgba(0,0,0,.8) transparent transparent transparent}.info-icon-wrapper:hover .info-tooltip{visibility:visible;opacity:1}.amount-cell{font-weight:500;text-align:right}.billing-plan-select{width:100%;padding:6px 10px;border:1px solid var(--border-color);border-radius:var(--border-radius);background-color:#fff;font-family:inherit;font-size:14px;cursor:pointer;transition:all .2s ease}.billing-plan-select:hover{border-color:var(--primary-color)}.billing-plan-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #0000000d}.billing-plan-cell{min-width:140px}.billing-plan-select.updated{background-color:#9cfb9d;transition:background-color 1s ease}#confirm-plan-change-content{margin-bottom:20px}.plan-change-details{background-color:#f9f9f9;border-radius:8px;padding:16px;margin-bottom:20px}.plan-change-row{display:flex;margin-bottom:12px;align-items:center}.plan-change-label{font-weight:600;color:#555;width:40%;min-width:120px;font-size:14px}.plan-change-value{color:#333;flex:1;font-size:14px}.plan-change-message{background-color:#fff3e0;border-left:4px solid var(--warning-color);padding:12px;margin-top:16px;border-radius:4px;font-size:14px;color:#333}.price-increase{color:var(--negative-color);font-weight:500}.price-decrease{color:#1acd44;font-weight:500}.price-same{color:#666;font-weight:500}.info-group h4{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;margin-top:8px;padding-top:0;margin-bottom:8px;padding-bottom:0}.info-group h4{line-height:1.4}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1000;justify-content:center;align-items:center}.modal-content{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;width:85%;max-width:1000px;position:relative;font-size:14px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e0e0e0}.modal-header h3{margin:0;font-size:18px;color:#333;font-weight:500}.close-modal{background:none;border:none;cursor:pointer;font-size:20px;color:#666;transition:color .2s}.close-modal:hover{color:#333}.modal-body{padding:24px}.patient-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.info-group{background-color:#f9f9f9;border-radius:8px;padding:10px;box-shadow:0 2px 4px #0000000d}.more-info-btn{background:none;color:inherit}.more-info-btn:hover{background:none;color:var(--secondary-color)}.modal .status-badge,.modal .plan-badge{font-size:13px;padding:4px 8px;border-radius:4px;display:inline-block}.info-row{display:flex;margin-bottom:8px;align-items:center}.subscription-toggle-btn{position:relative}.subscription-change-details{background-color:var(--light-bg);border-radius:var(--border-radius);padding:16px;margin:16px 0}.subscription-change-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-color)}.subscription-change-row:last-child{border-bottom:none}.subscription-change-label{font-weight:500;color:var(--text-color-secondary)}.subscription-change-value{font-weight:500}.subscription-status-badge{padding:4px 8px;border-radius:4px;font-size:14px;font-weight:500}.subscription-status-badge.active{background-color:var(--success-bg);color:var(--success-color)}.subscription-status-badge.paused{background-color:var(--warning-bg);color:var(--warning-color)}.subscription-change-message{margin-top:16px;padding:12px;border-radius:var(--border-radius);font-size:14px;line-height:1.5;display:flex;align-items:flex-start}.subscription-change-message.warning{background-color:var(--warning-bg);color:var(--warning-color)}.next-steps-container{background-color:#f8f9fa;border-radius:8px;padding:16px;margin-top:24px;margin-bottom:16px;border-left:4px solid var(--secondary-color)}.next-steps-container h4{color:var(--secondary-color);margin-top:0;margin-bottom:12px;font-size:18px;font-family:DM Sans,sans-serif}.next-steps-container p{margin-bottom:16px;color:#666}.next-steps-container ol.steps-list{list-style:none;padding:0;margin:0}.next-steps-container ol.steps-list li{display:flex;align-items:flex-start;margin-bottom:16px;font-size:14px;color:#333;padding:2px 0}.next-steps-container ol.steps-list li:last-child{margin-bottom:0}.next-steps-container ol.steps-list li i{width:22px;height:22px;color:var(--secondary-color);margin-right:20px;flex-shrink:0;position:relative;top:1px}.next-steps-container ol.steps-list li span{flex:1;line-height:1.5;padding-left:0}#new-patient-form .patient-form-group{margin-bottom:16px}#new-patient-form input,#new-patient-form select{width:100%;padding:10px 12px;border-radius:var(--border-radius);border:1px solid var(--border-color);font-size:14px}#new-patient-form input:focus,#new-patient-form select:focus{border-color:var(--secondary-color);outline:none;box-shadow:0 0 0 2px #d66ff633}#new-patient-form label{display:block;margin-bottom:2px;font-weight:500;font-size:14px;color:#333}#new-patient-form .form-actions{margin-top:24px;display:flex;justify-content:flex-end;gap:12px}@keyframes success-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.next-steps-container.show{display:block;animation:success-fade-in .5s ease forwards}#new-patient-form input.error,#new-patient-form select.error{border-color:var(--negative-color);background-color:#fd55600d}#new-patient-form input.error:focus,#new-patient-form select.error:focus{box-shadow:0 0 0 2px #fd556033}.subscription-status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.subscription-status-badge.active{background-color:#e6f7f1;color:#0d8a59}.subscription-status-badge.paused{background-color:#f9e6e6;color:#d34e4e}.subscription-change-details{background-color:#f8f9fa;border-radius:8px;padding:16px;margin:16px 0}.subscription-change-row{display:flex;justify-content:space-between;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #eee}.subscription-change-row:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.subscription-change-label{font-weight:500;color:#555}.subscription-change-message{background-color:#f0f7ff;border-left:4px solid var(--primary-color);padding:12px;margin:16px 0;font-size:14px;line-height:1.5;color:#333}.delete-warning{background-color:#feecec;border-radius:8px;padding:16px;margin:16px 0}.warning-icon{color:#e74c3c;flex-shrink:0;margin-top:4px}.delete-warning-title{font-weight:500;color:#c0392b;margin-bottom:8px}.delete-warning-list{margin:0;padding-left:18px;font-size:14px;line-height:1.5}.delete-warning-list li{margin-bottom:6px}.delete-warning-list li:last-child{margin-bottom:0}.delete-btn{background-color:var(--negative-color);color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background-color .2s}.delete-btn:hover{background-color:#c0392b}.success-color-icon{color:var(--primary-color)!important}tr.deleting{opacity:.6;background-color:#feecec}.spinner{animation:spin 1s linear infinite}.animate-spin{animation:spin 1s linear infinite}.input-with-button{display:flex;align-items:center;gap:8px}.input-with-button input{flex-grow:1}.calc-btn{background:none;border:none;padding:4px;cursor:pointer;color:var(--text-color);border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.calc-btn:hover{color:var(--secondary-color)}.calc-btn i{width:20px!important;height:20px!important}.measurement-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;padding:16px}.details-section{background:var(--card-bg-color, #fff);border-radius:8px;padding:16px;box-shadow:0 1px 3px #0000001a}.details-section.full-width{grid-column:1 / -1}.details-section h4{margin:0 0 16px;color:var(--text-color);font-size:16px;font-weight:600}.details-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-color)}.details-row:last-child{border-bottom:none}.details-label{color:var(--text-color-light);font-size:14px}.details-value{font-weight:500;color:var(--text-color)}.details-observations{margin-top:8px;padding:12px;background:var(--bg-color-light);border-radius:6px;font-size:14px;line-height:1.5;color:var(--text-color);white-space:pre-wrap}#measurement-details-modal .modal-content{max-width:1200px;width:90%;max-height:90vh;overflow-y:auto}#measurement-details-modal .modal-body{padding:0}.patients-table{table-layout:fixed;width:100%}.patients-table th{position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-right:1px solid var(--border-color);transition:background-color .2s ease}.patients-table th:hover{background-color:#f0f0f0}.patients-table th:last-child,.patients-table td:last-child{border-right:none}.patients-table th:not(:last-child):after{content:"";position:absolute;top:50%;right:1px;transform:translateY(-50%);width:3px;height:20px;background:repeating-linear-gradient(to bottom,var(--graph-color) 0px,var(--graph-color) 2px,transparent 2px,transparent 4px);opacity:.4;pointer-events:none}.resize-handle{position:absolute;top:0;right:-2px;width:5px;height:100%;background:transparent;cursor:col-resize;-webkit-user-select:none;user-select:none;z-index:10;border-right:2px solid transparent;transition:all .2s ease}.resize-handle:hover{background:var(--secondary-color);opacity:.3;border-right-color:var(--secondary-color);right:-3px;width:6px}.resize-handle:active,.resize-handle.dragging{background:var(--secondary-color);opacity:.6;border-right-color:var(--secondary-color);right:-3px;width:6px}.resizing{-webkit-user-select:none;user-select:none}.resizing .patients-table{cursor:col-resize}.patients-table th:nth-child(1){width:200px}.patients-table th:nth-child(2){width:80px}.patients-table th:nth-child(3){width:80px}.patients-table th:nth-child(4){width:80px}.patients-table th:nth-child(5){width:80px}.patients-table th:nth-child(6){width:80px}.patients-table th:nth-child(7){width:80px}.patients-table th:nth-child(8){width:80px}.patients-table th:nth-child(9){width:120px}.patients-table td:nth-child(1){width:200px}.payment-cell-with-loader{display:flex;align-items:center;gap:8px}.payment-discrete-sync-loader{width:14px;height:14px;border:2px solid #e2e8f0;border-top:2px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;flex-shrink:0;opacity:.7}.patients-table td:nth-child(2){width:80px}.patients-table td:nth-child(3){width:80px}.patients-table td:nth-child(4){width:80px}.patients-table td:nth-child(5){width:80px}.patients-table td:nth-child(6){width:80px}.patients-table td:nth-child(7){width:80px}.patients-table td:nth-child(8){width:80px}.patients-table td:nth-child(9){width:120px}.patients-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-right:1px solid var(--border-color)}.billing-section{margin-bottom:32px;padding:20px;background:var(--background-color);border-radius:var(--border-radius)}.billing-section h4{margin:0 0 20px;color:var(--primary-color)}.no-plan-message{display:flex;align-items:center;padding:24px;background:#fff;border-radius:var(--border-radius);border:2px dashed var(--border-color);margin-top:8px}.no-plan-message .info-icon{margin-right:20px;color:#666}.no-plan-message .info-icon i{width:48px;height:48px}.no-plan-message .info-text h5{margin:0 0 8px;color:var(--text-color)}.no-plan-message .info-text p{margin:0 0 16px;color:#666;font-size:14px}.plan-action-container{margin-top:16px}.current-plan-card{background:#fff;border-radius:var(--border-radius);padding:24px;border:1px solid var(--border-color);margin-top:8px;box-shadow:0 2px 4px #0000000d}.plan-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.plan-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0!important;margin-bottom:0!important}.plan-info h4{margin:0 0 8px;color:var(--primary-color)}.plan-price{margin:0;color:#666;font-weight:500}.plan-details{margin-bottom:24px}.plan-detail-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;border-bottom:1px solid rgba(0,0,0,.05)}.plan-detail-row:last-child{border-bottom:none}.detail-label{color:#666;font-weight:500;font-size:14px}.detail-value{font-weight:500;font-size:14px}.plan-actions{display:flex;gap:12px;flex-wrap:wrap}.plan-actions .action-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--border-color);background:#fff;border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;font-size:14px;font-weight:500;color:var(--text-color)}.plan-actions .action-btn:hover{background:var(--hover-bg);border-color:var(--primary-color);transform:translateY(-1px)}.plan-actions .pause-subscription-btn:hover{border-color:var(--warning-color);color:var(--warning-color)}.plan-actions .resume-subscription-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.section-header{display:flex;justify-content:flex-start;align-items:center;margin-bottom:16px}.filter-controls{display:flex;gap:12px;align-items:center}.no-transactions-message{text-align:center;color:#666;padding:40px 20px}.no-transactions-message i{display:block;margin:0 auto 16px;color:#ccc}.no-transactions-message p{margin:0;font-size:16px}@media (max-width: 768px){.plan-header{flex-direction:column;gap:12px;align-items:flex-start}.plan-detail-row{flex-direction:column;align-items:flex-start;gap:4px;padding:8px 0}.plan-actions{flex-direction:column;width:100%}.plan-actions .action-btn{width:100%;justify-content:center}.no-plan-message{flex-direction:column;text-align:center}.no-plan-message .info-icon{margin-right:0;margin-bottom:16px}}.payment-link-description{margin-bottom:20px;color:#666;font-size:14px;line-height:1.5}#patient-payment-select:disabled{background-color:#f8f9fa;color:#666;cursor:not-allowed}.help-text{margin-top:4px;font-size:12px;color:#888;line-height:1.4}#patient-payment-link-modal .form-group{margin-bottom:16px}#patient-payment-link-modal .form-group label{display:block;margin-bottom:6px;font-weight:500;font-size:14px;color:#333}#patient-payment-link-modal .form-group select,#patient-payment-link-modal .form-group input{width:100%;padding:10px 12px;border-radius:var(--border-radius);border:1px solid var(--border-color);font-size:14px}#patient-payment-link-modal .form-group select:focus,#patient-payment-link-modal .form-group input:focus{border-color:var(--secondary-color);outline:none;box-shadow:0 0 0 2px #d66ff633}#patient-payment-link-modal .form-actions{margin-top:24px;display:flex;justify-content:flex-end;gap:12px}.toggle-container{background:#f8f9fa;border-radius:var(--border-radius);padding:16px;border:1px solid var(--border-color);margin-top:8px}.toggle-header{display:flex;flex-direction:column;gap:20px}#add-patient-modal .toggle-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:8px}#add-patient-modal .toggle-badge{order:1;align-self:flex-start;margin-bottom:0}#add-patient-modal .toggle-label{order:2;display:flex;align-items:center;gap:12px;width:100%}#add-patient-modal .toggle-slider{order:1;flex-shrink:0}#add-patient-modal .toggle-text{order:2;margin-left:0;flex:1}.assistant-toggle-container .toggle-header{margin-bottom:8px}.assistant-toggle-container .toggle-label{display:flex;align-items:center;gap:12px;width:100%;justify-content:flex-start}.assistant-toggle-container .toggle-slider{order:1;flex-shrink:0}.assistant-toggle-container .toggle-text{order:2;margin-left:0;flex:1}.agent-info-link{color:var(--secondary-color);text-decoration:underline;cursor:pointer;transition:color .2s ease}.agent-info-link:hover{color:var(--primary-color);text-decoration:underline}.phone-input-group{display:flex;gap:8px;width:100%}.phone-prefix-select{flex:0 0 auto;width:160px;max-width:160px;padding:10px 8px;border-radius:var(--border-radius);border:1px solid var(--border-color);font-size:13px;background-color:#fff;cursor:pointer}.phone-number-input{flex:1;min-width:0;padding:10px 12px;border-radius:var(--border-radius);border:1px solid var(--border-color);font-size:14px}.phone-prefix-select:focus,.phone-number-input:focus{border-color:var(--secondary-color);outline:none;box-shadow:0 0 0 2px #d66ff633}.phone-prefix-select.error,.phone-number-input.error{border-color:var(--negative-color);background-color:#fd55600d}.phone-prefix-select.error:focus,.phone-number-input.error:focus{box-shadow:0 0 0 2px #fd556033}@media (max-width: 480px){.phone-input-group{flex-direction:column;gap:8px}.phone-prefix-select{width:100%;max-width:unset;font-size:14px;padding:10px 12px}}.analytics-summary-card{background:var(--background-color);border-radius:var(--border-radius);padding:24px;margin:20px 0;box-shadow:0 2px 4px #0000000d}.analytics-summary-card h4{margin:0 0 20px;color:var(--primary-color);font-size:18px;font-weight:600}.analytics-main-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:24px}.analytics-value-item{background:#fff;border:1px solid var(--border-color);border-radius:var(--border-radius);padding:16px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:all .2s ease}.analytics-value-item:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.analytics-value-item label{font-size:14px;color:#666;margin-bottom:8px;font-weight:500}.analytics-unit{font-size:12px;color:#888;font-weight:500}.analytics-actions{text-align:center}.analytics-modal-content{max-width:1200px;width:95%;max-height:90vh;overflow-y:auto}.analytics-sections-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:24px;margin-bottom:32px}.analytics-section{background:var(--background-color);border-radius:var(--border-radius);padding:20px}.analytics-section h4{margin:0 0 16px;color:var(--primary-color);font-weight:600;border-bottom:2px solid var(--border-color);padding-bottom:8px}.analytics-input{margin-bottom:16px}.analytics-input label{display:block;margin-bottom:6px;font-size:14px;color:#666;font-weight:500}.analytics-input input{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:14px;transition:all .2s ease}.analytics-input input:focus{border-color:var(--secondary-color);outline:none;box-shadow:0 0 0 2px #d66ff633}.analytics-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-color)}@media (max-width: 1024px){.analytics-sections-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.analytics-main-values{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}}@media (max-width: 768px){.analytics-modal-content{width:98%;margin:1% auto}.analytics-sections-grid{grid-template-columns:1fr;gap:16px}.analytics-main-values{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.analytics-summary-card{padding:16px;margin:16px 0}.analytics-modal-actions{flex-direction:column;gap:8px}.analytics-modal-actions button{width:100%}}@media (max-width: 480px){.analytics-main-values{grid-template-columns:1fr}.analytics-value-item{padding:12px}.analytics-value{font-size:20px}}#analytics-tab.tab-panel{padding:20px 0}.analytics-details-section{background:var(--card-bg-color, #fff);border-radius:8px;padding:16px;box-shadow:0 1px 3px #0000001a;margin-top:24px}.analytics-details-section h4{margin:0 0 16px;color:var(--text-color);font-size:16px;font-weight:600}.analytics-category{margin-bottom:20px}.analytics-category:last-child{margin-bottom:0}.analytics-category h5{margin:0 0 12px;color:var(--primary-color);font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.analytics-detail-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-color)}.analytics-detail-item:last-child{border-bottom:none}.analytics-detail-item label{color:var(--text-color-light);font-size:14px;margin:0}.analytics-detail-item span{font-weight:500;color:var(--text-color);font-size:14px}@media (max-width: 768px){.analytics-detail-item{flex-direction:column;align-items:flex-start;gap:4px;padding:12px 0}.analytics-detail-item label{font-weight:600}.analytics-detail-item span{font-weight:400;color:var(--text-color-light)}.analytics-category h5{font-size:13px}}.assistant-section{background:var(--background-color);border-radius:var(--border-radius);padding:24px;margin-bottom:24px;box-shadow:0 2px 4px #0000000d}.assistant-section h4{margin:0 0 20px;color:var(--primary-color);display:flex;align-items:center;gap:8px}.assistant-toggle-container{background:#fff;border:1px solid var(--border-color);border-radius:var(--border-radius);padding:20px}.assistant-toggle-container .toggle-header{margin-bottom:16px}.assistant-description{margin:0;color:#666}.conversation-topic{font-weight:500;color:var(--primary-color)}.conversation-summary{max-width:300px;font-size:13px;line-height:1.4;color:#666}.table-base td:nth-child(2){font-weight:500}.table-base td:nth-child(3){font-weight:500}.conversation-modal-content{max-width:800px;width:90%;max-height:85vh;overflow-y:auto}.conversation-header{border-bottom:1px solid var(--border-color);padding-bottom:16px;margin-bottom:20px}.conversation-meta h4{margin:0 0 12px;color:var(--primary-color);font-size:20px;font-weight:600}.conversation-info{display:flex;flex-wrap:wrap;gap:16px;font-size:14px}.conversation-info span{display:flex;align-items:center;gap:4px;color:#666;background:var(--background-color);padding:4px 8px;border-radius:4px}.conversation-summary-box{background:var(--background-color);border-radius:var(--border-radius);padding:16px;margin-bottom:20px}.conversation-summary-box h5{margin:0 0 8px;color:var(--primary-color);font-size:14px;font-weight:600}.conversation-summary-box p{margin:0;font-size:14px;line-height:1.5;color:#333}.conversation-messages h5{margin:0 0 16px;color:var(--primary-color);font-size:16px;font-weight:600}.messages-container{max-height:400px;overflow-y:auto;border:1px solid var(--border-color);border-radius:var(--border-radius);padding:16px}.message{margin-bottom:16px;padding:12px;border-radius:var(--border-radius);position:relative}.message:last-child{margin-bottom:0}.message-patient{background:#e3f2fd;border-left:4px solid #2196f3;margin-left:20px}.message-assistant{background:#f3e5f5;border-left:4px solid var(--secondary-color);margin-right:20px}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.message-sender{font-weight:600;font-size:13px;color:var(--primary-color)}.message-time{font-size:12px;color:#888}.message-content{font-size:14px;line-height:1.5;color:#333}.assistant-status-enabled{color:var(--positive-color);font-weight:500}.assistant-status-disabled{color:#888;font-weight:500}@media (max-width: 768px){.assistant-section{padding:16px;margin-bottom:16px}.assistant-toggle-container{padding:16px}.conversation-info{flex-direction:column;gap:8px}.conversation-summary{max-width:none}.message-patient{margin-left:0}.message-assistant{margin-right:0}.messages-container{max-height:300px;padding:12px}.conversation-modal-content{width:95%}}@media (max-width: 480px){.message-header{flex-direction:column;align-items:flex-start;gap:4px}.filter-controls{flex-direction:column;gap:8px}.filter-controls .secondary-btn{width:100%}}.conversations-empty-state{text-align:center;padding:60px 20px;color:#888}.conversations-empty-state i{font-size:48px;color:#ddd;margin-bottom:16px}.conversations-empty-state h5{margin:0 0 8px;color:#666;font-size:18px}.conversations-empty-state p{margin:0;font-size:14px;line-height:1.5}.assistant-toggle-in-modal{background:var(--background-color);border-radius:var(--border-radius);padding:12px 16px;margin-bottom:16px;border:1px solid var(--border-color)}.assistant-toggle-in-modal .toggle-label{font-size:14px;margin-bottom:0}.consents-section{background:var(--background-color);border-radius:var(--border-radius);padding:24px;box-shadow:0 2px 4px #0000000d}.consents-section .header-actions{margin-bottom:24px;display:flex;justify-content:flex-start}.consent-title{display:flex;align-items:center;font-weight:500;color:var(--text-color)}.upload-consent-modal .form-group{margin-bottom:20px}.upload-consent-modal .form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-color)}.upload-consent-modal .form-group input[type=text],.upload-consent-modal .form-group input[type=file]{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:14px;transition:all .2s ease}.upload-consent-modal .form-group input[type=text]:focus,.upload-consent-modal .form-group input[type=file]:focus{border-color:var(--secondary-color);outline:none;box-shadow:0 0 0 2px #d66ff633}.upload-consent-modal .help-text{margin-top:6px;font-size:12px;color:#888;line-height:1.4}.upload-consent-modal input[type=file]{padding:8px 12px;background:#fff;cursor:pointer}.upload-consent-modal input[type=file]::-webkit-file-upload-button{background:var(--primary-color);color:#fff;border:none;padding:6px 12px;border-radius:4px;margin-right:10px;cursor:pointer;font-size:12px}.upload-consent-modal input[type=file]::-webkit-file-upload-button:hover{background:var(--primary-color-dark)}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-weight:500;white-space:nowrap}.status-badge.status-pending{background-color:#fff3e0;color:#f57c00}.status-badge.status-warning{background-color:#fff8e1;color:#ffc107}.status-badge.status-positive{background-color:#e8f5e8;color:#2e7d32}.action-btn.send-consent-btn.disabled{opacity:.5;cursor:not-allowed;background-color:#f5f5f5;color:#999}.action-btn.send-consent-btn.already-sent{background-color:#e3f2fd;color:#1565c0;border:1px solid #bbdefb}.action-btn.send-consent-btn.already-sent:hover{background-color:#bbdefb;color:#0d47a1}.consents-empty-state{text-align:center;padding:60px 20px;color:#888}.consents-empty-state i{font-size:48px;color:#ddd;margin-bottom:16px}.consents-empty-state h5{margin:0 0 8px;color:#666;font-size:18px}.consents-empty-state p{margin:0;font-size:14px;line-height:1.5}@media (max-width: 768px){.consents-section{padding:16px}.consents-section .header-actions{margin-bottom:16px}.consent-title{font-size:14px}}@media (max-width: 480px){.upload-consent-modal .form-actions{flex-direction:column;gap:8px}.upload-consent-modal .form-actions button{width:100%}}.payment-sync-loader{display:inline-flex;align-items:center;justify-content:center}.payment-sync-loader .loading-spinner,.loading-spinner{width:12px;height:12px;border:1.5px solid #e2e8f0;border-top:1.5px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.empty-state{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:40px 20px;background:transparent}.patients-empty-content{text-align:center;max-width:500px;width:100%;display:flex;flex-direction:column;align-items:center}.empty-state-icon{display:flex;justify-content:center}.empty-state-title{font-family:DM Sans,Helvetica,Arial,sans-serif;font-size:var(--text-lg);font-weight:500;color:var(--text-color);margin:0 0 12px}.empty-state-description{color:var(--graph-color);margin:0 0 32px}@media (max-width: 768px){.empty-state{min-height:50vh;padding:20px}.empty-state-title{font-size:20px}.empty-state-description{font-size:14px}}.calendar-container{padding:0;font-family:DM Sans,sans-serif}.calendar-header{display:flex;flex-direction:column}.patient-selector{width:300px}.select-wrapper{position:relative}.patient-dropdown{position:absolute;top:100%;left:0;width:300px;max-height:300px;overflow-y:auto;background:#fff;border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 4px 6px #0000001a;display:none;z-index:1000}.patient-dropdown.active{display:block}.patient-item{padding:12px 16px;cursor:pointer;transition:background-color .2s ease;border-radius:var(--border-radius)}.patient-item:hover{background-color:var(--hover-bg)}.no-results{padding:12px 16px;color:#666;font-style:italic}.search-input-group{position:relative;display:flex;align-items:center}.calendar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:20px;min-height:200px}.day-card{background:#fff;border-radius:var(--border-radius);padding:20px;box-shadow:0 2px 4px #0000001a;min-width:350px;font-family:DM Sans,sans-serif;cursor:move;-webkit-user-select:none;user-select:none;transition:transform .2s ease,box-shadow .2s ease}.day-card.dragging{opacity:.8;transform:scale(1.02);box-shadow:0 8px 16px #0000001a}.drag-handle{cursor:grab;padding:4px;display:flex;align-items:center}.drag-handle:hover{cursor:grab}.drag-handle:active,.drag-handle.dragging{cursor:grabbing}.drag-icon{width:20px;height:20px;color:var(--border-color)}.header-content{display:flex;align-items:center;gap:8px}.drag-handle{cursor:move;padding:4px;display:flex;align-items:center}.drag-icon{width:20px;height:20px;color:var(--primary-color)}.day-header h3{color:var(--primary-color);font-size:16px;text-transform:capitalize;font-family:DM Sans,sans-serif;margin:0}.meals{display:flex;flex-direction:column;gap:16px}.meal{position:relative;padding:12px;background:var(--background-color);border-radius:var(--border-radius);display:flex;gap:12px;flex-direction:row;transition:all .2s ease}.meal-image-wrapper{order:-1;width:80px;height:80px;position:relative;border-radius:var(--border-radius);overflow:hidden;flex-shrink:0}.meal-image{width:100%;height:100%;object-fit:cover;transition:transform .2s ease}.meal-image-placeholder{width:100%;height:100%;background:#e0e0e0;display:flex;align-items:center;justify-content:center;color:#666}.meal-image-loading{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;color:#fff}.premium-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffffb3;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;cursor:pointer}.premium-icon{width:24px;height:24px;color:var(--secondary-color)}.meal-content{flex:1;min-width:0}.meal h4{color:var(--primary-color);font-size:14px;margin-bottom:4px;font-family:DM Sans,sans-serif}.meal p{font-size:13px;color:#666}.calendar-grid-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;gap:16px}.progress-bar-container{width:100%;max-width:400px;height:15px;background-color:#f3f3f3;border-radius:10px;overflow:hidden;margin-bottom:10px;position:relative}.progress-bar{height:100%;width:0%;background-color:var(--secondary-color);border-radius:10px;transition:width .5s ease;position:relative;overflow:hidden}.progress-bar:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to right,#fff0,#ffffff4d,#fff0);animation:shimmer 1.5s infinite;transform:translate(-100%)}.progress-percentage{text-align:center;font-size:14px;font-weight:500;color:var(--primary-color);margin-bottom:15px}@keyframes shimmer{to{transform:translate(100%)}}.macros-section{margin:16px 0;padding:16px;background:var(--background-color);border-radius:var(--border-radius)}.macros-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.macros-header h4{color:var(--primary-color);font-size:14px;margin:0;font-family:DM Sans,sans-serif}.macros-total{font-size:16px;font-weight:500;color:var(--primary-color);font-family:DM Sans,sans-serif}.macros-visualization{display:flex;gap:12px;align-items:center}.macros-chart-container{width:60px;height:60px;position:relative}.macros-grid{flex:1;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.macro-item{display:flex;flex-direction:column;align-items:center;padding:8px;background:#fff;border-radius:var(--border-radius);text-align:center}.macro-label{font-size:12px;color:#666;margin-bottom:4px;font-family:DM Sans,sans-serif}.macro-value{font-weight:500;color:var(--primary-color);margin-bottom:2px;font-family:DM Sans,sans-serif}.meal-allergens{margin-top:8px;display:flex;gap:6px;flex-wrap:wrap}.allergen{font-size:11px;padding:4px 8px;background-color:#f9e6ff;color:var(--secondary-color);border-radius:2px;font-weight:500;display:inline-block;line-height:1}.meals{display:flex;flex-direction:column;gap:12px}.meal{padding:12px;background:var(--background-color);border-radius:var(--border-radius)}.meal h4{color:var(--primary-color);font-size:14px;margin-bottom:6px;font-family:DM Sans,sans-serif}.meal p{font-size:13px;color:#666;margin-bottom:4px;font-family:DM Sans,sans-serif}.calendar-actions{display:flex;gap:12px;margin:20px 0;justify-content:space-between}.primary-actions,.export-actions{display:flex;gap:12px}.export-btn{padding:12px 24px;border-radius:8px;font-size:14px;font-family:DM Sans,sans-serif;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease;background-color:#fff;color:var(--primary-color);border:1px solid var(--border-color)}.export-btn:hover{background-color:var(--background-color)}.discard-menu-btn{background-color:#fff;color:#fa3d50;border:1px solid #fa3d50}.discard-menu-btn:hover{background-color:#fa3d50;color:#fff}.day-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.day-card{animation:card-insert .3s ease}@keyframes card-insert{0%{opacity:.5;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.meal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.meal-header h4{margin:0}.edit-meal-btn{background:none;border:none;padding:4px;cursor:pointer;color:#666;opacity:.6;transition:all .2s ease}.edit-meal-btn:hover{opacity:1}.edit-icon{width:16px;height:16px}.meal-editor-modal{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:0;background:#00000080;z-index:1000;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.meal-editor-modal.active{opacity:1;visibility:visible;max-width:100%}.meal-editor-content{position:absolute;top:0;right:0;width:600px;height:100%;background:#fff;padding:24px 0;transform:translate(100%);transition:transform .3s ease;overflow-y:auto;display:flex;flex-direction:column}.meal-editor-body{flex:1;overflow-y:auto;padding:0 24px}.meal-editor-footer{position:sticky;bottom:0;left:0;right:0;padding:16px 24px;background:#fff;border-top:1px solid var(--border-color);display:flex;gap:16px;justify-content:flex-end;box-shadow:0 -4px 12px #0000000d;transition:transform .3s ease;z-index:10;transform:translateY(0)}.meal-editor-footer.hidden{transform:translateY(100%)}.meal-editor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:0 24px}.meal-editor-header h3{margin:0;font-size:18px}.close-modal-btn{background:none;border:none;padding:4px;cursor:pointer}.form-group label{display:block;margin-bottom:8px;font-weight:500}.allergens-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.meal-macro-input{width:80px;text-align:center;margin:4px 0}.form-section:last-child{border-bottom:none}.section-title{font-size:16px;font-weight:500;margin-bottom:16px;color:var(--primary-color)}.usda-info{grid-column:1 / -1;font-size:11px;color:#888;padding-left:28px;white-space:normal;line-height:1.3}.ingredient-row{display:grid;grid-template-columns:1fr 90px 100px auto;gap:8px;align-items:center;margin-bottom:8px;padding:8px;border-radius:var(--border-radius);transition:background-color .2s ease}.ingredient-row:hover{background-color:var(--hover-bg)}.ingredient-info{display:flex;align-items:center;gap:8px;grid-column:1 / 2}.enrichment-source-info{font-size:11px;color:#666;line-height:1.2;margin-top:4px;grid-column:1 / -1;padding-left:24px}.enrichment-source-info span{opacity:.8}.enrichment-icon{width:16px;height:16px;align-self:center;flex-shrink:0}.ingredient-row input[type=text].ingredient-name-input{flex-grow:1;width:auto}.ingredient-row .quantity{grid-column:2 / 3;width:100%}.ingredient-row .unit{grid-column:3 / 4;width:100%}.ingredient-row .remove-ingredient-btn{grid-column:4 / 5;justify-self:end;background:none;border:none;color:#666;cursor:pointer;padding:4px;opacity:.6;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.ingredient-row .remove-ingredient-btn:hover{opacity:1;transform:scale(1.1);color:#fa3d50}.ingredient-row .remove-ingredient-btn .action-icon{width:20px;height:20px}.ingredient-row:only-child .remove-ingredient-btn{opacity:.3;cursor:not-allowed}.ingredient-row:only-child .remove-ingredient-btn:hover{transform:none;opacity:.3}.add-ingredient-btn,.add-recipe-btn{display:flex;align-items:center;gap:8px;background:none;border:1px dashed var(--border-color);padding:8px 16px;border-radius:var(--border-radius);color:var(--primary-color);cursor:pointer;width:100%;justify-content:center;margin-top:8px}.add-ingredient-btn:hover,.add-recipe-btn:hover{background:var(--background-color)}.add-recipe-icon,.add-ingredient-btn i{width:20px;height:20px}.add-recipe-btn{margin-bottom:16px}.recipe-search-section{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--background-color);margin:8px 0 16px;padding:16px}.recipe-search-container .search-input-group{position:relative;display:flex;align-items:center}.recipe-search-container .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:#666;z-index:1}.recipe-search-input{padding-left:40px!important;padding-right:40px!important}.close-search-btn{position:absolute;right:8px;background:none;border:none;padding:4px;cursor:pointer;color:#666;opacity:.6;transition:opacity .2s ease;z-index:1}.close-search-btn:hover{opacity:1}.close-search-icon{width:16px;height:16px}.recipe-results-container{margin-top:16px}.recipe-results-loading,.recipe-results-empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:24px;color:#666;font-size:14px}.loading-icon,.empty-icon{width:20px;height:20px}.recipe-results-list{max-height:300px;overflow-y:auto;border:1px solid var(--border-color);border-radius:var(--border-radius);background:#fff}.recipe-result-item{display:flex;align-items:center;gap:12px;padding:12px;border-bottom:1px solid var(--border-color);cursor:pointer;transition:background-color .2s ease}.recipe-result-item:last-child{border-bottom:none}.recipe-result-item:hover{background-color:var(--background-color)}.recipe-result-image{width:60px;height:60px;border-radius:var(--border-radius);object-fit:cover;flex-shrink:0}.recipe-result-content{flex:1;min-width:0}.recipe-result-title{font-weight:500;font-size:14px;margin-bottom:4px;color:var(--primary-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-result-info{display:flex;gap:16px;font-size:12px;color:#666}.recipe-result-calories,.recipe-result-time{display:flex;align-items:center;gap:4px}.recipe-info-icon{width:12px;height:12px}.nutrients-tabs{display:flex;gap:16px;margin-bottom:16px}.tab-content{display:block}.tab-content.hidden{display:none}.nutrients-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.nutrient-column{display:flex;flex-direction:column;gap:16px}.nutrient-input{display:flex;flex-direction:column;gap:4px}.nutrient-input label{font-size:13px;color:#666}.nutrient-input input{padding:8px;border:1px solid var(--border-color);border-radius:var(--border-radius);width:100%}.meal-editor-content::-webkit-scrollbar{width:8px}.meal-editor-content::-webkit-scrollbar-track{background:var(--background-color)}.meal-editor-content::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.meal-editor-content::-webkit-scrollbar-thumb:hover{background:#999}.meal-editor-modal.active .meal-editor-content{transform:translate(0)}.day-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color);margin-bottom:16px;padding-bottom:8px}.view-nutrients-btn{background:none;border:none;padding:4px;cursor:pointer;color:#666;opacity:.6;transition:opacity .2s ease}.view-nutrients-btn:hover{opacity:1}.nutrients-icon{width:18px;height:18px}.nutrients-modal{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:0;background:#00000080;z-index:1000;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.nutrients-modal.active{opacity:1;visibility:visible;max-width:100%}.nutrients-modal-content{position:absolute;top:0;right:0;width:500px;height:100%;background:#fff;padding:24px;transform:translate(100%);transition:transform .3s ease;overflow-y:auto}.nutrients-modal.active .nutrients-modal-content{transform:translate(0)}.nutrients-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.nutrients-modal-header h3{margin:0;font-size:18px}.nutrients-summary{text-align:center;margin-bottom:24px}.total-calories{margin-bottom:16px}.total-calories h4{font-size:14px;color:#666;margin-bottom:4px}.total-calories span{font-size:24px;font-weight:500;color:var(--primary-color)}.macros-chart-container{width:60px;height:60px;margin:0 auto}.nutrient-item{margin-bottom:16px}.nutrient-label{display:block;font-size:14px;margin-bottom:4px}.nutrient-value{font-weight:500}.nutrient-bar{height:6px;background:var(--background-color);border-radius:3px;margin:4px 0}.bar-fill{height:100%;background:var(--secondary-color);border-radius:3px}.meal-macro-percentage{padding:8px;border:1px solid var(--border-color);border-radius:var(--border-radius);width:100%}.micros-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.micro-category h4{margin-bottom:16px;color:var(--primary-color)}.nutrients-modal-content .macros-chart-container{width:200px;height:200px;margin:0 auto}.calories-input{text-align:center;font-size:20px;font-weight:500;color:var(--primary-color);width:120px;margin:0 auto}.modal-actions{margin-top:24px;text-align:right}.save-nutrients-btn{background-color:var(--primary-color);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;transition:background-color .2s ease}.save-nutrients-btn:hover{background-color:#3a3a3a}.nutrients-modal .modal-actions{display:flex;gap:16px;justify-content:flex-end;margin-top:24px}.nutrients-modal .save-nutrients-btn,.nutrients-modal .cancel-nutrients-btn{padding:8px 16px;border-radius:6px;cursor:pointer;font-family:inherit}.nutrients-modal .save-nutrients-btn{background:var(--primary-color);color:#fff;border:none}.nutrients-modal .cancel-nutrients-btn{background:#fff;border:1px solid var(--border-color)}.nutrient-category{color:var(--primary-color);font-size:16px;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}#micros-tab .nutrients-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-bottom:24px}#micros-tab .nutrient-column{display:flex;flex-direction:column;gap:12px}#micros-tab .nutrient-input{display:flex;flex-direction:column;gap:4px}#micros-tab .nutrient-input label{font-size:13px;color:#666}#micros-tab .nutrient-input input{padding:8px;border:1px solid var(--border-color);border-radius:6px;width:100%}.day-actions{display:flex;gap:8px}.day-action-btn{background:none;border:none;padding:4px;cursor:pointer;color:#666;opacity:.6;transition:opacity .2s ease}.day-action-btn:hover{opacity:1}.action-icon{width:18px;height:18px}.meal-actions{display:flex;gap:8px}.meal-action-btn{background:none;border:none;padding:0;cursor:pointer;color:#666;opacity:.6;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.meal-action-btn:hover{opacity:1}.delete-meal-btn:hover{color:#fa3d50}.meal-drag-handle{cursor:grab}.meal-drag-handle:active{cursor:grabbing}.action-icon{width:16px;height:16px}.meal.dragging{opacity:.8;transform:scale(1.02);box-shadow:0 4px 8px #0003;z-index:1000}.add-meal-btn{width:100%;margin-top:8px;justify-content:center}.add-meal-icon{width:18px;height:18px}.meals.drag-over{background:#45b7d11a;border-radius:var(--border-radius)}.meal-drop-indicator{height:2px;background:var(--secondary-color);margin:4px 0;border-radius:1px;opacity:0;transition:opacity .2s ease}.meal-drop-indicator.active{opacity:1}.shopping-list-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:1000;opacity:0;visibility:hidden;transition:opacity .3s ease;display:flex;justify-content:center;align-items:center}.shopping-list-modal.active{opacity:1;visibility:visible}.shopping-list-content{background:#fff;width:90%;max-width:600px;max-height:90vh;border-radius:var(--border-radius);box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column}.shopping-list-header{padding:20px 24px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.shopping-list-header h3{margin:0;font-size:18px;color:var(--primary-color)}.shopping-list-body{padding:24px;overflow-y:auto}.shopping-list-actions{display:flex;gap:12px;margin-bottom:24px}.export-list-btn{padding:8px 16px;border-radius:6px;font-family:DM Sans,sans-serif;font-size:14px;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s ease;background:var(--primary-color);color:#fff;border:none}.categories-container{display:flex;flex-direction:column;gap:24px}.category-section{background:var(--background-color);border-radius:4px;padding:16px}.category-title{margin:0 0 16px;color:var(--primary-color);font-size:16px}.ingredients-list{display:flex;flex-direction:column;gap:12px}.ingredient-item{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.shopping-item-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer}.shopping-item-checkbox input[type=checkbox]{display:none}.checkmark{width:18px;height:18px;border:2px solid var(--border-color);border-radius:4px;display:inline-block;position:relative;transition:all .2s ease}.shopping-item-checkbox input[type=checkbox]:checked+.checkmark{background:var(--primary-color);border-color:var(--primary-color)}.shopping-item-checkbox input[type=checkbox]:checked+.checkmark:after{content:"";position:absolute;left:6px;top:2px;width:4px;height:8px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.ingredient-quantity{color:#666;font-size:14px}.ingredient-name{font-size:14px}.search-container{min-width:405px}.image-preview-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;z-index:9999;justify-content:center;align-items:center}.image-preview-modal.active{display:flex!important}.image-preview-content{max-width:90%;max-height:90vh;position:relative;display:flex;justify-content:center;align-items:center}.preview-image-wrapper{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center;border-radius:6px;overflow:hidden}.preview-image{max-width:100%;max-height:90vh;border-radius:6px;object-fit:contain}.preview-image-wrapper .premium-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffc;display:flex;align-items:center;justify-content:center;border-radius:6px;padding:20px}.premium-overlay-content{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.premium-message{font-family:DM Sans,sans-serif;color:var(--secondary-color);font-size:14px;line-height:1.5;max-width:400px;margin:0}.close-preview-btn{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;cursor:pointer;padding:8px;z-index:10000}.close-preview-btn i{width:24px;height:24px}.meal-image{cursor:pointer;transition:transform .2s ease}.meal-image:hover{transform:scale(1.05)}.preview-image-wrapper{max-width:90%;max-height:90vh;position:relative}.preview-image-wrapper .premium-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffffb3;display:flex;align-items:center;justify-content:center}.preview-image-wrapper .premium-icon{width:48px;height:48px;color:var(--secondary-color)}.ingredient-info{display:flex;align-items:center;gap:8px;flex:2}.ingredient-name-input{flex-grow:1}.enrichment-icon{width:16px;height:16px;flex-shrink:0}.enrichment-icon.success{color:var(--positive-color)}.enrichment-icon.pending,.enrichment-icon.skipped,.enrichment-icon.unknown{color:#9e9e9e}.enrichment-icon.failed{color:var(--negative-color)}.enrichment-icon.estimated{color:var(--secondary-color)}.scan-ingredient-btn{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.scan-ingredient-btn:hover{transform:scale(1.1)}.scan-ingredient-btn:disabled{cursor:not-allowed;opacity:.5}.scan-icon{color:var(--primary-color)}.scan-ingredient-btn:hover .scan-icon{color:var(--secondary-color)}.ingredient-row{align-items:center}.ingredient-row .quantity{flex:1;min-width:80px}.ingredient-row .unit{width:100px;flex-shrink:0}.ingredient-row .remove-ingredient-btn{margin-left:auto}.meal-title-container{display:flex;align-items:center;gap:8px}.enrichment-alert{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background-color:#fef3cd;border:1px solid #faebcc;border-radius:50%}.enrichment-alert-icon{width:12px;height:12px;color:#f0ad4e}.recipe-selection-loader{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;z-index:2000;display:none;align-items:center;justify-content:center}.recipe-loader-overlay{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.recipe-loader-content{background:#fff;border-radius:var(--border-radius);padding:32px;text-align:center;max-width:400px;box-shadow:0 8px 32px #0000004d;animation:fadeInScale .3s ease-out}.recipe-loader-content .loader-icon{margin-bottom:16px}.recipe-loader-content .loader-icon i{width:40px;height:40px;color:var(--primary-color)}.recipe-loader-content .loader-title{font-size:14px;font-weight:600;color:var(--primary-color);margin:0 0 8px;font-family:DM Sans,sans-serif}.recipe-loader-content .loader-subtitle{font-size:14px;color:#666;margin:0;font-family:DM Sans,sans-serif}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.spin-icon{animation:spin 1.5s linear infinite}.recipe-results-list[style*="pointer-events: none"]{transition:opacity .3s ease}.recipe-results-list[style*="pointer-events: none"] .recipe-result-item{cursor:not-allowed}.menu-actions{display:flex;gap:12px;align-items:center}.generate-menu-btn{position:relative;overflow:hidden;transition:all .2s ease-in-out;background:linear-gradient(135deg,var(--secondary-color),#6d80fc 71.35%)!important;color:#fff!important;border:none!important;box-shadow:0 6px #5a4edb,0 8px 15px #0000004d!important}.generate-menu-btn:hover{background:linear-gradient(135deg,var(--secondary-color),#6d80fc 71.35%)!important;box-shadow:0 8px #5a4edb,0 12px 20px #0003!important;transform:translateY(-3px)}.generate-menu-btn:active{transform:translateY(3px);box-shadow:0 3px #5a4edb,0 5px 10px #0003!important}.generate-menu-btn:after{content:"";position:absolute;top:100%;left:10%;right:10%;height:6px;border-radius:50%;background:#5a4edb;filter:blur(2px);opacity:.4;transition:all .2s ease-in-out;pointer-events:none}.generate-menu-btn:hover:after{top:110%;opacity:.6}.menu-icon{width:18px;height:18px}.loading.animate-spin{animation:spin 1s linear infinite}.scan-ingredient-btn:disabled{opacity:.6;cursor:not-allowed}.scan-ingredient-btn:disabled:hover{background-color:inherit;transform:none}.calendario-container{font-family:DM Sans,sans-serif}.calendario-header{margin-bottom:20px}.calendario-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.view-switcher{display:flex;gap:8px}.calendario-filters{display:flex;gap:2rem;align-items:end;padding:20px;background:#fff;border-radius:var(--border-radius);box-shadow:0 2px 4px #0000000d}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{color:#666}.form-select{padding:6px 10px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-family:DM Sans,sans-serif;background-color:#fff;min-width:200px}.form-select:focus{outline:none;border-color:var(--secondary-color)}.calendario-main{background:#fff;border-radius:var(--border-radius);box-shadow:0 2px 8px #0000001a;padding:1.5rem;margin-bottom:20px}.calendario-legend{background:#fff;border-radius:var(--border-radius);box-shadow:0 2px 4px #0000000d;padding:20px}.calendario-legend h4{margin:0 0 12px;color:#666}.legend-items{display:flex;gap:2rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:8px}.legend-color{width:16px;height:16px;border-radius:var(--border-radius)}.legend-color.consultation{background-color:#40b2fd}.legend-color.followup{background-color:#68ba6b}.legend-color.review{background-color:#ffb13d}.legend-color.urgent{background-color:#ff6054}#appointment-calendar{font-family:DM Sans,sans-serif}#appointment-calendar .fc-header-toolbar{margin-bottom:20px!important}#appointment-calendar .fc-toolbar{margin-bottom:14px!important}#appointment-calendar .fc-toolbar-chunk{margin:0!important}#appointment-calendar .fc-toolbar-chunk:first-child{margin-left:0!important}#appointment-calendar .fc-toolbar .fc-button{margin:0 4px 0 0!important}#appointment-calendar .fc-today-button{margin-left:8px!important;margin-right:0!important}#appointment-calendar .fc-toolbar-title{font-size:var(--h2-size)!important;font-weight:500!important;color:var(--primary-color)!important;text-transform:capitalize!important}#appointment-calendar .fc-button-primary{background:none!important;border:none!important;color:#666!important;font-family:DM Sans,sans-serif!important;margin-left:0!important;font-size:var(--text-sm)!important;box-shadow:none!important;padding:4px 8px!important}#appointment-calendar .fc-button-primary:hover{background:none!important;border:none!important;color:var(--primary-color)!important;box-shadow:none!important}#appointment-calendar .fc-button-primary:disabled{background:none!important;border:none!important;color:#666!important;box-shadow:none!important;opacity:1!important;padding:0!important}#appointment-calendar .fc-button-group{display:none!important;margin-left:0!important}#appointment-calendar .fc-button-group .fc-button{margin-left:0!important}#appointment-calendar .fc-daygrid-day-number{color:var(--text-color)!important;font-weight:500!important}#appointment-calendar .fc-day-today{background-color:#d66ff61a!important}#appointment-calendar .fc-day-today .fc-daygrid-day-number{color:var(--secondary-color)!important;font-weight:600!important}#appointment-calendar .fc-event{border:none!important;border-radius:var(--border-radius)!important;padding:2px 6px!important;font-size:12px!important;font-weight:500!important;cursor:pointer!important}#appointment-calendar .fc-event-title{font-size:12px!important}#appointment-calendar .fc-event-time{font-size:11px!important;opacity:.9!important}#appointment-calendar .fc-event.consultation{background-color:#40b2fd!important;color:#fff!important}#appointment-calendar .fc-event.followup{background-color:#68ba6b!important;color:#fff!important}#appointment-calendar .fc-event.review{background-color:#ffb13d!important;color:#fff!important}#appointment-calendar .fc-event.urgent{background-color:#ff6054!important;color:#fff!important}#appointment-calendar .fc-timegrid-slot-label{font-size:12px!important;color:#666!important}#appointment-calendar .fc-timegrid-axis{font-size:12px!important;text-align:right!important}#appointment-calendar .fc-list-event-title{color:var(--text-color)!important}#appointment-calendar .fc-list-event-time{color:#666!important}#appointment-calendar .fc-event:hover{opacity:.8!important;transform:translateY(-1px)!important;transition:all .2s ease!important}#appointment-calendar .fc-more-link{color:var(--secondary-color)!important;font-weight:500!important}#appointment-calendar .fc-more-link:hover{color:var(--primary-color)!important}@media (max-width: 768px){.calendario-actions{flex-direction:column;gap:1rem;align-items:stretch}.view-switcher{justify-content:center}.calendario-filters{flex-direction:column;gap:1rem}.legend-items{gap:1rem}#appointment-calendar .fc-toolbar-title{font-size:1.2rem!important}}.appointment-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:1000;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.appointment-modal.active{display:flex;align-items:center;justify-content:center;opacity:1;visibility:visible}.appointment-modal-content{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026;transform:translateY(20px);transition:transform .3s ease}.appointment-modal.active .appointment-modal-content{transform:translateY(0)}.appointment-modal-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.appointment-modal-header h3{margin:0;font-size:var(--text-lg);color:var(--primary-color);font-weight:500}.close-modal-btn{background:none;border:none;padding:4px;cursor:pointer;color:var(--text-color);display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius);transition:background-color .2s ease}.close-modal-btn:hover{background-color:var(--hover-bg)}.close-modal-btn i{width:20px;height:20px}.appointment-modal-body{padding:20px;overflow-y:auto;flex:1}.appointment-modal-body::-webkit-scrollbar{width:8px}.appointment-modal-body::-webkit-scrollbar-track{background:var(--background-color)}.appointment-modal-body::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.appointment-modal-body::-webkit-scrollbar-thumb:hover{background:#999}.form-section{background:var(--background-color);padding:20px;border-radius:var(--border-radius);margin-bottom:20px}.form-section:last-child{margin-bottom:0}.section-title{font-size:var(--text-md);font-weight:500;margin:0 0 16px;color:var(--primary-color)}.form-group:last-child{margin-bottom:0}.form-group label{display:block;font-size:var(--text-sm);color:#666;margin-bottom:6px;font-weight:500}.form-row{display:flex;gap:16px}.form-group.half{flex:1}.appointment-modal-footer{padding:16px 20px;border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;background:#fff}.modal-actions-left{display:flex}.modal-actions-right{display:flex;gap:12px}.delete-btn{padding:10px 16px;background-color:transparent;color:var(--negative-color);border:1px solid var(--negative-color);border-radius:var(--border-radius);font-size:var(--text-sm);font-family:DM Sans,sans-serif;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.delete-btn:hover{background-color:var(--negative-color);color:#fff}.delete-btn svg,.save-btn svg,.cancel-btn svg{width:16px!important;height:16px!important}.error-message{color:var(--negative-color);font-size:12px;margin-top:4px;display:none}.appointment-modal .save-btn.loading{position:relative;color:transparent}.appointment-modal .save-btn.loading:after{content:"";position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border:2px solid transparent;border-top:2px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 768px){.appointment-modal-content{width:95%;max-height:95vh;margin:10px}.appointment-modal-header,.appointment-modal-body,.appointment-modal-footer{padding:16px}.form-row{flex-direction:column;gap:16px}.form-group.half{flex:none}.modal-actions-right{flex-direction:column-reverse;gap:8px;width:100%}.appointment-modal-footer{flex-direction:column;align-items:stretch;gap:12px}.modal-actions-left{justify-content:center}.save-btn,.cancel-btn,.delete-btn{width:100%;justify-content:center}}.agente-ia-container{padding:24px;display:flex;flex-direction:column;background:var(--white);border-radius:var(--border-radius);box-shadow:0 2px 4px #0000000d}.agente-ia-container .master-toggle-container{display:flex;align-items:center}.agente-ia-container .master-toggle-label{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;width:100%}.agente-ia-container .master-toggle-label input{opacity:0;width:0;height:0}.agente-ia-container .master-toggle-slider{position:relative;display:inline-block;width:36px;height:20px;background-color:#ccc;border-radius:20px;transition:.3s}.agente-ia-container .master-toggle-slider:before{position:absolute;content:"";height:16px;width:16px;left:2px;top:2px;background-color:#fff;border-radius:50%;transition:.3s;box-shadow:0 2px 4px #0003}.agente-ia-container .master-toggle-label input:checked~.master-toggle-slider{background-color:var(--positive-color)}.agente-ia-container .master-toggle-label input:checked~.master-toggle-slider:before{transform:translate(16px)}.master-toggle-text{font-size:var(--text-sm);font-weight:600;color:var(--text-color);flex:1;padding-right:12px}.status-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;font-size:var(--text-sm);font-weight:500}.status-indicator.active{background-color:#e6f4ea;color:#05a62a}.status-dot{width:8px;height:8px;border-radius:50%;background-color:currentColor;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-indicator.inactive{background-color:#feeced;color:#dc3545}.status-indicator.inactive .status-dot{animation:none;opacity:.6}.tab-content-container{background:var(--white);border-radius:var(--border-radius);box-shadow:0 2px 4px #0000000d}.config-section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:20px}.config-section-title h3{margin:0 0 8px;font-size:var(--text-lg);color:var(--text-color)}.master-toggle-wrapper{display:flex;flex-direction:column;align-items:flex-start;gap:12px;flex-shrink:0;padding-bottom:20px}.section-description{color:var(--graph-color);font-size:var(--text-sm)}.config-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-bottom:32px}.config-card{border:1px solid #e9ecef;border-radius:var(--border-radius);padding:20px;background:var(--white);transition:border-color .2s ease;box-shadow:0 2px 8px #0000001a}.config-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #00000026}.ai-config-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:8px;border-bottom:1px solid var(--border-color)}.config-icon{display:flex;align-items:center;justify-content:center;width:40px;height:34px;background-color:transparent;border-radius:8px;flex-shrink:0;font-size:24px}.config-info{flex:1}.config-info h4{margin:0 0 4px;font-size:var(--text-base);color:var(--text-color);font-weight:600}.config-info p{margin:0 0 8px;font-size:var(--text-sm);color:var(--graph-color)}.config-toggle{flex-shrink:0}.agente-ia-container .config-card:has(.toggle-label input:disabled){opacity:.6}.agente-ia-container .config-card:has(.toggle-label input:disabled) .config-info,.agente-ia-container .config-card:has(.toggle-label input:disabled) .config-details{opacity:.7}.config-details{padding-left:56px}.config-details ul{margin:0;padding:0;list-style:none}.config-details li{position:relative;padding-left:16px;margin-bottom:4px;font-size:var(--text-xs);color:var(--graph-color)}.config-details li:before{content:"•";position:absolute;left:0;color:var(--primary-color);font-weight:700}.config-actions{display:flex;justify-content:center;padding-top:24px;border-top:1px solid #e9ecef}.activity-history-section h3{margin:0 0 8px;font-size:var(--text-lg);color:var(--text-color)}.activity-disclaimer{display:flex;align-items:center;gap:6px;margin:16px 0 24px;padding:8px 12px;background-color:#f8f9fa;border-radius:6px;font-size:var(--text-xs);color:var(--graph-color);border-left:3px solid #e9ecef}.activity-disclaimer i{width:14px;height:14px;opacity:.7}.history-filters{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px;padding:16px;background-color:#f8f9fa;border-radius:var(--border-radius)}.filter-group{display:flex;flex-direction:column;gap:4px;min-width:150px}.filter-group label{font-size:var(--text-xs);font-weight:500;color:var(--text-color)}.filter-group select{padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:var(--text-sm);background:#fff}.table-wrapper{overflow-x:auto;border-radius:var(--border-radius);border:1px solid #e9ecef}.activity-table{width:100%;border-collapse:collapse;background:#fff}.activity-table th,.activity-table td{padding:12px;text-align:left;border-bottom:1px solid #e9ecef;font-size:var(--text-sm)}.activity-table th{background-color:#f8f9fa;font-weight:600;color:var(--text-color);position:relative;-webkit-user-select:none;user-select:none}.activity-table tbody tr:hover{background-color:#f8f9fa}.activity-type-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:var(--border-radius);font-size:var(--text-sm);font-weight:500;font-family:DM Sans,sans-serif}.activity-type-badge.email{background-color:#e3f2fd;color:#1976d2}.activity-type-badge.chat{background-color:#f3e5f5;color:#7b1fa2}.activity-type-badge.payment{background-color:#e8f5e8;color:#388e3c}.activity-type-badge.plan{background-color:#fff3e0;color:#f57c00}.activity-type-badge.analysis{background-color:#fce4ec;color:#c2185b}.patient-link{color:var(--primary-color);text-decoration:none;font-weight:500}.patient-link:hover{text-decoration:underline}.activity-summary{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--graph-color);font-size:var(--text-xs)}.activity-actions{display:flex;gap:8px}.resize-handle{position:absolute;right:0;top:0;bottom:0;width:4px;cursor:col-resize;background:transparent;transition:background-color .2s ease}.resize-handle:hover,.resize-handle.dragging{background-color:var(--primary-color)}@media (max-width: 1200px){.config-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width: 768px){.config-section-header{flex-direction:column;align-items:flex-start}.master-toggle-wrapper{align-items:flex-start;width:100%}.config-grid{grid-template-columns:1fr}.history-filters{flex-direction:column}.filter-group{min-width:100%}.config-details{padding-left:0;margin-top:12px}}.billing-container{font-family:DM Sans,sans-serif;background-color:#fff;padding:24px}.billing-container input,.billing-container select,.billing-container button,.billing-container textarea{font-family:DM Sans,sans-serif}.billing-container .modal-content{font-family:DM Sans,sans-serif;border-radius:var(--border-radius)}.billing-container .modal input,.billing-container .modal select,.billing-container .modal textarea,.billing-container table,.billing-container th,.billing-container td,.billing-container .status-badge{font-family:DM Sans,sans-serif}.billing-container .section-header{display:flex;justify-content:flex-start;align-items:center;margin-bottom:24px;width:100%;gap:16px}.plans-grid{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px}.billing-container .plan-card{display:flex!important;flex-direction:column!important;gap:16px!important;flex:0 0 300px!important;max-width:300px!important;padding:24px!important;border-radius:var(--border-radius)!important;font-family:DM Sans,Helvetica,Arial,sans-serif!important;cursor:pointer!important;transition:all .2s ease-in-out!important;position:relative!important;overflow:hidden!important;border:none!important;background:linear-gradient(#fff,#fff 71.35%)!important;box-shadow:0 6px #d7d9dc,0 8px 15px #0000001a!important}.billing-container .plan-card:hover{transform:translateY(-3px)!important;background:linear-gradient(#fff,#fff 71.35%)!important;box-shadow:0 8px #d7d9dc,0 12px 20px #0000001a!important}.billing-container .plan-card:after{content:""!important;position:absolute!important;top:100%!important;left:10%!important;right:10%!important;height:6px!important;border-radius:50%!important;filter:blur(2px)!important;opacity:.4!important;transition:all .2s ease-in-out!important;pointer-events:none!important;background:#d1d1d1!important}.billing-container .plan-card:hover:after{top:110%!important;opacity:.6!important}.billing-plan-card-header{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:16px;background:var(--background-color);border-radius:var(--border-radius);box-shadow:0 1px 3px #00000014}.plan-title-price-row{display:flex;justify-content:space-between;align-items:center;width:100%}.billing-plan-card-title{color:var(--text-color);font-size:18px;margin:0}.billing-plan-card-price{font-size:16px;color:var(--primary-color);background:var(--white);padding:6px 12px;border-radius:var(--border-radius)}.plan-card-description{color:#666;padding:10px}.plan-card-meta{padding:0}.field-readonly{background-color:#f5f5f5!important;color:#666!important;cursor:not-allowed!important;opacity:.7}.field-readonly:focus{border-color:#ddd!important;box-shadow:none!important}.edit-mode-info{margin:15px 0;padding:12px;background-color:#e3f2fd;border:1px solid #2196f3;border-radius:6px;font-size:14px}.edit-mode-info .info-message{display:flex;align-items:flex-start;gap:8px}.edit-mode-info .info-icon{color:#2196f3;width:16px;height:16px;margin-top:2px;flex-shrink:0}.edit-mode-info p{margin:0;line-height:1.4;color:#1565c0}.save-btn.loading{opacity:.7;cursor:not-allowed;pointer-events:none;display:flex;align-items:center;justify-content:center}.save-btn.loading .loading-spinner{width:14px;height:14px;border-width:2px;margin-right:8px}.plan-card-actions{display:flex;gap:8px;margin-top:auto}.empty-state{width:100%;display:flex;justify-content:center;align-items:center;padding:40px;align-self:center}.empty-state-content{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px;gap:4px;background:#fff;max-width:400px}.empty-state-content p{color:#666}.modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1000;align-items:center;justify-content:center}.modal.active{display:flex}.modal-content{background:#fff;border-radius:var(--border-radius);width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-body{padding:20px}.billing-container .tab-panel.active{padding:0;margin-top:0}.billing-container #billing-plans .section-header{margin-bottom:16px}.stripe-connect-section{margin-bottom:20px}.section-header{margin-bottom:24px;text-align:center}.stripe-intro{display:flex;align-items:center;gap:20px}.stripe-logo{width:60px;height:auto;object-fit:contain;border-radius:8px}.section-description{text-align:left;color:#666;line-height:1.6;font-size:var(--text-sm)}.stripe-status-card{display:flex;flex-direction:column;align-items:stretch;text-align:center;background:#fff;border-radius:var(--border-radius);padding:20px;box-shadow:0 6px 20px #00000026}.stripe-status-card .primary-btn{margin:25px auto 0}#connect-stripe-btn{background:linear-gradient(#6b5cff,#635bff 71.35%)!important;box-shadow:0 6px #4a3fd9,0 8px 15px #0000004d!important}#connect-stripe-btn:hover{background:linear-gradient(#7b6cff,#6b5cff 71.35%)!important;box-shadow:0 8px #4a3fd9,0 12px 20px #0003!important}#connect-stripe-btn:active{box-shadow:0 3px #4a3fd9,0 5px 10px #0003!important}#connect-stripe-btn:after{background:#4a3fd9!important}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:24px;max-width:1000px;margin-top:20px}.settings-card{background:#fff;border-radius:var(--border-radius);padding:24px;box-shadow:0 2px 4px #0000000d}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.bank-info{display:flex;flex-direction:column;gap:16px}.info-item{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.static-value{padding:8px 12px;background:var(--hover-bg);border-radius:var(--border-radius);font-size:var(--text-sm);color:var(--text-color)}.legal-docs{display:flex;flex-direction:column;gap:16px}.doc-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--hover-bg);border-radius:var(--border-radius)}.doc-info{display:flex;align-items:center;gap:12px}.doc-info i{width:20px;height:20px;color:#666}.status-badge.verified{background:#e6f4ea;color:#1e7e34}.status-badge.pending{background:#fff3e0;color:#f57c00}.balance-amount{padding:4px 8px;border-radius:4px;font-size:var(--text-sm);font-weight:500;text-align:left;display:inline-block;width:auto}.balance-amount.positive{background-color:#e6f4ea;color:#05a62a}.balance-amount.negative{background-color:#feeced;color:#dc3545}.balance-amount.pending{background-color:#fff3e0;color:#f57c00}@media (max-width: 768px){.dashboard-grid{grid-template-columns:1fr}.chart-container,.recent-transactions{grid-column:span 1}.transaction-details,.settings-grid{grid-template-columns:1fr}.stripe-connect-section{padding:16px}}.connection-status{display:flex;align-items:center;gap:8px;padding:12px;border-radius:var(--border-radius)}.connection-status i{width:18px;height:18px}.connection-status svg{width:18px!important;height:18px!important}.connection-status span{font-size:var(--text-sm);font-weight:400}.connection-status.connected{background-color:#e6f4ea;color:#05a62a;border:1px solid #A5D6A7}.connection-status.connected i{color:#05a62a}.connection-status.pending{background-color:#fff3e0;color:#e65100;border:1px solid #FFCC80}.connection-status.pending i{color:#e65100}.connection-status.disconnected{background-color:#f5f5f5;color:#666;border:1px solid #E0E0E0}.connection-status.disconnected i{color:#666}.stripe-status-card .primary-button{margin-top:16px;width:100%;justify-content:center;padding:12px;font-weight:500}.stripe-status-card .primary-button i{width:20px;height:20px}.stripe-status-card .help-text{color:#666;font-size:var(--text-sm);margin-top:8px;text-align:center}.modal .form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.modal .form-actions .secondary-button{background:var(--hover-bg);color:var(--text-color);border:none}.modal .form-actions .secondary-button:hover{background:#e0e0e0}.modal .close-modal{background:none;border:none;padding:4px;cursor:pointer;color:#666;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.modal .close-modal:hover{background:var(--hover-bg);color:var(--primary-color)}.modal .close-modal i{width:20px;height:20px}.modal .modal-header{padding:16px 20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal .modal-header h3{margin:0;font-size:var(--text-lg);color:var(--text-color)}.modal .form-group{margin-bottom:20px}.modal .form-group:last-child{margin-bottom:0}.modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.modal .form-row .form-group{margin-bottom:0}.modal .form-help{display:block;font-size:var(--text-xs);color:#666;margin-top:4px;line-height:1.4}@media (max-width: 600px){.modal .form-row{grid-template-columns:1fr;gap:12px}}.stripe-info{display:flex;flex-direction:column;gap:16px}.stripe-actions{margin-top:8px}.stripe-actions .primary-btn:disabled{background-color:#ccc;cursor:not-allowed;box-shadow:none}.stripe-account-help-text{color:var(--graph-color)}.status-loading{display:flex;flex-direction:column;align-items:center;gap:16px;padding:20px}.stripe-discrete-sync-loader{width:16px;height:16px;border:2px solid #e2e8f0;border-top:2px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-left:8px;flex-shrink:0;opacity:.7}.stripe-status-header-with-loader{display:flex;align-items:center;gap:4px;text-align:center}.stripe-status-header-with-loader h3{margin:0;font-size:var(--text-lg);font-weight:600}.loading-spinner{width:30px;height:30px;border:3px solid #f3f3f3;border-top:3px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.stripe-status-disconnected,.stripe-status-pending{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px;gap:4px;background:#fff}.stripe-status-connected{display:flex;flex-direction:column;gap:4px;padding:20px;background:#fff}.stripe-status-restricted{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px;gap:4px;background:#fff}.status-header{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.status-icon{width:20px;height:20px}.status-header h3{margin:0;font-size:var(--text-lg);font-weight:600}.stripe-status-disconnected p,.stripe-status-pending p,.stripe-status-connected p,.stripe-status-restricted p,.status-loading p{color:#666}.stripe-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:16px 0}.balance-card{background:#fff;padding:16px;border-radius:var(--border-radius);border:1px solid #e0e0e0;text-align:center}.balance-label{display:block;font-size:var(--text-sm);color:#666;margin-bottom:8px}.balance-amount{display:block;font-size:var(--text-lg);font-weight:600;color:var(--primary-color)}.pending-actions,.stripe-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.pending-actions button,.stripe-actions button{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:var(--border-radius);font-size:var(--text-sm);font-weight:500;transition:all .2s ease;border:none;cursor:pointer}.stripe-actions .primary-btn{background:var(--primary-color);color:#fff}.stripe-actions .primary-btn:hover{background:var(--primary-color-hover);transform:translateY(-1px)}.stripe-actions .secondary-btn{background:#f5f5f5;color:#666}.stripe-actions .secondary-btn:hover{background:#e0e0e0}.stripe-advanced-settings{display:flex;flex-direction:column;gap:16px}@media (max-width: 768px){.stripe-status-card{padding:20px 16px}.pending-actions,.stripe-actions{flex-direction:column;align-items:stretch}.stripe-summary{grid-template-columns:1fr}}@keyframes highlight-pulse{0%{box-shadow:0 0 #d66ff6b3}70%{box-shadow:0 0 0 10px #d66ff600}to{box-shadow:0 0 #d66ff600}}.highlight-btn{animation:highlight-pulse 1.5s ease-in-out 2;transform:scale(1.05);transition:transform .3s ease}.status-badge.paid{background:#22c55e1a;color:#059669;border:1px solid rgba(34,197,94,.2)}.status-badge.pending{background:#fbbf241a;color:#d97706;border:1px solid rgba(251,191,36,.2)}.status-badge.failed{background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.2)}.status-badge.succeeded{background:#22c55e1a;color:#059669;border:1px solid rgba(34,197,94,.2)}.status-badge.status-refund{background:#6b72801a;color:#6b7280}.checkbox-label{display:flex;align-items:center;cursor:pointer;font-size:14px;gap:8px;margin:0;-webkit-user-select:none;user-select:none;line-height:18px}.checkbox-text{line-height:18px}.checkbox-label input[type=checkbox]{display:none}.checkmark{width:18px;height:18px;border:2px solid var(--border-color);border-radius:4px;display:inline-block;position:relative;transition:all .2s ease;flex-shrink:0;vertical-align:top}.checkbox-label input[type=checkbox]:checked+.checkmark{background:var(--primary-color);border-color:var(--primary-color)}.checkbox-label input[type=checkbox]:checked+.checkmark:after{content:"";position:absolute;left:5px;top:1px;width:4px;height:8px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.tooltip-container{position:relative;display:inline-block;margin-left:4px;vertical-align:top;line-height:18px}.tooltip-icon{width:16px;height:16px;color:var(--graph-color);cursor:help;vertical-align:top;margin-top:1px}.tooltip-content{position:absolute;bottom:125%;left:50%;transform:translate(-50%);background:#000000e6;color:#fff;padding:8px 12px;border-radius:6px;font-size:12px;width:280px;z-index:1010;white-space:normal;line-height:1.4;visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s ease;pointer-events:none;font-weight:400}.tooltip-content:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid;border-color:rgba(0,0,0,.9) transparent transparent transparent}.tooltip-container:hover .tooltip-content{visibility:visible;opacity:1}.transaction-id{font-family:Courier New,monospace;font-size:12px;color:var(--text-color);background:#0000000d;padding:2px 6px;border-radius:4px;display:inline-block;cursor:pointer;transition:background-color .2s ease}.transaction-id:hover{background:#0000001a}@media (max-width: 768px){.transaction-id{font-size:10px;padding:1px 4px}}.help-modal{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:0;background:#00000080;z-index:1000;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.help-modal.active{opacity:1;visibility:visible;max-width:100%}.help-modal-content{display:flex;flex-direction:column;position:absolute;top:0;right:0;width:500px;height:100%;background:#fff;padding:24px 0;transform:translate(100%);transition:transform .3s ease}.help-modal.active .help-modal-content{transform:translate(0)}.help-modal-header{display:flex;justify-content:space-between;align-items:center;padding:0 24px;margin-bottom:24px}.help-modal-header h3{margin:0;font-size:20px;color:var(--primary-color)}.close-modal-btn{background:none;border:none;padding:8px;cursor:pointer;color:#666}.help-modal-body{display:flex;flex-grow:1;overflow:hidden}.search-input{width:100%;padding:12px 16px 12px 40px;border:1px solid var(--border-color);border-radius:6px;font-family:inherit}.help-sections{display:flex;flex-direction:column;gap:24px}.help-section h4{margin:16px 0;color:var(--primary-color)}.help-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.help-link{display:flex;align-items:center;gap:12px;padding:12px;text-decoration:none;color:#666;background:var(--background-color);border-radius:6px;transition:all .2s ease}.help-link:hover{background:var(--hover-bg);color:var(--primary-color)}.help-icon{width:18px;height:18px}.contact-info{display:flex;flex-direction:column;gap:32px}.contact-section{background:var(--background-color);padding:24px;border-radius:6px}.contact-section h4{margin:0 0 12px;color:var(--primary-color)}.contact-options{display:flex;flex-direction:column;gap:12px;margin-top:16px}.contact-option{display:flex;align-items:center;gap:12px;color:#666;text-decoration:none;padding:8px;border-radius:6px;transition:all .2s ease}.contact-option:hover{background:var(--hover-bg);color:var(--primary-color)}.contact-icon{width:18px;height:18px}.contact-form{margin-top:16px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;color:#666}.submit-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:var(--primary-color);color:#fff;border:none;border-radius:6px;cursor:pointer;font-family:inherit;transition:background .2s ease}.submit-btn:hover{background:#3a3a3a}.submit-icon{width:18px;height:18px}.resources-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.resource-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px;background:var(--background-color);border-radius:6px;text-decoration:none;color:inherit;transition:all .2s ease}.resource-card:not(.disabled):hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.resource-card.disabled{opacity:.7;cursor:default;background:#f5f5f5}.resource-card.disabled:hover{transform:none;box-shadow:none}.resource-card i{width:40px;height:40px;color:var(--primary-color);margin-bottom:16px}.resource-card.disabled i{color:#999}.resource-card h4{margin:0 0 8px;color:var(--primary-color)}.resource-card.disabled h4{color:#666}.resource-card p{margin:0;font-size:14px;color:#666}.resource-card.disabled p{color:#999}.availability-text{margin-top:12px;font-size:13px;color:var(--secondary-color);font-style:italic}.resource-header{position:relative;display:flex;justify-content:center;margin-bottom:16px}.resource-header i{width:40px;height:40px;color:var(--primary-color)}.coming-soon-badge{position:absolute;top:-8px;right:-8px;background:var(--secondary-color);color:#fff;font-size:12px;padding:4px 8px;border-radius:6px;font-weight:500}.help-sidebar{width:100%;padding:0;transition:transform .3s ease}.help-sidebar.hidden{display:none}.help-nav-item{display:block;padding:20px 24px;color:#666;text-decoration:none;transition:all .2s ease;border-bottom:1px solid var(--border-color)}.help-nav-content{display:flex;flex-direction:column;gap:8px}.help-nav-header{display:flex;align-items:center;gap:12px}.help-nav-header span{font-weight:500;color:var(--text-color)}.help-nav-description{margin:0;font-size:14px;color:#666;padding-left:32px}.help-nav-icon{width:20px;height:20px;flex-shrink:0}.help-nav-item:hover{background:var(--hover-bg)}.help-nav-item:hover .help-nav-header span{color:var(--primary-color)}.help-nav-item.active{background:var(--hover-bg)}.help-nav-item.active .help-nav-header span{color:var(--primary-color)}.help-content{flex-grow:1;padding:0}.help-section{display:none;padding:0 24px;height:100%}.help-section.active{display:block}.chat-container{text-align:center;padding:16px;display:flex;flex-direction:column;align-items:center}.chat-container .primary-btn{margin-top:24px}.chat-icon{width:20px;height:20px}.back-button{display:none;align-items:center;gap:8px;padding:0;background:none;border:none;color:#666;cursor:pointer;margin-bottom:24px}.back-button.visible{display:flex}.back-button:hover{color:var(--primary-color)}.back-button i{width:20px;height:20px}.chat-mascot{width:180px;height:auto;display:block;margin-left:auto;margin-right:auto}.notifications-dropdown{position:absolute;top:calc(100% + 20px);right:0;width:360px;background:#fff;border-radius:var(--border-radius);box-shadow:0 4px 12px #00000026;display:none;z-index:1000}.notifications-dropdown.show{display:block}.notifications-header{padding:16px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.notifications-header h3{font-size:var(--text-md);margin:0}.mark-all-read{background:none;border:none;color:var(--secondary-color);font-size:var(--text-sm);font-family:DM Sans,sans-serif;cursor:pointer;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--border-radius);transition:all .2s ease}.mark-all-read:hover{background:var(--hover-bg)}.mark-all-read i,.mark-all-read svg{width:20px;height:20px;stroke-width:2}.mark-all-read i svg{width:20px;height:20px;stroke:currentColor}.mark-all-read span{font-family:DM Sans,sans-serif}.notifications-list{max-height:400px;overflow-y:auto}.notification-item{padding:12px 16px;border-bottom:1px solid var(--border-color);display:block;cursor:pointer;transition:background-color .2s ease}.notification-item:hover{background-color:var(--hover-bg)}.notification-item.unread{background-color:#2424240a}.notification-item.unread:hover{background-color:#24242414}.notification-icon{display:none}.notification-content{width:100%}.notification-title{font-weight:500;margin-bottom:4px}.notification-message{color:#666;font-size:var(--text-sm);margin-bottom:4px}.notification-time{color:#999;font-size:var(--text-xs)}.notifications-footer{padding:12px 16px;text-align:center;border-top:1px solid var(--border-color)}.view-all{color:var(--secondary-color);text-decoration:none;font-size:var(--text-sm)}.view-all:hover{text-decoration:underline}.header-icon-wrapper{position:relative}.notification-badge{position:absolute;top:-4px;right:-4px;background:var(--secondary-color);color:#fff;border-radius:50%;width:14px;height:14px;font-size:8px;display:flex;align-items:center;justify-content:center;font-weight:500;z-index:1001}.settings-dropdown{position:absolute;top:calc(100% + 20px);right:0;width:280px;background:#fff;border-radius:var(--border-radius);box-shadow:0 4px 12px #00000026;display:none;z-index:1000}.settings-dropdown.show{display:block}.settings-header{padding:16px;border-bottom:1px solid var(--border-color)}.user-preview{display:flex;align-items:center;gap:12px}.profile-picture{width:48px;height:48px;border-radius:50%;object-fit:cover}.user-info{flex-grow:1}.user-name{font-size:var(--text-md);margin:0;font-weight:500}.user-email{font-size:var(--text-sm);color:#666;margin:0}.settings-menu{padding:8px 0}.settings-item{display:flex;align-items:center;gap:12px;padding:8px 16px;color:var(--text-color);text-decoration:none;transition:background-color .2s ease}.settings-item:hover{background-color:var(--hover-bg)}.settings-item i,.settings-item svg{width:20px;height:20px;color:#666}.settings-item span{font-size:var(--text-sm)}.settings-divider{height:1px;background-color:var(--border-color);margin:8px 0}.settings-item.recommend{color:#05a62a}.settings-item.recommend i,.settings-item.recommend svg{color:#05a62a}.config-container{font-family:DM Sans,sans-serif;background-color:#fff;padding:24px}.config-form-section{border-radius:var(--border-radius);margin-bottom:24px}.config-header{margin-bottom:24px;border-bottom:1px solid var(--border-color)}.tab-navigation{display:flex;gap:24px;margin-bottom:-1px}.tab-content{margin-top:24px}.tab-pane{display:none}.tab-pane.active{display:block}.config-form-section h2{margin-bottom:20px;font-size:var(--text-lg);color:var(--text-color)}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:var(--text-color)}.form-group input,.form-group select{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-family:inherit;font-size:var(--text-sm)}.legal-documents{display:flex;flex-direction:row;gap:16px}.profile-photo-section{margin-bottom:24px;display:flex;flex-direction:column;justify-content:center;align-items:center}.profile-photo-container{position:relative;width:120px;height:120px}.profile-photo{width:100%;height:100%;border-radius:50%;object-fit:cover;border:2px solid var(--border-color)}.profile-photo-section .change-photo-btn{margin-top:16px}.account-actions{display:flex;flex-direction:column;gap:12px}.account-action-btn{display:flex;align-items:center;gap:12px;padding:16px;background:var(--white);border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-color);text-decoration:none}.account-action-btn i{width:20px;height:20px;color:inherit}.account-action-btn.upgrade{background:var(--primary-color);color:#fff;border:none}.close-account-btn{background:none;border:none;color:var(--text-muted);font-size:var(--text-sm);font-family:DM Sans,sans-serif;padding:8px;cursor:pointer;text-decoration:underline;width:fit-content;margin:8px auto 0}.patient-pagination-btn{border-radius:var(--border-radius)}.account-info-text{color:#666;font-size:var(--text-sm);text-align:center;margin:20px 0}.cancel-account-modal{max-width:600px;width:100%}.modal-subtitle{text-align:center;font-size:var(--text-md);margin-bottom:8px;color:var(--text-color);font-family:DM Sans,sans-serif;font-weight:800}.modal-description{text-align:center;font-size:var(--text-sm);color:#666;margin-bottom:32px;font-family:DM Sans,sans-serif}.mascot-container{text-align:center}.sad-mascot{width:160px;height:auto;display:block;margin:0 auto}.cancellation-options{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.option-card{cursor:pointer;position:relative}.option-card input[type=radio]{position:absolute;opacity:0}.option-content{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--border-color);border-radius:var(--border-radius);transition:all .2s ease;position:relative;font-size:var(--text-md)}.option-content:after{content:"";position:absolute;right:16px;top:50%;transform:translateY(-50%);width:20px;height:20px;border:2px solid var(--border-color);border-radius:50%;transition:all .2s ease}.option-card:hover .option-content{border-color:var(--secondary-color)}.option-card:hover .option-content:after{border-color:var(--secondary-color)}.option-card input[type=radio]:checked+.option-content{border-color:var(--secondary-color);background-color:#d66ff61a}.option-card input[type=radio]:checked+.option-content:after{border-color:var(--secondary-color);background-color:var(--secondary-color);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");background-size:12px;background-position:center;background-repeat:no-repeat}.modal-step{transition:all .3s ease}.modal-step.hidden{display:none}.retention-offer{text-align:center;padding:24px}.retention-offer-title{font-size:var(--text-lg);margin-bottom:16px;color:var(--text-color)}.retention-offer-description{margin-bottom:24px;color:var(--text-color)}.offer-highlight{background:#d66ff61a;padding:16px;border-radius:var(--border-radius);margin-bottom:24px}.final-actions{display:flex;gap:12px;justify-content:center}.feedback-input-wrapper{margin-bottom:24px;width:100%}.feedback-input{width:100%;padding:12px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-family:DM Sans,sans-serif;font-size:var(--text-md);resize:vertical;min-height:100px;transition:border-color .2s ease}.feedback-input:focus{outline:none;border-color:var(--secondary-color)}.feedback-input::placeholder{color:#666}.retention-offer-description{font-size:var(--text-md);margin-bottom:24px;color:var(--text-color);font-family:DM Sans,sans-serif}.month-selector-wrapper{margin-bottom:24px;text-align:center}.month-selector{margin-bottom:12px}.month-input{padding:12px 40px 12px 12px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-family:DM Sans,sans-serif;font-size:var(--text-md);width:200px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}.month-input:focus{outline:none;border-color:var(--secondary-color)}.reactivation-notice{color:#666;font-size:var(--text-sm);margin-top:8px}.reactivation-date{color:var(--text-color);font-weight:600}.accept-offer-btn{display:inline-flex;align-items:center;gap:8px}.accept-offer-btn i{width:18px;height:18px}.plan-usage-dropdown{position:absolute;top:calc(100% + 20px);right:0;width:300px;background:#fff;border-radius:var(--border-radius);box-shadow:0 4px 12px #00000026;display:none;z-index:1000}.plan-usage-dropdown.show{display:block}.plan-usage-header{padding:16px;border-bottom:1px solid var(--border-color)}.plan-usage-header h3{font-size:var(--text-md);margin:0 0 8px}.current-plan{color:var(--secondary-color);font-size:var(--text-sm);font-weight:500}.plan-usage-content{padding:16px}.usage-item{margin-bottom:16px}.usage-item:last-child{margin-bottom:0}.usage-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.usage-title{font-size:var(--text-sm);color:var(--text-color)}.usage-count{font-size:var(--text-sm);font-weight:500;color:var(--text-color)}.usage-bar{height:6px;background-color:var(--hover-bg);border-radius:3px;overflow:hidden}.usage-progress{height:100%;width:0%;background-color:var(--secondary-color);border-radius:3px;transition:width .3s ease,background-color .3s ease}.usage-progress.warning{background-color:var(--warning-color)}.usage-progress.danger{background-color:var(--negative-color)}.plan-usage-footer{padding:16px;border-top:1px solid var(--border-color);text-align:center}.primary-btn.upgrade-link{text-decoration:none;margin:0 auto}.primary-btn.upgrade-link:hover{text-decoration:none}.primary-btn.upgrade-link i,.primary-btn.upgrade-link svg{width:20px;height:20px}.auth-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:20px;background-color:var(--background-color);background-image:url(/assets/auth-background.jpg);background-size:cover;background-position:center;position:relative;width:100%;box-sizing:border-box}body{margin:0;padding:0;display:flex;justify-content:center;align-items:center;min-height:100vh;width:100%;overflow-x:hidden}body.auth-page{background-color:var(--background-color);background-image:url(/assets/auth-background.jpg);background-size:cover;background-position:center}.auth-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffd9;z-index:1}.auth-card{width:100%;max-width:480px;background-color:var(--white);border-radius:var(--border-radius);box-shadow:0 8px 24px #0000001a;overflow:hidden;position:relative;z-index:2}.auth-header{padding:30px 30px 10px;text-align:center}.auth-logo{height:40px;margin:20px 0;width:auto}.auth-header h1,.auth-subtitle{display:none}.auth-tabs{display:flex;border-bottom:1px solid var(--border-color)}.auth-tab-btn{flex:1;padding:10px;background:none;border:none;font-family:DM Sans,sans-serif;font-size:var(--text-sm);color:#666;cursor:pointer;position:relative;transition:all .3s ease}.auth-tab-btn.active{color:var(--primary-color);font-weight:500}.auth-tab-btn.active:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:2px;background-color:var(--primary-color)}.auth-content{padding:30px}.auth-form{display:none}.auth-form.active{display:block}.auth-form .form-group{margin-bottom:20px}.auth-form label{display:block;margin-bottom:2px;font-size:var(--text-sm);color:var(--text-color)}.auth-form .custom-input-group{position:relative}.auth-form .custom-input{width:100%;padding:12px 16px 12px 40px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:var(--text-sm);transition:border-color .3s ease}.auth-form .custom-input:focus{border-color:var(--secondary-color);outline:none}.auth-form .custom-input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#666;width:18px;height:18px}.password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:#666;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.password-toggle i{width:18px;height:18px}.password-icon-hide{display:none}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;font-size:var(--text-sm)}.remember-me,.terms-checkbox{display:flex;align-items:flex-start;gap:8px}.remember-me input[type=checkbox],.terms-checkbox input[type=checkbox]{margin-top:3px}.remember-me label,.terms-checkbox label{line-height:1.4}.forgot-password{color:var(--secondary-color);text-decoration:none;transition:color .3s ease}.forgot-password:hover{text-decoration:underline}.terms-link{color:var(--secondary-color);text-decoration:none}.terms-link:hover{text-decoration:underline}.primary-btn.auth-submit-btn{width:100%!important;margin-top:8px;justify-content:center}.secondary-btn.google-auth-btn{width:100%!important;margin-bottom:16px;justify-content:center}.error-message{display:none;color:var(--negative-color);font-size:var(--text-xs);margin-top:4px}.error-message.visible{display:block}.forgot-password-info{margin-bottom:24px;color:#666;font-size:var(--text-sm)}.form-actions{display:flex;justify-content:space-between;gap:12px}.auth-footer{margin-top:24px;text-align:center;color:var(--text-color);font-size:var(--text-xs);position:relative;z-index:2}@media (max-width: 576px){.auth-card{max-width:100%}.auth-content{padding:20px}.form-options{flex-direction:column;align-items:flex-start;gap:12px}.form-actions{flex-direction:column}.form-actions button{width:100%}}.auth-divider{display:flex;align-items:center;text-align:center;margin:20px 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid var(--border-color)}.auth-divider span{padding:0 10px;color:#666;font-size:var(--text-sm)}.social-icon{width:18px;height:18px;margin-right:10px}.loading-icon{animation:spin 1s linear infinite}.documentos-container{max-width:1200px}.documents-intro{margin-bottom:2rem}.documents-intro p{margin-bottom:1rem}.documents-intro p:last-child{margin-bottom:0}.documents-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;margin-bottom:2rem}.document-card{background:var(--white);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;transition:all .3s ease;box-shadow:0 2px 4px #0000000d}.document-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0000001a}.document-content h3{color:var(--text-color);font-size:var(--text-lg);font-weight:600;margin:0 0 .75rem;line-height:1.4}.document-content p{color:#666;font-size:var(--text-sm);line-height:1.5;margin:0 0 1rem}.document-features{list-style:none;padding:0;margin:0 0 1.5rem}.document-features li{display:flex;align-items:center;gap:.5rem;color:var(--text-color);font-size:var(--text-sm);margin-bottom:.25rem}.document-features li i{color:var(--positive-color);font-size:1rem}.document-actions{display:flex;gap:.75rem}.document-actions .primary-btn{flex:1;justify-content:center}@media (max-width: 768px){.documents-grid{grid-template-columns:1fr;gap:1rem}.document-card{padding:1rem}.document-actions{flex-direction:column}}@media (max-width: 480px){.document-card{padding:1rem}.document-content h3{font-size:1.125rem}}.subscription-container{max-width:1000px}.subscription-header{margin-bottom:30px;text-align:center}.subscription-subtitle{color:#666;font-size:var(--text-md);margin-top:10px}.current-plan-section{background-color:#fff;border-radius:var(--border-radius);box-shadow:0 2px 8px #0000001a;margin-bottom:40px;overflow:hidden}.current-plan-header{padding:20px;background-color:var(--primary-color);color:#fff;display:flex;justify-content:space-between;align-items:center}.current-plan-header h2{margin:0;font-size:var(--text-lg)}.plan-badge{background-color:#fff3;padding:6px 12px;border-radius:20px;font-size:var(--text-sm);font-weight:500}.current-plan-details{padding:20px}.plan-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.plan-info-item{display:flex;flex-direction:column;gap:8px}.plan-limits{margin-bottom:30px}.limit-item{margin-bottom:20px}.limit-item:last-child{margin-bottom:0}.limit-header{display:flex;justify-content:space-between;margin-bottom:8px}.limit-title{font-size:var(--text-sm);color:var(--text-color)}.limit-count{font-size:var(--text-sm);font-weight:500}.limit-bar{height:8px;background-color:var(--hover-bg);border-radius:4px;overflow:hidden}.limit-progress{height:100%;background-color:var(--secondary-color);border-radius:4px;transition:width .3s ease,background-color .3s ease}.limit-progress.warning{background-color:var(--warning-color)}.limit-progress.danger{background-color:var(--negative-color)}.plan-actions{display:flex;gap:16px}.plans-section{margin-bottom:40px}.plans-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.plans-header h2{margin:0;font-size:var(--text-lg)}.billing-toggle{display:flex;align-items:center;gap:10px}.toggle-label{font-size:var(--text-sm);color:var(--text-color)}.save-badge{background-color:var(--positive-color);color:var(--primary-color);padding:4px 8px;border-radius:var(--border-radius);font-size:var(--text-xs);font-weight:500;margin-left:10px}.switch{position:relative;display:inline-block;width:50px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s}.slider:before{position:absolute;content:"";height:16px;width:16px;left:4px;bottom:4px;background-color:#fff;transition:.4s}input:checked+.slider{background-color:var(--secondary-color)}input:focus+.slider{box-shadow:0 0 1px var(--secondary-color)}input:checked+.slider:before{transform:translate(26px)}.slider.round{border-radius:24px}.slider.round:before{border-radius:50%}.plans-grid{display:flex;flex-wrap:wrap;gap:20px}.plan-card{background-color:#fff;border-radius:var(--border-radius);box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.plan-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0000001a}.plan-card.recommended{border:2px solid var(--secondary-color);position:relative}.plan-card.recommended:before{content:"Recomendado";position:absolute;top:10px;right:10px;background-color:var(--secondary-color);color:#fff;padding:4px 8px;border-radius:var(--border-radius);font-size:var(--text-xs);font-weight:500}.plan-card-header{padding:20px;background-color:var(--primary-color);color:#fff;text-align:left;border-radius:var(--border-radius);display:flex;flex-direction:column}.plan-target{font-size:var(--text-sm);opacity:.9;margin-bottom:8px}.plan-title-price{display:flex;align-items:center;justify-content:space-between}.plan-name{font-size:var(--text-lg);font-weight:600;margin:0}.price-amount{font-size:var(--text-lg);font-weight:700}.plan-billing-period{font-size:var(--text-sm);opacity:.65;margin-top:4px}.plan-card-body{padding:20px}.plan-description{margin-bottom:20px;color:#666;font-size:var(--text-sm)}.plan-features{list-style-type:none;padding:0;margin:0}.plan-features li{padding:8px 0;border-bottom:1px solid var(--border-color);font-size:var(--text-sm);display:flex;align-items:center}.plan-features li:last-child{border-bottom:none}.plan-features li:before{content:"✅";margin-right:10px}.plan-card-footer{padding:20px;text-align:center}.primary-btn.select-plan-btn{width:100%!important;justify-content:center}.primary-btn.select-plan-btn i{width:16px;height:16px}.plan-card.current .primary-btn.select-plan-btn{background-color:var(--positive-color);box-shadow:0 6px #27ae60,0 0 0 1px #0000001a}.plan-card.current .primary-btn.select-plan-btn:hover{background-color:var(--positive-color);transform:translateY(-3px);box-shadow:0 9px #27ae60,0 0 0 1px #0000001a}.plan-card.current .primary-btn.select-plan-btn:active{transform:translateY(3px);box-shadow:0 3px #27ae60,0 0 0 1px #0000001a}.subscription-faq{margin-top:40px}.subscription-faq h2{margin-bottom:20px;font-size:var(--text-lg)}.faq-item{margin-bottom:16px;background-color:#fff;border-radius:var(--border-radius);box-shadow:0 2px 4px #0000000d;overflow:hidden}.faq-question{padding:16px 40px 16px 16px;font-weight:500;cursor:pointer;position:relative}.faq-question:after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:20px;color:var(--secondary-color)}.faq-item.active .faq-question:after{content:"-"}.faq-answer{padding:0 16px 16px;font-size:var(--text-sm);color:#666;display:none}.faq-item.active .faq-answer{display:block}#cancel-subscription-modal .modal-body ul{margin-top:10px;padding-left:20px}#cancel-subscription-modal .modal-body li{margin-bottom:8px;font-size:var(--text-sm)}@media (max-width: 768px){.plan-info{grid-template-columns:1fr}.plans-header{flex-direction:column;align-items:flex-start;gap:16px}.plan-actions{flex-direction:column}}.account-management-section{background-color:#fff;border-radius:var(--border-radius);box-shadow:0 2px 8px #0000001a;margin-bottom:40px;padding:20px}.account-management-section h2{margin-bottom:20px;font-size:var(--text-lg)}.account-actions{display:flex;flex-direction:row;gap:12px;flex-wrap:wrap;justify-content:center}.account-actions .secondary-btn{text-decoration:none}.account-actions-divider{height:1px;background:var(--border-color);margin:8px 0}.close-account-btn{background:none;border:none;color:var(--negative-color);font-size:var(--text-sm);font-family:DM Sans,sans-serif;padding:8px;cursor:pointer;text-decoration:underline;width:fit-content;margin:8px auto 0;transition:color .2s ease}.close-account-btn:hover{color:#e63946}.disabled-plan-button{opacity:.5!important;cursor:not-allowed!important;background-color:#f8f9fa!important;color:#6c757d!important;border-color:#dee2e6!important;position:relative}.disabled-plan-button:hover{opacity:.5!important;background-color:#f8f9fa!important;color:#6c757d!important;border-color:#dee2e6!important;transform:none!important}.disabled-plan-button .info-icon{margin-left:8px;width:16px;height:16px;color:#ffc107}.plan-features li.feature-patients,.plan-features li.feature-menus,.plan-features li.feature-images{font-weight:700}.plan-features li.feature-limitation{color:#e74c3c;font-weight:500}.payment-loader{position:fixed;top:0;left:0;width:100%;height:100%;background:#ffffffe6;display:flex;justify-content:center;align-items:center;z-index:9999}.loader-content{text-align:center;padding:30px;background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000001a;max-width:80%;border:1px solid var(--secondary-color, #4f46e5)}.spinner{width:60px;height:60px;border:6px solid #f3f3f3;border-top:6px solid var(--secondary-color, #4f46e5);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.loader-content p{font-size:18px;font-weight:700;color:var(--primary-color, #333)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
