body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;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}body{background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0}.app{flex-direction:column;height:100vh}.app,.main{display:flex}.main{flex-grow:1;overflow:scroll}@media (max-width:768px){.main{grid-template-columns:1fr}.user-list{border-bottom:1px solid #ddd;border-right:none}}.header{align-items:center;background-color:#2c3e50;color:#fff;display:flex;height:56px;justify-content:space-between;padding:0 16px}.header-title{flex:1 1;font-size:24px;font-weight:700;text-align:center}.header-left{align-items:center;display:flex;gap:8px}@media (max-width:768px){.header{align-items:center;flex-direction:column;height:auto;justify-content:center;min-height:56px;padding:8px}.header-title{font-size:18px;margin:0;order:2;padding:8px 0;text-align:center;width:100%}.header-left{justify-content:center;order:1;width:100%}.header-left>div{gap:4px;justify-content:center}.header-left button{font-size:10px!important;padding:2px 6px!important}.header-left span{font-size:10px}}.header-right{align-items:center;display:flex;gap:8px}.calendar-btn{margin-left:0}.header.debug-mode{background-color:#fc0;color:#333}.dashboard{display:flex;flex:1 1;min-height:100vh;position:relative}.main-container{background-color:#f5f5f5;display:flex;flex-direction:column;width:100%}.main-header{background-color:#fff;border-bottom:1px solid #e0e0e0;padding:16px}.header-controls,.main-header{align-items:center;display:flex;gap:16px;justify-content:space-between}.header-controls{width:100%}.header-controls h2{color:#2c3e50;flex:1 1;font-size:24px;font-weight:600;margin:0}.notification-count{color:#6c757d;white-space:nowrap}.back-btn,.notification-count{font-size:14px;font-weight:500}.back-btn{background-color:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:10px 16px;transition:background-color .2s}.back-btn:hover{background-color:#5a6268}.hamburger-menu{z-index:1102}.hamburger-toggle{align-items:center;background:none;border:2px solid #2c3e50;border-radius:6px;color:#2c3e50;cursor:pointer;display:flex;font-size:18px;height:44px;justify-content:center;padding:8px 12px;transition:all .2s;width:44px}.hamburger-toggle:hover{background-color:#2c3e50;color:#fff}.menu-overlay{background:#0000001a;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1100}.menu-dropdown{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 16px #00000026;min-width:200px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:1101}.menu-item{align-items:center;background:none;border:none;color:#2c3e50;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:12px 16px;text-align:left;transition:background-color .2s;width:100%}.menu-item:hover:not(.disabled){background-color:#f8f9fa}.menu-item.disabled{color:#6c757d;cursor:not-allowed}.menu-item:not(:last-child){border-bottom:1px solid #f0f0f0}.menu-divider{background-color:#e0e0e0;height:1px;margin:4px 0}.menu-category{border-bottom:1px solid #f0f0f0}.menu-category:last-child{border-bottom:none}.menu-category-header{align-items:center;background:#f8f9fa;border:none;color:#2c3e50;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:space-between;padding:12px 16px;text-align:left;transition:background-color .2s;width:100%}.menu-category-header:hover{background-color:#e9ecef}.menu-category-title{align-items:center;display:flex;flex:1 1;gap:8px}.menu-category-arrow{color:#6c757d;font-size:10px;transition:transform .2s}.menu-category-content{background:#fff}.menu-category-content .menu-item{padding-left:32px}.client-toggle{background-color:#2c3e50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:all .2s}.client-toggle:hover{background-color:#34495e}.client-toggle.active{background-color:#e74c3c}.client-toggle.active:hover{background-color:#c0392b}.clear-notifications{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:8px 12px;transition:background-color .2s}.clear-notifications:hover{background-color:#c82333}.main-content{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto;padding:12px;position:relative}.main-content.notifications-active{display:flex;flex-direction:column;gap:16px;padding:12px}.main-content.notifications-empty{align-items:center;display:flex;justify-content:center}.welcome-message{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;color:#6c757d;margin:0 auto;max-width:600px;padding:60px 24px;text-align:center}.welcome-message h2{color:#2c3e50;margin-bottom:16px}.view-clients-btn{align-items:center;background:#2c3e50;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;margin:24px 0 16px;padding:12px 24px;transition:all .2s}.view-clients-btn:hover{background:#34495e;box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.notification-item{transform-origin:center center;transition:all .4s cubic-bezier(.25,.46,.45,.94);width:100%}.notification-item.expanded{animation:expandNotification .4s cubic-bezier(.25,.46,.45,.94) forwards;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;inset:16px;margin:0;max-height:calc(100% - 32px);max-width:calc(100% - 32px);overflow:hidden;padding:0;position:absolute;z-index:1000}@keyframes expandNotification{0%{opacity:.8;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes collapseNotification{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.notification-item.collapsing{animation:collapseNotification .3s cubic-bezier(.55,.055,.675,.19) forwards}.notification-bubble{background:#f8f9fa;border-radius:12px;box-shadow:0 2px 4px #0000001a;cursor:pointer;margin:0 auto;max-width:500px;padding:16px;position:relative;transition:transform .2s,box-shadow .2s}.notification-bubble:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.notification-item.expanded .notification-bubble:hover{box-shadow:none;transform:none}.notification-item.expanded .notification-bubble{border-radius:8px;box-shadow:none;cursor:default;display:flex;flex:1 1;flex-direction:column;margin:0;min-height:0;min-width:0;overflow:hidden;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.notification-item.expanded .notification-chat-area{animation:fadeInContent .5s ease-out .1s both;background:#fff;border:none;border-radius:0;display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden}@keyframes fadeInContent{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.notification-item.expanded .notification-text{cursor:default}.notification-chat-area{background:#fff;border:none;border-radius:0;display:flex;flex:1 1;flex-direction:column;overflow:hidden}.notification-item.expanded .notification-chat-area .chat-container{border-radius:0;flex:1 1;height:auto}.notification-header{align-items:center;display:flex;font-size:12px;justify-content:space-between;margin-bottom:0;opacity:.9}.notification-actions{align-items:center;display:flex;gap:8px}.expand-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:24px;justify-content:center;transition:background-color .2s;width:24px}.expand-btn:hover{background:#ffffff4d}.dismiss-btn{color:#fff;cursor:pointer;font-weight:700;transition:transform .2s}.consolidated-activity-bubble .dismiss-btn,.dismiss-btn{align-items:center;background:#0000;border:none;display:flex;font-size:20px;height:36px;justify-content:center;width:36px}.consolidated-activity-bubble .dismiss-btn{color:#212529}.dismiss-btn:hover{transform:scale(1.1)}.consolidated-activity-bubble .chat-btn{align-items:center;background:#0000;border:none;color:#212529;cursor:pointer;display:flex;font-size:20px;height:36px;justify-content:center;margin-right:4px;padding:4px 6px;transition:all .2s ease;width:36px}.consolidated-activity-bubble .chat-btn:hover,.consolidated-activity-bubble .dismiss-btn:hover{transform:scale(1.1)}.notification-type{font-size:11px;font-weight:600;letter-spacing:.5px;opacity:.9;text-transform:uppercase}.notification-time{font-size:10px;opacity:.8}.notification-content{align-items:center;display:flex;gap:12px}.notification-icon{flex-shrink:0;font-size:18px;margin-top:2px}.notification-text{cursor:pointer;flex:1 1;padding-right:30px}.notification-text:hover{opacity:.9}.notification-title{font-size:16px;font-weight:700;line-height:1.3;margin-bottom:8px}.notification-body{font-size:13px;line-height:1.4;max-height:120px;opacity:.95;overflow-y:auto;white-space:pre-line;word-break:break-word}.notification-meta{border-top:1px solid #fff3;font-size:10px;margin-top:8px;opacity:.8;padding-top:8px}.update-bubble{background:linear-gradient(135deg,#9c27b0,#8e24aa);border-left:4px solid #7b1fa2;color:#fff}.message-bubble{background:linear-gradient(135deg,#4caf50,#43a047);border-left:4px solid #388e3c;color:#fff}.engagement-bubble{background:linear-gradient(135deg,#ff9800,#f57c00);border-left:4px solid #e65100;color:#fff;min-height:100px}.engagement-bubble .notification-body{font-size:12px;line-height:1.5;max-height:150px}.engagement-bubble .notification-content{align-items:flex-start}.progress-bubble{background:linear-gradient(135deg,#90a4ae,#78909c);border-left:4px solid #546e7a;color:#fff}.consolidated-activity-bubble{background:#f8f9fa;border:2px solid #000;color:#212529;cursor:pointer;margin-bottom:0;padding:16px}.consolidated-activity-bubble:hover{box-shadow:0 2px 4px #0000001a;transform:none}.consolidated-activity-bubble .notification-content{align-items:flex-start}.client-state-display{align-items:center;display:flex;font-size:12px;margin-right:8px}.state-value{background:#ffffff26;border:1px solid #fff3;border-radius:4px;font-weight:600;opacity:.9;padding:2px 6px}.event-summary{margin:8px 0;padding:0}.event-summary h4{color:#495057;font-size:14px;font-weight:600;margin:0 0 8px}.event-list{display:flex;flex-direction:column;gap:4px}.event-item{align-items:center;color:#6c757d;display:flex;font-size:12px;gap:8px}.event-time{font-weight:600;min-width:50px}.event-content{flex:1 1;font-style:italic}.event-more{color:#adb5bd;font-size:11px;font-style:italic;margin-top:4px}.response-drafts{margin:4px 0;padding:0}.response-drafts h4{align-items:center;color:#495057;display:flex;font-size:14px;font-weight:600;margin:0 0 8px}.draft-buttons{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.draft-btn{word-wrap:break-word;align-items:stretch;background:#ffffffe6;border:1px solid #000;border-radius:6px;color:#212529;cursor:pointer;display:flex;font-size:11px;height:auto;min-height:60px;overflow:visible;padding:10px;text-align:left;text-overflow:clip;transition:all .2s;white-space:normal;width:100%}.draft-content{align-items:flex-start;display:flex;flex-direction:row;gap:8px;justify-content:space-between;width:100%}.draft-text{flex:1 1;line-height:1.4;margin-right:4px}.send-indicator{color:#6c757d;flex-shrink:0;font-size:14px;margin-top:2px}.draft-btn:hover{background:#fff;border-color:#000;box-shadow:0 2px 4px #0003;transform:translateY(-1px)}.draft-btn:hover .send-indicator{color:#000;transform:scale(1.1);transition:transform .2s ease}.draft-btn.direct{border-left:3px solid #4caf50}.draft-btn.tough{border-left:3px solid #f44336}.draft-btn.inquisitive{border-left:3px solid #ff9800}.draft-btn.five_words{border-left:3px solid #9c27b0}.rich-text-section{align-items:flex-start;display:flex;gap:12px;margin:4px 0 0;padding:0}.rich-text-section .rich-text-input,.rich-text-section .send-textarea{flex:1 1;font-size:16px;min-height:28px;overflow-y:hidden;resize:none}.send-section{align-items:flex-start;display:flex;margin-top:0}.send-section .send-button{align-items:center;background:#1976d2;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:500;height:32px;justify-content:center;min-width:32px;padding:6px;transition:all .2s;width:32px}.send-section .send-button:hover:not(:disabled){background:#1565c0;box-shadow:0 2px 4px #0003;transform:translateY(-1px)}.send-section .send-button:disabled{background:#1976d2;box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.send-section .clear-button{align-items:center;background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;height:32px;justify-content:center;margin-right:8px;min-width:32px;padding:6px;transition:all .2s;width:32px}.send-section .clear-button:hover{background:#5a6268;box-shadow:0 2px 4px #0003;transform:translateY(-1px)}.draft-grid-collapsed{margin:0;padding:0}.re-expand-drafts-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#212529;cursor:pointer;display:flex;font-size:12px;gap:6px;margin:0;padding:4px 8px;transition:all .2s ease}.re-expand-drafts-btn:hover{background:#0000000d}.re-expand-drafts-btn:before{content:"▶";font-size:10px;transition:transform .2s ease}.re-expand-drafts-btn.expanded:before{transform:rotate(90deg)}.progress-report-content{max-height:70vh;overflow-y:auto;padding:16px 20px}.progress-report-content::-webkit-scrollbar{width:6px}.progress-report-content::-webkit-scrollbar-track{background:#0000001a;border-radius:3px}.progress-report-content::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.progress-report-content::-webkit-scrollbar-thumb:hover{background:#fff6}.progress-sections{display:flex;flex-direction:column;gap:16px}.progress-section{background:#0000001a;border-radius:8px;padding:12px}.progress-section h4{font-size:14px}.progress-section p{font-size:13px;line-height:1.4}.draft-messages{gap:12px}.draft-message{background:#00000026;border-radius:6px;padding:10px}.draft-header{margin-bottom:6px}.copy-btn{align-items:center;background:#fff3;border:none;color:#fff;display:flex;font-size:12px;height:20px;justify-content:center;margin-left:auto;transition:background-color .2s;width:20px}.copy-btn:hover{background:#ffffff4d}.progress-report-footer{border-top:1px solid #fff3;padding:16px 20px;text-align:center}.general-bubble{background:linear-gradient(135deg,#607d8b,#546e7a);border-left:4px solid #455a64;color:#fff}.notification-header-expanded{align-items:center;animation:fadeInHeader .4s ease-out .05s both;background:inherit;border-bottom:1px solid #fff3;display:flex;justify-content:space-between;padding:16px 20px}@keyframes fadeInHeader{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.close-expanded-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;transition:background-color .2s;width:32px}.close-expanded-btn:hover{background:#ffffff4d}.clients-grid{grid-gap:20px;align-items:stretch;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin:0 auto;max-width:1200px}.client-card{border-left:4px solid #2c3e50;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;gap:8px;min-height:fit-content;overflow:visible;padding:16px;transition:all .2s ease}.client-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.client-card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.client-name{color:#2c3e50;flex:1 1;font-size:18px;font-weight:600;margin:0}.client-state{font-size:14px;font-weight:600;text-align:right;white-space:nowrap}.client-state-description{color:#555;flex:1 1;font-size:14px;line-height:1.4;margin:8px 0}.client-progress-section{display:flex;gap:12px;margin:12px 0}.progress-left-side{width:34%}.completion-history,.progress-left-side{display:flex;flex-direction:column}.history-grid{display:flex;gap:8px;justify-content:space-between}.history-column{flex:1 1;flex-direction:column}.history-column,.week-header{align-items:center;display:flex}.week-header{flex-direction:column;margin-bottom:10px}.week-date{color:#6c757d;font-size:9px;font-weight:500;line-height:1}.week-completions{align-items:center;display:flex;flex-direction:column;gap:10px}.check-box,.completion-check{align-items:center;display:flex;justify-content:center}.check-box{border:2px solid #dee2e6;border-radius:3px;font-size:10px;font-weight:700;height:16px;transition:all .2s ease;width:16px}.check-box.completed{background-color:#28a745;border-color:#28a745;color:#fff}.check-box.incomplete{background-color:#f8f9fa;border-color:#dee2e6;color:#6c757d}.progress-right-side{display:flex;flex-direction:column;gap:10px;width:66%}.progress-right-side .week-dates-header{margin-bottom:10px}.week-dates-header{color:#6c757d;font-size:10px;font-weight:500;margin-bottom:4px;text-align:center}.goal-progress-item{align-items:center;display:flex;gap:10px}.goal-progress-label{color:#2c3e50;flex-shrink:0;font-size:13px;font-weight:500;min-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal-progress-bar-container{align-items:center;background-color:#0000001a;border-radius:6px;display:flex;flex:1 1;height:24px;overflow:visible;position:relative}.goal-progress-bar-fill{border-radius:6px;box-shadow:inset 0 1px 2px #0000001a;height:100%;left:0;position:absolute;top:0;transition:width .3s ease}.progress-bar-text-overlay{align-items:center;bottom:0;display:flex;left:0;padding:0 8px;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.progress-bar-text{color:#2c3e50;font-size:11px;font-weight:600;line-height:1;white-space:nowrap}.goal-progress-percentage{color:#2c3e50;font-size:12px;font-weight:600;min-width:40px;text-align:right}.client-last-message{background-color:#f8f9fa;border-left:3px solid #dee2e6;border-radius:6px;margin-bottom:12px;max-height:none!important;min-height:auto;overflow:visible!important;padding:8px}.client-card.needs-reply .client-last-message{background-color:#fff5f5;border-left-color:#dc3545}.last-message-content{align-items:flex-start;display:flex;font-size:13px;gap:6px;line-height:1.4;margin-bottom:4px}.message-direction{flex-shrink:0;font-size:14px;margin-top:1px}.last-message-time{color:#888;font-size:11px;font-style:italic}.needs-reply-indicator{align-items:center;background-color:#fff5f5;border:1px solid #dc354533;border-radius:4px;color:#dc3545;display:flex;font-size:11px;font-weight:600;gap:8px;margin:8px 0 12px;opacity:1;padding:6px 8px;position:relative;visibility:visible;width:fit-content;z-index:10}.expand-reply-btn{align-items:center;background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:10px;font-weight:700;height:18px;justify-content:center;margin-left:4px;transition:background-color .2s ease;width:18px}.expand-reply-btn:hover{background:#c82333}.client-quick-reply{animation:slideDown .3s ease;background:#dc35450d;border:1px solid #dc354533;border-radius:8px;margin-top:12px;padding:12px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.client-card-actions{display:flex;flex-shrink:0;gap:8px;margin-top:12px}.notification-card{background:#0000!important;border:none!important;box-shadow:none!important;padding:0!important}.notification-card .notification-bubble{background:#fff;border:2px solid #495057;border-radius:8px;box-shadow:none;display:flex;flex-direction:column;height:100%;margin:0}.notification-card .client-card-header{border-bottom:1px solid #e9ecef;margin-bottom:8px;padding:8px 16px 0}.notification-card .client-name{color:#2c3e50;font-size:14px;font-weight:600}.notification-card .chat-btn{align-items:center;background:#0000;border:none;color:#212529;cursor:pointer;display:flex;font-size:12px;gap:4px;padding:6px 12px}.notification-card .chat-btn:hover{transform:scale(1.1)}.notification-card .notification-content{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;padding:0 16px 16px}.notification-card .notification-text{margin-bottom:12px;padding-right:0}.notification-card .notification-time{color:#6c757d;display:block;font-size:12px;font-style:italic;margin-bottom:6px}.notification-card .notification-body-display{margin-top:8px}.notification-card .notification-title-display{color:#2c3e50;font-size:13px;font-weight:600;margin-bottom:4px}.notification-card .notification-body-text{color:#495057;font-size:12px;line-height:1.4;white-space:pre-line}.notification-card .event-summary{margin-top:4px}.notification-card .event-list{display:flex;flex-direction:column;gap:6px}.notification-card .event-item{align-items:flex-start;color:#495057;display:flex;font-size:13px;gap:8px;line-height:1.5}.notification-card .event-time{color:#6c757d;flex-shrink:0;font-weight:600;min-width:50px}.notification-card .event-content{flex:1 1;line-height:1.5}.notification-card .event-more{color:#6c757d;font-size:11px;font-style:italic;margin-top:4px}.notification-card .response-drafts{margin-bottom:12px}.notification-card .draft-section-title{color:#2c3e50;font-size:12px;font-weight:600;margin:0 0 6px}.notification-card .draft-buttons{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr 1fr}.notification-card .draft-btn{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;padding:8px;position:relative;text-align:left;transition:all .2s}.notification-card .draft-btn:hover{background:#e9ecef;border-color:#adb5bd}.notification-card .draft-btn.direct{border-left:3px solid #007bff}.notification-card .draft-btn.tough{border-left:3px solid #dc3545}.notification-card .draft-btn.inquisitive{border-left:3px solid #ffc107}.notification-card .draft-btn.five_words{border-left:3px solid #6f42c1}.notification-card .draft-content{align-items:flex-start;display:flex;gap:4px;justify-content:space-between}.notification-card .draft-text{color:#495057;flex:1 1;font-size:10px;line-height:1.3}.notification-card .send-indicator{color:#6c757d;flex-shrink:0;font-size:8px}.notification-card .rich-text-section{margin-top:auto}.notification-card .send-section{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.notification-card .send-section .clear-button{align-items:center;background:none;border:none;border-radius:4px;color:#888;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;padding:8px;width:32px}.notification-card .send-section .clear-button:hover{background:#f5f5f5}.notification-card .send-section .send-button{align-items:center;background:#1976d2;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;padding:8px;transition:background .2s;width:32px}.notification-card .send-section .send-button:hover:not(:disabled){background:#1565c0}.notification-card .send-section .send-button:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.tab-container{background:#fff;box-shadow:0 2px 8px #0000001a;margin:-12px -12px 20px;padding:12px 12px 8px;position:sticky;top:0;z-index:1000}.tab-container:before{background:#fff;bottom:-8px;content:"";left:-12px;position:absolute;right:-12px;top:-12px;z-index:-1}.progress-section{display:flex;flex-direction:column;gap:0;margin-bottom:4px}.progress-section__header{margin-bottom:0}.progress-section__content{margin-top:8px}.progress-section__content.dashboard-bars-section__content--collapsed{margin-top:0}.dashboard-bars-section{margin-bottom:4px}.dashboard-bars-section__toggle{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;color:#495057;cursor:pointer;display:flex;font-size:14px;font-weight:600;justify-content:space-between;margin-bottom:0;padding:8px 12px;transition:background .15s ease,border-color .15s ease;width:100%}.dashboard-bars-section__toggle:hover{background:#e9ecef;border-color:#dee2e6}.dashboard-bars-section__toggle:focus-visible{outline:2px solid #0d6efd;outline-offset:2px}.dashboard-bars-section__chevron{color:#6c757d;font-size:12px;transition:transform .2s ease}.dashboard-bars-section__content{overflow:hidden;transition:opacity .2s ease,margin-top .2s ease}.dashboard-bars-section__content--collapsed{display:none}.dashboard-bars-section__content:not(.dashboard-bars-section__content--collapsed){margin-top:8px}.dashboard-bars{display:flex;flex-direction:column;gap:10px;margin-bottom:4px}.dashboard-bars__item{flex:0 0 auto;width:100%}.dashboard-bars__habits{order:2}.dashboard-bars__messaged{order:1}.tab-header{background-color:#f8f9fa;border-radius:8px;display:flex;gap:4px;padding:4px}.tab-button{align-items:center;background-color:initial;border:none;border-radius:6px;color:#6c757d;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s ease}.tab-button:hover{background-color:#e9ecef;color:#495057}.tab-button.active{background-color:#007bff;color:#fff}.tab-button.active:hover{background-color:#0056b3}.notifications-content{flex:1 1;overflow-y:auto}.client-action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:500;gap:6px;justify-content:center;padding:8px 12px;transition:all .2s ease}.chat-btn{background-color:#007bff;color:#fff}.chat-btn:hover{background-color:#0056b3}.report-btn{background-color:#6c757d;color:#fff}.report-btn:hover:not(:disabled){background-color:#545b62}.report-btn:disabled{background-color:#e9ecef;color:#6c757d;cursor:not-allowed;opacity:.6}.client-summary{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#6c757d;display:-webkit-box;font-size:14px;line-height:1.5;overflow:hidden}.loading{align-items:center;display:flex;font-size:18px;height:200px;justify-content:center}@media (max-width:768px){.dashboard{min-height:100vh}.main-header{padding:12px 16px}.client-toggle{font-size:14px;padding:8px 12px}.clear-notifications{font-size:11px;padding:6px 10px}.clients-grid{gap:16px;grid-template-columns:1fr}.client-card{gap:10px;padding:16px}.client-card-header{align-items:flex-start;flex-direction:row;gap:8px;justify-content:space-between}.client-state{font-size:14px;text-align:right}.client-action-btn{font-size:13px;padding:10px 12px}.goal-progress-label{font-size:12px;min-width:80px}.goal-progress-bar-container{height:20px}.goal-progress-percentage{font-size:11px;min-width:35px}.client-last-message{margin-bottom:10px;padding:6px}.last-message-content{font-size:12px;gap:4px}.message-direction{font-size:12px}.last-message-time{font-size:10px}.needs-reply-indicator{font-size:10px;padding:1px 4px}.expand-reply-btn{font-size:9px;height:16px;width:16px}.client-quick-reply{margin-top:8px;padding:8px}.tab-container .tab-header{display:none}.tab-container{background:#fff;box-shadow:0 2px 8px #0000001a;margin:-12px -12px 16px;padding:8px 12px 6px;position:sticky;top:0;z-index:1000}.tab-container:before{background:#fff;bottom:-6px;content:"";left:-12px;position:absolute;right:-12px;top:-12px;z-index:-1}.tab-header{gap:2px;padding:2px}.tab-button{font-size:13px;gap:6px;padding:10px 12px}.main-content{padding:8px 8px calc(76px + env(safe-area-inset-bottom, 0))}.main-content.notifications-active{gap:12px}.notification-item.expanded{animation:expandNotificationMobile .4s cubic-bezier(.25,.46,.45,.94) forwards;inset:12px;max-height:calc(100% - 24px);max-width:calc(100% - 24px);padding:0}@keyframes expandNotificationMobile{0%{opacity:.7;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.notification-bubble{max-width:100%;padding:12px}.notification-content{gap:8px}.notification-icon{font-size:16px}.notification-title{font-size:13px}.notification-body{font-size:12px}.header-controls h2{font-size:20px}.notification-count{font-size:12px}.hamburger-toggle{font-size:16px;height:40px;width:40px}.menu-dropdown{min-width:180px;right:-8px}.menu-item{font-size:16px;padding:14px 16px}.notification-header-expanded{padding:12px 16px}.close-expanded-btn{font-size:16px;height:28px;width:28px}.notification-actions{gap:6px}.dismiss-btn,.expand-btn{font-size:16px;height:28px;width:28px}}.details-list{background-color:#fff;flex:1 1;height:100%;overflow-y:auto;padding:1rem}.alert{background-color:#333;color:#fff;font-size:16;opacity:0;transition:opacity .5s ease;z-index:999}.alert.show{opacity:1}.lds-grid,.lds-grid div{box-sizing:border-box}.lds-grid{display:inline-block;height:80px;position:relative;width:80px}.lds-grid div{animation:lds-grid 1.2s linear infinite;background:#000;border-radius:50%;height:16px;position:absolute;width:16px}.lds-grid div:first-child{animation-delay:0s;left:8px;top:8px}.lds-grid div:nth-child(2){animation-delay:-.4s;left:32px;top:8px}.lds-grid div:nth-child(3){animation-delay:-.8s;left:56px;top:8px}.lds-grid div:nth-child(4){animation-delay:-.4s;left:8px;top:32px}.lds-grid div:nth-child(5){animation-delay:-.8s;left:32px;top:32px}.lds-grid div:nth-child(6){animation-delay:-1.2s;left:56px;top:32px}.lds-grid div:nth-child(7){animation-delay:-.8s;left:8px;top:56px}.lds-grid div:nth-child(8){animation-delay:-1.2s;left:32px;top:56px}.lds-grid div:nth-child(9){animation-delay:-1.6s;left:56px;top:56px}@keyframes lds-grid{0%,to{opacity:1}50%{opacity:.5}}body,html{font-family:Arial,sans-serif;height:100%;margin:0;padding:0;width:100%}.mobile-container{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;height:100vh;justify-content:flex-start;margin-top:3vh;overflow-y:auto;padding:20px;scroll-snap-type:y mandatory;text-align:center}h1{font-size:24px;margin-bottom:10px}p{font-size:16px}@media (min-width:600px){h1{font-size:28px}p{font-size:18px}}.swipeable-card{transition:transform .3s ease}.swipeable-card.dismissing{transform:translateX(-100%)}.card{border:1px solid #ccc;border-radius:8px;display:flex;flex-direction:column;flex-shrink:0;height:80vh;justify-content:space-between;margin-bottom:10vh;overflow:auto;padding:0;scroll-snap-align:start;transition:transform .3s ease,opacity .3s ease}.card.dismissing{opacity:0;transform:translateX(100%)}.card.swipe-left{opacity:0;transform:translateX(-100%)}.card.swipe-right{opacity:0;transform:translateX(100%)}.alert,.mobile-alert{background-color:#f8d7da;border-radius:5px;bottom:20px;box-shadow:0 2px 4px #0000001a;color:#721c24;left:50%;padding:10px 20px;position:fixed;transform:translateX(-50%);z-index:1000}.card-header{align-items:center;background-color:#6200ea;border-radius:8px 8px 0 0;display:flex;padding:10px}.profile-image{height:50px;margin-right:10px;width:50px}.profile-info h2{color:#fff;margin:0}.status{background-color:#03dac6;border-radius:12px;color:#000;font-size:12px;margin-top:5px;padding:2px 8px}.card .progress-snapshot{font-size:10px;height:20%;overflow-y:auto;text-align:left}.card .progress-snapshot.expanded{height:auto;transition:height .3s ease}.mobile-container .recent-container{height:30%;overflow-y:auto}.button-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.button-grid button{background-color:#f8f9fa;border:1px solid #e0e0e0;color:#333;font-size:12px;padding:10px}.button-grid button:hover{background-color:#f1f3f5}.text-box-container textarea{box-sizing:border-box;height:15vh;width:100%}.button-grid button{background-color:#e0e0e0;color:#000;font-size:10px}.button-grid button,.button-send button{align-items:center;border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;display:flex;justify-content:center;padding:10px 20px;transition:background-color .3s ease;width:100%}.button-send button{background-color:#007bff;color:#fff;content:"\1F4E4";font-size:16px;margin-right:8px}.spinner{border:3px solid #eee;border-radius:50%;border-top-color:#4caf50;height:24px;margin:0 auto;width:24px}.message-event{align-items:center;border-radius:20px;display:flex;flex-direction:column;margin-bottom:10px;max-width:60%;padding:10px}.message-event.inbound{align-self:flex-start;background-color:#e5e5ea;border-bottom-left-radius:0}.message-event.outbound{align-self:flex-end;background-color:#007aff;border-bottom-right-radius:0;color:#fff;margin-left:20%}.message-image-small{height:120px;width:80px}.message-image-large,.message-image-small{border-radius:5px;object-fit:cover;overflow:hidden}.message-image-large{height:260px;width:140px}.image-container{display:inline-block;position:relative}.image-popup{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:99999}.image-popup img{box-shadow:none;max-height:90vh;max-width:90vw;object-fit:contain}.client-details{align-items:flex-start;align-items:center;background:#fff;border:1px solid #ddd;border-radius:5px;display:flex;flex-direction:column;gap:20px;justify-content:center;margin-bottom:20px;padding:1rem;width:calc(100% - 2rem)}.client-details-content{align-items:flex-start;display:flex;flex-wrap:wrap;gap:20px}@media (max-width:768px){.client-details-content{flex-direction:column}}.client-details:active{cursor:grabbing}.client-details:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.client-details strong{color:#333;font-size:18px}.client-details button{background:#007bff;border:none;border-radius:5px;box-shadow:0 2px 2px #00000026;color:#fff;cursor:pointer;margin-top:10px;padding:8px 12px;transition:background .3s}.client-details button:hover{background:#0056b3}.details-header{border:1px solid #e0e0e0;box-shadow:0 2px 1px -1px #0003,0 1px 1px 0 #00000024,0 1px 3px 0 #0000001f;display:flex;flex:1 1;flex-direction:column;padding:1rem}.profile-container{align-items:center;display:flex;height:50px}.profile-image{border-radius:50%;object-fit:cover;overflow:hidden}.client-name{font-size:24px;margin-left:12px;text-align:center}.recent-container{word-wrap:break-word;border:1px solid #e0e0e0;box-shadow:0 2px 1px -1px #0003,0 1px 1px 0 #00000024,0 1px 3px 0 #0000001f;flex:1 1;font-size:small;max-height:100%;overflow:auto;padding:1rem}.action-button{display:inline-block;height:5vh;margin-left:0;padding-right:0;width:33.33%}.send-container{align-items:center;display:flex;justify-content:center;margin-bottom:20px;padding:1px;width:90%}.send-textarea{background:#0000;font-size:18px;height:100px;margin-right:4px;transition:background .8s cubic-bezier(.4,0,.2,1);width:90%}.send-textarea.bright-element{background:#fff}.send-button{height:9vh;margin-bottom:10px;width:7vw}.send-text{font-size:36px}@media (max-width:768px){.send-textarea{font-size:14px;height:60px;margin-right:2px}.send-button{height:5vh;margin-bottom:10px;width:10vw}.send-text{font-size:16px}}.mobile-toggle-container{display:none}@media (max-width:768px){.mobile-toggle-container{display:block;width:100%}.tab{background-color:#f1f1f1;border:1px solid #ccc;overflow:hidden;width:100%}.tab button{background-color:inherit;border:none;box-shadow:none;color:#000;cursor:pointer;display:inline-block;float:left;font-size:16px;margin-top:0;outline:none;padding:14px 16px;text-align:center;transition:.3s;width:33.33%}.tab button:hover{background-color:#ddd}.tab button.active{background-color:#ccc}.tabcontent{border:1px solid #ccc;border-top:none;box-sizing:border-box;display:block;padding:6px 12px;width:100%}.mobile-hidden{display:none}.details-header,.recent-container{border:1px solid #ccc;border-radius:4px;margin-top:0;padding:10px;width:100%}.client-details-content{width:100%}}.mobile-profile-view{display:none}.desktop-profile-view{display:block}@media (max-width:768px){.mobile-profile-view{background:#fff;border-radius:4px;display:block;padding:10px;width:100%}.desktop-profile-view{display:none}}.desktop-view{display:flex;gap:20px;width:100%}.mobile-view{display:none}@media (max-width:768px){.desktop-view{display:none}.mobile-toggle-container,.mobile-view{display:block;width:100%}}@keyframes fadeOutDimmed{0%{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffff1a}to{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);background:#fff0}}.dimmed{position:relative}.dimmed,.dimmed:before{transition:all .8s cubic-bezier(.4,0,.2,1)}.dimmed:before{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffff1a;border-radius:8px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.bright-element{position:relative}.bright-element,.dimmed .suggested-action{animation:fadeIn .8s cubic-bezier(.4,0,.2,1);opacity:1!important;transition:all .8s cubic-bezier(.4,0,.2,1);z-index:2}.dimmed .suggested-action{color:#000;font-weight:700}@keyframes fadeInText{0%{color:#0000}to{color:inherit}}.fade-in-text{animation:fadeInText .8s cubic-bezier(.4,0,.2,1)}.fade-out:before{animation:fadeOutDimmed .8s cubic-bezier(.4,0,.2,1) forwards;border-radius:8px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}@media only screen and (max-width:768px){.recent-container{height:33vh}}.class-event{align-items:flex-start;background:#fff;border:1px solid #ddd;border-radius:5px;display:flex;gap:20px;margin-bottom:10px;padding:1rem}.container{text-align:left}#summary{opacity:1;transition:opacity 1s ease-in-out}.shimmer{animation-duration:1s;animation-iteration-count:infinite;animation-name:shimmer;background:-webkit-gradient(linear,left top,right top,from(#222),to(#222),color-stop(.5,#fff));background:-moz-gradient(linear,left top,right top,from(#222),to(#222),color-stop(.5,#fff));background:gradient(linear,left top,right top,from(#222),to(#222),color-stop(.5,#fff));-webkit-background-clip:text;-moz-background-clip:text;background-clip:text;background-color:#222;background-position:0 0;background-repeat:no-repeat;background-size:125px 100%;color:#ffffff1a}@keyframes shimmer{0%{background-position:0 0}to{background-position:100% 0}}.plan-update-suggestion-event{align-items:flex-start;background:#f5f7fa;border-left:4px solid #4f8cff;border-radius:6px;display:flex;font-size:1rem;margin:12px auto;padding:12px 16px;width:80%}.suggestion-icon{font-size:1.5rem;margin-right:12px}.suggestion-content{flex:1 1}.suggestion-time{color:#888;font-size:.85em;margin-top:4px}.auto-fit-text{font-size:clamp(.57rem,.72vw,.69rem);line-height:1.35;max-width:100%;overflow-wrap:break-word;white-space:normal;word-break:break-word}.PlanProgressView_container__4HHoH{background:#f8fafc;border-radius:12px;box-shadow:0 2px 12px #0000000f;font-family:Inter,Arial,sans-serif;margin:32px auto;max-width:900px;padding:24px}.PlanProgressView_header__DdKRM{align-items:flex-end;display:flex;justify-content:space-between;margin-bottom:32px}.PlanProgressView_statsBox__eY5Qk{align-items:flex-start;background:#fff;border-radius:10px;box-shadow:0 1px 4px #0000000a;display:flex;flex-direction:column;min-width:160px;padding:18px 24px}.PlanProgressView_statLabel__6YvCH{color:#007aff;font-size:1.1em;font-weight:600;margin-bottom:8px}.PlanProgressView_statValue__52uk4{color:#222;font-size:2.2em;font-weight:700;margin-bottom:2px}.PlanProgressView_statSub__00WCw{color:#888;font-size:.95em;margin-bottom:8px}.PlanProgressView_chartBox__7Rayz{background:#eaf6ff;border-radius:10px;flex:1 1;margin-left:32px;min-width:0;padding:12px 18px 0}.PlanProgressView_measurementsSection__o9jaD{margin-bottom:32px}.PlanProgressView_measurementCard__YshRv{background:#fff;border-radius:10px;box-shadow:0 1px 4px #0000000a;margin-bottom:18px;padding:18px 24px 12px}.PlanProgressView_measurementTitle__EIDSi{color:#007aff;font-size:1.1em;font-weight:600;margin-bottom:8px}.PlanProgressView_tabsSection__tIbez{margin-bottom:32px}.PlanProgressView_tabs__yniC6{display:flex;gap:8px;margin-bottom:12px}.PlanProgressView_tab__5frih{background:#f0f4f8;border:none;border-radius:6px 6px 0 0;color:#555;cursor:pointer;font-size:1em;font-weight:500;padding:8px 18px;transition:background .2s,color .2s}.PlanProgressView_tabActive__5PBI2{background:#007aff;border-bottom:2px solid #007aff;color:#fff;font-weight:700}.PlanProgressView_tabContent__HRE68{background:#fff;border-radius:0 0 10px 10px;box-shadow:0 1px 4px #0000000a;padding:18px 24px}.PlanProgressView_goalCard__CwvMR{background:#f7faff;border-radius:8px;box-shadow:0 1px 2px #00000008;display:flex;flex-direction:column;gap:8px;margin-bottom:18px;padding:16px 18px}.PlanProgressView_goalTitle__lIVP9{color:#2a3a5a;font-size:1.1em;font-weight:600}.PlanProgressView_goalStatus__yzT\+P{color:#007aff;font-size:.95em;font-weight:500;margin-bottom:4px}.PlanProgressView_tacticsList__UPer-{list-style:none;margin:0;padding:0}.PlanProgressView_tacticDone__FeIRN{color:#4caf50;font-weight:500;margin-bottom:4px}.PlanProgressView_tacticPending__HhvJ9{color:#e53935;font-weight:500;margin-bottom:4px}.PlanProgressView_tacticFreq__8j6Aw{color:#888;font-size:.95em;margin-left:6px}.PlanProgressView_monthSummary__xNc6g{color:#444;font-size:1.05em;margin-top:8px}.progress-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.progress-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.progress-modal-header{align-items:flex-start;background:#fff;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px 24px;position:sticky;top:0;z-index:10}.progress-modal-header h2{color:#333;font-size:1.5rem;margin:0}.progress-modal-meta{color:#666;display:flex;flex-direction:column;font-size:.9rem;gap:4px}.progress-modal-meta .client-name{color:#333;font-weight:600}.progress-modal-meta .report-date,.progress-modal-meta .report-type{font-size:.8rem;opacity:.8}.close-modal-btn{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:1.5rem;padding:4px;transition:background-color .2s}.close-modal-btn:hover{background-color:#f5f5f5;color:#333}.progress-modal-body{padding:0 24px 24px}.progress-section{margin-bottom:24px}.progress-section h4{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 8px}.progress-section p{color:#555;line-height:1.5;margin:0}.draft-messages{display:flex;flex-direction:column;gap:16px}.draft-message{background:#f8f9fa;border-left:4px solid #ddd;border-radius:8px;padding:16px}.draft-message.happy{background:#f8fff8;border-left-color:#28a745}.draft-message.tough{background:#fff8f8;border-left-color:#dc3545}.draft-message.inquisitive{background:#f8fcff;border-left-color:#17a2b8}.draft-message.video{background:#faf8ff;border-left-color:#6f42c1}.draft-message.short{background:#fffaf8;border-left-color:#fd7e14}.draft-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.draft-header strong{color:#333;font-size:.9rem}.copy-btn{background:none;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.8rem;padding:4px 8px;transition:all .2s}.copy-btn:hover{background:#f5f5f5;border-color:#bbb}.draft-message p{color:#444;font-style:italic;line-height:1.4;margin:0}@media (max-width:768px){.progress-modal-overlay{padding:10px}.progress-modal-content{max-height:95vh}.progress-modal-header{align-items:flex-start;flex-direction:column;gap:12px;padding:16px 20px}.close-modal-btn{align-self:flex-end;margin-top:-40px}.progress-modal-body{padding:0 20px 20px}.draft-header{align-items:flex-start;flex-direction:column;gap:8px}}.message-examples-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.message-examples-modal{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:800px;width:90%}.message-examples-modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.message-examples-modal-header h2{color:#333;font-size:24px;margin:0}.close-btn:hover{background:#f5f5f5}.message-examples-modal-content{flex:1 1;overflow-y:auto;padding:20px}.add-example-form{background:#f9f9f9;border-radius:8px;margin-bottom:20px;padding:20px}.add-example-form h3{color:#333;font-size:20px;margin:0 0 20px}.checkbox-item{align-items:flex-start;display:flex;gap:8px;margin-bottom:4px;padding:8px}.checkbox-item input[type=checkbox]{cursor:pointer;height:18px;margin-top:2px;width:18px}.checkbox-item label{color:#333;cursor:pointer;flex:1 1;font-size:13px;word-break:break-word}.add-input-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s}.add-input-btn:hover{background:#218838}.example-textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:10px;resize:vertical;width:100%}.example-textarea:focus{border-color:#1976d2;outline:none}.save-btn{background:#1976d2}.save-btn:hover{background:#1565c0}.examples-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.examples-header h3{color:#333;font-size:20px;margin:0}.add-example-btn{background:#1976d2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.add-example-btn:hover{background:#1565c0}.no-examples{color:#666;padding:40px;text-align:center}.examples-list{display:flex;flex-direction:column;gap:16px}.example-item{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:16px;transition:all .2s}.example-item:hover{box-shadow:0 2px 8px #0000001a}.example-inputs{margin-bottom:12px}.example-inputs strong{color:#333;display:block;margin-bottom:6px}.example-inputs ul{margin:0;padding-left:20px}.example-inputs li{color:#666;margin-bottom:4px}.example-response{margin-bottom:12px}.example-response strong{color:#333;display:block;margin-bottom:6px}.example-response p{background:#f9f9f9;border-radius:6px;color:#333;margin:0;padding:10px;white-space:pre-wrap}.example-actions{display:flex;gap:8px;justify-content:flex-end}.delete-btn,.edit-btn{font-size:13px}.edit-btn{color:#333}@media (max-width:768px){.message-examples-modal{max-height:95vh;width:95%}.message-examples-modal-header h2{font-size:20px}.add-example-form{padding:16px}.examples-header{align-items:flex-start;flex-direction:column;gap:12px}.add-example-btn{width:100%}}.program-assignment-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.program-assignment-modal{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.modal-header{border-bottom:1px solid #e0e0e0;padding:20px}.modal-header h2{margin:0}.close-button{background:none;color:#666;font-size:32px;line-height:1}.close-button:hover{color:#333}.modal-content{padding:20px}.assignment-section{border-bottom:1px solid #e0e0e0;margin-bottom:32px;padding-bottom:32px}.assignment-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.assignment-section h3{color:#333;margin-bottom:16px;margin-top:0}.current-assignment{background:#f5f5f5;border-radius:4px;padding:16px}.current-assignment p{margin:8px 0}.current-assignment strong{display:inline-block;min-width:100px}.assignment-form{gap:16px}.assignment-form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px}.form-group input,.form-group select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px}.assign-button,.delete-button{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px}.assign-button{background:#4caf50;color:#fff}.assign-button:hover:not(:disabled){background:#45a049}.delete-button{background:#f44336;color:#fff;margin-top:12px}.delete-button:hover:not(:disabled){background:#da190b}.assign-button:disabled,.delete-button:disabled{background:#ccc;cursor:not-allowed}.pipeline-page{background-color:#f8f9fa;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.pipeline-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;gap:20px;margin-bottom:30px;padding-bottom:20px}.back-button{border-radius:6px;padding:10px 20px;transition:background-color .2s}.pipeline-header h1{color:#343a40;font-size:28px;margin:0}.category-filters{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:20px}.category-filters h3{color:#343a40;font-size:16px;margin:0 0 15px}.filter-checkboxes{display:flex;flex-wrap:wrap;gap:20px}.filter-checkbox{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:8px}.filter-checkbox input[type=checkbox]{cursor:pointer;margin:0}.category-indicator{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:12px;height:20px;justify-content:center;width:20px}.kanban-board{display:flex;gap:20px;overflow-x:auto;padding-bottom:20px}.kanban-column{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;flex:1 1;min-width:300px;overflow:hidden}.column-header{color:#fff;font-weight:700;justify-content:space-between;padding:15px 20px}.column-header,.column-title{align-items:center;display:flex}.column-title{font-size:16px;gap:8px}.column-count{background:#fff3;border-radius:12px;font-size:12px;min-width:20px;padding:4px 8px;text-align:center}.column-content{min-height:400px;padding:15px}.empty-column{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:6px;color:#6c757d;font-style:italic;padding:40px 20px;text-align:center}.client-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;cursor:pointer;margin-bottom:12px;padding:15px;position:relative;transition:all .2s}.client-card:hover{background:#e9ecef;border-color:#adb5bd;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.client-card:last-child{margin-bottom:0}.client-name{color:#343a40;font-size:14px;font-weight:700;margin-bottom:4px}.client-phone{color:#6c757d;font-size:12px;margin-bottom:8px}.client-last-message{color:#495057;font-size:12px;line-height:1.4;margin-bottom:8px;max-height:40px;overflow:hidden;text-overflow:ellipsis}.engagement-state{font-size:11px;font-weight:700;text-transform:capitalize}.loading{font-size:16px}.client-card[draggable=true]{cursor:grab}.client-card[draggable=true]:active{cursor:grabbing}.kanban-column.drag-over{background:#f8f9fa;border:2px dashed #007bff}@media (max-width:768px){.pipeline-page{padding:15px}.pipeline-header{align-items:flex-start;gap:15px}.kanban-board,.pipeline-header{flex-direction:column}.kanban-column{min-width:auto}.filter-checkboxes{flex-direction:column;gap:10px}}.challenge-dashboard-page{margin:0 auto;max-width:1200px;padding:20px}.challenge-dashboard-header{align-items:center;display:flex;gap:20px;justify-content:space-between;margin-bottom:20px}.challenge-dashboard-header h1{flex:1 1;margin:0}.back-button{background:#6c757d}.back-button:hover{background:#5a6268}.header-actions{gap:10px}.initialize-button,.save-button{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px}.initialize-button:hover:not(:disabled),.save-button:hover:not(:disabled){background:#218838}.initialize-button:disabled,.save-button:disabled{background:#6c757d;cursor:not-allowed}.message{margin-bottom:20px;padding:12px 16px}.message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.challenge-dashboard-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.challenge-name-section{border-bottom:2px solid #e9ecef;margin-bottom:30px;padding-bottom:20px}.challenge-name-section label{color:#333;display:block;font-weight:600;margin-bottom:8px}.challenge-name-input{border:1px solid #ced4da;border-radius:4px;font-size:16px;padding:10px;width:100%}.days-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.days-header h2{color:#333;font-size:20px;margin:0}.add-day-button{background:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px}.add-day-button:hover{background:#138496}.challenge-table-container{margin-top:20px;overflow-x:auto}.challenge-table{background:#fff;border-collapse:collapse;box-shadow:0 2px 4px #0000001a;width:100%}.challenge-table thead{background:#ff9800;color:#fff}.challenge-table th{border-right:1px solid #fff3;font-size:13px;font-weight:600;padding:12px 8px;text-align:left;vertical-align:top;white-space:nowrap}.challenge-table th:last-child{border-right:none}.challenge-table tbody tr{border-bottom:1px solid #e9ecef}.challenge-table tbody tr:hover{background:#f8f9fa}.challenge-table tbody tr td{padding-bottom:10px;padding-top:10px}.challenge-table tbody tr:last-child{border-bottom:none}.challenge-table td{word-wrap:break-word;border-right:1px solid #e9ecef;overflow-wrap:break-word;padding:8px;text-align:left;vertical-align:top}.challenge-table td:last-child{border-right:none}.col-day{color:#ff9800;font-weight:600;min-width:70px;text-align:center;vertical-align:middle;width:70px}.col-intro{min-width:250px;width:250px}.col-cta,.col-headline,.col-limiting,.col-objective,.col-solution,.col-task{min-width:180px;width:180px}.col-guidance{min-width:200px;width:200px}.guidance-dropdown-container{display:flex;flex-direction:column;gap:5px}.col-video{min-width:150px;width:150px}.col-actions{min-width:60px;text-align:center}.table-textarea{word-wrap:break-word;box-sizing:border-box;font-family:inherit;line-height:1.4;min-height:100px;overflow-wrap:break-word;padding:8px;resize:vertical;white-space:pre-wrap}.form-select,.table-textarea{border:1px solid #ced4da;border-radius:4px;font-size:13px;width:100%}.form-select{background:#fff;margin-bottom:5px;padding:6px 8px}.edit-guidance-button{background:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:4px 8px;width:100%}.edit-guidance-button:hover{background:#138496}.remove-day-button-table{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:6px 12px}.remove-day-button-table:hover{background:#c82333}.form-section{border-bottom:1px solid #e9ecef;margin-bottom:25px;padding-bottom:20px}.form-section:last-child{border-bottom:none;margin-bottom:0}.form-section h3{color:#495057;font-size:16px;margin:0 0 15px}.form-section.goals-section{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr}.form-group{margin-bottom:15px}@media (min-width:768px){.form-section.goals-section{gap:15px 20px;grid-template-columns:repeat(2,1fr)}}@media (min-width:1200px){.form-section.goals-section{grid-template-columns:repeat(3,1fr)}}.form-group label{color:#495057;font-size:14px;margin-bottom:5px}.form-input{word-wrap:break-word;border:1px solid #ced4da;border-radius:4px;font-size:13px;line-height:1.4;min-height:50px;overflow-wrap:break-word;padding:10px 12px;white-space:pre-wrap;width:100%}.challenge-table .form-input{box-sizing:border-box;min-height:80px;padding:8px;resize:vertical}.form-input:focus{border-color:#ff9800;box-shadow:0 0 0 3px #ff98001a;outline:none}.form-textarea{border:1px solid #ced4da;border-radius:4px;font-family:inherit;font-size:14px;padding:8px 12px;resize:vertical;width:100%}.form-textarea:focus{border-color:#ff9800;box-shadow:0 0 0 3px #ff98001a;outline:none}.guidance-item{align-items:center;display:flex;gap:10px;margin-bottom:10px}.guidance-item .form-input{flex:1 1}.remove-button{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 12px}.remove-button:hover{background:#c82333}.add-button{background:#17a2b8}.add-button:hover{background:#138496}.empty-state p{color:#6c757d;font-size:16px;margin-bottom:20px}.loading{color:#6c757d}.lifting-programs-page{margin:0 auto;max-width:1200px;padding:20px}@media (max-width:600px){.program-item{flex-direction:column;gap:12px}.program-actions{flex-wrap:wrap;width:100%}.program-actions button{flex:1 1;font-size:13px;min-width:70px;padding:8px 12px}.lifting-programs-page{overflow-x:hidden}}.edit-ai-button{background:#ff9800;border-color:#ff9800;color:#000}.edit-ai-button:hover:not(:disabled){background:#f57c00}.edit-ai-button:disabled{cursor:not-allowed;opacity:.6}.ai-edit-modal-overlay{z-index:10001!important}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px;position:relative}.modal-content h2{margin:0}.edit-ai-button-top{align-items:center;background:#ff9800;border:1px solid #ff9800;border-radius:4px;color:#000;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px}.edit-ai-button-top:hover:not(:disabled){background:#f57c00;border-color:#f57c00}.edit-ai-button-top:disabled{cursor:not-allowed;opacity:.6}.undo-button{background:#9e9e9e;border-color:#9e9e9e;color:#fff}.undo-button:hover{background:#757575}.view-notes{min-height:60px;white-space:pre-wrap}.session-name-view{color:#333;font-size:18px;font-weight:600;margin:0}.view-exercise-row{background:#fafafa}.view-exercise-row .exercise-actions{display:none}.checkbox-help-text{color:#666;font-size:12px;font-style:italic;margin-left:26px;margin-top:6px}.sessions-section{margin-top:24px}.add-button-small{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px}.add-button-small:hover{background:#45a049}.session-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:16px;padding:16px}.session-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.session-name-input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:16px;font-weight:500;margin-right:12px;padding:8px 12px}.session-actions{display:flex;gap:8px}.session-actions button{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:12px;padding:6px 12px}.session-actions button:hover:not(:disabled){background:#f5f5f5}.session-actions button:disabled{cursor:not-allowed;opacity:.5}.exercises-section{margin-top:16px}.exercises-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.exercises-header h4{color:#666;font-size:14px;margin:0}.exercise-row{background:#fff;border:1px solid #e0e0e0;border-radius:6px;display:flex;gap:12px;margin-bottom:12px;min-width:0;overflow:hidden;padding:12px}.exercise-fields{grid-gap:12px;align-items:start;display:grid;flex:1 1;gap:12px;grid-template-columns:2fr 1fr 1fr 1fr 2fr;min-width:0}@media (max-width:900px){.exercise-fields{grid-template-columns:1fr 1fr}.field-group.full-width{grid-column:1/-1}}.field-group{display:flex;flex-direction:column;min-width:0}.field-group.full-width{grid-column:1/-1}.field-group label{color:#666;font-size:12px;font-weight:500;margin-bottom:4px}.field-group input,.field-group select,.field-group textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:inherit;font-size:13px;min-width:0;padding:6px 8px;width:100%}.field-group textarea{min-height:60px;resize:vertical}.exercise-actions{display:flex;flex-direction:column;gap:4px}.exercise-actions button{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:12px;min-width:60px;padding:6px 10px}.exercise-actions button:hover:not(:disabled){background:#f5f5f5}.exercise-actions button:disabled{cursor:not-allowed;opacity:.5}.video-url-link{background:#f9f9f9;border:1px solid #ddd;border-radius:4px;color:#2196f3;display:block;padding:6px 8px;text-decoration:underline;word-break:break-all}.video-url-link:hover{background:#e3f2fd}.no-video-url{background:#f9f9f9;border:1px solid #ddd;border-radius:4px;color:#999;display:block;font-style:italic;padding:6px 8px}.read-only-field{background:#f5f5f5;color:#666;cursor:not-allowed}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.diary-programs-page{margin:0 auto;max-width:1200px;padding:20px}.page-header{flex-wrap:wrap;margin-bottom:32px}.page-header h2{margin:0 0 20px;width:100%}.header-actions{display:flex;gap:12px;width:100%}.back-button,.create-button,.generate-button{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:10px 20px}.back-button{max-width:200px}.generate-button{background:#2196f3;color:#fff}.back-button:hover,.create-button:hover,.generate-button:hover{opacity:.9}.empty-state,.error,.loading{color:#666;padding:40px;text-align:center}.programs-list{grid-gap:16px;display:grid;gap:16px}.program-item{align-items:flex-start;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:20px}.program-info{flex:1 1}.program-info h3{color:#333;margin:0 0 8px}.program-info p{color:#666;margin:4px 0}.program-meta{color:#999;font-size:12px;margin-top:8px}.program-actions{display:flex;gap:8px}.program-actions button{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 16px}.program-actions .delete-button{border-color:#d32f2f;color:#d32f2f}@media (max-width:600px){.program-item{flex-direction:column;gap:12px}.program-actions{flex-wrap:wrap;width:100%}.program-actions button{flex:1 1;font-size:13px;min-width:70px;padding:8px 12px}.diary-programs-page{overflow-x:hidden}}.program-actions button:hover{background:#f5f5f5}.modal-content{max-height:90vh;overflow-y:auto}.modal-content.program-editor-modal{max-width:1000px;min-width:800px;overflow-x:hidden}@media (min-width:768px){.modal-content.program-editor-modal{max-height:92vh;max-width:1400px!important;min-width:1000px!important;width:90vw!important}}@media (max-width:767px){.modal-content.program-editor-modal{margin:12px;max-height:calc(100vh - 24px);max-width:100vw!important;min-width:0!important;width:calc(100vw - 24px)!important}}.generate-modal{max-width:700px}.modal-content h2{margin:0 0 24px}.form-group label{color:#555}.form-group input,.form-group textarea{font-family:inherit}.form-group textarea{min-height:100px;resize:vertical}.modal-actions button{font-size:14px}.save-button{background:#4caf50;border-color:#4caf50;color:#fff}.save-button:hover:not(:disabled){background:#45a049}.save-button:disabled{background:#ccc;cursor:not-allowed}.view-field{background:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px;color:#333;font-size:14px;min-height:20px;padding:8px 12px}.item-kind-badge{border-radius:4px;color:#fff;display:inline-block;font-size:12px;font-weight:600;padding:6px 12px}.item-kind-badge.habit-badge{background:#2196f3}.item-kind-badge.measurement-badge{background:#9c27b0}.view-item-fields{background:#fafafa}.view-item-fields .item-actions{display:none}.progress-bar-container{margin:20px 0}.progress-help-text{color:#666;font-size:14px;font-style:italic;margin-bottom:12px;text-align:center}.progress-bar{background:#e0e0e0;border-radius:12px;height:24px;overflow:hidden;position:relative;width:100%}.progress-bar-fill{background:linear-gradient(90deg,#4caf50,#45a049);border-radius:12px;height:100%;transition:width .3s ease}.progress-text{color:#666;font-size:14px;font-weight:500;margin-top:8px;text-align:center}.items-section{margin-top:24px}.section-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.section-header h3{font-size:18px;margin:0}.add-buttons-group{display:flex;gap:8px}.add-button{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.add-button:hover{background:#45a049}.item-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:16px;padding:16px}.item-header{justify-content:space-between;margin-bottom:16px}.item-kind-select{font-size:14px;font-weight:600}.item-actions button,.item-kind-select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;padding:6px 12px}.item-actions button{font-size:12px}.item-actions button:hover:not(:disabled){background:#f5f5f5}.item-actions button:disabled{cursor:not-allowed;opacity:.5}.item-fields{grid-gap:12px;align-items:start;display:grid;gap:12px;grid-template-columns:2fr 1fr 1fr}.item-fields .field-group{display:flex;flex-direction:column;min-width:0}.item-fields .field-group.full-width{grid-column:1/-1}.item-fields label{color:#666;font-size:12px;font-weight:500;margin-bottom:4px}.item-fields input,.item-fields select{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:inherit;font-size:13px;min-width:0;padding:6px 8px;width:100%}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:8px}.checkbox-label input[type=checkbox]{cursor:pointer;height:18px;margin:0;width:18px}.delete-button-small{border-color:#d32f2f;color:#d32f2f}.delete-button-small:hover{background:#ffebee}.empty-state-small{background:#f9f9f9;border-radius:6px;color:#999;font-size:14px;padding:20px;text-align:center}@media (max-width:900px){.item-fields{grid-template-columns:1fr}.item-fields .field-group.full-width{grid-column:1}}.exercise-database-page{margin:0 auto;max-width:1200px;padding:20px}.page-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:20px}.page-header h1{flex:1 1;margin:0}.back-button,.create-button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:10px 20px}.search-bar{margin-bottom:20px}.search-bar input{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:10px;width:100%}.exercises-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;width:100%}.exercises-table thead{background:#f5f5f5}.exercises-table td,.exercises-table th{border-bottom:1px solid #e0e0e0;padding:12px;text-align:left}.exercises-table th{font-weight:600}.exercises-table tbody tr:hover{background:#f9f9f9}.exercises-table button{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;margin-right:8px;padding:6px 12px}.delete-button{border-color:#d32f2f;color:#d32f2f}.delete-button:hover:not(:disabled){background:#ffebee}.delete-button:disabled{cursor:not-allowed;opacity:.6}.empty-state{padding:40px}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.modal-content{background:#fff;border-radius:8px;max-width:600px;min-width:500px;padding:32px}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:500;margin-bottom:8px}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:10px;width:100%}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.modal-actions button{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;padding:10px 20px}.modal-actions .save-button{background:#4caf50!important;border-color:#4caf50!important;color:#fff!important}.section{margin-bottom:20px}.logger-bottom-nav{background:#fff;border-top:1px solid #e0e0e0;bottom:0;box-shadow:0 -2px 4px #0000001a;display:flex;justify-content:space-around;left:0;padding:8px 0;position:fixed;right:0;z-index:1000}.nav-item{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:4px;max-width:200px;padding:8px 20px;transition:color .2s}.nav-item.active,.nav-item:hover{color:#667eea}.nav-icon{font-size:24px}.nav-label{font-size:12px;font-weight:500}.logger-workout-page{background:#f5f5f5;min-height:100vh;padding-bottom:80px}.workout-header{align-items:center;background:#fff;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px;position:sticky;top:0;z-index:100}.workout-header-left{align-items:center;display:flex;gap:12px}.workout-header h1{color:#333;font-size:20px;margin:0}.back-arrow-button{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:32px;font-weight:700;justify-content:center;line-height:1;padding:4px 12px;transition:color .2s}.back-arrow-button:hover{color:#333}.hamburger-overlay{z-index:100}.hamburger-dropdown{border:1px solid #ddd;box-shadow:0 2px 8px #0000001a;min-width:150px;z-index:101}.view-mode-indicator{align-items:center;background:#fff3cd;display:flex;justify-content:space-between;padding:12px 20px}.back-button{background:#666;border:none;color:#fff;padding:6px 12px}.session-picker{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:20px auto;max-width:800px;padding:20px}.session-picker h2{color:#333;margin:0 0 16px}.session-dropdown{border:1px solid #ddd;border-radius:4px;font-size:16px;margin-bottom:24px;padding:12px;width:100%}.recent-workouts{margin-top:24px}.recent-workouts h3{color:#555;font-size:16px;margin:0 0 12px}.recent-workouts{margin-top:16px}.recent-workouts h3{color:#666;font-size:14px;font-weight:600;letter-spacing:.02em;margin-bottom:8px;text-transform:uppercase}.history-item{border:none;border-bottom:1px solid #e8e8e8;border-radius:0;cursor:default;display:flex;flex-direction:column;margin-bottom:0;padding:10px 0;transition:none}.history-item,.history-item:hover{background:#0000}.history-item.paused{border-bottom:1px solid #e8e8e8;border-left:none}.history-item.paused .history-item-main:before{background:#ff9800;border-radius:2px;content:"";display:inline-block;height:1em;margin-right:8px;vertical-align:middle;width:3px}.history-item-content{justify-content:space-between}.history-item-content,.history-item-main{align-items:center;cursor:default;display:flex}.history-item-main{flex:1 1;gap:12px;-webkit-user-select:none;user-select:none}.history-item-date{color:#333;font-size:15px;font-weight:500}.history-item-name{color:#888;font-size:13px}.paused-badge{background:#ff9800;border-radius:12px;color:#fff;font-size:12px;font-weight:600;padding:2px 8px}.history-item-actions{align-items:center;display:flex;gap:4px}.delete-workout-button,.edit-workout-button,.view-workout-button{align-items:center;background:#0000;border:1px solid #0000;border-radius:6px;cursor:pointer;display:flex;font-size:18px;justify-content:center;padding:6px 10px;transition:background-color .15s,border-color .15s}.delete-workout-button:hover:not(:disabled),.edit-workout-button:hover,.view-workout-button:hover{background:#f0f0f0;border-color:#e0e0e0}.delete-workout-button:disabled{cursor:not-allowed;opacity:.5}.workout-modal-overlay{align-items:flex-end;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow:hidden;padding:0;position:fixed;right:0;top:0;z-index:2000}.workout-modal-container{background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -4px 20px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:100%;overflow:hidden;position:relative;width:100%}.workout-modal-handle{background:#ddd;border-radius:2px;flex-shrink:0;height:4px;margin:12px auto 8px;width:40px}.workout-modal-header{align-items:center;background:#fff;border-bottom:1px solid #e5e5e5;display:flex;flex-shrink:0;justify-content:space-between;padding:12px 16px}.workout-modal-title{color:#333;flex:1 1;font-size:18px;font-weight:600;line-height:1.3;margin:0;padding-right:12px;word-break:break-word}.workout-modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;flex-shrink:0;font-size:28px;height:32px;justify-content:center;line-height:1;padding:4px;transition:background-color .2s;width:32px}.workout-modal-close:hover{background:#f5f5f5;color:#333}.workout-modal-body{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto;padding:16px 16px 8px}.workout-modal-body::-webkit-scrollbar{width:4px}.workout-modal-body::-webkit-scrollbar-track{background:#0000}.workout-modal-body::-webkit-scrollbar-thumb{background:#ccc;border-radius:2px}.workout-modal-info{background:#f8f9fa;border-radius:8px;margin-bottom:16px;padding:12px}.workout-info-row{align-items:center;display:flex;font-size:14px;gap:8px;margin-bottom:6px}.workout-info-row:last-child{margin-bottom:0}.workout-info-label{color:#666;font-weight:500}.workout-info-value{color:#333}.workout-modal-exercises{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.workout-exercise-card{background:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:12px}.workout-exercise-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.workout-exercise-name{color:#333;flex:1 1;font-size:16px;font-weight:600;line-height:1.3;margin:0;word-break:break-word}.workout-video-link{align-items:center;color:#2196f3;display:inline-flex;flex-shrink:0;font-size:14px;font-weight:500;gap:4px;padding:4px 0;text-decoration:none}.workout-video-link:hover{text-decoration:underline}.workout-sets-list{display:flex;flex-direction:column;gap:6px}.workout-set-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;font-size:14px;gap:12px;padding:8px 0}.workout-set-item:last-child{border-bottom:none}.workout-set-label{color:#666;flex-shrink:0;font-weight:600;min-width:50px}.workout-set-value{color:#333;flex:1 1}.workout-modal-notes{background:#f8f9fa;border-radius:8px;margin-top:8px;padding:12px}.workout-notes-title{color:#333;font-size:14px;font-weight:600;margin:0 0 8px}.workout-notes-text{color:#666;font-size:14px;line-height:1.5;margin:0;white-space:pre-wrap;word-break:break-word}.workout-modal-footer{align-items:center;background:#fff;border-top:1px solid #e5e5e5;display:flex;flex-shrink:0;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding:12px 16px}.workout-modal-close-btn{background:#2196f3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 20px;transition:background-color .2s}.workout-modal-close-btn:hover{background:#1976d2}.workout-modal-close-btn:active{background:#1565c0}.workout-modal-edit-btn{background:#f5f5f5;border:1px solid #ddd;border-radius:8px;color:#333;cursor:pointer;font-size:15px;font-weight:500;padding:12px 20px}.workout-modal-edit-btn:hover{background:#eee}.workout-modal-delete-btn{background:#fff;border:1px solid #e57373;border-radius:8px;color:#c62828;cursor:pointer;font-size:15px;font-weight:500;padding:12px 20px}.workout-modal-delete-btn:hover:not(:disabled){background:#ffebee}.workout-modal-delete-btn:disabled{cursor:not-allowed;opacity:.7}@media (min-width:769px){.workout-modal-overlay{align-items:center;padding:20px}.workout-modal-container{border-radius:12px;box-shadow:0 8px 32px #0003;max-height:85vh;max-width:600px}.workout-modal-handle{display:none}.workout-modal-header{padding:16px 20px}.workout-modal-title{font-size:20px}.workout-modal-body{padding:20px}.workout-exercise-card,.workout-modal-info{padding:16px}.workout-exercise-name{font-size:18px}.workout-modal-footer{padding:16px 20px}}.spinner{display:inline-block}.expanded-workout-details{border-top:1px solid #e0e0e0;color:#666;font-size:14px;margin-top:12px;padding-top:12px}.continue-button{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-top:8px;padding:8px 16px}.workout-header-info{background:#fff;border-bottom:1px solid #e0e0e0;padding:20px}.session-info{align-items:center;display:flex;justify-content:space-between}.session-info h2{color:#333;margin:0}.session-info input[type=date]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px}.exercise-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:16px 20px;padding:20px}.exercise-header{margin-bottom:16px}.exercise-name-row{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.exercise-name-row h3{color:#333;flex:1 1;font-size:18px;margin:0}.exercise-header-actions{align-items:center;display:flex;flex-shrink:0;gap:6px;height:44px}.exercise-history-button{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:inline-flex;flex-shrink:0;height:44px;justify-content:center;padding:0;transition:color .2s;width:44px}.exercise-history-button:hover{color:#2196f3}.exercise-history-button .exercise-history-icon,.exercise-history-button svg{display:block;height:22px;vertical-align:middle;width:22px}.video-link{align-items:center;box-sizing:border-box;color:#2196f3;display:inline-flex;font-size:16px;font-weight:600;gap:8px;height:44px;line-height:1;padding:0 12px;text-decoration:none;word-break:break-word}@media (max-width:768px){.video-link{font-size:14px;gap:6px;margin-bottom:0;padding:0 8px}}.video-link svg{display:block;flex-shrink:0;height:24px;width:24px}.video-link:hover{text-decoration:underline}.exercise-targets{color:#666;display:flex;font-size:14px;gap:16px}.sets-grid{margin-top:16px}.sets-header{grid-gap:12px;border-bottom:2px solid #e0e0e0;color:#555;display:grid;font-weight:600;gap:12px;grid-template-columns:60px 1fr 1fr;padding:8px 0}.add-set-button{align-items:center;background:#f5f5f5;border:1px dashed #ccc;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;grid-column:1/-1;justify-content:center;margin-top:8px;padding:12px;transition:all .2s}.add-set-button:hover{background:#e8e8e8;border-color:#999;color:#333}.add-set-button svg{height:20px;width:20px}.set-row{grid-gap:12px;align-items:center;border-bottom:1px solid #f0f0f0;display:grid;gap:12px;grid-template-columns:60px 1fr 1fr;padding:12px 0}.set-number{color:#666;font-weight:600}.set-reps,.set-weight{align-items:center;display:flex}.reps-input-container,.weight-input-container{width:100%}.reps-input-button,.weight-input-button{align-items:center;background:#fff;border:2px solid #ddd;border-radius:4px;cursor:pointer;display:flex;font-size:14px;justify-content:center;padding:12px;text-align:center;transition:all .2s;width:100%}.input-button-content{align-items:center;display:flex;flex-direction:column;gap:2px;width:100%}.input-button-main{font-size:14px;line-height:1.2}.input-button-last{color:#999;font-size:11px;font-weight:400;line-height:1.2}.reps-input-button.has-value,.weight-input-button.has-value{background:#e3f2fd;border-color:#2196f3;color:#1976d2;font-weight:600}.reps-input-button.auto-filled,.weight-input-button.auto-filled{background:#f5f5f5;border-color:#ccc;color:#666;opacity:.8}.reps-input-button.manually-edited,.weight-input-button.manually-edited{background:#e3f2fd;color:#1976d2;font-weight:600}.reps-input-button:hover,.weight-input-button:hover{border-color:#2196f3}.picker-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.picker-content{background:#fff;border-radius:8px;max-height:80vh;max-width:400px;overflow-y:auto;padding:20px;width:90%}.picker-header{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:16px}.picker-header-title-wrap{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:2px}.picker-header h3{color:#333;margin:0;text-align:center}.picker-header-hint{color:#6c757d;font-size:12px;font-weight:400}.picker-header button{background:none;border:none;color:#666;cursor:pointer;font-size:24px}.picker-options{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.picker-option,.picker-options{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.picker-option{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;overflow:hidden;padding:12px;position:relative;text-align:center}.picker-option:hover{background:#f5f5f5}.picker-option.selected{background:#2196f3;border-color:#2196f3;color:#fff}.picker-option .picker-option-label,.picker-option--coarse .picker-option-label{-webkit-touch-callout:none;position:relative;-webkit-user-select:none;user-select:none;z-index:1}.picker-option-progress{background:#2196f359;border-radius:3px;bottom:0;left:0;position:absolute;top:0;transition:width .05s linear;z-index:0}.weight-write-own-button{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;color:#495057;cursor:pointer;font-size:14px;margin-top:16px;padding:12px;width:100%}.weight-write-own-button:hover{background:#e9ecef}.weight-custom-mode{display:flex;flex-direction:column;gap:12px;margin-top:0}.weight-custom-input{border:1px solid #dee2e6;border-radius:4px;box-sizing:border-box;font-size:14px;padding:12px;width:100%}.weight-custom-input::placeholder{color:#adb5bd}.weight-confirm-button{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px;width:100%}.weight-confirm-button:hover{background:#43a047}.reps-time-toggle{background:#e9ecef;border-radius:6px;display:flex;gap:4px;margin-bottom:12px;padding:4px}.reps-time-toggle-btn{background:#0000;border:none;border-radius:4px;color:#6c757d;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:8px 12px;transition:all .2s}.reps-time-toggle-btn.active{background:#fff;box-shadow:0 1px 2px #0000001a;color:#212529}.reps-time-toggle-btn:hover:not(.active){color:#495057}.picker-back-button{background:none;border:none;color:#666;cursor:pointer;font-size:20px;margin-right:4px;padding:4px 8px}.workout-notes{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:16px 20px;padding:20px}.workout-notes label{color:#333;display:block;font-weight:600;margin-bottom:8px}.workout-notes textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:10px;resize:vertical;width:100%}.workout-actions{background:#fff;border-top:1px solid #e0e0e0;bottom:0;display:flex;gap:12px;padding:20px;position:sticky}.pause-workout-button{background:#666;border:none;border-radius:4px;color:#fff;cursor:pointer;flex:0 0 25%;font-size:16px;font-weight:600;padding:14px}.pause-workout-button:hover{background:#555}.finish-workout-button{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:14px}.finish-workout-button:hover:not(:disabled){background:#45a049}.finish-workout-button:disabled{background:#ccc;cursor:not-allowed}.exercise-history-modal-overlay{align-items:flex-end;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow:hidden;padding:0;position:fixed;right:0;top:0;z-index:2000}.exercise-history-modal-container{background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -4px 20px #00000026;display:flex;flex-direction:column;max-height:85vh;max-width:100%;overflow:hidden;position:relative;width:100%}.exercise-history-modal-header{align-items:center;background:#fff;border-bottom:1px solid #e5e5e5;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.exercise-history-modal-title{color:#333;flex:1 1;font-size:18px;font-weight:600;margin:0;padding-right:12px}.exercise-history-modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;flex-shrink:0;font-size:28px;height:32px;justify-content:center;line-height:1;padding:4px;transition:background-color .2s;width:32px}.exercise-history-modal-close:hover{background:#f5f5f5;color:#333}.exercise-history-modal-body{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto;padding:16px 20px}.exercise-history-modal-body::-webkit-scrollbar{width:4px}.exercise-history-modal-body::-webkit-scrollbar-track{background:#0000}.exercise-history-modal-body::-webkit-scrollbar-thumb{background:#ccc;border-radius:2px}.exercise-history-empty{color:#666;padding:40px 20px;text-align:center}.exercise-history-list{display:flex;flex-direction:column;gap:12px}.exercise-history-item{background:#f8f9fa;border:1px solid #e5e5e5;border-radius:8px;padding:12px}.exercise-history-item-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:8px;padding-bottom:8px}.exercise-history-date{color:#333;font-size:14px;font-weight:600}.exercise-history-session{background:#fff;border-radius:4px;color:#666;font-size:12px;padding:4px 8px}.exercise-history-sets{display:flex;flex-direction:column;gap:4px}.exercise-history-set{align-items:center;display:flex;font-size:14px;gap:8px}.exercise-history-set-label{color:#666;font-weight:500;min-width:50px}.exercise-history-set-value{color:#333;font-weight:500}.exercise-history-modal-footer{background:#fff;border-top:1px solid #e5e5e5;flex-shrink:0;padding:12px 20px}.exercise-history-modal-close-btn{background:#2196f3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px;transition:background-color .2s;width:100%}.exercise-history-modal-close-btn:hover{background:#1976d2}.exercise-history-modal-close-btn:active{background:#1565c0}@media (min-width:769px){.exercise-history-modal-overlay{align-items:center;padding:20px}.exercise-history-modal-container{border-radius:12px;box-shadow:0 8px 32px #0003;max-height:80vh;max-width:500px}.exercise-history-modal-header{padding:16px 20px}.exercise-history-modal-title{font-size:20px}.exercise-history-modal-body{padding:20px}.exercise-history-modal-footer{padding:16px 20px}.exercise-history-modal-close-btn{margin-left:auto;max-width:200px}}.trainer-workout-logger-page{background:#f5f5f5;min-height:100vh;padding:1rem}.twl-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.twl-back{background:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:14px;padding:8px 14px}.twl-back:hover{background:#f0f0f0}.twl-header h1{font-size:1.5rem;margin:0}.twl-count{background:#e3f2fd;border:1px solid #1976d2;border-radius:6px;color:#1976d2;font-size:14px;font-weight:600;padding:6px 12px}.twl-empty,.twl-loading{color:#666;padding:2rem;text-align:center}.twl-error{background:#ffebee;border:1px solid #c62828;border-radius:8px;color:#b71c1c;margin-bottom:1rem;padding:12px 16px}.twl-intro{color:#555;margin-bottom:1.5rem;max-width:560px}.twl-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.twl-card{background:#fff;border:1px solid #e0e0e0;border-radius:10px;box-shadow:0 1px 3px #0000000f;padding:14px 18px}.twl-card-main{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.twl-name{font-size:1rem;font-weight:600}.twl-log-button{background:#1a73e8;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:8px 16px}.twl-log-button:hover:not(:disabled){background:#1557b0}.twl-log-button:disabled{cursor:not-allowed;opacity:.7}.twl-modal-overlay{align-items:stretch;background:#00000080;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:.5rem;position:fixed;z-index:10000}.twl-modal{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;max-height:100%;max-width:1200px;min-height:0;width:100%}.twl-modal-header{align-items:center;background:#fafafa;border-bottom:1px solid #e0e0e0;display:flex;flex-shrink:0;justify-content:space-between;padding:12px 16px}.twl-modal-title{color:#333;font-weight:600}.twl-modal-close{background:#1a73e8;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:8px 14px}.twl-modal-close:hover{background:#1557b0}.twl-modal-body{flex:1 1;min-height:0;overflow:auto}.bulk-upload-page{margin:0 auto;max-width:1200px;padding:20px}.bulk-upload-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.bulk-upload-header h1{font-size:28px;margin:0}.back-button{background:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 16px}.back-button:hover{background:#e0e0e0}.bulk-upload-content{display:flex;flex-direction:column;gap:30px}.section{background:#fff;border:1px solid #ddd;border-radius:8px;padding:20px}.section h2{color:#333;font-size:20px;margin-bottom:15px;margin-top:0}.section h3{color:#555;font-size:16px;margin-bottom:10px;margin-top:15px}.client-select{border:1px solid #ddd;font-size:16px;max-width:400px;width:100%}.client-info,.client-select{border-radius:4px;padding:10px}.client-info{background:#f9f9f9}.client-info,.items-list,.program-info{margin-top:15px}.items-list ul{list-style:none;margin:0;padding:0}.items-list li{background:#f9f9f9;border-radius:4px;margin-bottom:5px;padding:8px}.file-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px}.csv-preview{background:#f9f9f9;border-radius:4px;margin-top:15px;padding:15px}.csv-headers{color:#666;font-size:14px;margin-top:10px}.mapping-section{margin-top:20px}.mapping-row{align-items:center;display:flex;gap:15px;margin-bottom:15px}.mapping-label{font-size:14px;min-width:200px}.column-select{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:14px;max-width:300px;padding:8px}.upload-button{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px 24px;transition:background .3s}.upload-button:hover:not(:disabled){background:#45a049}.upload-button:disabled{background:#ccc;cursor:not-allowed}.message{border-radius:4px;margin-top:20px;padding:15px}.message.error{background:#ffebee;border:1px solid #ef5350;color:#c62828}.message.success{background:#e8f5e9;border:1px solid #66bb6a;color:#2e7d32}.logger-journal-page{background:#f5f5f5;min-height:100vh;padding-bottom:80px}.journal-header{align-items:center;background:#fff;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;margin-bottom:0;padding:16px 20px;position:sticky;top:0;z-index:100}.journal-header h1{color:#333;font-size:20px;font-weight:600;margin:0}.hamburger-menu{position:relative}.hamburger-button{background:none;border:none;color:#333;cursor:pointer;font-size:24px;padding:8px}.hamburger-overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}.hamburger-dropdown{background:#fff;border:1px solid #e0e0e0;border-radius:4px;box-shadow:0 2px 8px #00000026;margin-top:4px;min-width:120px;position:absolute;right:0;top:100%;z-index:1000}.hamburger-dropdown button{background:none;border:none;color:#333;cursor:pointer;display:block;font-size:14px;padding:12px 16px;text-align:left;width:100%}.hamburger-dropdown button:hover{background:#f5f5f5}.journal-content{margin:0 auto;max-width:1200px;padding:20px}.date-navigation{background:#2196f3;border-radius:8px;gap:16px;margin-bottom:20px;padding:12px 16px;position:relative}.date-nav-button,.date-navigation{align-items:center;display:flex;justify-content:center}.date-nav-button{background:none;border:none;color:#fff;cursor:pointer;font-size:24px;font-weight:600;min-width:32px;padding:4px 8px;transition:opacity .2s}.date-nav-button:hover{opacity:.8}.date-nav-button:active{opacity:.6}.date-display-wrapper{align-items:center;display:flex;flex:1 1;justify-content:center;position:relative}.date-display-button{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:6px;padding:4px 8px;transition:opacity .2s}.date-display-button:hover{opacity:.9}.date-dropdown-icon{font-size:10px;opacity:.8}.date-picker-input{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 8px #00000026;font-size:14px;left:50%;min-width:200px;padding:8px 12px;position:absolute;top:calc(100% + 8px);transform:translateX(-50%);z-index:100}.journal-help-text{background:#e3f2fd;border-left:4px solid #2196f3;border-radius:0;box-sizing:border-box;margin-bottom:24px;padding:16px 20px;width:100%}.journal-help-text p{color:#1976d2;font-size:14px;line-height:1.6;margin:0}.error,.loading{color:#666;padding:40px;text-align:center}.error button{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:16px;padding:10px 20px}.graphs-section{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding:10px 0}.chart-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:8px;width:100%}.chart-title{color:#333;font-size:14px;font-weight:600;margin-bottom:8px}.chart-empty{color:#999;padding:20px;text-align:center}.today-panel{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:24px}.today-panel-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:20px}.today-panel-header h2{color:#333;margin:0}.auto-saving-text,.updated-at-text{color:#666;font-size:12px;font-style:italic}.today-panel h2{color:#333;margin:0 0 20px}.input-section{margin-bottom:24px}.input-section h3{color:#555;font-size:16px;margin:0 0 12px}.input-item{margin-bottom:16px}.input-item label{color:#555;display:block;font-weight:500;margin-bottom:8px}.input-item input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:16px;padding:10px;width:100%}.habits-table{border-collapse:collapse;margin-top:8px;width:100%}.habits-table thead{background:#f5f5f5}.habits-table th{border-bottom:2px solid #ddd;color:#333;font-size:14px;font-weight:600;padding:12px;text-align:left}.habits-table td{border-bottom:1px solid #e0e0e0;padding:12px}.habits-table tbody tr:hover{background:#f9f9f9}.habit-name-cell{color:#555;font-weight:500}.habit-frequency-cell{color:#666;font-size:14px;text-align:center}.habit-status-cell{text-align:center}.habit-status-wrapper{align-items:center;display:flex;flex-direction:column;gap:8px}.habit-status-text-done{color:#2e7d32;font-size:14px;font-weight:600}.habit-status-text-not-done{color:#666;font-size:14px;font-weight:500}.habit-checkbox{accent-color:#4caf50;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#e0e0e0;border:2px solid #ccc;border-radius:4px;cursor:pointer;height:58px;position:relative;width:58px}.habit-checkbox:before{border:solid #fff;border-width:0 3px 3px 0;content:"";height:16px;left:50%;opacity:1;position:absolute;top:50%;transform:translate(-50%,-50%);transform:translate(-50%,-60%) rotate(45deg);width:8px}.habit-checkbox:checked{background-color:#4caf50;border-color:#4caf50}.habit-checkbox:checked:before{opacity:1}.workout-section{margin-bottom:24px}.workout-info-wrapper{align-items:center;display:flex;gap:16px;justify-content:space-between}.workout-status-text{color:#666;flex:1 1;font-size:14px;font-weight:500}.workout-action-button{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .2s;white-space:nowrap}.workout-action-button:hover{background:#1976d2}.input-section textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:10px;resize:vertical;width:100%}.history-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:0;padding:0}.history-section h2{color:#333;margin:0;padding:24px 24px 20px}.history-table-wrapper{margin:0;overflow-x:auto;padding:0}.history-table{border-collapse:collapse;font-size:14px;margin:0;padding:0;table-layout:fixed;width:100%}.history-table thead{background:#f5f5f5;position:sticky;top:0;z-index:10}.history-table th{word-wrap:break-word;border-bottom:2px solid #ddd;color:#333;font-weight:600;padding:12px 8px;text-align:left}.history-table th.sticky-col{background:#f5f5f5;left:0;min-width:80px;position:sticky;width:80px;z-index:11}@media (max-width:768px){.history-table th{padding:12px 4px;white-space:nowrap}.history-table td{padding:10px 4px;white-space:nowrap}.history-table th.sticky-col{min-width:auto;padding:12px 4px;width:auto}.history-table td.sticky-col{min-width:auto;padding:10px 4px;width:auto}.history-table{min-width:auto;width:auto}}.history-table td{word-wrap:break-word;border-bottom:1px solid #e0e0e0;padding:10px 8px}.history-table td.sticky-col{background:#fff;font-weight:500;left:0;position:sticky;z-index:9}.history-table tbody tr:hover,.history-table tbody tr:hover td.sticky-col{background:#f9f9f9}.history-table td.yes{background:#c8e6c9;color:#2e7d32;font-weight:600;text-align:center}.history-table td.no{background:#ffcdd2;color:#c62828;font-weight:600;text-align:center}.history-table td.value{text-align:right}.history-table td.empty{background:#f5f5f5;color:#999;text-align:center}@media (max-width:768px){.history-table-wrapper{overflow-x:auto}.history-table{min-width:auto;table-layout:auto;width:100%}}.calendar-btn{align-items:center;background:#fff;border:none;border-radius:50%;box-shadow:0 2px 8px #00000014;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;left:-48px;position:absolute;top:24px;transition:background .2s;width:40px}.calendar-btn:hover{background:#f5f5f5}.sidebar-content{height:100%;padding:24px 16px 16px}.sidebar-content h3{font-size:1.2rem;font-weight:600;margin-bottom:16px;margin-top:0}.consultation-item{border-bottom:1px solid #eee;padding:12px 0}.consultation-title{font-size:1rem;font-weight:500}.consultation-date{color:#888;font-size:.85rem}.error,.loading{color:#888;margin:16px 0}.sidebar-content{box-sizing:border-box;height:100vh;overflow-y:auto;padding:20px}.sidebar-content h3{color:#333;font-size:1.5em;margin:0 0 20px}.loading{padding:20px}.error{background:#ffebee;border:1px solid #ffcdd2;border-radius:4px;color:#d32f2f;margin-bottom:16px;padding:12px}.consultation-list{list-style:none;margin:0;padding:0}.consultation-item{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:8px;padding:12px;transition:all .2s ease}.consultation-item:hover{border-color:#1976d2;box-shadow:0 2px 8px #1976d21a}.consultation-title{color:#333;font-weight:600;margin-bottom:4px}.consultation-date{color:#666;font-size:.9em}.consultation-details{background:#f8f9fa;border-radius:8px;margin-bottom:16px;padding:16px}.consultation-details h4{color:#333;margin:0 0 12px}.consultation-details>div{margin-bottom:8px}.consultation-details b{color:#1976d2}.consultation-details ul{margin:8px 0;padding-left:20px}.consultation-details li{margin-bottom:4px}.highlighted-transcript{background:#fff3cd!important;border-radius:4px;padding:4px 8px}.kickoff-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:16px;padding:16px}.kickoff-section h4{color:#333;margin:0 0 12px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spinner{animation:spin 1s linear infinite}button{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s ease}button:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}button:disabled{cursor:not-allowed;opacity:.6}select{background:#fff;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:14px;padding:8px;width:100%}select:focus{border-color:#1976d2;box-shadow:0 0 0 2px #1976d233;outline:none}input[type=checkbox]{margin-right:8px;transform:scale(1.1)}a{color:#1976d2;text-decoration:none}a:hover{text-decoration:underline}@media (max-width:768px){.sidebar-content{padding:16px}.consultation-details,.kickoff-section{padding:12px}}.relevant-info-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.relevant-info-modal{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:800px;width:90%}.relevant-info-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.relevant-info-modal-header h2{color:#333;font-size:20px;margin:0}.close-btn{align-items:center;border-radius:50%;display:flex;height:32px;justify-content:center;padding:0;width:32px}.close-btn:hover{background:#f0f0f0}.relevant-info-modal-content{flex:1 1;overflow-y:auto;padding:20px}.loading{padding:40px}.empty-state,.loading{color:#666;text-align:center}.empty-state{padding:60px 20px}.empty-state-subtitle{color:#999;font-size:14px;margin-top:8px}.relevant-info-list{margin-bottom:20px}.relevant-info-item{align-items:flex-start;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:12px;padding:16px;transition:all .2s}.relevant-info-item:hover{border-color:#bbb;box-shadow:0 2px 8px #0000001a}.item-content{flex:1 1;margin-right:12px}.item-header{align-items:center;display:flex;gap:12px;margin-bottom:8px}.category-badge{background:#4a90e2;border-radius:12px;color:#fff;font-size:12px;font-weight:600;padding:4px 10px}.timestamp{color:#999;font-size:12px}.item-text{color:#333;line-height:1.5;margin:8px 0}.item-source{margin-top:8px}.item-source small{color:#666;font-size:12px}.item-actions{display:flex;gap:8px}.delete-btn,.edit-btn{background:none;font-size:18px;padding:4px 8px}.edit-btn:hover{background:#e3f2fd}.delete-btn:hover{background:#ffebee}.adding-form,.editing-form{width:100%}.adding-form textarea,.editing-form textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;margin-bottom:8px;padding:12px;resize:vertical;width:100%}.adding-form select,.editing-form select{border:1px solid #ddd;border-radius:6px;font-size:14px;margin-bottom:12px;padding:8px;width:100%}.add-actions,.edit-actions{display:flex;gap:8px}.cancel-btn,.save-btn{padding:8px 16px}.save-btn{background:#4a90e2}.save-btn:hover{background:#357abd}.cancel-btn{background:#e0e0e0;color:#333}.cancel-btn:hover{background:#d0d0d0}.add-item-btn{background:#4a90e2;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px;transition:all .2s;width:100%}.add-item-btn:hover{background:#357abd}@media (max-width:768px){.relevant-info-modal{max-height:95vh;width:95%}.relevant-info-modal-header h2{font-size:18px}.relevant-info-item{flex-direction:column}.item-content{margin-bottom:12px;margin-right:0}.item-actions{align-self:flex-end}}.canned-answers-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.canned-answers-modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:90%}.canned-answers-modal-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.canned-answers-modal-header h2{color:#333;font-size:24px;margin:0}.canned-answers-modal-content{flex:1 1;overflow-y:auto;padding:20px}.add-answer-form{background:#f8f9fa;border-radius:8px;margin-bottom:20px;padding:20px}.add-answer-form h3{color:#333;font-size:20px;margin:0 0 20px}.answer-textarea{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:12px;resize:vertical;width:100%}.answer-textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.cancel-btn,.save-btn{padding:10px 20px}.save-btn:hover{background:#0056b3}.answers-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.answers-header h3{color:#333;font-size:20px;margin:0}.add-answer-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.add-answer-btn:hover{background:#218838}.no-answers{color:#666;font-style:italic;padding:40px 20px;text-align:center}.answers-list{display:flex;flex-direction:column;gap:16px}.answer-item{align-items:flex-start;background:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;justify-content:space-between;padding:16px;transition:all .2s}.answer-item:hover{border-color:#007bff;box-shadow:0 2px 8px #0000001a}.answer-content{flex:1 1;margin-right:16px}.answer-question{color:#333;line-height:1.5;margin-bottom:12px}.answer-response{color:#666;line-height:1.5;white-space:pre-wrap}.answer-actions{display:flex;flex-shrink:0;gap:8px}.delete-btn,.edit-btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s}.edit-btn{background:#ffc107;color:#212529}.edit-btn:hover{background:#e0a800}.delete-btn{background:#dc3545;color:#fff}.delete-btn:hover{background:#c82333}@media (max-width:768px){.canned-answers-modal{max-height:95vh;width:95%}.canned-answers-modal-header{padding:16px}.canned-answers-modal-header h2{font-size:20px}.canned-answers-modal-content{padding:16px}.answer-item{align-items:stretch;flex-direction:column}.answer-content{margin-bottom:12px;margin-right:0}.answer-actions{justify-content:flex-end}}.trainer-philosophy-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.trainer-philosophy-modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:700px;overflow:hidden;width:90%}.trainer-philosophy-modal-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.trainer-philosophy-modal-header h2{color:#333;font-size:24px;margin:0}.close-btn{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:24px;padding:5px;transition:all .2s}.close-btn:hover{background:#e0e0e0;color:#333}.trainer-philosophy-modal-content{flex:1 1;overflow-y:auto;padding:20px}.loading-spinner{align-items:center;color:#666;display:flex;font-size:18px;height:200px;justify-content:center}.philosophy-description{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin-bottom:20px;padding:16px}.philosophy-description p{color:#333;line-height:1.5;margin:0 0 12px}.philosophy-description p:last-child{margin-bottom:0}.philosophy-description strong{color:#007bff}.form-section{margin-bottom:20px}.form-section label{color:#333;display:block;font-size:16px;font-weight:600;margin-bottom:8px}.philosophy-textarea{border:2px solid #e0e0e0;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;line-height:1.5;min-height:300px;padding:16px;resize:vertical;transition:border-color .2s;width:100%}.philosophy-textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.philosophy-textarea::placeholder{color:#999;font-style:italic}.character-count{color:#666;font-size:12px;margin-top:4px;text-align:right}.form-actions{border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;padding-top:16px}.cancel-btn,.save-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;min-width:100px;padding:12px 24px;transition:all .2s}.cancel-btn{background:#6c757d;color:#fff}.cancel-btn:hover{background:#5a6268}.save-btn{background:#007bff;color:#fff}.save-btn:hover:not(:disabled){background:#0056b3}.save-btn:disabled{background:#ccc;cursor:not-allowed;opacity:.6}@media (max-width:768px){.trainer-philosophy-modal{max-height:95vh;width:95%}.trainer-philosophy-modal-header{padding:16px}.trainer-philosophy-modal-header h2{font-size:20px}.trainer-philosophy-modal-content{padding:16px}.philosophy-textarea{font-size:16px;min-height:250px}.form-actions{flex-direction:column}.cancel-btn,.save-btn{width:100%}}.demo-password-modal-overlay{align-items:center;background:#000000b3;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2000}.demo-password-modal{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;max-height:80vh;max-width:600px;overflow-y:auto;width:90%}.demo-password-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 24px}.demo-password-modal-header h2{color:#212529;font-size:24px;margin:0}.close-button{align-items:center;background:#0000;border:none;border-radius:4px;color:#6c757d;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.close-button:hover{background:#f0f0f0;color:#212529}.demo-password-modal-content{padding:24px}.create-password-section{border-bottom:1px solid #e0e0e0;margin-bottom:32px;padding-bottom:24px}.create-password-section h3{color:#212529;font-size:18px;margin:0 0 16px}.create-password-section form{display:flex;gap:12px}.password-input{border:1px solid #dee2e6;border-radius:6px;flex:1 1;font-size:14px;padding:10px 14px}.password-input:focus{border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a;outline:none}.create-button{background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.create-button:hover:not(:disabled){background:#45a049}.create-button:disabled{background:#ccc;cursor:not-allowed}.passwords-list-section h3{color:#212529;font-size:18px;margin:0 0 16px}.empty-state,.loading{color:#6c757d;padding:40px;text-align:center}.passwords-list{display:flex;flex-direction:column;gap:12px}.password-item{align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;display:flex;justify-content:space-between;padding:14px;transition:all .2s}.password-item:hover{background:#e9ecef;border-color:#dee2e6}.password-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.password-text{color:#212529;font-size:15px;font-weight:500}.password-date{color:#6c757d;font-size:12px}.delete-button{background:#0000;border:none;border-radius:4px;cursor:pointer;font-size:18px;padding:8px;transition:all .2s}.delete-button:hover{background:#fff;transform:scale(1.1)}.text-blast-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.text-blast-modal{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;max-height:85vh;max-width:550px;overflow:hidden;width:100%}.text-blast-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 24px}.text-blast-modal-header h2{color:#212529;font-size:24px;font-weight:600;margin:0}.text-blast-header-subtitle{color:#6c757d;font-size:13px;font-weight:400;margin:4px 0 0}.text-blast-close-btn{background:#0000;border:none;border-radius:4px;color:#6c757d;cursor:pointer;font-size:24px;padding:4px 8px;transition:all .2s}.text-blast-close-btn:hover{background-color:#f0f0f0;color:#212529}.text-blast-modal-content{display:flex;flex:1 1;flex-direction:column;gap:20px;overflow-y:auto;padding:24px}.text-blast-label{color:#495057;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.text-blast-to-field{display:flex;flex-direction:column;gap:8px}.text-blast-chips-container{align-items:center;background-color:#fff;border:1px solid #dee2e6;border-radius:8px;cursor:text;display:flex;flex-wrap:wrap;gap:6px;min-height:48px;padding:10px 12px}.text-blast-chips-container:focus-within{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.text-blast-chip{align-items:center;background-color:#e9ecef;border:1px solid #dee2e6;border-radius:16px;display:flex;font-size:13px;gap:6px;max-width:100%;padding:4px 8px 4px 4px;transition:all .2s}.text-blast-chip:hover{background-color:#dee2e6}.text-blast-chip-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:600;height:24px;justify-content:center;width:24px}.text-blast-chip-name{color:#212529;font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-blast-chip-remove{background:#0000;border:none;border-radius:4px;color:#6c757d;cursor:pointer;flex-shrink:0;font-size:14px;line-height:1;margin-left:2px;padding:2px 4px;transition:all .2s}.text-blast-chip-remove:hover{background-color:#0000001a;color:#212529}.text-blast-placeholder{color:#adb5bd;font-size:14px;font-style:italic}.text-blast-to-actions{display:flex;justify-content:flex-end;margin-top:4px}.text-blast-select-all-btn{background:#0000;border:none;border-radius:4px;color:#007bff;cursor:pointer;font-size:13px;padding:4px 8px;transition:all .2s}.text-blast-select-all-btn:hover{background-color:#e7f3ff}.text-blast-message-section{display:flex;flex-direction:column;gap:8px}.text-blast-message-textarea{border:1px solid #dee2e6;border-radius:8px;font-family:inherit;font-size:16px;line-height:1.5;max-height:120px;min-height:80px;padding:14px;resize:none;transition:all .2s;width:100%}.text-blast-message-textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.text-blast-message-info{color:#6c757d;display:flex;flex-wrap:wrap;font-size:12px;gap:12px;justify-content:space-between}.text-blast-message-info-warning{color:#ff9800}.text-blast-message-info-error{color:#dc3545}.text-blast-error-text{color:#dc3545;font-weight:600}.text-blast-warning-text{color:#ff9800;font-weight:500}.text-blast-message-textarea.text-blast-message-warning{border-color:#ff9800}.text-blast-message-textarea.text-blast-message-warning:focus{border-color:#ff9800;box-shadow:0 0 0 3px #ff98001a}.text-blast-message-textarea.text-blast-message-error{border-color:#dc3545}.text-blast-message-textarea.text-blast-message-error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.text-blast-notice{align-items:flex-start;background-color:#e3f2fd;border:1px solid #90caf9;border-radius:8px;display:flex;gap:12px;margin-bottom:8px;padding:12px 16px}.text-blast-notice-icon{flex-shrink:0;font-size:18px;margin-top:2px}.text-blast-notice-text{color:#1565c0;flex:1 1;font-size:13px;line-height:1.5}.text-blast-notice-text strong{font-weight:600}.text-blast-progress{display:flex;flex-direction:column;gap:8px}.text-blast-progress-bar{background-color:#e9ecef;border-radius:4px;height:8px;overflow:hidden;width:100%}.text-blast-progress-fill{background-color:#007bff;border-radius:4px;height:100%;transition:width .3s ease}.text-blast-progress-text{color:#6c757d;font-size:13px;text-align:center}.text-blast-actions{border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;padding-top:12px}.text-blast-cancel-btn,.text-blast-send-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.text-blast-cancel-btn{background-color:#f8f9fa;color:#6c757d}.text-blast-cancel-btn:hover:not(:disabled){background-color:#e9ecef;color:#212529}.text-blast-send-btn{background-color:#007bff;color:#fff}.text-blast-send-btn:hover:not(:disabled){background-color:#0056b3}.text-blast-cancel-btn:disabled,.text-blast-send-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.text-blast-modal{border-radius:0;max-height:100vh;max-width:100%}.text-blast-modal-overlay{padding:0}.text-blast-chip-name{max-width:150px}}.fab-button{align-items:center;background-color:#1976d2;border:none;border-radius:50%;bottom:24px;box-shadow:0 4px 12px #00000026;color:#fff;cursor:pointer;display:none;font-size:36px;font-weight:300;height:72px;justify-content:center;line-height:1;position:fixed;right:24px;transition:all .3s cubic-bezier(.4,0,.2,1);width:72px;z-index:998}.fab-button:hover{background-color:#1565c0;box-shadow:0 6px 16px #0003;transform:scale(1.05)}.fab-button:active{transform:scale(.95)}.fab-button-open{background-color:#d32f2f}.fab-button-open:hover{background-color:#c62828}.fab-icon{align-items:center;display:flex;justify-content:center;transition:transform .3s cubic-bezier(.4,0,.2,1)}.fab-icon-close{font-size:32px;font-weight:300;transform:rotate(45deg)}.fab-menu{bottom:106px;display:none;flex-direction:column;gap:12px;opacity:0;pointer-events:none;position:fixed;right:24px;transform:translateY(20px);transition:all .3s cubic-bezier(.4,0,.2,1);z-index:999}.fab-menu-open{opacity:1;pointer-events:auto;transform:translateY(0)}.fab-menu-item{align-items:center;background-color:#fff;border:none;border-radius:28px;box-shadow:0 4px 12px #00000026;color:#212529;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:12px;min-width:160px;padding:12px 16px;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}.fab-menu-item:hover{background-color:#f8f9fa;box-shadow:0 6px 16px #0003;transform:translateX(-4px)}.fab-menu-item:active{transform:translateX(-2px)}.fab-menu-icon{flex-shrink:0;font-size:20px;line-height:1}.fab-menu-label{flex:1 1;text-align:left}.fab-backdrop{animation:fadeIn .2s ease-out;background-color:#0000001a;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:997}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:768px){.fab-button{bottom:20px;font-size:24px;height:52px;right:20px;width:52px}.fab-backdrop,.fab-button,.fab-menu{display:none!important}.fab-button-open .fab-icon-close{font-size:28px}.fab-menu{bottom:82px;gap:10px;right:20px}.fab-menu-item{font-size:14px;gap:10px;min-width:150px;padding:10px 14px}.fab-menu-icon{font-size:18px}}.fab-menu-open .fab-menu-item:first-child{animation:slideInRight .3s cubic-bezier(.4,0,.2,1) .05s both}.fab-menu-open .fab-menu-item:nth-child(2){animation:slideInRight .3s cubic-bezier(.4,0,.2,1) .1s both}.fab-menu-open .fab-menu-item:nth-child(3){animation:slideInRight .3s cubic-bezier(.4,0,.2,1) .15s both}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.bulk-generate-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.bulk-generate-modal{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;max-height:85vh;max-width:550px;overflow:hidden;width:100%}.bulk-generate-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 24px}.bulk-generate-modal-header h2{color:#212529;font-size:24px;font-weight:600;margin:0}.bulk-generate-header-subtitle{color:#6c757d;font-size:13px;font-weight:400;margin:4px 0 0}.bulk-generate-close-btn{background:#0000;border:none;border-radius:4px;color:#6c757d;cursor:pointer;font-size:24px;padding:4px 8px;transition:all .2s}.bulk-generate-close-btn:hover{background-color:#f0f0f0;color:#212529}.bulk-generate-modal-content{display:flex;flex:1 1;flex-direction:column;gap:20px;overflow-y:auto;padding:24px}.bulk-generate-label{color:#495057;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.bulk-generate-to-field{display:flex;flex-direction:column;gap:8px}.bulk-generate-chips-container{align-items:center;background-color:#fff;border:1px solid #dee2e6;border-radius:8px;cursor:text;display:flex;flex-wrap:wrap;gap:6px;min-height:48px;padding:10px 12px}.bulk-generate-chips-container--grouped{align-items:stretch;flex-direction:column;flex-wrap:nowrap;gap:12px;max-height:280px;overflow-y:auto}.bulk-generate-category-group{display:flex;flex-direction:column;gap:6px;min-width:0;width:100%}.bulk-generate-category-header{border-bottom:1px solid #e9ecef;color:#495057;font-size:12px;font-weight:600;padding-bottom:4px}.bulk-generate-category-chips{display:flex;flex-wrap:wrap;gap:6px}.bulk-generate-chips-container:focus-within{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.bulk-generate-chip{align-items:center;background-color:#e9ecef;border:1px solid #dee2e6;border-radius:16px;display:flex;font-size:13px;gap:6px;max-width:100%;padding:4px 8px 4px 4px;transition:all .2s}.bulk-generate-chip:hover{background-color:#dee2e6}.bulk-generate-chip-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:600;height:24px;justify-content:center;width:24px}.bulk-generate-chip-info{display:flex;flex-direction:column;gap:2px;min-width:0}.bulk-generate-chip-name{color:#212529;font-weight:500}.bulk-generate-chip-help,.bulk-generate-chip-name{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bulk-generate-chip-help{color:#6c757d;font-size:11px;font-weight:400}.bulk-generate-chip-remove{background:#0000;border:none;border-radius:4px;color:#6c757d;cursor:pointer;flex-shrink:0;font-size:14px;line-height:1;margin-left:2px;padding:2px 4px;transition:all .2s}.bulk-generate-chip-remove:hover{background-color:#0000001a;color:#212529}.bulk-generate-placeholder-text{color:#adb5bd;font-size:14px;font-style:italic}.bulk-generate-to-actions{display:flex;justify-content:flex-end;margin-top:4px}.bulk-generate-select-all-btn{background:#0000;border:none;border-radius:4px;color:#007bff;cursor:pointer;font-size:13px;padding:4px 8px;transition:all .2s}.bulk-generate-select-all-btn:hover{background-color:#e7f3ff}.bulk-generate-prompt-section{display:flex;flex-direction:column;gap:8px}.bulk-generate-prompt-textarea{border:1px solid #dee2e6;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:16px;line-height:1.5;min-height:120px;padding:14px;resize:vertical;transition:all .2s;width:100%}.bulk-generate-prompt-textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.bulk-generate-prompt-info{color:#6c757d;font-size:12px}.bulk-generate-prompt-history{display:flex;flex-direction:column;gap:8px;margin-top:8px}.bulk-generate-history-list{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto}.bulk-generate-history-item{word-wrap:break-word;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#212529;cursor:pointer;font-size:14px;max-width:100%;padding:10px 14px;text-align:left;transition:all .2s;white-space:pre-wrap}.bulk-generate-history-item:hover{background-color:#e9ecef;border-color:#007bff;transform:translateX(2px)}.bulk-generate-history-item:active{background-color:#dee2e6;transform:translateX(1px)}.bulk-generate-actions{border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;padding-top:12px}.bulk-generate-cancel-btn,.bulk-generate-generate-btn{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 .2s}.bulk-generate-cancel-btn{background-color:#f8f9fa;color:#6c757d}.bulk-generate-cancel-btn:hover:not(:disabled){background-color:#e9ecef;color:#212529}.bulk-generate-generate-btn{background-color:#007bff;color:#fff}.bulk-generate-generate-btn:hover:not(:disabled){background-color:#0056b3}.bulk-generate-generate-btn:disabled{cursor:not-allowed;opacity:.5}.bulk-generate-generate-icon{font-size:16px}@media (max-width:768px){.bulk-generate-modal{border-radius:0;max-height:100vh;max-width:100%}.bulk-generate-modal-overlay{padding:0}.bulk-generate-chip-name{max-width:150px}}.mobile-bottom-nav,.mobile-chat-fab{display:none}@media (max-width:768px){.mobile-bottom-nav{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#2c3e50d9;border-radius:28px;bottom:calc(12px + env(safe-area-inset-bottom, 0));box-shadow:0 4px 20px #0003;display:flex;height:56px;justify-content:space-around;left:calc(12px + env(safe-area-inset-left, 0));padding:0 8px;position:fixed;right:calc(72px + env(safe-area-inset-right, 0));z-index:1000}.mobile-nav-item{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;color:#ffffffb3;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:10px;gap:2px;justify-content:flex-end;padding:6px 4px 0;position:relative;transition:color .2s}.mobile-nav-item.active{background:#0000!important;box-shadow:none;color:#fff}.mobile-nav-item:active{color:#64b5f6}.mobile-nav-icon{font-size:20px;line-height:1}.mobile-nav-label{line-height:1;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-chat-fab{align-items:center;background:linear-gradient(135deg,#7c4dff,#00bcd4);border:none;border-radius:50%;bottom:calc(12px + env(safe-area-inset-bottom, 0));box-shadow:0 4px 16px #7c4dff73;color:#fff;cursor:pointer;display:flex!important;font-size:24px;height:56px;justify-content:center;position:fixed;right:calc(12px + env(safe-area-inset-right, 0));transition:transform .2s,box-shadow .2s;width:56px;z-index:1001}.mobile-chat-fab.active{box-shadow:0 4px 20px #7c4dff99;transform:scale(1.05)}.mobile-chat-fab:active{transform:scale(.95)}.mobile-chat-fab-icon{line-height:1}.mobile-nav-badge{align-items:center;background:#e53935;border-radius:7px;color:#fff;display:flex;font-size:10px;font-weight:600;height:14px;justify-content:center;line-height:1;min-width:14px;padding:0 4px;position:absolute;right:50%;top:2px;transform:translate(50%)}.mobile-more-backdrop{animation:mobileMoreFadeIn .2s ease;background:#0006;inset:0;position:fixed;z-index:1001}.mobile-more-sheet{animation:mobileMoreSlideUp .3s ease;background:#fff;border-radius:16px 16px 0 0;bottom:0;box-shadow:0 -4px 24px #00000026;left:0;padding:12px 16px calc(24px + env(safe-area-inset-bottom, 0));position:fixed;right:0;z-index:1002}.mobile-more-handle{background:#ddd;border-radius:2px;height:4px;margin:0 auto 16px;width:36px}.mobile-more-title{color:#212529;font-size:18px;font-weight:600;margin:0 0 12px}.mobile-more-item{align-items:center;background:none;border:none;border-radius:8px;color:#212529;cursor:pointer;display:flex;font-size:16px;gap:12px;padding:14px 12px;text-align:left;transition:background .15s;width:100%}.mobile-more-item:active,.mobile-more-item:hover{background:#f5f5f5}.mobile-more-icon{font-size:20px}@keyframes mobileMoreFadeIn{0%{opacity:0}to{opacity:1}}@keyframes mobileMoreSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}}.radial-gauge{aspect-ratio:2/1;max-width:160px;position:relative;width:100%}.radial-gauge__svg{display:block;height:auto;width:100%}.radial-gauge__center{align-items:center;display:flex;flex-direction:column;gap:2px;left:50%;min-width:80px;pointer-events:none;position:absolute;top:38%;transform:translate(-50%,-50%)}.radial-gauge__label{color:#212529;font-size:12px;font-weight:600;white-space:nowrap}.radial-gauge__stats{color:#6c757d;font-size:11px;white-space:nowrap}@keyframes habit-bar-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.habit-completion-bar--shimmer{min-height:48px;padding:10px 0}.habit-completion-bar__shimmer-line,.habit-completion-bar__shimmer-track{animation:habit-bar-shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#e9ecef,#f1f3f5 20%,#e9ecef 40%,#e9ecef);background-size:200% 100%;border-radius:8px}.habit-completion-bar__shimmer-title{border-radius:4px;height:14px;margin-bottom:8px;width:120px}.habit-completion-bar__shimmer-stats{border-radius:4px;height:12px;margin-bottom:10px;width:80px}.habit-completion-bar__shimmer-track{border-radius:8px;height:40px;width:100%}.habit-completion-bar__bar{display:block}.habit-completion-bar__gauge{display:none}.habit-completion-bar__wrapper{margin-bottom:10px}.habit-completion-bar__header{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px 12px;margin-bottom:6px}.habit-completion-bar__title{color:#212529;font-size:13px;font-weight:600}.habit-completion-bar__header-stats{color:#6c757d;font-size:12px}.habit-completion-bar{border-radius:8px;min-height:12px;position:relative}.habit-completion-bar:focus{outline:none}.habit-completion-bar:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px #2d8a4e}.habit-completion-bar--empty{align-items:center;background:#f1f3f5;border-radius:8px;display:flex;justify-content:center;min-height:48px;padding:10px 14px}.habit-completion-bar__empty-content{align-items:center;display:flex;flex-direction:column;gap:4px;text-align:center}.habit-completion-bar__empty-title{color:#495057;font-size:13px;font-weight:600}.habit-completion-bar__empty-label{color:#6c757d;font-size:12px;line-height:1.3;max-width:320px}.habit-completion-bar__track{background:#e9ecef;border-radius:8px;display:flex;min-height:40px;overflow:hidden;position:relative;width:100%}.habit-completion-bar__segment{align-items:center;display:flex;height:100%;justify-content:center;min-height:40px;min-width:0;padding:0 6px;position:relative;transition:width .3s ease}.habit-completion-bar__segment:hover{filter:brightness(1.1)}.habit-completion-bar__segment-label{color:#fff;font-size:11px;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px #00000059;white-space:nowrap}.habit-completion-bar__tooltip{background:#fff;border:1px solid #dee2e6;border-radius:6px;bottom:calc(100% + 8px);box-shadow:0 4px 12px #0000001a;color:#212529;font-size:12px;left:50%;padding:6px 10px;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:10}.habit-completion-bar__tooltip:after{border:6px solid #0000;border-top-color:#fff;content:"";left:50%;position:absolute;top:100%;transform:translateX(-50%)}@media (max-width:600px){.habit-completion-bar__wrapper{margin-bottom:8px}.habit-completion-bar__title{font-size:12px}.habit-completion-bar__header-stats{font-size:11px}.habit-completion-bar__track{border-radius:6px;min-height:36px}.habit-completion-bar__segment{min-height:36px;padding:0 4px}.habit-completion-bar__segment-label{font-size:10px}.habit-completion-bar--empty{min-height:44px;padding:8px 12px}.habit-completion-bar__empty-title{font-size:12px}.habit-completion-bar__empty-label{font-size:11px}.habit-completion-bar__tooltip{font-size:11px;padding:5px 8px}}@keyframes messaged-bar-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.messaged-today-bar--shimmer{min-height:48px;padding:10px 0}.messaged-today-bar__shimmer-line,.messaged-today-bar__shimmer-track{animation:messaged-bar-shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#e9ecef,#f1f3f5 20%,#e9ecef 40%,#e9ecef);background-size:200% 100%;border-radius:8px}.messaged-today-bar__shimmer-title{border-radius:4px;height:14px;margin-bottom:8px;width:120px}.messaged-today-bar__shimmer-stats{border-radius:4px;height:12px;margin-bottom:10px;width:80px}.messaged-today-bar__shimmer-track{border-radius:8px;height:24px;width:100%}.messaged-today-bar__bar{display:block}.messaged-today-bar__gauge{display:none}.messaged-today-bar__wrapper{margin-bottom:10px}.messaged-today-bar__header{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px 12px;margin-bottom:6px}.messaged-today-bar__title{color:#212529;font-size:13px;font-weight:600}.messaged-today-bar__header-stats{color:#6c757d;font-size:12px}.messaged-today-bar{border-radius:8px;min-height:12px;position:relative}.messaged-today-bar:focus{outline:none}.messaged-today-bar:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px #1e6f9e}.messaged-today-bar--empty{align-items:center;background:#f1f3f5;border-radius:8px;display:flex;justify-content:center;min-height:48px;padding:10px 14px}.messaged-today-bar__empty-content{align-items:center;display:flex;flex-direction:column;gap:4px;text-align:center}.messaged-today-bar__empty-title{color:#495057;font-size:13px;font-weight:600}.messaged-today-bar__empty-label{color:#6c757d;font-size:12px;line-height:1.3}.messaged-today-bar__track{background:#e9ecef;border-radius:8px;display:flex;min-height:24px;overflow:hidden;position:relative;width:100%}.messaged-today-bar__fill{height:100%;min-height:24px;transition:width .3s ease}.messaged-today-bar__fill--red{background:#dc3545}.messaged-today-bar__fill--yellow{background:#ffc107}.messaged-today-bar__fill--green{background:#2d8a4e}@media (max-width:600px){.messaged-today-bar__wrapper{margin-bottom:8px}.messaged-today-bar__title{font-size:12px}.messaged-today-bar__header-stats{font-size:11px}.messaged-today-bar__fill,.messaged-today-bar__track{min-height:20px}.messaged-today-bar--empty{min-height:44px;padding:8px 12px}.messaged-today-bar__empty-title{font-size:12px}.messaged-today-bar__empty-label{font-size:11px}}
/*# sourceMappingURL=main.3b9a7020.css.map*/