@charset "UTF-8";:root{--color-bg-primary: #0F1724;--color-bg-secondary: rgba(30, 41, 59, .5);--color-bg-tertiary: rgba(51, 65, 85, .6);--color-border-primary: rgba(100, 181, 246, .2);--color-text-primary: #E2E8F0;--color-text-secondary: #94A3B8;--color-accent-primary: #38BDF8;--color-accent-hover: #7DD3FC;--color-semantic-success: #2ECC71;--color-semantic-warning: #F39C12;--color-semantic-danger: #E74C3C;--font-family-sans: "Exo 2", "Poppins";--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: 1.125rem;--font-size-lg: 1.5rem;--font-size-xl: 2rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-bold: 700;--font-weight-extralight: 200;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 48px;--border-radius-sm: 4px;--border-radius-md: 8px;--box-shadow-card: 0 4px 12px rgba(0, 0, 0, .15)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-family-sans, "Exo 2", "Poppins");line-height:1.5;font-weight:400;color:var(--color-text-primary);background:radial-gradient(circle at top left,#1a233a,#0f1724);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;text-rendering:optimizeLegibility}.card{background-color:var(--color-bg-secondary);border-radius:var(--border-radius-md);padding:var(--spacing-lg);width:100%;margin-bottom:var(--spacing-lg);border:1px solid var(--color-border-primary);box-shadow:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-sizing:border-box}.card__header{background-color:var(--color-bg-tertiary);display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);margin:calc(var(--spacing-lg) * -1);margin-bottom:var(--spacing-lg);border-top-left-radius:var(--border-radius-md);border-top-right-radius:var(--border-radius-md)}.card__header-title-block{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.card__header-title{font-weight:var(--font-weight-bold);display:flex;align-items:center;gap:var(--spacing-sm);margin:0}.card__subtitle{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-regular)}.card-with-padding{padding-bottom:var(--spacing-md)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--spacing-lg);align-items:start;width:100%}.card-grid-single{display:grid;gap:var(--spacing-lg)}.profile-cards-horizontal{grid-auto-flow:row;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}@media (max-width: 680px){.card-grid{grid-template-columns:1fr}}.button-primary{background-color:var(--color-accent-primary);color:var(--color-text-primary);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:var(--font-weight-bold);cursor:pointer;transition:background-color .2s}.button-primary:hover{background-color:var(--color-accent-hover)}.button-secondary{background-color:var(--color-bg-tertiary);color:var(--color-text-primary);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:var(--font-weight-bold);cursor:pointer;transition:background-color .2s}.button-secondary:hover{filter:brightness(120%)}.button-success{background-color:var(--color-semantic-success);color:var(--color-text-primary);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:var(--font-weight-bold);cursor:pointer;transition:background-color .2s}.button-success:hover{filter:brightness(120%)}.button-danger{background-color:var(--color-semantic-danger);color:var(--color-text-primary);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:var(--font-weight-bold);cursor:pointer;transition:background-color .2s}.button-danger:hover{filter:brightness(120%)}.button-warning{background-color:var(--color-semantic-warning);color:#212529;border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:var(--font-weight-bold);cursor:pointer;transition:background-color .2s}.button-warning:hover{filter:brightness(120%)}.button-link{background-color:transparent;border:none;color:var(--color-accent-primary);text-decoration:none;padding:0;font-weight:var(--font-weight-medium);cursor:pointer;text-align:left;display:inline}.button-link:hover{text-decoration:underline}.button-icon{background-color:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-sm);border-radius:50%;display:flex;align-items:center;justify-content:center}.button-icon:hover{background-color:var(--color-bg-tertiary);color:var(--color-text-primary)}.button-icon:disabled{color:var(--color-text-placeholder);cursor:not-allowed}.button-logout{background-color:#6c757d;color:#fff;padding:8px 16px;border-radius:6px;border:none;cursor:pointer;font-weight:700;display:inline-flex;align-items:center;gap:8px;transition:background-color .2s;width:auto}.button-logout:hover{background-color:#5c636a}.form-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.form-input,.form-textarea,.form-select{background-color:var(--color-bg-primary);border:1px solid var(--color-border-primary);color:var(--color-text-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);font-family:var(--font-family-sans);font-size:var(--font-size-base);width:100%}.form-textarea{min-height:120px;resize:vertical}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out}.form-select:hover{border-color:var(--color-accent-hover)}.form-select:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px #38bdf840}.form-helper-text{margin:0 0 var(--spacing-lg);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.4}.form-error{margin:var(--spacing-sm) 0 var(--spacing-md);color:var(--color-status-danger, #dc2626);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.metric-indicator{display:flex;flex-direction:column;align-items:center;text-align:center;background-color:var(--color-bg-secondary);padding:var(--spacing-md);border-radius:var(--border-radius-md);transition:border-color .18s ease,transform .22s cubic-bezier(.215,.61,.355,1),box-shadow .22s ease,background-color .25s ease;min-width:155px;border:1px solid var(--color-border-primary);position:relative;will-change:transform,box-shadow;isolation:isolate}.metric-indicator:hover{border-color:var(--color-accent-primary);transform:translateY(-6px) scale(1.01);box-shadow:var(--shadow-lg, 0 8px 24px rgba(0,0,0,.22));background-color:var(--color-bg-tertiary);z-index:3}.metric-indicator:active{transform:translateY(-1px) scale(.995);box-shadow:var(--shadow-sm, 0 2px 6px rgba(0,0,0,.12));transition-duration:.12s}.metric-indicator__icon{font-size:1.75rem;color:var(--color-accent-primary);margin-bottom:var(--spacing-sm)}.metric-indicator__value-container{display:flex;align-items:baseline;gap:4px;color:var(--color-text-primary);flex-wrap:nowrap}.metric-indicator__value{font-size:1.75rem;font-weight:var(--font-weight-bold);line-height:1;white-space:nowrap}.metric-indicator__value--small-text{font-size:.875rem;font-weight:var(--font-weight-regular)}.metric-indicator__unit{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);white-space:nowrap}.metric-indicator__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;margin-top:var(--spacing-xs);white-space:nowrap}@media (max-width: 800px){.metric-indicator{min-width:140px}}@media (max-width: 640px){.metric-indicator{min-width:120px}.metric-indicator__value{font-size:1.5rem}.metric-indicator__label{font-size:.55rem}}.dashboard-table{width:100%;border-collapse:collapse;text-align:left;margin-top:1rem}.dashboard-table th,.dashboard-table td{padding:12px 10px;border-bottom:1px solid var(--color-border-primary);font-family:var(--font-family-sans);font-weight:300;font-size:var(--font-size-sm)}.dashboard-table th{color:var(--color-text-secondary)}.button-link-table{background:none;border:none;color:var(--color-text-primary);font-weight:300;text-decoration:none;cursor:pointer;padding:0;font-size:var(--font-size-sm)}.button-link-table:hover{text-decoration:underline;color:var(--color-accent-primary)}@media (max-width: 768px){.dashboard-table thead{display:none}.dashboard-table,.dashboard-table tbody,.dashboard-table tr,.dashboard-table td{display:block;width:100%}.dashboard-table tr{margin-bottom:1rem;border:1px solid var(--color-border-primary);border-radius:var(--border-radius-md);padding:1rem}.dashboard-table td{display:flex;justify-content:space-between;align-items:center;text-align:right;padding:10px 0;border-bottom:1px dotted var(--color-border-subtle);position:relative}.dashboard-table td:before{content:attr(data-label);text-align:left;font-weight:var(--font-weight-bold);color:var(--color-text-secondary)}}.btn{padding:8px 16px;border-radius:6px;border:none;cursor:pointer;font-weight:700;display:inline-flex;align-items:center;gap:8px;transition:background-color .2s;width:auto}.btn-primary{background-color:#0d6efd;color:#fff}.btn-primary:hover{background-color:#0b5ed7}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5c636a}.page-container{padding:var(--spacing-xl);width:100%;max-width:1400px;margin:0 auto;box-sizing:border-box}.layout-grid-2-cols{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}@media (max-width: 768px){.layout-grid-2-cols{grid-template-columns:1fr}}.page-header{margin-bottom:var(--spacing-xl)}.page-header__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.page-header__subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-top:var(--spacing-xs)}.sidebar-nav{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:0 var(--spacing-md);flex-grow:1;margin-top:1rem}.nav-link{display:flex;align-items:center;gap:1rem;padding:var(--spacing-xl);color:var(--color-text-secondary);text-decoration:none;transition:transform .2s ease-in-out,border-color .2s,background-color .2s,color .2s;border:1px solid transparent;border-radius:var(--border-radius-md);background-color:var(--color-bg-secondary);width:100%;text-align:left;font-size:1em;cursor:pointer;font-family:var(--font-family-sans)}.nav-link:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);color:var(--color-text-primary);background-color:var(--color-bg-tertiary)}.nav-link.active{background-color:var(--color-bg-tertiary);border-color:var(--color-accent-primary);color:var(--color-text-primary);font-weight:var(--font-weight-bold);box-shadow:inset 4px 0 0 var(--color-accent-primary)}.nav-link svg{width:20px;height:20px;flex-shrink:0}.sidebar-footer{margin-top:auto;padding:1rem var(--spacing-md);border-top:1px solid var(--color-border-primary)}.app-container{min-height:100vh}.loading-message{color:#f0f0f0;text-align:center;padding:2rem;font-size:1.2rem}.auth-page-container{display:flex;align-items:center;justify-content:center;min-height:100vh}.auth-toggle{display:flex;border:1px solid var(--color-border-primary);border-radius:var(--border-radius-md);overflow:hidden;margin-bottom:1.5rem}.auth-toggle button{flex:1;padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--color-bg-tertiary);border:none;color:var(--color-text-secondary);cursor:pointer;font-size:1em;font-weight:var(--font-weight-medium);transition:background-color .3s,color .3s}.auth-toggle button.active{background-color:var(--color-accent-primary);color:var(--color-text-primary)}.auth-form-container h2{text-align:center;margin-bottom:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:var(--font-weight-medium);margin-bottom:.5rem;color:var(--color-text-secondary);font-size:.9em}.password-group{position:relative}.password-toggle-btn{position:absolute;top:50%;right:10px;transform:translateY(-50%);background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:5px;transition:color .2s;line-height:0}.password-toggle-btn:hover{color:var(--color-text-primary)}.account-type-options{display:flex;gap:1.5rem;margin-top:.5rem}.account-type div{display:flex;align-items:center;margin-bottom:.75rem}.account-type div label{white-space:nowrap;cursor:pointer}.account-type input[type=radio]{margin-right:.5rem;position:relative;top:-1px}.auth-links{text-align:center;margin-top:1.5rem}.feedback-message{text-align:center;color:#a0a0b8;margin-bottom:1rem}.auth-action-button{width:fit-content}.env-banner{font-size:12px;padding:4px 10px;display:flex;align-items:center;gap:6px;font-weight:500;letter-spacing:.5px;border-bottom:1px solid rgba(0,0,0,.08);background:var(--color-bg-tertiary, #f4f5f7);color:var(--color-text-secondary, #444);position:sticky;top:0;z-index:1200;line-height:1.2;-webkit-user-select:none;user-select:none}.env-banner strong{font-weight:600}.env-banner__details{opacity:.85;font-weight:400}.env-banner--emu{background:linear-gradient(90deg,#0d4e8c,#1171c2);color:#fff}.env-banner--mixed{background:linear-gradient(90deg,#8c4e0d,#c28111);color:#fff}.env-banner--prod{background:linear-gradient(90deg,#165a17,#1c7d1e);color:#fff}@media (max-width: 640px){.env-banner{font-size:11px;padding:4px 8px}.env-banner__details{display:none}}.lang-switcher{display:flex;align-items:center;gap:4px;font-size:.75rem}.lang-switcher button{background:none;border:none;padding:2px 4px;cursor:pointer;color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.lang-switcher button.active{color:var(--color-text-primary);text-decoration:underline}.lang-switcher button:hover{color:var(--color-text-primary)}.lang-switcher .sep{opacity:.5}.top-lang-bar{position:relative;z-index:100;display:flex;justify-content:center;align-items:center;padding:6px 8px;background:var(--color-bg-tertiary, #f7f8fa);border-bottom:1px solid rgba(0,0,0,.06)}.top-lang-bar .lang-switcher{gap:8px;font-size:.85rem}.top-lang-bar .lang-switcher .flag{margin-right:4px}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1050;overflow-y:auto;padding:var(--spacing-xl);box-sizing:border-box}.modal-base-content{background:var(--color-bg-secondary);color:var(--color-text-primary);border-radius:var(--border-radius-md);border:1px solid var(--color-border-primary);position:relative;overflow:hidden;padding:var(--spacing-xl);max-height:90vh;display:flex;flex-direction:column;box-sizing:border-box}.modal-content{width:100%;max-width:clamp(320px,90vw,960px)}.modal-header{display:flex;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--color-border-primary);padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-lg);position:relative}.modal-header-row{display:flex;justify-content:space-between;align-items:center;width:100%}.modal-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);display:flex;align-items:center;gap:var(--spacing-sm)}.modal-subtitle{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-top:.25rem}.modal-close-btn{background:none;border:none;color:var(--color-text-secondary);font-size:1.8rem;cursor:pointer;padding:0;line-height:1;transition:color .2s}.modal-close-btn:hover{color:var(--color-text-primary)}.modal-body{display:flex;flex-direction:column;overflow-y:auto;flex:1 1 auto}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border-primary);margin-top:var(--spacing-lg)}.modal-content.modal-content--plan-detail{max-width:1100px}.modal-content.modal-content--day-detail{max-width:550px}.modal-content.modal-content--workout-detail{max-width:960px}.modal-content.modal-content--athlete-profile{max-width:1000px}.modal-content.modal-content--athlete-profile-expanded{width:clamp(640px,70vw,1180px);max-width:1180px}.modal-content--athlete-profile-expanded .modal-body{flex:initial;overflow-y:visible}.modal-content--athlete-profile-expanded{padding:var(--spacing-lg) var(--spacing-xl)}.modal-content--athlete-profile-expanded .modal-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm)}.modal-content--athlete-profile-expanded .athlete-profile-horizontal-bands{gap:var(--spacing-lg)}.modal-content--athlete-profile-expanded .athlete-profile-band{gap:var(--spacing-sm)}.modal-content--athlete-profile-expanded .profile-fields-auto-grid--wide,.modal-content--athlete-profile-expanded .profile-sections{gap:var(--spacing-md) var(--spacing-lg)}.modal-content--athlete-profile-expanded .profile-fields-grid{gap:var(--spacing-xs) var(--spacing-md)}.modal-content--athlete-profile-expanded .profile-section__title{margin-bottom:var(--spacing-xs)}.modal-content--athlete-profile-expanded .profile-field__label{font-size:.8rem}.modal-content--athlete-profile-expanded .profile-field__value{font-size:.85rem}.modal-content--athlete-profile-expanded .modal-body{max-height:82vh;overflow-y:auto}.modal-content.modal-content--profile{max-width:900px}.modal-content.modal-content--form{max-width:500px}.modal-content.feedback-modal-content{max-width:900px}@media (max-width: 640px){.modal-base-content{padding:var(--spacing-lg)}.modal-header{margin-bottom:var(--spacing-md)}.modal-footer{flex-wrap:wrap}}.modal-grid{display:grid;gap:var(--spacing-lg) var(--spacing-xl)}.modal-grid--cols-2{grid-template-columns:1fr}@media (min-width: 640px){.modal-grid--cols-2{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.modal-grid--cols-3-lg{grid-template-columns:repeat(3,1fr)}}.modal-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.modal-sections-stack{display:flex;flex-direction:column;gap:var(--spacing-xl)}.profile-fields-auto-grid{display:grid;gap:var(--spacing-lg) var(--spacing-xl);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:start}.profile-fields-auto-grid.profile-fields-auto-grid--condensed{gap:var(--spacing-md) var(--spacing-lg)}.modal-content--athlete-profile-condensed .modal-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm)}.modal-content--athlete-profile-condensed .modal-sections-stack{gap:var(--spacing-lg)}.modal-content--athlete-profile-condensed .modal-section{gap:var(--spacing-sm)}.modal-content--athlete-profile-condensed .profile-field__label{font-size:.85rem;opacity:.85}.modal-content--athlete-profile-condensed .profile-field__value{font-size:.9rem}.modal-content--athlete-profile-condensed .profile-section{margin-top:var(--spacing-sm)}.modal-content--athlete-profile-condensed .profile-fields-grid{gap:var(--spacing-sm) var(--spacing-lg)}.modal-content--athlete-profile-condensed .profile-section__title{margin-bottom:var(--spacing-xs)}.modal-content.modal-content--edit-day-expanded{width:clamp(520px,60vw,980px)}.modal-content--edit-day-expanded .modal-body{max-height:none;overflow-y:visible}.edit-day-stack-condensed{gap:var(--spacing-lg)}.modal-content--edit-day-expanded .modal-grid{gap:var(--spacing-md) var(--spacing-xl)}.modal-content--edit-day-expanded .modal-section.form-group{gap:var(--spacing-xs)}.modal-content--edit-day-expanded .form-input,.modal-content--edit-day-expanded .form-textarea{font-size:.9rem}.modal-content.modal-content--edit-day-expanded{padding:var(--spacing-lg) var(--spacing-xl) var(--spacing-md)}.athlete-profile-horizontal-bands{display:flex;flex-direction:column}.athlete-profile-band{display:flex;flex-direction:column;gap:var(--spacing-md)}@media (min-width: 1100px){.athlete-profile-horizontal-bands{gap:var(--spacing-xl)}}.profile-fields-auto-grid--wide{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.athlete-profile-train-grid .profile-sections{display:grid;gap:var(--spacing-lg) var(--spacing-xl);grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.athlete-profile-train-grid .profile-section{margin:0}.athlete-profile-train-grid .profile-fields-grid{gap:var(--spacing-sm) var(--spacing-md)}.heading-with-icon svg{flex-shrink:0}.modal-scroll-block{max-height:40vh;overflow:auto;padding-right:4px}@media (max-width:480px){.modal-footer{justify-content:stretch}.modal-footer>*{flex:1 1 auto}}.icon-status,.status-icon,.upload-icon{transition:color .2s ease,transform .2s ease,filter .25s ease}.icon-status--success,.status-icon.completed{color:var(--color-semantic-success)}.icon-status--danger,.status-icon.not-completed{color:var(--color-semantic-danger)}.icon-status--warning,.status-icon.pending{color:var(--color-semantic-warning)}.upload-icon{color:var(--color-accent-primary);cursor:pointer;filter:drop-shadow(0 0 0 rgba(0,0,0,0))}.upload-icon:hover,.upload-icon:focus-visible{color:var(--color-accent-hover);transform:translateY(-2px) scale(1.12);filter:drop-shadow(0 4px 8px rgba(56,189,248,.35))}.upload-icon:active{transform:translateY(0) scale(1.02);filter:drop-shadow(0 2px 4px rgba(56,189,248,.25))}.upload-icon:focus-visible{outline:2px solid var(--color-accent-hover);outline-offset:2px;border-radius:6px}.week-navigation-wrapper{display:flex;justify-content:center;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border-subtle);margin-bottom:var(--spacing-lg)}.week-navigation{display:flex;align-items:center;gap:var(--spacing-md)}.week-range{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);white-space:nowrap}.feeling-selector{display:flex;justify-content:space-around;padding:.5rem 0}.planned-activity-details{background:none;padding:0;border-radius:0}.planned-activity-details p{margin:.5rem 0}.logged-workout-details{text-align:left;background:none;padding:0}.logged-workout-details h4{color:var(--color-semantic-success);margin-bottom:1.5rem}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;text-align:left}.detail-item{display:flex;align-items:center;gap:.75rem}.detail-item .icon{font-size:1.5rem;color:#a0a0b8}.detail-item strong{display:block;font-size:.8em;color:#a0a0b8}.details-grid--single{grid-template-columns:1fr!important}.details-grid--spread{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.notes-section--wide{width:100%;display:flex;gap:var(--spacing-md)}.notes-section--wide .icon{font-size:1.25rem;margin-top:2px}.notes-section{margin-top:1.5rem;text-align:left;background-color:var(--color-bg-tertiary);padding:1rem;border-radius:6px}.notes-section--ds{background-color:var(--color-bg-secondary);border:1px solid var(--color-border-primary)}.workout-detail-layout{display:flex;flex-direction:row;gap:var(--spacing-lg);align-items:flex-start;flex-wrap:wrap}.workout-detail-layout .planned-activity-details,.workout-detail-layout .logged-section{flex:1 1 360px;min-width:320px}.workout-detail-layout{padding:0}.planned-activity-details+.logged-workout-details{margin-top:var(--spacing-xl);position:relative}.planned-activity-details+.logged-workout-details:before{content:"";position:absolute;top:-16px;left:0;right:0;height:1px;background:var(--color-border-primary);opacity:.4}.divider-vertical{width:1px;background:linear-gradient(to bottom,transparent,var(--color-border-primary),transparent);align-self:stretch}.logged-status-heading{margin-top:var(--spacing-lg)!important}.comparison-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-sm) var(--spacing-md);margin-top:var(--spacing-md);width:100%}.comparison-header{display:contents}.comparison-header>div{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:var(--font-size-sm);padding-bottom:4px;border-bottom:1px solid var(--color-border-primary)}.comparison-row{display:contents}.comparison-row>div{padding:4px 0;font-size:var(--font-size-sm);border-bottom:1px solid rgba(255,255,255,.05);display:flex;align-items:center;gap:6px}.comparison-row .label{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.athlete-profile-layout{display:flex;flex-wrap:wrap;gap:var(--spacing-xl)}.athlete-profile-col{flex:1 1 420px;min-width:320px}.athlete-core-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.athlete-core-table td{padding:6px 0;vertical-align:top}.athlete-core-table td:first-child{color:var(--color-text-secondary);width:140px}.notes-section p{margin-top:.5rem;font-style:italic;color:#c4c4cf}.log-confirmation{margin-top:var(--spacing-lg)}.progress-summary-section{border:1px solid var(--color-border-primary);background-color:#ffffff05;padding:.85rem 1rem;border-radius:8px;transition:border-color .2s ease,background-color .25s ease}.progress-summary-section--warning{border-color:var(--color-semantic-warning);background-color:color-mix(in srgb,var(--color-semantic-warning) 12%,transparent)}.progress-summary-section--success{border-color:var(--color-semantic-success);background-color:color-mix(in srgb,var(--color-semantic-success) 12%,transparent)}.progress-summary-title--warning{color:var(--color-semantic-warning)}.progress-summary-title--success{color:var(--color-semantic-success)}.icon-feeling--inactive{color:#6c757d;opacity:.55;transition:color .2s ease,opacity .2s ease,transform .2s ease}.icon-feeling--inactive:hover{opacity:.9;transform:translateY(-2px)}.icon-feeling.icon-status{filter:drop-shadow(0 0 4px rgba(255,255,255,.15))}.plan-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--spacing-sm);padding:var(--spacing-md);background-color:var(--color-bg-secondary);border-radius:var(--border-radius-md);border:1px solid var(--color-border-primary);min-height:200px;width:100%;max-width:none;box-sizing:border-box;font-weight:var(--font-weight-regular)}.plan-calendar:where(.full-bleed){margin-left:calc(-1 * var(--spacing-md));margin-right:calc(-1 * var(--spacing-md));width:calc(100% + (var(--spacing-md) * 2))}.internal-week-navigation{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.calendar-status-bar{grid-column:1 / -1;font-size:var(--font-size-xs);padding:.45rem .75rem;border-radius:var(--border-radius-sm);margin-bottom:.35rem;font-weight:500;display:flex;align-items:center;gap:.45rem;line-height:1.15}.calendar-status-bar--info{background:#1e293b59;color:var(--color-accent-primary, #38BDF8)}.calendar-status-bar--warning{background:#a365002e;color:#ffcd7a}.calendar-status-bar--success{background:#1b7f452e;color:#86e1ae}.calendar-status-bar--error{background:#b3261e2e;color:#ff9f96}.review-line{display:flex;align-items:center;gap:var(--spacing-xs);margin-top:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary);padding:.4rem .2rem .2rem;border-top:1px dashed var(--color-border-primary)}.review-line__icon{color:var(--color-accent-primary);opacity:.9}.review-line__text{font-weight:500}.internal-week-navigation__label{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-align:center}.day-card{position:relative;background-color:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-sm);display:flex;flex-direction:column;padding:var(--spacing-sm) var(--spacing-sm) calc(var(--spacing-sm) + 2px);transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease;cursor:pointer;z-index:0}.calendar--locked{position:relative}.calendar--locked .day-card{opacity:.55}.calendar--locked .day-card-top-icons,.calendar--locked .day-card-activity-list{pointer-events:none}.calendar--locked .rest-day-center{pointer-events:auto}.calendar-locked-overlay{position:absolute;top:.4rem;right:.4rem;background:#0000008c;color:#fff;padding:.25rem .6rem;border-radius:var(--border-radius-sm);font-size:.7rem;pointer-events:none;z-index:5;padding:var(--spacing-sm);min-height:96px;color:var(--color-text-primary);transition:transform .2s ease-in-out,border-color .2s}.day-card:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm, 0 2px 6px rgba(0,0,0,.12))}.day-card.completed{background-color:#2ecc711a;border-color:var(--color-semantic-success)}.day-card.not-completed{background-color:#e74c3c1a;border-color:var(--color-semantic-danger);opacity:.8}.day-card-top-icons{position:absolute;top:6px;left:6px;right:6px;display:flex;justify-content:space-between;align-items:flex-start;z-index:2;pointer-events:none;gap:var(--spacing-xs)}.day-card-top-left,.day-card-top-right{display:flex;align-items:center;gap:4px}.day-card-top-right{justify-content:flex-end}.day-card-top-icons .upload-icon,.day-card-top-icons .edit-icon{pointer-events:auto}.status-icon,.upload-icon,.edit-icon{font-size:20px}.status-icon.pending{color:var(--color-semantic-warning)}.upload-icon{color:var(--color-accent-primary);transition:transform .18s ease,color .18s ease;border-radius:50%;outline:none;position:relative}.upload-icon:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.4);width:40px;height:40px;border-radius:50%;background:radial-gradient(circle at center,rgba(var(--color-accent-rgb,0,132,255),.35) 0%,rgba(var(--color-accent-rgb,0,132,255),.15) 45%,transparent 70%);opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;filter:blur(1px)}.upload-icon:hover:after,.upload-icon:focus-visible:after{opacity:1;transform:translate(-50%,-50%) scale(1)}.upload-icon:hover,.upload-icon:focus-visible{transform:translateY(-2px) scale(1.08)}.upload-icon:active{transform:translateY(0) scale(.96)}.edit-icon{color:#fbbf24;transition:transform .18s ease,color .18s ease;border-radius:50%;outline:none;position:relative;cursor:pointer}.edit-icon:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.4);width:40px;height:40px;border-radius:50%;background:radial-gradient(circle at center,rgba(251,191,36,.35) 0%,rgba(251,191,36,.15) 45%,transparent 70%);opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;filter:blur(1px)}.edit-icon:hover:after,.edit-icon:focus-visible:after{opacity:1;transform:translate(-50%,-50%) scale(1)}.edit-icon:hover,.edit-icon:focus-visible{transform:translateY(-2px) scale(1.08);color:#f59e0b}.edit-icon:active{transform:translateY(0) scale(.96)}.day-card-header{position:relative;display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-size:var(--font-size-xs);gap:var(--spacing-xs);padding-top:var(--spacing-sm)}.day-card-header-center{position:relative;display:flex;justify-content:center;align-items:center;flex-grow:1}.day-background-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;z-index:0;pointer-events:none}.day-card-header-left{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding-bottom:2px}.day-card-header-left div:first-child{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);line-height:1}.day-card-header-left div:last-child{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1}.day-card-body{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm);color:var(--color-text-secondary);font-size:var(--font-size-xs)}.day-card-activity-item{display:flex;align-items:center;gap:var(--spacing-xs)}.day-card-activity-item .icon{color:var(--color-accent-primary)}.day-card-activity-item .value{font-weight:300;color:var(--color-text-primary);font-size:var(--font-size-sm);white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.rest-day-container{display:flex;justify-content:center;align-items:center;height:100%;color:var(--color-text-secondary)}.rest-day-center{display:flex;justify-content:center;align-items:center;height:100%;color:var(--color-text-secondary);cursor:pointer;position:relative;z-index:1}.rest-day-center svg{transition:transform .28s ease,filter .32s ease;will-change:transform,filter}.rest-day-center:hover svg,.rest-day-center:focus-visible svg{transform:scale(1.14) rotate(-4deg);filter:drop-shadow(0 4px 10px rgba(0,0,0,.28));outline:none}.upload-icon{transition:color .22s ease,transform .22s ease,filter .3s ease}.upload-icon:hover{will-change:transform,filter}.day-card-activity-list{display:flex;flex-direction:column;gap:4px}.intensity-zones-inline{display:flex;flex-wrap:wrap;gap:4px}.intensity-zones-inline .zone-chip{display:inline-flex;align-items:center;justify-content:center;padding:1px 6px 2px;border-radius:14px;font-size:10px;font-weight:600;letter-spacing:.4px;min-width:26px;line-height:1.1;text-align:center}.intensity-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 4px;border-radius:999px;font-size:11px;font-weight:var(--font-weight-bold);line-height:1;border:1px solid rgba(255,255,255,.15)}.intensity-z1{background:linear-gradient(135deg,#0d3b66,#185fa3);color:#e0f2ff;border-color:#185fa3}.intensity-z2{background:linear-gradient(135deg,#065f46,#047857);color:#e6fff6;border-color:#059669}.intensity-z3{background:linear-gradient(135deg,#b45309,#f59e0b);color:#fff8dc;border-color:#d97706}.intensity-z4{background:linear-gradient(135deg,#c2410c,#ea580c);color:#fff3e6;border-color:#ea580c}.intensity-z5{background:linear-gradient(135deg,#991b1b,#dc2626);color:#ffe5e5;border-color:#dc2626}.week-summary{border:1px solid var(--color-border-primary);padding:4px 8px;border-radius:6px;background:var(--color-bg-primary)}.week-summary span{background:var(--color-bg-secondary);padding:2px 6px;border-radius:4px}.plan-calendar .status-icon.not-completed{color:var(--color-semantic-danger)}@media (max-width: 1024px){.plan-calendar{grid-template-columns:repeat(5,1fr)}}@media (max-width: 768px){.plan-calendar{grid-template-columns:repeat(3,1fr)}}@media (max-width: 480px){.plan-calendar{grid-template-columns:1fr}}.skeleton{background:#2a2a3e;background:linear-gradient(110deg,#2a2a3e 8%,#3a3a4e 18%,#2a2a3e 33%);border-radius:5px;background-size:200% 100%;animation:1.5s shine linear infinite}.skeleton-text{width:100%;height:1rem;margin-bottom:.5rem;border-radius:4px}.skeleton-text:last-child{margin-bottom:0}.skeleton-title{width:50%;height:1.5rem;margin-bottom:1rem}@keyframes shine{to{background-position-x:-200%}}.status-tag{font-weight:300;font-size:var(--font-size-sm);color:var(--color-text-primary)}.status-tag.status-pending{color:var(--color-semantic-warning)}.status-tag.status-active{color:var(--color-semantic-success)}.status-tag.status-ready{color:var(--color-accent-primary)}.action-buttons-container{margin-top:1.25rem;padding:0;background:transparent;border:none;border-radius:0;display:flex;gap:.65rem;flex-wrap:wrap;align-items:center}.action-buttons-container button:not(.icon-btn){min-width:110px}@media (max-width: 680px){.action-buttons-container{flex-direction:column;align-items:stretch}.action-buttons-container button{width:100%}}.review-actions-block{margin-top:1.75rem}.icon-btn,.action-buttons-container .icon-btn{width:40px;height:40px;padding:4px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:9px;color:var(--color-text-secondary);cursor:pointer;transition:color .22s ease,transform .22s ease,filter .28s ease,background .25s ease,border-color .25s ease;font-size:22px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.icon-btn:hover,.icon-btn:focus-visible{transform:scale(1.08) translateY(-2px);filter:drop-shadow(0 4px 10px rgba(0,0,0,.25));outline:none;background:#ffffff0f;border-color:#ffffff2e}.icon-btn:active{transform:scale(.94);filter:none}.icon-btn:disabled{opacity:.4;cursor:not-allowed;filter:none}.icon-btn-group{display:flex;gap:.35rem;flex-wrap:wrap}.text-btn-link{background:none;border:none;padding:0;color:var(--color-accent-primary, #4da3ff);cursor:pointer;font:inherit;text-decoration:underline}.text-btn-link:hover{opacity:.85}.review-actions-block .icon-btn{min-width:40px}.athlete-meta-line{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-sm);margin:.25rem 0 .5rem;font-weight:400;color:var(--color-text-secondary)}.athlete-meta-label{font-weight:500;color:var(--color-text-primary)}.athlete-name-btn{background:none;border:none;padding:0 2px;font:inherit;color:var(--color-accent-primary);cursor:pointer;line-height:1.1;display:inline-flex;align-items:center}.athlete-name-btn:hover{text-decoration:underline}.review-actions-block.review-actions-block--aligned{justify-content:center;width:100%;background:#6c757d14;border:1px solid rgba(108,117,125,.18);border-radius:12px;padding:.75rem 1rem;margin-top:2rem}.review-actions-block .actions-spacer{display:none}.back-icon-btn{margin-left:.9rem}.icon-btn.icon-profile{color:#fff}.icon-btn.icon-review{color:var(--color-semantic-warning, #f1c40f)}.icon-btn.icon-progress{color:var(--color-accent-primary, #4da3ff)}.icon-btn.icon-resend{color:var(--color-accent-secondary, #8e71ff)}.icon-btn.icon-cancel-invite{color:var(--color-semantic-danger, #e74c3c)}.icon-btn.icon-approve{color:var(--color-semantic-success, #2ecc71)}.icon-btn.icon-reject{color:var(--color-semantic-danger, #e74c3c)}.icon-btn.icon-edit{color:var(--color-accent-primary, #4da3ff)}.icon-btn.icon-save-approve{color:var(--color-semantic-success, #2ecc71)}.icon-btn.icon-cancel{color:var(--color-text-secondary, #a5a9b3)}.icon-btn.icon-add{color:var(--color-accent-primary, #4da3ff)}.icon-btn.icon-back{color:var(--color-text-secondary, #a5a9b3)}.icon-btn.icon-review:hover{color:#ffce3a}.icon-btn.icon-progress:hover{color:#72b7ff}.icon-btn.icon-resend:hover{color:#a486ff}.icon-btn.icon-cancel-invite:hover,.icon-btn.icon-reject:hover{color:#ff6b55}.icon-btn.icon-approve:hover,.icon-btn.icon-save-approve:hover{color:#44d684}.icon-btn.icon-edit:hover{color:#66b8ff}.icon-btn.icon-cancel:hover{color:var(--color-text-primary)}.icon-btn.icon-add:hover{color:#66b8ff}.icon-btn.icon-back:hover{color:var(--color-accent-primary, #4da3ff)}.nav-icon-wrapper{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.25em;height:1.25em;margin-right:.5rem}.nav-icon-badge{position:absolute;top:-2px;right:-2px;width:8px;height:8px;border-radius:50%;background:var(--color-semantic-danger, #e74c3c);box-shadow:0 0 0 2px #0009}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.profile-fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--spacing-lg) var(--spacing-xl)}.profile-field{display:flex;flex-direction:column;gap:6px;min-width:0}.profile-field__label{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);display:flex;align-items:center;gap:6px}.profile-field__value{font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);color:var(--color-text-primary);word-break:break-word}.main-data-grid{display:grid;gap:var(--spacing-lg) var(--spacing-xl);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-top:var(--spacing-sm)}.main-data-grid .full-span{grid-column:1 / -1}@media (max-width: 520px){.main-data-grid{grid-template-columns:1fr 1fr}.main-data-grid .full-span{grid-column:1 / -1}}.training-preferences-summary{display:grid;gap:var(--spacing-sm)}.pref-item{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-xs) 0}.pref-item strong{color:var(--color-text-primary);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.pref-item:not(:has(strong)){color:var(--color-text-secondary);font-size:var(--font-size-sm)}.no-data{color:var(--color-text-secondary);font-style:italic;margin:0}.profile-sections{display:flex;flex-direction:column;gap:var(--spacing-xl)}.profile-section__title{margin:0 0 var(--spacing-sm);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.profile-section .profile-fields-grid{margin-top:var(--spacing-sm)}.form-row{display:flex;gap:var(--spacing-lg)}.form-row .form-group{flex:1}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.form-input{width:100%;padding:var(--spacing-md);border-radius:var(--border-radius-md);border:1px solid var(--color-border-primary);background-color:var(--color-bg-primary);color:var(--color-text-primary);font-size:var(--font-size-md)}.feeling-selector{display:flex;justify-content:space-around;padding:var(--spacing-md) 0}.onboarding-container{display:flex;flex-direction:column;width:100%;max-width:960px;margin:0 auto;padding:var(--spacing-lg) var(--spacing-md) var(--spacing-xl);gap:var(--spacing-lg)}.onboarding-header{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-md);padding:clamp(1rem,2vw,1.5rem) clamp(1rem,2vw,1.75rem);display:flex;flex-direction:column;gap:var(--spacing-sm);position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.onboarding-header h2,.onboarding-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.onboarding-header p{margin:0;color:var(--color-text-secondary);line-height:1.4;font-size:var(--font-size-sm)}.onboarding-header .header-hint{font-style:italic;font-size:var(--font-size-xs);opacity:.85}.chat-shell{display:flex;flex-direction:column;gap:var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-md);padding:var(--spacing-md) var(--spacing-md) var(--spacing-lg);min-height:420px;max-height:70vh}.chat-area{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-sm);padding-right:2px;scroll-behavior:smooth}.chat-area::-webkit-scrollbar{width:8px}.chat-area::-webkit-scrollbar-track{background:transparent}.chat-area::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.chat-area::-webkit-scrollbar-thumb:hover{background:#fff3}.message-row{display:flex;width:100%}.message-row.user{justify-content:flex-end}.message-row.assistant{justify-content:flex-start}.message-row-inner{display:flex;gap:var(--spacing-sm);max-width:100%;align-items:flex-start}.message-row.user .message-row-inner{flex-direction:row-reverse}.chat-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:600;color:var(--color-accent-hover);flex-shrink:0;box-shadow:0 2px 4px #00000040}.chat-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;transform:none}.chat-avatar.assistant{background:linear-gradient(145deg,#38bdf826,#7dd3fc1f)}.chat-avatar.user{background:#ffffff14;color:var(--color-text-primary)}.message-bubble{max-width:78%;padding:.75rem 1rem;border-radius:14px;font-size:var(--font-size-sm);line-height:1.45;background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);position:relative;white-space:pre-wrap;word-break:break-word}.message-bubble--enter{animation:chatEnter .42s ease forwards;opacity:0;transform:translateY(4px) scale(.98)}@keyframes chatEnter{to{opacity:1;transform:translateY(0) scale(1)}}.message-row.user .message-bubble{background:linear-gradient(135deg,var(--color-accent-primary) 0%,var(--color-accent-hover) 90%);color:#0f1724;font-weight:500;border-color:var(--color-accent-hover)}.message-row.assistant .message-bubble{background:#ffffff0a}.message-bubble.streaming:after{content:"";display:inline-block;width:8px;height:16px;background:var(--color-text-secondary);margin-left:4px;border-radius:2px;animation:cursorBlink 1s steps(1) infinite;vertical-align:bottom}@keyframes cursorBlink{50%{opacity:0}}.typing-indicator-bubble{display:inline-flex;gap:6px}.typing-indicator-bubble span{width:8px;height:8px;background:var(--color-text-secondary);border-radius:50%;display:block;animation:chatPulse 1.2s infinite ease-in-out}.typing-indicator-bubble span:nth-child(2){animation-delay:.2s}.typing-indicator-bubble span:nth-child(3){animation-delay:.4s}@keyframes chatPulse{0%,80%,to{transform:scale(.4);opacity:.4}40%{transform:scale(1);opacity:1}}.chat-input-bar{display:flex;gap:var(--spacing-sm);align-items:center;margin-top:var(--spacing-sm)}.chat-input-bar input[type=text]{flex:1;background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-sm);padding:.65rem .85rem;font-size:var(--font-size-sm);color:var(--color-text-primary)}.chat-input-bar input:disabled{opacity:.5;cursor:not-allowed}.chat-input-bar button{display:flex;align-items:center;justify-content:center;gap:4px}.chat-input-bar .btn-continue{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);color:var(--color-text-secondary)}.chat-input-bar .btn-continue:hover{color:var(--color-text-primary);border-color:var(--color-accent-hover)}@media (max-width: 680px){.chat-avatar{width:30px;height:30px;font-size:.7rem}.message-bubble{padding:.6rem .75rem}}.chat-status-panel{text-align:center;font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-top:var(--spacing-sm)}.reeval-summary-box{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-md);padding:var(--spacing-lg) var(--spacing-md);text-align:center}.reeval-summary-box h4{margin:0 0 var(--spacing-sm);font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--color-accent-hover)}.reeval-summary-box p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.exit-actions{display:flex;justify-content:center}.exit-actions .btn{min-width:220px}@media (max-width: 680px){.message-bubble{max-width:90%;font-size:.78rem}.onboarding-header{position:static}.chat-shell{max-height:none}}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.3rem;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + .85rem);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.5rem;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media (max-width: 400px),(max-height: 550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;margin:.4rem;padding-right:.2rem;padding-left:.2rem;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.period-controls{display:flex;justify-content:center;gap:var(--spacing-lg);padding:var(--spacing-md);border-bottom:1px solid var(--color-border-subtle);flex-wrap:wrap}.date-picker-group{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-secondary);min-width:180px}.date-picker-group label{white-space:nowrap;min-width:45px}.date-picker-group .form-select{background-color:var(--color-bg-primary);border:1px solid var(--color-border-primary);min-width:180px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:clamp(var(--spacing-lg),3vw,calc(var(--spacing-2xl, 3rem)));padding:var(--spacing-md) var(--spacing-md) var(--spacing-lg);position:relative;z-index:1}.layout-grid-main-sidebar{display:grid;grid-template-columns:1fr auto;gap:var(--spacing-lg);align-items:start}.progress-dual-columns{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);align-items:start}.progress-dual-columns .progress-col{min-width:0}@media (max-width: 992px){.progress-dual-columns{grid-template-columns:1fr}}@media (max-width: 992px){.layout-grid-main-sidebar{grid-template-columns:1fr}}.custom-datepicker-input{display:flex;align-items:center;border:1px solid var(--color-border-primary);padding:.5rem;border-radius:var(--border-radius-md);background-color:var(--color-bg-primary)}.custom-datepicker-input input{border:none;width:100%;background-color:transparent;color:var(--color-text-primary);cursor:pointer}.custom-datepicker-input svg{color:var(--color-text-secondary)}.training-preferences-modal{max-width:600px;margin:0 auto}.preference-section{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border-primary)}.preference-section:last-of-type{border-bottom:none}.preference-section h3{display:flex;align-items:center;gap:var(--spacing-xs);margin:0 0 var(--spacing-sm) 0;color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.preference-description{margin:0 0 var(--spacing-md) 0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.days-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.day-button{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm);border:2px solid var(--color-border-primary);border-radius:var(--border-radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);cursor:pointer;transition:all .2s ease;min-height:60px;justify-content:center}.day-button:hover{border-color:var(--color-accent-primary);transform:translateY(-1px)}.day-button.preferred{background:var(--color-accent-primary);border-color:var(--color-accent-primary);color:#fff}.day-button.restricted{background:var(--color-semantic-error);border-color:var(--color-semantic-error);color:#fff}.day-short{font-weight:var(--font-weight-bold);font-size:var(--font-size-sm)}.day-full{font-size:var(--font-size-xs);opacity:.8;margin-top:2px}.form-row{margin-bottom:var(--spacing-md)}.form-row label{display:block;margin-bottom:var(--spacing-xs);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.form-row select,.form-row input[type=number],.form-row textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-sm);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:var(--font-size-sm);transition:border-color .2s ease}.form-row select:focus,.form-row input:focus,.form-row textarea:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 2px rgba(var(--color-accent-rgb),.2)}.form-row textarea{resize:vertical;min-height:80px}.preference-summary{background:var(--color-bg-secondary);padding:var(--spacing-md);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg)}.preference-summary h4{margin:0 0 var(--spacing-sm) 0;color:var(--color-text-primary);font-size:var(--font-size-md)}.preference-summary p{margin:var(--spacing-xs) 0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.error-message{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:rgba(var(--color-semantic-error-rgb),.1);border:1px solid var(--color-semantic-error);border-radius:var(--border-radius-sm);color:var(--color-semantic-error);font-size:var(--font-size-sm);margin-bottom:var(--spacing-lg)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-primary)}.modal-actions .btn{display:flex;align-items:center;gap:var(--spacing-xs)}@media (max-width: 768px){.days-grid{grid-template-columns:repeat(2,1fr)}.day-button{min-height:50px}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%;justify-content:center}}:root{--sidebar-width: 250px;--header-height: 70px}.athlete-dashboard-layout{display:flex;min-height:100vh;color:#f0f0f0;font-family:var(--font-family-sans)}.athlete-sidebar{width:var(--sidebar-width);background-color:var(--color-bg-secondary);border-right:1px solid #40405c;display:flex;flex-direction:column;padding:1.5rem 0;transition:transform .3s ease-in-out;flex-shrink:0;z-index:1001}.sidebar-header{padding:0 1.5rem 1.5rem;border-bottom:1px solid #40405c;text-align:center}.sidebar-header h3{margin:0;color:#8ab4f8}.sidebar-nav{flex-grow:1;margin-top:1rem}.nav-link{display:flex;align-items:center;gap:1rem;padding:.85rem 1.5rem;color:#a0a0b8;text-decoration:none;transition:background-color .2s,color .2s;border-left:4px solid transparent;white-space:nowrap;width:100%}button.nav-link{appearance:none;-webkit-appearance:none;border:none;background:transparent;color:inherit;font:inherit;width:100%;text-align:left;cursor:pointer}.nav-link:hover,button.nav-link:hover{background-color:#8ab4f81a;color:#f0f0f0}.nav-link.active{background-color:#0d6efd26;color:#fff;border-left-color:#0d6efd;font-weight:700}.sidebar-footer{padding:1rem 1.5rem;margin-top:auto;border-top:1px solid #40405c;display:flex;justify-content:center}.sidebar-footer .btn{width:100%;justify-content:center}.athlete-main-content{flex:1;display:flex;flex-direction:column;overflow-y:auto}main.content{flex:1;display:flex;flex-direction:column;min-width:0;overflow-y:auto}.athlete-header{height:var(--header-height);display:flex;align-items:center;padding:0 1.5rem;border-bottom:1px solid #40405c;position:sticky;top:0;z-index:1000}.menu-toggle{display:none;background:none;border:none;color:#f0f0f0;font-size:1.5rem;cursor:pointer;margin-right:1.5rem}.welcome-message h2{margin:0;font-size:1.2rem}.content-wrapper{padding:.7rem}.sidebar-overlay{display:none}@media (max-width: 992px){.menu-toggle{display:block}.athlete-sidebar{position:fixed;left:0;top:0;height:100%;transform:translate(-100%)}.athlete-dashboard-layout.sidebar-open .athlete-sidebar{transform:translate(0);box-shadow:5px 0 15px #0003}.athlete-dashboard-layout.sidebar-open .sidebar-overlay{display:block;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1000}}.loading-spinner{text-align:center;padding:3rem;font-size:1.2rem}.side-by-side-cards{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-top:var(--spacing-lg)}@media (max-width: 768px){.side-by-side-cards{grid-template-columns:1fr}}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:clamp(var(--spacing-lg),3vw,calc(var(--spacing-2xl, 3rem)));align-items:stretch;padding:var(--spacing-md) var(--spacing-md) var(--spacing-lg)}@media (max-width: 1024px){.kpi-grid{gap:clamp(var(--spacing-md),3vw,var(--spacing-xl))}.metric-indicator{padding:var(--spacing-sm) var(--spacing-md)}.metric-indicator__value{font-size:1.5rem}}@media (max-width: 640px){.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:clamp(var(--spacing-md),4vw,var(--spacing-xl))}.metric-indicator{padding:var(--spacing-sm)}.metric-indicator__icon{font-size:1.35rem;margin-bottom:4px}.metric-indicator__value{font-size:1.3rem}.metric-indicator__label{font-size:.55rem}}.react-datepicker-popper,.react-datepicker,.react-datepicker__month-container{z-index:99999!important}body .react-datepicker-popper[data-placement]{position:absolute!important}body .react-datepicker{box-shadow:0 8px 28px #00000047;border:1px solid var(--color-border-primary)}body .react-datepicker__triangle{z-index:100000}.period-controls{display:grid;grid-template-columns:1fr;gap:var(--spacing-md);padding:var(--spacing-md);border-bottom:1px solid var(--color-border-subtle)}.period-controls>.date-picker-group:first-child{grid-column:1 / -1}.period-controls-divider{grid-column:1 / -1}.period-controls-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap;align-items:center}.period-controls-row .date-picker-group{flex:1;min-width:150px}.period-controls-divider{display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm) 0;color:var(--color-text-secondary);font-size:.9rem;font-weight:500;position:relative}.period-controls-divider:before,.period-controls-divider:after{content:"";flex:1;height:1px;background:var(--color-border-subtle);margin:0 var(--spacing-sm)}@media (max-width: 768px){.period-controls-row{flex-direction:column;gap:var(--spacing-sm)}.period-controls-row .date-picker-group{width:100%}}.confirm-dialog{background:var(--color-bg-secondary);color:var(--color-text-primary);border-radius:var(--border-radius-md);padding:2rem 2.5rem;box-shadow:0 4px 32px #00000040;min-width:320px;max-width:90vw;text-align:center}.confirm-dialog h4{margin-top:0;margin-bottom:1rem;color:#8ab4f8}.confirm-dialog-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.confirm-dialog .btn{min-width:100px}.notifications-page{padding:0}.notifications-header-actions{display:flex;gap:.5rem;align-items:center}.notifications-header-actions .btn{display:flex;align-items:center;gap:.5rem;font-size:.875rem;padding:.5rem 1rem}.notifications-empty{text-align:center;padding:3rem 1rem;color:var(--color-text-secondary, #6b7280)}.notifications-empty-icon{margin-bottom:1rem;color:var(--color-semantic-success, #10b981)}.notifications-empty h3{margin:0 0 .5rem;color:var(--color-text-primary, #1f2937);font-size:1.25rem;font-weight:600}.notifications-empty p{margin:0;font-size:.875rem}.notifications-list{display:flex;flex-direction:column;gap:1rem}.notification-card{background:var(--color-bg-primary, #ffffff);border:1px solid var(--color-border-primary, #e5e7eb);border-left:4px solid var(--color-accent-primary, #3b82f6);border-radius:var(--border-radius-md, 8px);padding:1.25rem;transition:all .2s ease;position:relative}.notification-card:hover{border-color:var(--color-border-hover, #d1d5db);box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.notification-card.priority-high{border-left-color:#ef4444;background:#ef444405}.notification-card.priority-medium{border-left-color:#f59e0b;background:#f59e0b05}.notification-card.priority-low{border-left-color:#10b981;background:#10b98105}.notification-card-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.notification-card-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary, #f8fafc);border-radius:50%;border:2px solid var(--color-border-subtle, #f3f4f6)}.notification-type-icon{font-size:1.25rem}.notification-card-title-section{flex:1;min-width:0}.notification-card-title{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:var(--color-text-primary, #1f2937);line-height:1.4}.notification-card-timestamp{font-size:.875rem;color:var(--color-text-secondary, #6b7280);font-weight:400}.notification-card-dismiss{background:none;border:none;cursor:pointer;padding:.5rem;border-radius:6px;transition:all .2s ease;color:var(--color-text-secondary, #6b7280);flex-shrink:0;display:flex;align-items:center;justify-content:center}.notification-card-dismiss:hover{background:var(--color-bg-tertiary, #f1f5f9);color:var(--color-semantic-danger, #ef4444)}.notification-card-content{padding-left:3rem}.notification-card-message{margin:0 0 .5rem;color:var(--color-text-primary, #1f2937);line-height:1.5;font-size:.9375rem}.notification-card-details{margin:0;color:var(--color-text-secondary, #6b7280);font-size:.875rem;line-height:1.4;font-style:italic}.notification-priority-indicator{position:absolute;top:1rem;right:1rem;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em}.notification-priority-indicator.priority-high{background:#ef44441a;color:#dc2626}.notification-priority-indicator.priority-medium{background:#f59e0b1a;color:#d97706}.notification-priority-indicator.priority-low{background:#10b9811a;color:#059669}@media (max-width: 768px){.notifications-page{padding:0}.notification-card{padding:1rem}.notification-card-header{gap:.75rem}.notification-card-icon{width:36px;height:36px}.notification-type-icon{font-size:1.125rem}.notification-card-content{padding-left:2.75rem}.notification-priority-indicator{position:static;margin-top:.75rem;margin-left:2.75rem;display:inline-block}.notifications-header-actions{flex-direction:column;align-items:stretch;gap:.25rem}.notifications-header-actions .btn{justify-content:center}}@media (prefers-color-scheme: dark){.notification-card{background:var(--color-bg-primary, #1f2937);border-color:var(--color-border-primary, #374151)}.notification-card:hover{border-color:var(--color-border-hover, #4b5563);box-shadow:0 4px 12px #0000004d}.notification-card-icon{background:var(--color-bg-secondary, #111827);border-color:var(--color-border-subtle, #374151)}}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.notification-card{animation:slideInFromTop .3s ease-out}body{margin:0}.loading-fullscreen{width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;font-size:1.5rem}:root{--bp-xl: 1400px;--bp-lg: 1200px;--bp-md: 992px;--bp-sm: 768px;--bp-xs: 560px;--bp-xxs: 420px}body,html{width:100%}.container-fluid,.page-container{padding-left:clamp(.75rem,2vw,2rem);padding-right:clamp(.75rem,2vw,2rem)}.card{width:100%;box-sizing:border-box}.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}@media (max-width: 600px){.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}}@media (max-width: 1100px){.progress-dual-columns{grid-template-columns:1fr!important}}.week-navigation{flex-wrap:nowrap}.week-navigation .week-range{text-align:center}@media (max-width: 520px){.week-navigation{flex-wrap:wrap}.week-navigation .week-range{flex:1 1 100%;order:3;margin-top:.25rem}}@media (max-width: 640px){.period-controls{flex-wrap:wrap;gap:var(--spacing-sm)}.period-controls .date-picker-group{width:calc(50% - var(--spacing-sm));justify-content:center}}@media (max-width: 480px){.period-controls .date-picker-group{width:100%}}.modal-root,.modal,.activity-interaction-modal,.feedback-modal{width:min(100% - 1.5rem,640px);max-height:90vh;overflow-y:auto}@media (max-width: 560px){.modal-root,.modal,.activity-interaction-modal,.feedback-modal{width:min(100% - 1rem,520px)}}@media (max-width: 420px){.modal-root,.modal,.activity-interaction-modal,.feedback-modal{width:100%;border-radius:0}}@media (max-width: 560px){h1{font-size:1.6rem}h2{font-size:1.25rem}.metric-indicator__value{font-size:1.2rem}}@media (max-width: 420px){h1{font-size:1.4rem}h2,.metric-indicator__value{font-size:1.1rem}}.auth-page-container .card{margin:0 auto}@media (max-width: 480px){.auth-page-container .card{padding:1.25rem}.auth-toggle{flex-direction:column}.auth-toggle button{width:100%}}@media (max-width: 1100px){.sidebar{width:240px}}@media (max-width: 900px){.sidebar{position:static;width:100%;display:flex;flex-wrap:wrap}.sidebar nav{flex:1 1 100%}}.table-responsive{width:100%;overflow-x:auto}.hide-on-mobile{display:initial}@media (max-width: 600px){.hide-on-mobile{display:none!important}}.stack-sm{display:flex;gap:var(--spacing-sm)}@media (max-width: 600px){.stack-sm{flex-direction:column}}.grid-auto-fit-160{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--spacing-md)}@media (max-width: 600px){.grid-auto-fit-160{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}.plan-calendar-grid{overflow-x:auto}*{word-break:break-word}
