@import url(https://fonts.googleapis.com/css2?family=Libre+Baskerville:wght@400;700&display=swap);*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button{cursor:pointer}button,input,select,textarea{font-family:inherit}a{color:inherit;text-decoration:none}.toggle-switch{display:inline-block;flex-shrink:0;height:30px;position:relative;width:60px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#ccc;border-radius:30px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:4px;content:"";height:22px;left:4px;position:absolute;transition:.4s;width:22px}.toggle-switch input:checked+.toggle-slider{background-color:#8b7355}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(30px)}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.confirmation-dialog{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-width:500px;padding:32px;width:90%}.confirmation-dialog h3{color:#2c2416;font-size:20px;margin-bottom:16px}.confirmation-dialog p{color:#333;font-size:15px;line-height:1.6;margin-bottom:24px}.dialog-actions{display:flex;gap:12px;justify-content:flex-end}.alert{font-size:14px;line-height:1.5}.alert-success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.alert-error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.cpm-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:12000}.cpm-paystack{padding:.5rem 0}.cpm-paystack-info{color:#666;font-size:.88rem;line-height:1.5;margin-top:.75rem}.cpm-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;max-width:440px;padding:2rem;position:relative;width:100%}.cpm-close{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;line-height:1;position:absolute;right:1rem;top:.75rem}.cpm-close:hover{color:#111}.cpm-title{color:#1a1a1a;font-size:1.25rem;font-weight:700;margin:0 0 1.5rem}.cpm-loading{color:#555;padding:2rem 0;text-align:center}.cpm-spinner{animation:cpm-spin .7s linear infinite;border:3px solid #e0e0e0;border-radius:50%;border-top-color:#2d6a4f;height:36px;margin:0 auto 1rem;width:36px}@keyframes cpm-spin{to{transform:rotate(1turn)}}.cpm-amount{align-items:center;border-bottom:1px solid #e8e8e8;display:flex;justify-content:space-between;margin-bottom:1.25rem;padding:.75rem 0}.cpm-amount-label{color:#333;font-weight:600}.cpm-amount-value{color:#2d6a4f;font-size:1.2rem;font-weight:700}.cpm-error{color:#c0392b;font-size:.875rem;margin:.75rem 0 0}.cpm-error-state{color:#555;padding:1rem 0;text-align:center}.cpm-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.cpm-btn-cancel{background:#fff;border:1px solid #ccc;border-radius:6px;color:#444;cursor:pointer;font-size:.9rem;padding:.6rem 1.25rem;transition:background .15s}.cpm-btn-cancel:hover:not(:disabled){background:#f5f5f5}.cpm-btn-pay{background:#2d6a4f;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.5rem;transition:background .15s}.cpm-btn-pay:hover:not(:disabled){background:#1b4332}.cpm-btn-cancel:disabled,.cpm-btn-pay:disabled{cursor:not-allowed;opacity:.6}.cpm-form{display:flex;flex-direction:column}.cpm-gateway-label{color:#555;font-size:.95rem;margin-bottom:1rem}.cpm-gateway-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:.5rem}.cpm-gateway-btn{grid-gap:0 .5rem;align-items:center;background:#fff;border:2px solid #fefbfb;cursor:pointer;display:grid;gap:0 .5rem;grid-template-columns:2rem 1fr;grid-template-rows:auto auto;padding:.9rem 1rem;text-align:left;transition:border-color .15s,background .15s}.cpm-gateway-btn:hover{background:#f0faf4;border-color:#2d6a4f}.cpm-gateway-icon{font-size:1.4rem;grid-row:1/3}.cpm-gateway-name{color:#1a1a1a;font-size:.95rem;font-weight:700}.cpm-gateway-desc{color:#777;font-size:.78rem;margin-top:.1rem}.cpm-rzp-info{background:#f0faf4;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem}.cpm-rzp-info p{color:#555;font-size:.85rem;margin:0 0 .5rem}.cpm-rzp-methods{display:flex;flex-wrap:wrap;gap:.4rem}.cpm-rzp-methods span{background:#fff;border:1px solid #c8e6c9;border-radius:20px;color:#2d6a4f;font-size:.78rem;font-weight:500;padding:.2rem .65rem}.cycle-selector{background-color:#faf9f7;border:1px solid #e7e5e4;border-radius:12px;margin-bottom:16px;padding:16px 20px}.cycle-selector-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.cycle-selector-info h3{color:#2c2416;font-size:16px;font-weight:600;margin:0 0 4px}.cycle-selector-info p{color:#78716c;font-size:12px;margin:0}.cycle-progress-bar{background-color:#e7e5e4;border-radius:3px;height:6px;margin-top:8px;max-width:200px;overflow:hidden;width:100%}.cycle-progress-fill{border-radius:3px;height:100%;transition:width .3s ease}.cycle-progress-fill.complete{background-color:#22c55e}.cycle-new-btn,.cycle-progress-fill.in-progress{background-color:#8b7355}.cycle-new-btn{border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;padding:8px 20px;transition:opacity .2s;white-space:nowrap}.cycle-new-btn:hover{opacity:.9}.cycle-new-btn:disabled{cursor:not-allowed;opacity:.6}.cycle-error{color:#dc2626;font-size:12px;margin-top:8px;white-space:pre-line}.cycle-history{border-top:1px solid #e7e5e4;margin-top:12px;padding-top:10px}.cycle-history-label{color:#78716c;font-size:11px;margin-bottom:6px}.cycle-history-badges{display:flex;flex-wrap:wrap;gap:6px}.cycle-badge{background-color:#e7e5e4;border:2px solid #0000;border-radius:12px;color:#2c2416;cursor:pointer;font-size:11px;padding:3px 10px;transition:all .2s}.cycle-badge:hover{background-color:#d6d3d1}.cycle-badge.active{background-color:#f5f0eb;border-color:#8b7355;font-weight:600}.cycle-badge.completed{color:#166534}.cycle-dropdown{background-color:#fff;border:2px solid #e7e5e4;border-radius:8px;color:#2c2416;cursor:pointer;font-size:12px;min-width:150px;padding:6px 12px;transition:border-color .2s}.cycle-dropdown:focus{border-color:#8b7355;outline:none}.cycle-dropdown:hover{border-color:#d6d3d1}.cycle-viewing-past{align-items:center;background-color:#fef3c7;border:1px solid #f59e0b;border-radius:8px;color:#92400e;display:flex;font-size:12px;justify-content:space-between;margin-bottom:10px;padding:8px 12px}.cycle-viewing-past p{font-weight:600;margin:0}.cycle-back-btn{background-color:#92400e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:11px;padding:4px 12px}.cycle-back-btn:hover{opacity:.9}@media (max-width:768px){.cycle-selector-header{align-items:flex-start;flex-direction:column}.cycle-new-btn{text-align:center;width:100%}}.layout{display:flex;flex-direction:column;min-height:100vh}.header{background:#fff;border-bottom:1px solid #e5e7eb;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{justify-content:space-between;margin:0 auto;max-width:1400px;padding:16px 24px}.header-content,.header-left{align-items:center;display:flex}.header-left{gap:16px}.mobile-menu-btn{background:none;border:none;cursor:pointer;display:none;font-size:24px;padding:4px}.logo{color:#6366f1;font-size:20px;font-weight:600;margin:0}.header-right{align-items:center;display:flex;gap:16px}.user-name{color:#6b7280}.btn-sm{font-size:13px;padding:6px 12px}.layout-body{display:flex;flex:1 1;margin:0 auto;max-width:1400px;width:100%}.sidebar{background:#fff;border-right:1px solid #e5e7eb;height:calc(100vh - 72px);overflow-y:auto;padding:24px 0;position:-webkit-sticky;position:sticky;top:72px;width:250px}.nav{display:flex;flex-direction:column}.nav-item{align-items:center;color:#6b7280;display:flex;gap:12px;padding:12px 24px;text-decoration:none;transition:all .2s}.nav-item:hover{background-color:#f3f4f6;color:#374151}.nav-item.active{background-color:#eef2ff;border-right:3px solid #6366f1;color:#6366f1}.nav-item.nav-locked{cursor:not-allowed;opacity:.45;pointer-events:auto}.nav-item.nav-locked:hover{background-color:initial;color:#9ca3af}.nav-icon{font-size:20px}.nav-label{font-size:14px;font-weight:500}.main-content{flex:1 1;overflow-y:auto;padding:32px}@media (max-width:768px){.mobile-menu-btn{display:block}.logo{font-size:16px}.user-name{display:none}.sidebar{height:calc(100vh - 72px);left:-250px;position:fixed;top:72px;transition:left .3s ease-in-out;z-index:50}.sidebar.show{left:0}.main-content{padding:16px}}.auth-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:450px;padding:40px;width:100%}.auth-title{color:#6366f1;font-size:24px;font-weight:700;margin-bottom:8px;text-align:center}.auth-subtitle{color:#374151;font-size:20px;font-weight:600;margin-bottom:24px;text-align:center}.btn-full{justify-content:center;margin-top:8px;width:100%}.auth-footer{color:#6b7280;font-size:14px;margin-top:24px;text-align:center}.auth-link{color:#6366f1;font-weight:500}.auth-description{color:#6b7280;font-size:14px;line-height:1.5;margin-bottom:20px}.btn-link{background:none;border:none;color:#6366f1;cursor:pointer;font-size:14px;text-decoration:underline}.btn-link:hover{color:#4f46e5}.btn-link:disabled{color:#9ca3af;cursor:not-allowed;text-decoration:none}.release-version{color:#9ca3af;font-size:12px;font-style:italic;margin-top:16px}.dashboard{max-width:1000px}.dashboard-header{margin-bottom:32px}.dashboard-header h1{color:#111827;font-size:32px;font-weight:700;margin-bottom:8px}.dashboard-subtitle{color:#6b7280;font-size:16px}.mood-selector{display:flex;gap:16px;justify-content:center;margin-bottom:40px}.mood-btn{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:8px;max-width:200px;padding:24px;transition:all .2s}.mood-btn:hover{border-color:#6366f1;box-shadow:0 4px 12px #6366f133;transform:translateY(-2px)}.mood-btn.selected{background-color:#eef2ff;border-color:#6366f1}.mood-emoji{font-size:48px}.mood-btn span:last-child{color:#374151;font-size:14px;font-weight:500}.confetti{animation:fadeInOut 3s ease-in-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;color:#6366f1;font-size:24px;font-weight:600;left:50%;padding:24px 48px;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:1000}@keyframes fadeInOut{0%,to{opacity:0;transform:translate(-50%,-50%) scale(.8)}10%,90%{opacity:1;transform:translate(-50%,-50%) scale(1)}}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:40px}.stat-card{box-shadow:0 1px 3px #0000001a;gap:16px}.stat-icon{font-size:40px}.stat-content{flex:1 1}.stat-value{color:#111827;font-size:28px;font-weight:700;margin-bottom:4px}.stat-label{color:#6b7280}.quick-actions h2{color:#111827;font-size:20px;font-weight:600;margin-bottom:16px}.action-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.action-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;cursor:pointer;display:flex;flex-direction:column;gap:12px;padding:24px;transition:all .2s}.action-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.action-icon{font-size:48px}.action-title{color:#374151;font-size:16px;font-weight:500}.spinner-container{align-items:center;display:flex;justify-content:center;min-height:400px}@media (max-width:768px){.mood-selector{flex-direction:column}.mood-btn{max-width:none}}.patient-list-loading{align-items:center;color:#7f8c8d;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.loading-spinner{border:4px solid #ecf0f1;border-top-color:#3498db}.patient-list-empty{padding:60px 20px}.empty-state{margin:0 auto;max-width:400px;text-align:center}.empty-icon{display:block;font-size:64px;margin-bottom:20px}.empty-state h3{color:#2c3e50;font-size:24px;margin-bottom:12px}.empty-state p{color:#7f8c8d;line-height:1.6;margin-bottom:24px}.refresh-btn{background:#3498db;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.refresh-btn:hover{background:#2980b9;transform:translateY(-1px)}.refresh-btn.small{font-size:13px;padding:8px 16px}.patient-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.patient-list-header h3{color:#2c3e50;font-size:20px;margin:0}.patient-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.patient-card{background:#fff;border:1px solid #ecf0f1;border-radius:12px;box-shadow:0 4px 12px #00000014;cursor:pointer;padding:24px;transition:all .3s ease}.patient-card:hover{border-color:#3498db;box-shadow:0 8px 24px #00000026;transform:translateY(-4px)}.patient-card-header{align-items:center;display:flex;gap:16px;margin-bottom:20px}.patient-avatar{font-size:18px;height:56px;width:56px}.patient-info{flex:1 1}.patient-info h4{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 4px}.patient-email{color:#7f8c8d;font-size:14px;margin:0 0 8px}.status-badge{border-radius:16px;display:inline-block;font-size:12px;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.status-badge.active{background:#d5f4e6;color:#27ae60}.status-badge.inactive{background:#fde2e4;color:#e74c3c}.status-badge.new{background:#e3f2fd;color:#2196f3}.patient-stats{margin-bottom:20px}.stat-item{margin-bottom:16px}.stat-label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.progress-bar{background:#ecf0f1;border-radius:4px;height:8px;margin-bottom:4px;overflow:hidden;width:100%}.progress-fill{border-radius:4px;height:100%;transition:width .3s ease}.progress-text{color:#2c3e50;font-size:14px;font-weight:600}.patient-metrics{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-top:16px}.metric{text-align:center}.metric-label{color:#95a5a6;display:block;font-size:11px;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.metric-value{font-size:14px;font-weight:600}.patient-card-footer{border-top:1px solid #ecf0f1;padding-top:16px;text-align:right}.view-btn{background:#0000;border:none;color:#3498db;cursor:pointer;font-size:14px;font-weight:600;transition:color .3s ease}.view-btn:hover{color:#2980b9}@media (max-width:768px){.patient-grid{gap:16px;grid-template-columns:1fr}.patient-card{padding:20px}.patient-card-header{gap:12px}.patient-avatar{font-size:16px;height:48px;width:48px}.patient-info h4{font-size:16px}.patient-metrics{gap:8px;grid-template-columns:1fr;text-align:left}.patient-list-header{align-items:flex-start;flex-direction:column;gap:12px}}@media (max-width:480px){.patient-card{padding:16px}.patient-card-header{flex-direction:column;gap:12px;text-align:center}.patient-info,.patient-metrics{text-align:center}.patient-metrics{grid-template-columns:repeat(3,1fr)}}.metric-sub{color:#a0aec0;font-size:10px;font-weight:400}.journal-viewer{height:100%}.journal-viewer-header{align-items:center;border-bottom:2px solid #ecf0f1;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.journal-viewer-header h2{color:#2c3e50;font-size:24px;font-weight:600;margin:0}.journal-search{background:#f8f9fa;border:1px solid #ddd;border-radius:8px;font-size:14px;padding:10px 16px;width:300px}.journal-search:focus{background:#fff;border-color:#3498db;outline:none}.journal-viewer-content{grid-gap:24px;display:grid;gap:24px;grid-template-columns:300px 1fr;height:calc(100vh - 400px);min-height:500px}.journal-sidebar{background:#f8f9fa;border:1px solid #ecf0f1;border-radius:8px;overflow-y:auto;padding:20px}.journal-sidebar h3{color:#2c3e50;font-size:16px;font-weight:600;margin:0 0 16px}.journal-sections{display:flex;flex-direction:column;gap:4px}.section-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:6px;cursor:pointer;display:flex;gap:12px;padding:12px 16px;text-align:left;transition:all .3s ease;width:100%}.section-btn:hover{background:#3498db1a;border-color:#3498db33}.section-btn.active{background:#3498db;border-color:#3498db;color:#fff}.section-btn.completed{border-left:3px solid #27ae60}.section-btn.empty{border-left:3px solid #95a5a6;opacity:.6}.section-icon{font-size:16px;text-align:center;width:20px}.section-label{flex:1 1;font-size:13px;font-weight:500}.section-status{border-radius:50%;font-size:12px;font-weight:600;height:16px;justify-content:center;width:16px}.section-status.completed{background:#27ae60;color:#fff}.section-status.empty{background:#ecf0f1;color:#95a5a6}.journal-content{background:#fff;border:1px solid #ecf0f1;border-radius:8px;overflow-y:auto;padding:24px}.section-header{align-items:center;border-bottom:1px solid #ecf0f1;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:12px}.section-header h3{color:#2c3e50;font-size:20px;font-weight:600;margin:0}.last-modified{color:#95a5a6;font-size:13px}.no-data,.no-results{color:#95a5a6;padding:60px 20px;text-align:center}.no-data-icon,.no-results-icon{display:block;font-size:48px;margin-bottom:16px}.no-data h4,.no-results h4{color:#7f8c8d;font-size:18px;margin:0 0 8px}.no-data p,.no-results p{font-size:14px;margin:0}.journal-fields{display:flex;flex-direction:column;gap:16px}.field-row{background:#f8f9fa;border:1px solid #ecf0f1;border-radius:6px;padding:16px}.field-label{color:#2c3e50;font-size:13px;font-weight:600;margin-bottom:8px;text-transform:capitalize}.field-content{font-size:14px;line-height:1.6}.field-value{color:#2c3e50}.empty-value{color:#95a5a6;font-style:italic}.boolean-value{border-radius:4px;font-size:12px;font-weight:600;padding:4px 8px;text-transform:uppercase}.boolean-value.true{background:#d5f4e6;color:#27ae60}.boolean-value.false{background:#fde2e4;color:#e74c3c}.array-value{display:flex;flex-wrap:wrap;gap:6px}.array-item{background:#e3f2fd;border-radius:4px;color:#1976d2;font-size:12px;font-weight:500;padding:4px 8px}.object-value{display:flex;flex-direction:column;gap:6px}.object-item{background:#f0f8e8;border-left:3px solid #4caf50;border-radius:4px;color:#2e7d32;font-size:12px;padding:6px 10px}.object-item strong{color:#1b5e20}.long-text{background:#fff;border:1px solid #ddd;border-radius:4px;padding:12px}.long-text p{line-height:1.6;margin:0;white-space:pre-wrap}@media (max-width:1024px){.journal-viewer-content{grid-template-columns:250px 1fr}.journal-search{width:250px}}@media (max-width:768px){.journal-viewer-content{grid-template-columns:1fr;height:auto}.journal-sidebar{max-height:300px;order:2}.journal-content{order:1}.journal-viewer-header{align-items:flex-start;flex-direction:column;gap:12px}.journal-search{width:100%}.journal-sections{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (max-width:480px){.journal-content,.journal-sidebar{padding:16px}.section-btn{gap:8px;padding:10px 12px}.section-label{font-size:12px}.field-row{padding:12px}.journal-sections{grid-template-columns:1fr}}.debug-info{color:#fff9;display:block;font-size:10px;margin-top:2px}.patient-detail-loading{align-items:center;color:#7f8c8d;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.patient-detail-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:32px}.patient-header-info{align-items:center;display:flex;gap:24px}.patient-avatar-large{align-items:center;background:linear-gradient(135deg,#3498db,#2980b9);border-radius:50%;color:#fff;display:flex;font-size:28px;font-weight:600;height:80px;justify-content:center;width:80px}.patient-header-text h1{color:#2c3e50;font-size:32px;font-weight:600;margin:0 0 8px}.patient-email-large{color:#7f8c8d;font-size:16px;margin:0 0 12px}.patient-meta{color:#95a5a6;display:flex;font-size:14px;gap:24px}.patient-completion-overview{align-items:center;display:flex;gap:20px}.completion-circle{height:100px;width:100px}.circular-chart{height:100%;width:100%}.circle-bg{fill:none;stroke:#ecf0f1;stroke-width:3.8}.circle{fill:none;stroke:#3498db;stroke-width:2.8;stroke-linecap:round;animation:progress 1s ease-out forwards}.percentage{fill:#2c3e50;text-anchor:middle;font-family:sans-serif;font-size:.5em;font-weight:600}@keyframes progress{0%{stroke-dasharray:0 100}}.completion-text{display:flex;flex-direction:column;gap:4px}.completion-label{color:#7f8c8d;font-size:14px;font-weight:600}.sections-completed{color:#2c3e50;font-size:16px;font-weight:600}.patient-detail-nav{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:8px;margin-bottom:24px;overflow-x:auto;padding:8px}.detail-nav-tab{align-items:center;background:#0000;border:none;border-radius:8px;color:#7f8c8d;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 20px;transition:all .3s ease;white-space:nowrap}.detail-nav-tab:hover{background:#ecf0f1;color:#2c3e50}.detail-nav-tab.active{background:#3498db;color:#fff}.patient-detail-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;min-height:600px;padding:32px}.overview-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}.overview-card{background:#f8f9fa;border:1px solid #ecf0f1;border-radius:8px;padding:24px}.overview-card h3{color:#2c3e50;font-size:20px;font-weight:600;margin:0 0 20px}.section-list{display:flex;flex-direction:column;gap:0;padding:8px 150px}.section-status{align-items:center;background:#fafbfc;border:1px solid #ebeef2;border-radius:6px;display:flex;gap:12px;margin-bottom:6px;min-height:44px;padding:10px 16px}.status-indicator{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:12px;font-weight:600;height:20px;justify-content:center;width:20px}.status-indicator.completed{background:#27ae60;color:#fff}.status-indicator.pending{background:#ecf0f1;color:#95a5a6}.section-name{color:#2c3e50;flex:1 1;font-size:14px;font-weight:500;line-height:1.3;min-width:150px}.section-date{color:#95a5a6;flex-shrink:0;font-size:12px;font-weight:500;min-width:80px;text-align:right}.activity-timeline{display:flex;flex-direction:column;gap:12px}.no-activity{font-style:italic;padding:20px}.activity-item{border-bottom:1px solid #ecf0f1;padding:12px 0}.activity-item:last-child{border-bottom:none}.activity-date{color:#95a5a6;font-size:12px;margin-bottom:4px}.activity-description{color:#2c3e50;font-size:14px;text-transform:capitalize}@media (max-width:1024px){.overview-grid{grid-template-columns:1fr}.patient-detail-header{flex-direction:column;gap:24px;text-align:center}.patient-completion-overview{justify-content:center}}@media (max-width:768px){.patient-detail-header{padding:24px}.patient-header-info{flex-direction:column;gap:16px;text-align:center}.patient-avatar-large{font-size:24px;height:64px;width:64px}.patient-header-text h1{font-size:24px}.patient-meta{flex-direction:column;gap:8px}.patient-detail-nav{gap:4px;padding:4px}.detail-nav-tab{font-size:13px;padding:10px 16px}.patient-detail-content{padding:24px}.overview-card{padding:20px}}@media (max-width:480px){.patient-detail-header{padding:20px}.patient-avatar-large{font-size:20px;height:56px;width:56px}.patient-header-text h1{font-size:20px}.completion-circle{height:80px;width:80px}.patient-detail-content{padding:20px}.overview-card{padding:16px}.detail-nav-tab{font-size:12px;padding:8px 12px}}.consent-section{padding:24px}.consent-loading,.no-consent{align-items:center;color:#7f8c8d;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.consent-list{display:flex;flex-direction:column;gap:20px}.consent-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px;transition:all .3s ease}.consent-card:hover{border-color:#8b7355;box-shadow:0 4px 16px #00000026}.consent-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.consent-header h3{color:#2c3e50;font-size:20px;font-weight:600;margin:0}.consent-status{align-items:center;border-radius:20px;display:flex;font-size:14px;font-weight:600;gap:6px;padding:6px 16px}.consent-status.active{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.consent-status.revoked{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.consent-details{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.consent-detail-row{align-items:center;display:flex;gap:12px}.detail-label{color:#555;font-size:14px;font-weight:600;min-width:140px}.detail-value{color:#2c3e50;font-size:14px}.consent-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.btn-download-pdf,.btn-view-consent{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.btn-view-consent{background-color:#8b7355;color:#fff}.btn-view-consent:hover{background-color:#6f5a42;box-shadow:0 4px 12px #8b73554d;transform:translateY(-2px)}.btn-download-pdf{background-color:#3498db;color:#fff}.btn-download-pdf:hover{background-color:#2980b9;box-shadow:0 4px 12px #3498db4d;transform:translateY(-2px)}.consent-signature{border-top:2px solid #f0f0f0;display:flex;flex-direction:column;gap:12px;padding-top:20px}.signature-label{color:#555;font-size:14px;font-weight:600}.signature-image{background:#fafafa;border:2px solid #e0e0e0;border-radius:8px;max-height:120px;max-width:300px;object-fit:contain;padding:12px}@media (max-width:768px){.consent-card,.consent-section{padding:16px}.consent-header{gap:12px}.consent-detail-row,.consent-header{align-items:flex-start;flex-direction:column}.consent-detail-row{gap:4px}.detail-label{min-width:auto}.consent-actions{flex-direction:column}.btn-download-pdf,.btn-view-consent{justify-content:center;width:100%}.signature-image{max-width:100%}.consent-modal{border-radius:0;max-height:100vh;max-width:100%}.consent-modal-content,.consent-modal-footer,.consent-modal-header{padding:20px}.consent-modal-header h2{font-size:20px}.modal-info-grid{gap:16px;grid-template-columns:1fr}.modal-signature-image{max-width:100%}.consent-text-container{padding:16px}}.patient-cycle-summary{display:flex;gap:24px}.summary-stat{align-items:center;background:#f8f9fa;border-radius:10px;display:flex;flex-direction:column;min-width:90px;padding:12px 20px}.summary-number{color:#2c3e50;font-size:28px;font-weight:700;line-height:1}.summary-label{color:#95a5a6;font-size:11px;font-weight:600;letter-spacing:.5px;margin-top:4px;text-transform:uppercase}.no-cycles{align-items:center;color:#95a5a6;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.no-cycles-icon{font-size:48px;margin-bottom:16px}.no-cycles h3{color:#7f8c8d;margin:0 0 8px}.no-cycles p{color:#95a5a6;margin:0}.cycles-accordion{display:flex;flex-direction:column;gap:12px}.cycle-accordion-item{border:2px solid #e8e8e8;border-radius:12px;overflow:hidden;transition:border-color .2s,box-shadow .2s}.cycle-accordion-item.expanded{border-color:#3498db;box-shadow:0 4px 16px #3498db1f}.cycle-accordion-item.completed{border-left:4px solid #27ae60}.cycle-accordion-item.active{border-left:4px solid #3498db}.cycle-accordion-header{align-items:center;background:#fafbfc;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;transition:background .2s}.cycle-accordion-header:hover{background:#f0f4f8}.cycle-header-left{align-items:center;display:flex;gap:14px}.cycle-status-badge{flex-shrink:0;font-size:20px}.cycle-header-title h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0}.cycle-header-dates{color:#95a5a6;display:block;font-size:13px;margin-top:2px}.cycle-header-right{align-items:center;display:flex;gap:16px}.cycle-header-progress{align-items:center;display:flex;gap:10px}.cycle-mini-bar{background:#ecf0f1;border-radius:4px;height:8px;overflow:hidden;width:100px}.cycle-mini-fill{background:#3498db;border-radius:4px;height:100%;transition:width .3s}.cycle-mini-fill.complete{background:#27ae60}.cycle-progress-text{color:#7f8c8d;font-size:13px;font-weight:600;min-width:30px}.cycle-expand-icon{color:#bdc3c7;flex-shrink:0;font-size:18px;transition:transform .25s ease}.cycle-expand-icon.rotated{transform:rotate(180deg)}.cycle-accordion-body{background:#fff;border-top:1px solid #ecf0f1;padding:20px 24px 24px}.cycle-body-loading{align-items:center;color:#95a5a6;display:flex;flex-direction:column;padding:40px}.cycle-sections-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:24px}.cycle-section-chip{align-items:center;border:1px solid #ecf0f1;border-radius:8px;display:flex;flex-wrap:wrap;font-size:13px;gap:8px;min-width:0;overflow:hidden;padding:10px 14px;transition:all .2s}.cycle-section-chip.filled{background:#eafaf1;border-color:#a3d9a5}.cycle-section-chip.empty{background:#fafbfc;border-color:#e8e8e8;color:#b0b8c0}.chip-icon{flex-shrink:0;font-size:16px}.chip-label{color:#2c3e50;flex:1 1;font-weight:500}.cycle-section-chip.empty .chip-label{color:#b0b8c0}.chip-check{color:#27ae60;font-size:14px;font-weight:700}.chip-pending{color:#d0d5db;font-weight:600}.chip-date{color:#95a5a6;flex-basis:100%;font-size:11px;white-space:normal;word-break:break-word}@media (max-width:1024px){.patient-cycle-summary{justify-content:center;width:100%}}@media (max-width:768px){.patient-cycle-summary{gap:12px}.summary-stat{min-width:70px;padding:10px 14px}.summary-number{font-size:22px}.cycle-accordion-header{align-items:flex-start;flex-direction:column;gap:12px}.cycle-header-right{justify-content:space-between;width:100%}.cycle-mini-bar{flex:1 1}.cycle-sections-grid{grid-template-columns:1fr 1fr}}@media (max-width:480px){.cycle-sections-grid{grid-template-columns:1fr}.patient-cycle-summary{flex-wrap:wrap;justify-content:space-around}}.analytics{height:100%;padding:0}.analytics-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:32px}.analytics-header h1{color:#2c3e50;font-size:32px;font-weight:600;margin:0}.analytics-controls{display:flex;gap:12px}.time-range-select{background:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:14px;padding:10px 16px}.key-metrics{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:32px}.metric-card{align-items:center;background:#fff;border-left:4px solid;border-radius:12px;box-shadow:0 4px 12px #0000001a;display:flex;gap:16px;padding:24px;transition:transform .3s ease}.metric-card:hover{transform:translateY(-4px)}.metric-card.primary{border-color:#3498db}.metric-card.success{border-color:#27ae60}.metric-card.warning{border-color:#f39c12}.metric-card.info{border-color:#9b59b6}.metric-icon{align-items:center;background:#f8f9fa;border-radius:50%;display:flex;font-size:32px;height:56px;justify-content:center;width:56px}.metric-content{display:flex;flex:1 1;flex-direction:column}.metric-value{color:#2c3e50;font-size:28px;font-weight:700;line-height:1}.metric-label{color:#7f8c8d;font-size:14px;font-weight:500;margin-top:4px}.analytics-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.analytics-card{background:#fff;border:1px solid #ecf0f1;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:24px}.analytics-card h3{border-bottom:2px solid #3498db;color:#2c3e50;font-size:20px;font-weight:600;margin:0 0 20px;padding-bottom:8px}.completion-chart{display:flex;flex-direction:column;gap:16px}.completion-bar{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:100px 1fr 50px}.bar-info{display:flex;flex-direction:column}.bar-label{color:#2c3e50;font-size:14px;font-weight:600}.bar-count{color:#95a5a6;font-size:12px}.bar-container{background:#ecf0f1;border-radius:6px;height:12px;overflow:hidden}.bar-fill{border-radius:6px;height:100%;transition:width .3s ease}.bar-percentage{color:#7f8c8d;font-size:12px;font-weight:600;text-align:center}.engagement-metrics{display:flex;flex-direction:column;gap:20px}.engagement-item{display:flex;flex-direction:column;gap:8px}.engagement-number{color:#3498db;font-size:24px;font-weight:700}.engagement-label{color:#7f8c8d;font-size:14px;font-weight:500}.engagement-bar{background:#ecf0f1;border-radius:4px;height:8px;overflow:hidden}.engagement-fill{background:#3498db;border-radius:4px;height:100%;transition:width .3s ease}.symptoms-list{display:flex;flex-direction:column;gap:16px}.symptom-item{background:#f8f9fa;border:1px solid #ecf0f1;border-radius:8px;padding:16px}.symptom-info{align-items:center;display:flex;gap:12px;margin-bottom:8px}.symptom-rank{color:#3498db;font-size:14px;font-weight:700;min-width:24px}.symptom-name{color:#2c3e50;flex:1 1;font-size:16px;font-weight:600}.symptom-count{color:#95a5a6;font-size:12px}.symptom-improvement{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:100px 1fr 50px}.improvement-label{color:#7f8c8d;font-size:12px}.improvement-bar{background:#ecf0f1;border-radius:3px;height:6px;overflow:hidden}.improvement-fill{background:#27ae60;border-radius:3px;height:100%;transition:width .3s ease}.improvement-percentage{color:#27ae60;font-size:12px;font-weight:600;text-align:center}.activity-feed{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.activity-item{align-items:center;background:#f8f9fa;border:1px solid #ecf0f1;border-radius:6px;display:flex;gap:12px;padding:12px}.activity-avatar{align-items:center;background:#3498db;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:600;height:32px;justify-content:center;width:32px}.activity-content{display:flex;flex:1 1;flex-direction:column;gap:2px}.activity-patient{color:#2c3e50;font-size:14px;font-weight:600}.activity-action{color:#7f8c8d;font-size:12px}.activity-time{color:#95a5a6;font-size:11px}.activity-progress{background:#e3f2fd;border-radius:4px;color:#3498db;font-size:12px;font-weight:600;padding:4px 8px}.no-activity{color:#95a5a6;padding:40px 20px;text-align:center}.no-activity-icon{display:block;font-size:32px;margin-bottom:8px}.no-activity p{font-style:italic;margin:0}@media (max-width:1200px){.analytics-grid{grid-template-columns:1fr}.key-metrics{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.analytics-header{align-items:flex-start;flex-direction:column;gap:16px}.analytics-header h1{font-size:24px}.key-metrics{grid-template-columns:1fr}.analytics-card{padding:20px}.completion-bar{gap:8px;grid-template-columns:1fr}.bar-info{align-items:center;flex-direction:row;justify-content:space-between}.symptom-improvement{gap:4px;grid-template-columns:1fr}}@media (max-width:480px){.analytics-card{padding:16px}.metric-card{flex-direction:column;padding:20px;text-align:center}.metric-icon{height:48px;width:48px}.metric-icon,.metric-value{font-size:24px}.activity-item{flex-direction:column;gap:8px;text-align:center}.activity-content{align-items:center}}.analytics-error,.analytics-loading{align-items:center;color:#6c757d;display:flex;flex-direction:column;height:400px;justify-content:center}.analytics-error button{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;margin-top:16px;padding:10px 20px}.analytics-error button:hover{background:#0056b3}.consents-list-container{margin:0 auto;max-width:1400px;padding:24px}.consents-list-loading{align-items:center;color:#7f8c8d;display:flex;flex-direction:column;justify-content:center;padding:80px 20px}.consents-list-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;margin-bottom:32px}.header-title h1{color:#2c3e50;font-size:32px;font-weight:600;margin:0 0 8px}.header-subtitle{color:#7f8c8d;font-size:16px;margin:0}.header-stats{display:flex;gap:16px}.stat-card{align-items:center;border:2px solid #e0e0e0;display:flex;flex-direction:column;gap:4px;min-width:100px;padding:16px 24px}.stat-card.active{background:linear-gradient(135deg,#fff,#f0fff4);border-color:#27ae60}.stat-card.revoked{background:linear-gradient(135deg,#fff,#fff5f5);border-color:#e74c3c}.stat-number{font-size:32px}.stat-label{letter-spacing:.5px;text-transform:uppercase}.consents-list-controls{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:24px;padding:20px}.search-box{flex:1 1;min-width:250px}.search-input{border:2px solid #e0e0e0;font-size:15px;transition:all .3s ease;width:100%}.search-input:focus{border-color:#8b7355;box-shadow:0 0 0 3px #8b73551a}.filter-buttons{display:flex;gap:8px}.filter-btn{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#7f8c8d;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.filter-btn:hover{border-color:#8b7355;color:#8b7355}.filter-btn.active{background-color:#8b7355;border-color:#8b7355;color:#fff}.no-consents-found{color:#7f8c8d;font-size:16px;padding:60px 20px;text-align:center}.consents-table-container,.no-consents-found{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.consents-table-container{overflow:hidden}.consents-table{border-collapse:collapse;width:100%}.consents-table thead{background:linear-gradient(135deg,#8b7355,#6f5a42);color:#fff}.consents-table th{font-size:14px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.consents-table tbody tr{border-bottom:1px solid #f0f0f0;transition:all .3s ease}.consents-table tbody tr:hover{background-color:#fafafa}.consents-table tbody tr:last-child{border-bottom:none}.consents-table td{padding:16px;vertical-align:middle}.patient-cell{gap:12px}.patient-avatar,.patient-cell{align-items:center;display:flex}.patient-avatar{background:linear-gradient(135deg,#3498db,#2980b9);border-radius:50%;color:#fff;font-size:14px;font-weight:600;height:40px;justify-content:center;width:40px}.patient-name{color:#2c3e50;font-size:15px;font-weight:600}.email-cell{color:#7f8c8d;font-size:14px}.date-cell{color:#2c3e50;font-size:14px;white-space:nowrap}.status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:6px 16px;white-space:nowrap}.status-badge.active{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.status-badge.revoked{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.action-buttons{display:flex;gap:8px}.btn-action{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.btn-action.view{background-color:#8b7355;color:#fff}.btn-action.view:hover{background-color:#6f5a42;box-shadow:0 4px 12px #8b73554d;transform:translateY(-2px)}.btn-action.download{background-color:#3498db;color:#fff}.btn-action.download:hover{background-color:#2980b9;box-shadow:0 4px 12px #3498db4d;transform:translateY(-2px)}.consent-modal-overlay{align-items:center;animation:fadeIn .3s ease;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.consent-modal{animation:slideUp .3s ease;border-radius:16px;overflow-y:auto}.consent-modal-header{background:#fff;border-bottom:2px solid #f0f0f0;padding:24px 32px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.consent-modal-header h2{color:#2c3e50;font-weight:600}.modal-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#7f8c8d;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:all .3s ease;width:32px}.modal-close-btn:hover{background-color:#f0f0f0;color:#2c3e50}.consent-modal-content{padding:32px}.consent-modal-section{margin-bottom:32px}.consent-modal-section:last-child{margin-bottom:0}.consent-modal-section h3{border-bottom:2px solid #8b7355;color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.consent-modal-status{display:flex;justify-content:center;margin-bottom:16px}.consent-badge{align-items:center;border-radius:24px;display:inline-flex;font-size:16px;font-weight:600;gap:8px;padding:10px 24px}.consent-badge.active{background-color:#d4edda;border:2px solid #c3e6cb;color:#155724}.consent-badge.revoked{background-color:#f8d7da;border:2px solid #f5c6cb;color:#721c24}.modal-info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.modal-info-item{display:flex;flex-direction:column;gap:6px}.modal-info-item.full-width{grid-column:1/-1}.modal-label{color:#555;font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.modal-value{color:#2c3e50;font-size:16px;word-break:break-word}.consent-text-container{background:#f8f9fa;border-left:4px solid #8b7355;border-radius:8px;color:#2c3e50;line-height:1.8;max-height:300px;overflow-y:auto;padding:20px;white-space:pre-wrap}.modal-signature-container{background:#fafafa;border:2px solid #e0e0e0;border-radius:8px;display:flex;justify-content:center;padding:20px}.modal-signature-image{max-height:150px;max-width:400px;object-fit:contain}.consent-modal-footer{background:#fff;border-top:2px solid #f0f0f0;bottom:0;padding:20px 32px;position:-webkit-sticky;position:sticky}.btn-modal-close{background-color:#8b7355;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 32px;transition:all .3s ease}.btn-modal-close:hover{background-color:#6f5a42;box-shadow:0 4px 12px #8b73554d;transform:translateY(-2px)}@media (max-width:1024px){.consents-table-container{overflow-x:auto}.consents-table{min-width:800px}}@media (max-width:768px){.consents-list-header{flex-direction:column}.header-stats{justify-content:space-between;width:100%}.stat-card{flex:1 1;min-width:80px}.consents-list-controls{align-items:stretch;flex-direction:column}.search-box{width:100%}.filter-buttons{justify-content:space-between;width:100%}.filter-btn{flex:1 1}.consent-modal{border-radius:0;max-height:100vh;max-width:100%}.consent-modal-content,.consent-modal-footer,.consent-modal-header{padding:20px}.modal-info-grid{grid-template-columns:1fr}}.admin-navbar{align-items:center;background:linear-gradient(135deg,#2c3e50,#34495e);box-shadow:0 2px 12px #00000026;color:#fff;display:flex;justify-content:space-between;padding:16px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.admin-navbar-brand{align-items:center;display:flex;gap:12px}.admin-navbar-brand h2{color:#fff;font-size:20px;font-weight:600;margin:0}.admin-badge{background:#e74c3c;border-radius:16px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.admin-navbar-nav,.nav-tab{align-items:center;display:flex;gap:8px}.nav-tab{background:#0000;border:1px solid #fff3;border-radius:8px;color:#fffc;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:all .3s ease}.nav-tab:hover{background:#ffffff1a;border-color:#ffffff4d;color:#fff}.nav-tab.active{background:#ffffff26;border-color:#fff6;color:#fff}.nav-icon{font-size:16px}.patient-breadcrumb{align-items:center;display:flex;gap:16px}.back-btn{background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 12px;transition:all .3s ease}.back-btn:hover{background:#fff3;border-color:#ffffff4d}.current-patient{color:#3498db;font-size:16px;font-weight:600}.admin-navbar-user{align-items:center;display:flex;gap:12px;position:relative}.user-dashboard-link{align-items:center;background:#0000;border:1px solid #fff3;border-radius:6px;color:#fffc;cursor:pointer;display:flex;font-size:13px;gap:6px;padding:6px 12px;transition:all .3s ease}.user-dashboard-link:hover{background:#ffffff1a;border-color:#ffffff4d;color:#fff}.user-menu-container{position:relative}.user-menu-toggle{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;gap:12px;padding:0;transition:all .3s ease}.user-menu-toggle:hover .user-avatar{border-color:#fff6;transform:scale(1.05)}.user-info{align-items:flex-end;display:flex;flex-direction:column;gap:2px}.user-role{color:#fffc;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.user-avatar,.user-name{color:#fff;font-size:14px;font-weight:600}.user-avatar{align-items:center;background:linear-gradient(135deg,#3498db,#2980b9);border:2px solid #fff3;border-radius:50%;display:flex;height:40px;justify-content:center;transition:all .3s ease;width:40px}.user-dropdown{animation:dropdownFadeIn .2s ease-out;background:#fff;border:1px solid #0000001a;border-radius:12px;box-shadow:0 8px 32px #0003;margin-top:8px;min-width:200px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{border-bottom:1px solid #f0f0f0;padding:16px;text-align:left}.dropdown-header strong{color:#2c3e50;display:block;font-size:14px;font-weight:600;margin-bottom:2px}.dropdown-header small{color:#7f8c8d;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.dropdown-divider{background:#f0f0f0;height:1px;margin:0}.dropdown-item{align-items:center;background:#fff;border:none;color:#2c3e50;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.dropdown-item:hover{background:#f8f9fa}.dropdown-item.logout-item{color:#e74c3c}.dropdown-item.logout-item:hover{background:#fdf2f2}@media (max-width:768px){.admin-navbar{align-items:flex-start;flex-direction:column;gap:12px;padding:12px 16px;position:relative}.admin-navbar-brand{justify-content:space-between;width:100%}.admin-navbar-brand h2{font-size:18px}.admin-navbar-nav{justify-content:flex-start;width:100%}.patient-breadcrumb{justify-content:space-between;width:100%}.nav-tab{font-size:13px;padding:8px 12px}.admin-navbar-user{gap:8px;position:absolute;right:16px;top:12px}.user-dashboard-link,.user-info{display:none}.user-avatar{font-size:12px;height:36px;width:36px}.user-dropdown{min-width:180px;right:-8px}.dropdown-header{padding:12px}.dropdown-item{font-size:13px;padding:10px 12px}}@media (max-width:480px){.admin-navbar{padding:10px 12px}.admin-navbar-brand h2{font-size:16px}.admin-badge{font-size:10px;padding:2px 8px}.nav-tab{font-size:12px;padding:6px 10px}.nav-icon{font-size:14px}.back-btn{font-size:12px;padding:6px 10px}.current-patient{font-size:14px}}.admin-dashboard{background:linear-gradient(180deg,#f8f9fa,#e9ecef);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh}.access-denied{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;display:flex;flex-direction:column;height:100vh;justify-content:center;margin:20px;padding:40px;text-align:center}.access-denied h2{color:#dc3545;font-size:28px;font-weight:600;margin-bottom:16px}.access-denied p{line-height:1.5;margin-bottom:8px}.access-denied button{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;margin-top:24px;padding:12px 24px;transition:background-color .2s}.access-denied button:hover{background:#0056b3}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:40px;margin-bottom:16px;width:40px}.access-denied p{color:#6c757d;font-size:16px}.admin-main-content{margin:0 auto;max-width:1400px;padding:20px}.section-header h1{color:#2c3e50;font-size:32px;font-weight:600;margin-bottom:20px}.patients-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:#fff;border-left:4px solid #3498db;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px;text-align:center}.stat-number{color:#2c3e50;display:block;font-size:36px;font-weight:700;margin-bottom:8px}.stat-label{color:#7f8c8d;font-size:14px;font-weight:500}.patients-controls{margin-bottom:30px}.search-filter-bar{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.search-input{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 1px 3px #0000001a;flex:1 1;font-size:14px;min-width:300px;padding:12px 16px}.search-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.filter-select{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 1px 3px #0000001a;cursor:pointer;font-size:14px;padding:12px 16px}.filter-select:focus{border-color:#3498db;outline:none}@media (max-width:1200px){.admin-main-content{padding:16px}}@media (max-width:768px){.admin-main-content{padding:12px}.section-header h1{font-size:24px}.patients-stats{gap:16px;grid-template-columns:1fr}.stat-card{padding:20px}.stat-number{font-size:28px}.search-filter-bar{align-items:stretch;flex-direction:column}.search-input{min-width:auto}}@media (max-width:480px){.admin-main-content{padding:8px}.section-header h1{font-size:20px}.stat-card{padding:16px}.stat-number{font-size:24px}}.payments-section{max-width:760px}.section-subtitle{color:#6c757d;font-size:15px;margin-top:4px}.pricing-loading{color:#6c757d;padding:24px 0}.pricing-form{display:flex;flex-direction:column;gap:20px;margin-top:24px}.pricing-card{background:#fff;border:1px solid #dee2e6;border-radius:12px;padding:24px}.pricing-card h3{color:#212529;font-size:16px;font-weight:600;margin:0 0 16px}.toggle-label{align-items:center;cursor:pointer;display:flex;gap:12px}.toggle-label input[type=checkbox]{accent-color:#2d6a4f;cursor:pointer;height:18px;width:18px}.toggle-text{color:#343a40;font-size:15px}.pricing-row{display:flex;flex-wrap:wrap;gap:20px}.pricing-field{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:160px}.pricing-field label{color:#495057;font-size:14px;font-weight:500}.pricing-field small{color:#868e96;font-size:12px}.pricing-input{border:1px solid #ced4da;border-radius:8px;font-size:15px;outline:none;padding:10px 14px;transition:border-color .15s}.pricing-input:focus{border-color:#2d6a4f;box-shadow:0 0 0 3px #2d6a4f1f}.pricing-input--currency{text-transform:lowercase;width:90px}.pricing-input--full{width:100%}.pricing-msg{border-radius:8px;font-size:14px;font-weight:500;padding:12px 16px}.pricing-msg--success{background:#d1e7dd;color:#0a3622}.pricing-msg--error{background:#f8d7da;color:#58151c}.pricing-actions{display:flex;gap:12px}.btn-save-pricing{background:#2d6a4f;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:10px 28px;transition:background .15s}.btn-save-pricing:hover:not(:disabled){background:#1b4332}.btn-save-pricing:disabled{cursor:not-allowed;opacity:.6}.btn-reload-pricing{background:#f8f9fa;border:1px solid #ced4da;border-radius:8px;color:#495057;cursor:pointer;font-size:15px;padding:10px 20px;transition:background .15s}.btn-reload-pricing:hover:not(:disabled){background:#e9ecef}.privacy-notice-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.privacy-notice-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-width:500px;padding:32px;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.privacy-notice-modal h2{color:#2c2416;font-size:24px;margin:0 0 20px;text-align:center}.privacy-notice-content{color:#3d3425;line-height:1.6;margin-bottom:24px}.privacy-notice-content p{margin:0 0 16px}.privacy-notice-content ul{list-style:none;margin:16px 0;padding:0}.privacy-notice-content li{font-size:15px;padding:8px 0}.privacy-notice-footer{color:#666;font-size:13px;font-style:italic;margin-top:20px!important}.privacy-notice-btn{background:#8fa998;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 24px;transition:all .3s ease;width:100%}.privacy-notice-btn:hover{background:#7a9486;box-shadow:0 4px 12px #8fa99866;transform:translateY(-2px)}.privacy-notice-btn:active{transform:translateY(0)}@media (max-width:480px){.privacy-notice-modal{padding:24px}.privacy-notice-modal h2{font-size:20px}.privacy-notice-content li{font-size:14px}}.journal-navigation{align-items:center;border-top:2px solid #e0e0e0;display:flex;gap:16px;justify-content:space-between;margin-top:40px;padding:20px 0}.journal-nav-btn{align-items:center;background:#f5f5f0;border:none;border-radius:8px;color:#3d3425;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;min-width:120px;padding:12px 24px;transition:all .3s ease}.journal-nav-btn:hover:not(:disabled){background:#e8e8e0;box-shadow:0 4px 12px #0000001a;color:#2c2416;transform:translateY(-2px)}.journal-nav-btn:active:not(:disabled){box-shadow:0 2px 6px #00000014;transform:translateY(0)}.journal-nav-btn:disabled{background:#f5f5f0;color:#999;cursor:not-allowed;opacity:.3}.journal-nav-btn .nav-icon{font-size:20px;font-weight:700}.journal-nav-btn .nav-text{font-size:16px}.prev-btn{justify-content:flex-start}.next-btn{justify-content:flex-end;margin-left:auto}@media (max-width:768px){.journal-navigation{margin-top:30px;padding:16px 0}.journal-nav-btn{font-size:14px;min-width:100px;padding:10px 16px}.journal-nav-btn .nav-icon{font-size:18px}.journal-nav-btn .nav-text{font-size:14px}}@media (max-width:480px){.journal-navigation{gap:12px}.journal-nav-btn{flex:1 1;min-width:90px;padding:8px 12px}.journal-nav-btn .nav-text{display:none}.journal-nav-btn .nav-icon{font-size:24px}.prev-btn:after{content:"Prev";font-size:12px;margin-left:4px}.next-btn:before{content:"Next";font-size:12px;margin-right:4px}}.lock-indicator{align-items:flex-start;animation:slideDown .3s ease-out;border-radius:8px;display:flex;gap:12px;margin:20px 0;padding:16px 20px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.lock-indicator.locked{background:#fee2e2;border:2px solid #fca5a5}.lock-indicator.warning{background:#fef3c7;border:2px solid #fcd34d}.lock-icon{flex-shrink:0;font-size:24px;line-height:1}.lock-content{flex:1 1}.lock-title{color:#2c2416;font-size:16px;font-weight:600;margin-bottom:6px}.lock-indicator.locked .lock-title{color:#991b1b}.lock-indicator.warning .lock-title{color:#92400e}.lock-message{color:#3d3425;font-size:14px;line-height:1.5}.lock-indicator.locked .lock-message{color:#7f1d1d}.lock-indicator.warning .lock-message{color:#78350f}.lock-message strong{font-weight:700}@media (max-width:768px){.lock-indicator{gap:10px;padding:14px 16px}.lock-icon{font-size:20px}.lock-title{font-size:15px}.lock-message{font-size:13px}}@media (max-width:480px){.lock-indicator{padding:12px 14px}.lock-icon{font-size:18px}.lock-title{font-size:14px}.lock-message{font-size:12px}}.journal-start-modal-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.journal-start-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.journal-start-modal-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 0 0;color:#fff;padding:24px 30px}.journal-start-modal-header h2{font-size:24px;font-weight:600;margin:0;text-align:center}.journal-start-modal-content{padding:30px}.journal-start-icon{font-size:64px;margin-bottom:20px;text-align:center}.journal-start-message{margin-bottom:24px;text-align:center}.journal-start-message p{color:#000;font-size:16px;line-height:1.6;margin:12px 0}.journal-start-message p:first-child{color:#000;font-size:18px;font-style:italic;font-weight:600}.journal-start-time{border-radius:8px;color:#000;font-size:16px;margin-bottom:20px;padding:15px;text-align:center}.journal-start-time strong{color:#000}.journal-start-warning{align-items:start;border-radius:8px;display:flex;gap:12px;padding:16px}.warning-icon{flex-shrink:0;font-size:24px}.journal-start-warning p{color:#000;font-size:14px;line-height:1.5;margin:0}.journal-start-warning strong{color:#000}.journal-start-modal-actions{display:flex;gap:12px;justify-content:center;padding:20px 30px 30px}.journal-start-modal-actions button{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;min-width:140px;padding:12px 32px;transition:all .2s ease}.btn-cancel{background:#f5f5f5;color:#666}.btn-cancel:hover{background:#e0e0e0;transform:translateY(-1px)}.btn-begin{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea66;color:#fff}.btn-begin:hover{box-shadow:0 6px 16px #667eea80;transform:translateY(-2px)}.btn-begin:active{transform:translateY(0)}@media (max-width:768px){.journal-start-modal{margin:10px;max-width:95%}.journal-start-modal-header{padding:20px}.journal-start-modal-header h2{font-size:20px}.journal-start-modal-content{padding:20px}.journal-start-icon{font-size:48px;margin-bottom:16px}.journal-start-message p{font-size:15px}.journal-start-message p:first-child{font-size:16px}.journal-start-time{font-size:14px;padding:12px}.journal-start-warning{align-items:center;flex-direction:column;padding:12px;text-align:center}.journal-start-modal-actions{flex-direction:column;padding:15px 20px 20px}.journal-start-modal-actions button{min-width:auto;width:100%}}.self-assessment-container{background:linear-gradient(180deg,#f5f0e8,#ebe4d8);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh;padding:40px 20px}.journal-page-wrapper{background:#f5f0e8;border-radius:12px;box-shadow:0 4px 20px #0000001a;margin:0 auto;max-width:800px;padding:60px 80px;position:relative}.journal-title{color:#2c2416;font-family:Libre Baskerville,Georgia,serif;font-size:48px;font-weight:400;margin-bottom:30px;text-align:left}.journal-prompt{color:#3d3425;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.8;margin-bottom:40px;text-align:justify}.handwritten-label{color:#2c2416;font-family:Brush Script MT,cursive;font-size:42px;font-weight:400;margin-bottom:20px}.ranking-prefix{font-size:22px;font-style:italic;margin-left:5px}.dropdown-style{background-color:initial;border:none;font-size:14px;min-width:80px;padding:8px}.handwritten-signature{align-items:flex-end;color:#2c2416;display:flex;font-family:Brush Script MT,cursive;font-size:36px;justify-content:space-between;margin-top:40px}.journal-lines{margin:30px 0}.journal-line{border-bottom:1px solid #d4c4a8;margin-bottom:32px;padding-bottom:8px;position:relative}.journal-line input,.journal-line textarea{background:#0000;border:none;color:#2c2416;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.6;outline:none;padding:8px 0;resize:none;width:100%}.journal-line textarea{line-height:32px;min-height:200px}.journal-line input::placeholder,.journal-line textarea::placeholder{color:#a89876;opacity:.6}.icon-box{align-items:center;background:#ffd24d;border-radius:4px;cursor:pointer;display:inline-flex;font-size:14px;height:24px;justify-content:center;margin-left:8px;transition:transform .2s;width:24px}.icon-box:hover{transform:scale(1.1)}.date-signature{align-items:flex-end;display:flex;justify-content:space-between;margin-top:60px}.signature-field{flex:1 1;margin-right:40px;position:relative}.signature-field input{background:#0000;border:none;border-bottom:1px solid #d4c4a8;color:#2c2416;font-family:Brush Script MT,cursive;font-size:20px;outline:none;padding:8px 0;width:100%}.date-field{min-width:200px;position:relative}.date-field input{background:#0000;border:none;border-bottom:1px solid #d4c4a8;color:#2c2416;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;outline:none;padding:8px 0;width:100%}.self-assessment-container{scroll-behavior:smooth}.section-divider{height:80px}.save-status{align-items:center;color:#6b5d4d;display:flex;font-size:13px;gap:6px;position:absolute;right:20px;top:20px}.save-status.saving{color:#8b7355}.save-status.saved{color:#4a7c59}.symptom-rating-container{margin-top:40px}.symptom-rating-row{grid-gap:40px;display:grid;gap:40px;grid-template-columns:1fr 1fr;margin-bottom:20px}.symptom-rating-item{align-items:center;display:flex;gap:15px}.symptom-number{color:#2c2416;font-size:24px;min-width:30px}.rating-input-wrapper{align-items:center;display:flex;gap:8px;min-width:80px}.rating-input{background:#0000;border:none;border-bottom:1px solid #d4c4a8;padding:8px 0;text-align:center;width:50px}.rating-divider{color:#2c2416;font-size:18px}.symptom-table-container{margin-top:30px}.symptom-table-grid{grid-gap:0;border:1px solid #8fa998;display:grid;gap:0;grid-template-columns:2fr 1fr 2fr 1fr}.symptom-table-header{background:#8fa998;border-right:1px solid #8fa998;color:#2c2416;padding:12px 16px}.symptom-table-rating-header{text-align:center}.symptom-table-header-last{border-right:none}.symptom-table-cell{border-right:1px solid #8fa998;border-top:1px solid #8fa998;padding:12px 16px;position:relative}.symptom-cell-dark{background:#b8cfc0}.rating-cell-light,.symptom-cell-light{background:#d4e3d9}.rating-cell-lighter{background:#e8f0ec}.symptom-rating-table-input{background:#0000;border:none;outline:none;padding:4px;text-align:center;width:100%}.four-pillars-header{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(4,1fr);margin-top:30px;text-align:center}.progress-calendar-table{border:none;border-collapse:collapse;border-radius:8px;margin:0;overflow:hidden;table-layout:fixed;width:100%}.progress-calendar-header{border:1px solid #3d3425;border-bottom:none;color:#2c2416;font-size:14px;font-weight:500;padding:15px 10px;text-align:center;width:14.28%}.progress-calendar-cell{border:1px solid #3d3425;border-top:none;min-height:80px;padding:20px 10px;text-align:center;vertical-align:middle;width:14.28%}@media (max-width:900px){.journal-page-wrapper{padding:40px 30px}.journal-title{font-size:36px}.handwritten-label{font-size:26px}.date-signature{flex-direction:column;gap:30px}.signature-field{margin-right:0;width:100%}.date-field{width:100%}.symptom-rating-row{gap:20px;grid-template-columns:1fr}.symptom-rating-item{gap:10px}.symptom-number{font-size:20px;min-width:25px}.rating-divider{font-size:16px}.symptom-table-grid{grid-template-columns:2fr 1fr}.symptom-table-header-last,.symptom-table-header-right{display:none}.symptom-table-cell,.symptom-table-header{padding:10px 12px}.four-pillars-header{gap:15px;grid-template-columns:1fr;text-align:left}.progress-calendar-table{font-size:13px;margin:0}.progress-calendar-header{font-size:12px;padding:12px 6px}.progress-calendar-cell{min-height:75px;padding:16px 6px}.progress-calendar-cell div{gap:3px!important}.progress-calendar-cell span{font-size:20px!important}.journal-page-wrapper>div>div[style*="gridTemplateColumns: '2fr 1fr 2fr 1fr'"],.journal-page-wrapper>div>div[style*="gridTemplateColumns:'2fr 1fr 2fr 1fr'"]{grid-template-columns:2fr 1fr!important}.journal-page-wrapper>div>div[style*="gridTemplateColumns: '1fr 1fr'"],.journal-page-wrapper>div>div[style*="gridTemplateColumns:'1fr 1fr'"]{grid-template-columns:1fr!important}}@media (max-width:480px){.self-assessment-container{padding:20px 10px}.journal-page-wrapper{padding:30px 20px}.journal-title{font-size:28px}.journal-prompt{font-size:14px}.handwritten-label{font-size:22px}.ranking-prefix{font-size:16px}.symptom-number{font-size:18px;min-width:20px}.rating-input{width:40px}.rating-divider{font-size:14px}.rating-input-wrapper{min-width:60px}.symptom-table-cell,.symptom-table-header{font-size:14px;padding:8px 10px}.progress-calendar-table{-webkit-overflow-scrolling:touch;display:block;font-size:12px;margin:0 -20px;overflow-x:auto}.progress-calendar-table tbody{display:table;min-width:100%;width:auto}.progress-calendar-table tr{display:table-row}.progress-calendar-header{font-size:11px;min-width:50px;padding:10px 4px;white-space:nowrap;width:auto}.progress-calendar-cell{min-height:65px;min-width:50px;padding:12px 4px;width:auto}.progress-calendar-cell div{flex-wrap:wrap;gap:2px!important}.progress-calendar-cell span{align-items:center;display:inline-flex;font-size:18px!important;justify-content:center;min-height:18px;min-width:18px}}.reflect-grid{grid-gap:30px;gap:30px;margin-top:30px}.reflect-section{background:#ffffff1a;border-radius:8px;transition:all .3s ease}@media (max-width:1024px){.reflect-grid{gap:20px}}@media (max-width:768px){.reflect-grid{gap:30px;grid-template-columns:1fr;margin-top:20px}.reflect-section{margin-bottom:10px}}@media (max-width:480px){.reflect-grid{gap:20px}.reflect-section{padding:20px!important}}.month1-health-metrics-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:1fr 1fr;margin-bottom:60px}@media (max-width:768px){.month1-health-metrics-grid{gap:30px;grid-template-columns:1fr;margin-bottom:40px}.month1-health-metrics-grid .journal-line{margin-bottom:20px}.month1-health-metrics-grid .journal-line label{font-size:13px!important;margin-bottom:6px!important}.month1-health-metrics-grid .journal-line[style*="display: flex"]{flex-wrap:wrap!important;gap:8px!important}.month1-health-metrics-grid .journal-line[style*="display: flex"]>div[style*="flex: 1"]{margin-bottom:8px;min-width:100%!important}.month1-health-metrics-grid select{font-size:13px!important;height:36px!important;min-width:70px!important;padding:6px!important}}@media (max-width:480px){.month1-health-metrics-grid{gap:20px;margin-bottom:30px}.month1-health-metrics-grid .journal-line{margin-bottom:15px}.month1-health-metrics-grid .journal-line label{word-wrap:break-word;font-size:11px!important;line-height:1.3!important;margin-bottom:4px!important}.month1-health-metrics-grid .journal-line[style*="display: flex"]{flex-direction:column!important}.month1-health-metrics-grid .journal-line[style*="display: flex"]>div[style*="flex: 1"]{margin-bottom:8px;min-width:100%!important}.month1-health-metrics-grid input{font-size:13px!important;padding:6px 0!important}.month1-health-metrics-grid select{font-size:11px!important;height:32px!important;max-width:100px!important;min-width:65px!important;padding:4px!important}}.month2-health-metrics-grid{grid-gap:60px;display:grid;gap:60px;grid-template-columns:1fr 1fr;margin-bottom:60px}.month2-health-metrics-grid .journal-line label{color:#2c2416;display:block;font-size:16px;margin-bottom:8px}@media (max-width:768px){.month2-health-metrics-grid{gap:30px;grid-template-columns:1fr;margin-bottom:40px}.month2-health-metrics-grid .journal-line{margin-bottom:20px}.month2-health-metrics-grid .journal-line label{font-size:13px!important;line-height:1.3!important;margin-bottom:6px!important}.month2-health-metrics-grid .journal-line>div[style*="display: flex"]{flex-wrap:wrap!important;gap:8px!important}.month2-health-metrics-grid select{font-size:13px!important;height:36px!important;min-width:70px!important;padding:6px!important}}@media (max-width:480px){.month2-health-metrics-grid{gap:20px;margin-bottom:30px}.month2-health-metrics-grid .journal-line{margin-bottom:15px}.month2-health-metrics-grid .journal-line label{word-wrap:break-word;font-size:11px!important;line-height:1.3!important;margin-bottom:4px!important}.month2-health-metrics-grid .journal-line>div[style*="display: flex"]{align-items:flex-start!important;flex-direction:column!important}.month2-health-metrics-grid input{font-size:13px!important;padding:6px 0!important;width:100%}.month2-health-metrics-grid select{font-size:11px!important;height:32px!important;margin-top:8px;max-width:100px!important;min-width:65px!important;padding:4px!important}}.month3-health-metrics-grid{grid-gap:40px 60px;display:grid;gap:40px 60px;grid-template-columns:1fr 1fr;margin-bottom:60px}.month3-health-metrics-grid .journal-line label{color:#2c2416;display:block;font-size:16px;margin-bottom:8px}@media (max-width:768px){.month3-health-metrics-grid{gap:30px;grid-template-columns:1fr;margin-bottom:40px}.month3-health-metrics-grid .journal-line{margin-bottom:20px}.month3-health-metrics-grid .journal-line label{font-size:13px!important;line-height:1.3!important;margin-bottom:6px!important}.month3-health-metrics-grid .journal-line>div[style*="display: flex"]{flex-wrap:wrap!important;gap:8px!important}.month3-health-metrics-grid select{font-size:13px!important;height:36px!important;min-width:70px!important;padding:6px!important}}@media (max-width:480px){.month3-health-metrics-grid{gap:20px;margin-bottom:30px}.month3-health-metrics-grid .journal-line{margin-bottom:15px}.month3-health-metrics-grid .journal-line label{word-wrap:break-word;font-size:11px!important;line-height:1.3!important;margin-bottom:4px!important}.month3-health-metrics-grid .journal-line>div[style*="display: flex"]{align-items:flex-start!important;flex-direction:column!important}.month3-health-metrics-grid input{font-size:13px!important;padding:6px 0!important;width:100%}.month3-health-metrics-grid select{font-size:11px!important;height:32px!important;margin-top:8px;max-width:100px!important;min-width:65px!important;padding:4px!important}}.reflect-grid{grid-gap:0;border:2px solid #2c2416;display:grid;gap:0;grid-template-columns:1fr 1fr;margin-bottom:60px}.reflect-section{padding:40px}.reflect-section h3{font-size:24px;font-weight:500;margin-bottom:30px}@media (max-width:768px){.reflect-grid{grid-template-columns:1fr;margin-bottom:40px}.reflect-section{border-right:none!important;padding:30px 20px}.reflect-section h3{font-size:20px;margin-bottom:20px}.reflect-section>div{margin-bottom:20px!important}.reflect-section label{font-size:13px!important}.reflect-section .journal-line input,.reflect-section .journal-line textarea{font-size:14px!important}.reflect-section select{font-size:13px!important;min-width:70px!important}}@media (max-width:480px){.reflect-section{padding:20px 15px}.reflect-section h3{font-size:18px;margin-bottom:15px}.reflect-section>div{margin-bottom:15px!important}.reflect-section label{font-size:12px!important;margin-bottom:6px!important}.reflect-section .journal-line input,.reflect-section .journal-line textarea{font-size:13px!important;padding:6px 0!important}.reflect-section select{font-size:11px!important;max-width:100px!important;min-width:65px!important;padding:4px!important}.reflect-section .journal-line[style*="display: flex"]{align-items:flex-start!important;flex-direction:column!important}.reflect-section .journal-line[style*="display: flex"] input{width:100%!important}.reflect-section .journal-line[style*="display: flex"] select{margin-top:8px}}.congrats-signature-container{align-items:flex-end;display:flex;justify-content:space-between}@media (max-width:768px){.congrats-signature-container{align-items:stretch!important;flex-direction:column;gap:30px}.congrats-signature-container>div{text-align:left!important}.congrats-signature-container .journal-line{margin-left:0!important;max-width:100%!important}}@media (max-width:480px){.congrats-signature-container{gap:25px}.congrats-signature-container .handwritten-label{font-size:18px!important}}@media (max-width:1200px){.progress-calendar-header{font-size:13px;padding:14px 8px}.progress-calendar-cell{padding:18px 8px}}@media (max-width:768px){.progress-calendar-table{-webkit-overflow-scrolling:touch;display:block;font-size:12px;margin:0 -15px;overflow-x:auto}.progress-calendar-table tbody{display:table;min-width:100%;width:auto}.progress-calendar-header{font-size:11px;min-width:55px;padding:10px 6px;white-space:nowrap}.progress-calendar-cell{min-height:70px;min-width:55px;padding:14px 6px}.progress-calendar-cell div{gap:2px!important}.progress-calendar-cell span{font-size:19px!important}}@media (max-width:600px){.progress-calendar-table{margin:0 -10px}.progress-calendar-header{font-size:10px;min-width:50px;padding:8px 4px}.progress-calendar-cell{min-height:65px;min-width:50px;padding:12px 4px}.progress-calendar-cell span{font-size:17px!important}}@media (max-width:360px){.progress-calendar-header{font-size:8px;min-width:40px;padding:5px 2px}.progress-calendar-cell{min-height:55px;min-width:40px;padding:8px 2px}.progress-calendar-cell div{flex-direction:column;gap:1px!important;justify-content:center!important}.progress-calendar-cell span{font-size:14px!important;margin:1px 0}}.journal-line.multi-line{border-bottom:none}.journal-line.multi-line textarea{background:linear-gradient(#0000,#0000 31px,#d4c4a8 31px,#d4c4a8 32px);background-size:100% 32px;line-height:32px;padding-top:0}.question-number{color:#6b5d4d;font-family:Libre Baskerville,Georgia,serif;font-size:18px;font-weight:600;margin-bottom:12px}.section-header{border-bottom:2px solid #2c2416;margin-bottom:30px;padding-bottom:10px}.highlighted-text{background-color:#e3f2fd;border-radius:2px;color:#1976d2;font-weight:700;padding:1px 3px}@keyframes popupBounce{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media (max-width:1024px){.progress-calendar-table{font-size:14px}.progress-calendar-header{font-size:13px;padding:12px 8px}.progress-calendar-cell{padding:18px 8px}}@media (max-width:768px){.progress-calendar-table{-webkit-overflow-scrolling:touch;display:block;font-size:13px;margin:0 -20px;overflow-x:auto;padding:0 20px;white-space:nowrap}.progress-calendar-table tbody{display:table;min-width:500px;width:100%}.progress-calendar-header{font-size:12px;min-width:70px;padding:10px 6px}.progress-calendar-cell{min-width:70px;padding:15px 6px}}@media (max-width:480px){.progress-calendar-table{font-size:12px;margin:0 -10px;padding:0 10px}.progress-calendar-table tbody{min-width:450px}.progress-calendar-header{font-size:11px;min-width:64px;padding:8px 4px}.progress-calendar-cell{min-width:64px;padding:12px 4px}.progress-calendar-cell div{gap:3px!important}.progress-calendar-cell span{font-size:20px!important}}.modal-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;z-index:1000}.consent-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:800px;width:100%}.consent-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:24px}.consent-modal-header h2{color:#2c2416;font-size:24px;margin:0}.close-btn{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:32px;height:32px;justify-content:center;padding:0;transition:color .2s;width:32px}.close-btn:hover{color:#333}.consent-modal-body{flex:1 1;overflow-y:auto;padding:24px}.consent-content{margin-bottom:32px}.consent-content h3{color:#2c2416;font-size:20px;margin-bottom:20px;text-align:center}.consent-section{margin-bottom:24px}.consent-section h4{color:#2c2416;font-size:16px;font-weight:600;margin-bottom:12px}.consent-section p{color:#333;font-size:14px;line-height:1.6;margin-bottom:12px}.consent-section ul{color:#333;font-size:14px;line-height:1.8;margin-left:24px}.consent-section ul li{margin-bottom:8px}.consent-form{border-top:2px solid #8b7355;padding-top:24px}.form-group{margin-bottom:24px}.form-group label{color:#2c2416;font-size:14px;font-weight:600;margin-bottom:8px}.form-group input[type=text]{border:1px solid #ccc;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.form-group input[type=text]:focus{border-color:#8b7355;outline:none}.signature-instruction{color:#666;font-size:13px;font-style:italic;margin-bottom:12px}.signature-container{position:relative}.signature-canvas{background-color:#fafafa;border:2px solid #8b7355;border-radius:8px;cursor:crosshair;display:block;height:150px;touch-action:none;width:100%}.clear-signature-btn{font-size:13px;margin-top:12px;padding:8px 16px}.checkbox-group label{align-items:flex-start;cursor:pointer;display:flex}.checkbox-group input[type=checkbox]{cursor:pointer;flex-shrink:0;height:18px;margin-right:12px;margin-top:4px;width:18px}.checkbox-group span{color:#333;font-size:14px;line-height:1.6}.consent-date{background-color:#f5f5f5;border-radius:6px;color:#333;font-size:14px;margin-top:16px;padding:12px}.consent-modal-footer{border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;padding:24px}.btn{cursor:pointer;padding:10px 24px}.btn-primary{background-color:#8b7355}.btn-primary:hover:not(:disabled){background-color:#705d47}.btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.btn-secondary{background-color:#f5f5f5;border:1px solid #ccc;color:#333}.btn-secondary:hover{background-color:#e0e0e0}@media (max-width:768px){.consent-modal{border-radius:0;max-height:100vh;max-width:100%}.consent-modal-body,.consent-modal-footer,.consent-modal-header{padding:16px}.consent-modal-header h2{font-size:20px}.signature-canvas{height:120px}}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset),env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset),env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset),env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset),env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:0.2}.Toastify__toast-container{box-sizing:border-box;color:#fff;display:flex;flex-direction:column;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:-webkit-fit-content;width:fit-content;width:var(--toastify-container-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--top-center{align-items:center;left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{align-items:end;right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--bottom-left{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{align-items:center;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{align-items:end;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right)}.Toastify__toast{--y:0;align-items:center;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-shadow:var(--toastify-toast-shadow);box-sizing:border-box;display:flex;flex:1 1 auto;font-family:sans-serif;font-family:var(--toastify-font-family);margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);padding:14px;padding:var(--toastify-toast-padding);position:relative;touch-action:none;width:320px;width:var(--toastify-toast-width);word-break:break-word;z-index:0}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:env(safe-area-inset-right)}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:320px;width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s;width:100%}.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{bottom:100%;content:"";height:calc(var(--g)*1px);left:0;position:absolute;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:22px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74d3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74d3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;position:absolute;right:6px;top:6px;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:auto}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:1}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{border-bottom-left-radius:0;left:auto;right:0;transform-origin:right}.Toastify__progress-bar--wrp{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;width:100%}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{height:100%;opacity:.2;opacity:var(--toastify-color-progress-bgo);width:100%}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{opacity:1;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg)}to{opacity:0;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(-110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-duration:.3s;animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-duration:.3s;animation-name:Toastify__slideOutRight;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-duration:.3s;animation-name:Toastify__slideOutUp;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-duration:.3s;animation-name:Toastify__slideOutDown;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.App{min-height:100vh}.container{margin:0 auto;max-width:1200px;padding:0 20px}.btn{align-items:center;border:none;border-radius:6px;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s}.btn-primary{background-color:#6366f1;color:#fff}.btn-primary:hover{background-color:#4f46e5}.btn-secondary{background-color:#e5e7eb;color:#374151}.btn-secondary:hover{background-color:#d1d5db}.btn:disabled{cursor:not-allowed;opacity:.6}.card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:24px}.form-group{margin-bottom:20px}.form-group label{color:#374151;display:block;font-weight:500;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:10px 12px;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.error{color:#ef4444}.error,.success{font-size:12px;margin-top:4px}.success{color:#10b981}.alert{border-radius:6px;margin-bottom:20px;padding:12px 16px}.alert-error{background-color:#fee2e2;border:1px solid #fecaca;color:#991b1b}.alert-success{background-color:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.alert-warning{background-color:#fef3c7;border:1px solid #fde68a;color:#92400e}.spinner{animation:spin 1s linear infinite;border:2px solid #f3f3f3;border-radius:50%;border-top-color:#6366f1;height:20px;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media print{body{display:none!important}}.journal-container,.journal-page-wrapper,.no-print,.self-assessment-container{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
/*# sourceMappingURL=main.ddf6a1f1.css.map*/