@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-accent-secondary: #8e71ff;--color-semantic-success: #2ECC71;--color-semantic-warning: #F39C12;--color-semantic-danger: #E74C3C;--color-semantic-info: #3498DB;--color-notification-unread-bg: #F0F9FF;--color-notification-unread-border: #3B82F6;--color-notification-read-bg: #F9FAFB;--color-notification-read-border: #9CA3AF;--font-family-sans: "Exo 2", "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: 1.125rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 1.75rem;--font-size-3xl: 2rem;--font-weight-extralight: 200;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-bold: 700;--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)}*{scrollbar-width:thin;scrollbar-color:rgba(56,189,248,.4) rgba(15,23,36,.3)}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:#0f17244d;border-radius:4px}*::-webkit-scrollbar-thumb{background:#38bdf866;border-radius:4px;transition:background .2s ease}*::-webkit-scrollbar-thumb:hover{background:#38bdf899}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-thumb{background:#38bdf84d}.modal-body::-webkit-scrollbar-thumb:hover{background:#38bdf880}*,*: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:linear-gradient(180deg,#0c1118eb,#0a0f16e0);border-radius:12px;padding:2rem;width:100%;margin:0 auto 2rem;max-width:1200px;border:1px solid rgba(79,209,197,.08);box-shadow:0 8px 32px #0000004d;-webkit-backdrop-filter:blur(10px) saturate(140%);backdrop-filter:blur(10px) saturate(140%);box-sizing:border-box;transition:all .3s ease}.card__header{background:transparent;display:flex;justify-content:space-between;align-items:center;padding:0 0 1.5rem;margin:0 0 1.5rem;border-bottom:1px solid rgba(79,209,197,.12);border-top-left-radius:0;border-top-right-radius:0}.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%;min-height:50px}.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-group-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.form-checkbox{width:auto;margin:0;cursor:pointer;accent-color:var(--color-accent-primary)}.form-checkbox-label{margin:0;-webkit-user-select:none;user-select:none;cursor:pointer;font-size:var(--font-size-base);color:var(--color-text-primary)}.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:var(--font-size-2xl);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:var(--font-size-2xl);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}}.badge-success{display:inline-flex;align-items:center;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background:#2ecc711a;color:#16a34a;border:1px solid rgba(46,204,113,.3)}.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)}}.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}.main-content{animation:fadeIn .2s ease-out}.loading-message{color:#f0f0f0;text-align:center;padding:2rem;font-size:1.2rem}.loading-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease-in-out}.loading-container{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.loading-spinner{border:4px solid rgba(0,217,255,.2);border-top-color:#00d9ff;border-radius:50%;box-shadow:0 0 20px #00d9ff4d;animation:spin .8s linear infinite}.loading-spinner--sm{width:32px;height:32px;border-width:3px}.loading-spinner--md{width:48px;height:48px;border-width:4px}.loading-spinner--lg{width:64px;height:64px;border-width:5px}.loading-message{font-size:1.125rem;font-weight:500;color:#fff;text-align:center;margin:0}@media (max-width: 640px){.loading-message{font-size:1rem}.loading-spinner--md{width:40px;height:40px}.loading-spinner--lg{width:56px;height:56px}}.auth-page-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--color-bg-primary) 0%,#0a0f1a 100%);position:relative;overflow:hidden;z-index:1}.auth-expired-alert{position:fixed;top:var(--spacing-lg);left:50%;transform:translate(-50%);max-width:480px;width:calc(100% - 2 * var(--spacing-lg));padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(135deg,#fde047f2,#fbbf24f2);border:1px solid rgba(217,119,6,.3);border-radius:var(--border-radius-md);box-shadow:0 4px 12px #d9770626,0 8px 24px #0003;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#78350f;font-size:14px;line-height:1.5;z-index:1000;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.auth-expired-alert-title{font-weight:600;font-size:15px;margin-bottom:var(--spacing-xs);color:#92400e}.auth-expired-alert-message{display:flex;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.auth-expired-alert-message a{color:#b45309;text-decoration:none;font-weight:600;border-bottom:1px solid #b45309;transition:all .2s ease}.auth-expired-alert-message a:hover{color:#92400e;border-bottom-color:#92400e}.auth-expired-alert-close{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);background:none;border:none;color:#92400e;font-size:24px;cursor:pointer;padding:4px 8px;line-height:1;transition:all .2s ease}.auth-expired-alert-close:hover{color:#78350f;transform:scale(1.2)}.auth-page-container:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 30% 25%,rgba(56,189,248,.18) 0%,transparent 45%),radial-gradient(circle at 75% 60%,rgba(125,211,252,.12) 0%,transparent 50%),radial-gradient(circle at 45% 85%,rgba(56,189,248,.1) 0%,transparent 55%),radial-gradient(circle at 60% 40%,rgba(14,165,233,.08) 0%,transparent 60%);background-attachment:fixed;animation:floatingBackground 20s ease-in-out infinite;pointer-events:none;z-index:0}@keyframes floatingBackground{0%,to{opacity:.85;transform:translateY(0)}50%{opacity:1;transform:translateY(-5px)}}.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)}.language-switcher-login{position:absolute;top:2rem;right:2rem;z-index:10;display:flex;gap:.5rem;background:#1e293b99;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(56,189,248,.2);border-radius:8px;padding:.25rem}.language-switcher-login .lang-btn{padding:.5rem .75rem;background:transparent;border:none;border-radius:6px;font-size:var(--font-size-sm);line-height:1;cursor:pointer;transition:all .2s ease;opacity:.7;display:flex;align-items:center;gap:.5rem;color:var(--color-text-secondary)}.language-switcher-login .lang-btn svg{flex-shrink:0;opacity:.7;transition:opacity .2s ease}.language-switcher-login .lang-btn:hover{background:#38bdf826;opacity:1;color:var(--color-text-primary)}.language-switcher-login .lang-btn:hover svg{opacity:1}.language-switcher-login .lang-btn.active{background:#38bdf833;opacity:1;color:var(--color-text-primary);box-shadow:0 2px 8px #38bdf866}.language-switcher-login .lang-btn.active svg{opacity:1}.auth-page-container .card{position:relative;z-index:1;background:#1e293bb3;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(56,189,248,.2);box-shadow:0 8px 32px #0000004d;padding:2.5rem;border-radius:1rem;width:100%;max-width:420px}@media (max-width: 768px){.auth-page-container .card{background:transparent!important;border:none!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;padding:0 24px!important;max-width:100%!important}}.auth-form-container h2{text-align:center;margin-bottom:1.5rem}.auth-email-highlight{font-weight:600}.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:var(--font-size-sm)}.auth-page-container .form-input{display:block!important;width:100%!important;max-width:100%!important;min-width:100%!important;box-sizing:border-box!important;background:#0f172499!important;border:1px solid rgba(56,189,248,.2)!important;color:var(--color-text-primary)!important;transition:all .2s ease!important;min-height:56px!important;height:56px!important;max-height:56px!important;padding:0 16px!important;border-radius:12px!important;font-size:16px!important;line-height:normal!important}.auth-page-container .form-input:focus{background:#0f1724cc;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px #38bdf81a}.auth-page-container .form-input::placeholder{color:var(--color-text-secondary);opacity:.6}.password-group{position:relative}.password-toggle-btn{position:absolute;top:calc(100% - 20px);right:10px;transform:translateY(-50%);background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:5px;transition:color .2s;line-height:0;z-index:10}.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;min-width:200px;background:linear-gradient(135deg,var(--color-accent-primary) 0%,var(--color-accent-hover) 100%);box-shadow:0 4px 12px #38bdf84d;transition:all .2s ease}.auth-action-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #38bdf866}.auth-action-button:disabled{opacity:.6;cursor:not-allowed}.auth-page-container .button-link{color:var(--color-accent-primary);transition:all .2s ease}.auth-page-container .button-link:hover{color:var(--color-accent-hover);text-decoration:underline}.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 6px;cursor:pointer;color:var(--color-text-secondary);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:6px;transition:all .2s ease;border-radius:4px}.lang-switcher button .flag-icon{width:20px;height:auto;opacity:.75;transition:all .2s ease;display:block}.lang-switcher button.active{color:var(--color-text-primary);background:#0000000d}.lang-switcher button.active .flag-icon{opacity:1}.lang-switcher button:hover{color:var(--color-text-primary);background:#00000014}.lang-switcher button:hover .flag-icon{opacity:1;transform:scale(1.1)}.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-icon{width:24px;height:auto}.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-md);max-height:95vh;max-width:calc(100vw - 2 * var(--spacing-xl));display:flex;flex-direction:column;box-sizing:border-box}@media (max-height: 732px){.modal-base-content{max-height:90vh}}.modal-content{width:100%;max-width:clamp(320px,90vw,min(960px,calc(100vw - 300px)))}.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;align-items:center;width:100%;gap:var(--spacing-md)}.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:var(--font-size-2xl);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:visible;flex:1 1 auto}.modal-content--workout-detail .modal-body{overflow-y:auto;max-height:75vh}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-primary);margin-top:var(--spacing-md)}.modal-content.modal-content--plan-detail{max-width:1100px}.modal-content.modal-content--day-detail{max-width:550px}.modal-content.modal-content--workout-detail{width:clamp(650px,75vw,900px);max-width:900px;padding:var(--spacing-sm) var(--spacing-md)}.modal-content--workout-detail .modal-header{padding-bottom:.75rem;margin-bottom:.25rem}.modal-content--workout-detail .modal-footer{padding-top:.25rem;margin-top:.25rem}.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-md)}.modal-header{padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-md)}.modal-footer{padding-top:var(--spacing-md);margin-top:var(--spacing-md);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}}@media (max-width: 767px){.modal-content{max-width:95vw;width:95vw}.modal-content--workout-detail{width:100vw!important;max-width:100vw!important;height:100vh;max-height:100vh;border-radius:0}.modal-content--workout-detail .modal-body{max-height:calc(100vh - 140px)}.modal-content--edit-day-expanded{width:100vw!important;max-width:100vw!important;height:100vh;max-height:100vh;border-radius:0}.profile-fields-auto-grid,.profile-fields-auto-grid--wide,.athlete-profile-train-grid .profile-sections{grid-template-columns:1fr;gap:var(--spacing-md)}.modal-grid--cols-2,.modal-grid--cols-3-lg{grid-template-columns:1fr}.modal-base-content,.modal-content{padding:var(--spacing-md)}.modal-header h3{font-size:1.1rem}.athlete-profile-horizontal-bands{gap:var(--spacing-md)}.modal-scroll-block{max-height:30vh}}.coach-performance-chart{width:100%;background:var(--dark-lighter);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.chart-tooltip{position:relative;background:#111827f2;color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;padding:1rem;box-shadow:0 4px 12px #0000004d;max-width:320px;z-index:10000!important;cursor:pointer;pointer-events:auto;transition:transform .2s ease}.chart-tooltip:hover{transform:scale(1.02)}.chart-legend{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:1.5rem;font-size:12px;font-weight:500;color:var(--text-secondary)}.chart-legend__group{display:flex;align-items:center;flex-wrap:wrap;gap:1rem}.chart-legend__label{font-weight:600;text-transform:none;font-size:11px;letter-spacing:.06em;color:var(--text-muted)}.chart-legend__item{display:flex;align-items:center;gap:.35rem;font-size:12px;color:var(--text-secondary)}.chart-legend__swatch{width:16px;height:16px;border-radius:4px;box-shadow:0 0 0 1px #94a3b840}.chart-legend__stroke{width:18px;height:3px;border-radius:999px;background-color:currentColor}.chart-tooltip__header{display:flex;flex-direction:column;gap:.5rem;padding-bottom:0;margin-bottom:.5rem}.chart-tooltip__title{font-size:14px;font-weight:600;color:var(--text-primary)}.chart-tooltip__meta{display:flex;align-items:center;gap:.75rem;font-size:11px;color:var(--text-muted)}.chart-tooltip__meta span{display:inline-flex;align-items:center;gap:.35rem}.chart-tooltip__alert{display:flex;gap:.75rem;border-left:3px solid currentColor;padding:.75rem;border-radius:6px;margin-bottom:.75rem;color:var(--text-primary)}.chart-tooltip__alert strong{display:block;font-size:12px;margin-bottom:.25rem}.chart-tooltip__alert p{font-size:11px;margin:0;color:var(--text-secondary)}.chart-tooltip__alert-meta{display:block;font-size:10px;margin-top:.35rem;color:var(--text-muted);font-style:italic}.chart-tooltip__section{margin-top:.75rem;border-top:1px solid rgba(148,163,184,.16);padding-top:.75rem}.chart-tooltip__section-title{display:inline-flex;align-items:center;gap:.4rem;font-size:11px;text-transform:none;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.5rem}.chart-tooltip__row{display:grid;grid-template-columns:20px 1fr auto;align-items:center;gap:.5rem;font-size:11px;color:var(--text-secondary);padding:.35rem 0;border-radius:6px}.chart-tooltip__label{font-weight:600;color:var(--text-primary)}.chart-tooltip__value{font-weight:500}.chart-tooltip__badge{justify-self:end;font-size:10px;padding:2px 6px;border-radius:4px;background:#2563eb2e;color:#3b82f6;font-weight:600;letter-spacing:.04em}.chart-tooltip__activities{display:flex;flex-direction:column;gap:.6rem}.chart-tooltip__activity{display:flex;gap:.75rem;background:#94a3b814;border-radius:10px;padding:.6rem}.chart-tooltip__activity-icon{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.chart-tooltip__activity-body{flex:1;min-width:0}.chart-tooltip__activity-headline{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem}.chart-tooltip__activity-name{font-size:13px;font-weight:600;color:var(--text-primary)}.chart-tooltip__activity-badge{font-size:10px;padding:2px 8px;border-radius:999px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#fff}.chart-tooltip__activity-meta{display:flex;flex-wrap:wrap;gap:.65rem;font-size:11px;color:var(--text-muted)}.chart-tooltip__activity-meta span{display:inline-flex;align-items:center;gap:.3rem}.chart-tooltip__activity-load{color:#60a5fa;font-weight:600}.chart-tooltip__activity-badge.badge-primary{background:#1e40af}.chart-tooltip__activity-badge.badge-extra{background:#3b82f6}.chart-tooltip__activity-badge.badge-utility{background:#94a3b8}.chart-tooltip__empty{font-size:12px;color:var(--text-muted);text-align:center;padding:.75rem 0}.chart-tooltip__feedback{font-size:11px;color:var(--text-secondary);background:#3b82f614;border-radius:8px;padding:.65rem;line-height:1.4}.chart-tooltip__footnote{margin-top:.75rem;display:inline-flex;align-items:center;gap:.4rem;font-size:10px;color:var(--text-muted);font-style:italic}.chart-tooltip-slim{padding:.75rem;max-width:220px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chart-tooltip h4{color:var(--text-primary);font-size:14px;font-weight:600;margin:0 0 .5rem}.chart-tooltip p{color:var(--text-secondary);font-size:13px;margin:.25rem 0}.tooltip-status{font-weight:600;font-size:14px}.tooltip-volume strong,.tooltip-metric strong{color:var(--text-primary)}.tooltip-prescribed{color:var(--text-muted);font-style:italic}.tooltip-hint{color:var(--accent-color);font-size:12px;margin-top:.5rem;border-top:1px solid var(--border-color);padding-top:.5rem}.performance-bar:hover{opacity:.8;transition:opacity .2s ease}.tooltip-details-btn:hover{transform:translateY(-2px)!important;box-shadow:0 4px 12px #667eea66!important}.tooltip-details-btn:active{transform:translateY(0)!important}.drawer-overlay{position:fixed;inset:0;background:#0009;z-index:99998;opacity:0;pointer-events:none;transition:opacity .3s ease}.drawer-overlay.active{opacity:1;pointer-events:auto}.activity-drawer{position:fixed;top:0;right:-480px;width:480px;height:100vh;background:linear-gradient(180deg,#0c1118f5,#080c12eb);backdrop-filter:blur(10px) saturate(140%);-webkit-backdrop-filter:blur(10px) saturate(140%);border-left:1px solid rgba(79,209,197,.18);box-shadow:-16px 0 48px #00000059;z-index:99999;display:flex;flex-direction:column;transition:right .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.activity-drawer.open{right:0}.drawer-header-sticky{position:sticky;top:0;z-index:100;background:linear-gradient(180deg,#0c1118f5,#080c12e6);box-shadow:0 6px 18px #0003}.drawer-status{display:inline-flex;align-items:center;gap:.5rem;font-size:13px;font-weight:600;margin-top:.25rem}.drawer-status.status-info{color:#3b82f6}.drawer-status.status-done{color:#22c55e}.drawer-header{display:flex;justify-content:space-between;align-items:flex-start;padding:2.5rem 1.5rem 1.5rem;border-bottom:none;background:transparent;gap:1rem}.drawer-header-content{display:flex;align-items:center;gap:1rem}.drawer-header-title{display:flex;flex-direction:column;gap:.5rem;flex:1}.drawer-status-row{display:flex;align-items:center;gap:.75rem;padding:0 1.5rem;margin-top:.25rem;margin-bottom:.5rem}.drawer-header h3{color:var(--text-primary);font-size:16px;font-weight:600;margin:0;letter-spacing:.3px}.drawer-status{display:flex;align-items:center;gap:.5rem;font-size:13px;font-weight:500;color:var(--text-secondary)}.metrics-chips{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem}.metric-chip{display:inline-flex;align-items:center;gap:.3rem;color:var(--text-secondary);font-size:13px}.chip-icon{color:var(--text-muted)}.chip-icon--heart{color:#ef4444}.chip-icon--elev{color:#f59e0b}.chip-icon--rpe{color:#a78bfa}.chip-icon--pace{color:#00d9ff}.activity-notes{background:#ffffff0f;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.12);border-radius:var(--border-radius-md);padding:.75rem 1rem;color:var(--text-secondary)}.activity-notes .note-paragraph{margin:.25rem 0 0;line-height:1.6}.drawer-status.status-success{color:#10b981}.drawer-status.status-warning{color:#f59e0b}.drawer-status.status-danger{color:#ef4444}.drawer-status.status-muted{color:var(--text-muted)}.status-icon{font-size:14px;flex-shrink:0}.drawer-close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.drawer-close-btn:hover{background:#ffffff0d;color:var(--text-primary)}.drawer-tabs{display:flex;border-bottom:1px solid var(--border-color);background:var(--dark-bg)}.drawer-tab{flex:1;padding:1rem;background:none;border:none;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent}.drawer-tab:hover{color:var(--text-primary);background:var(--hover-bg)}.drawer-tab.active{color:var(--accent-color);border-bottom-color:var(--accent-color)}.drawer-content{flex:1;overflow-y:auto;display:flex;flex-direction:column;padding:0}.drawer-content::-webkit-scrollbar{width:6px}.drawer-content::-webkit-scrollbar-track{background:transparent}.drawer-content::-webkit-scrollbar-thumb{background:#4fd1c54d;border-radius:3px}.drawer-content::-webkit-scrollbar-thumb:hover{background:#4fd1c580}.drawer-content-unified{display:flex;flex-direction:column;gap:.75rem;padding:0 1.5rem 1.5rem}.drawer-body{flex:1;overflow-y:auto;padding:1.25rem 1.5rem;background:transparent}.no-data{color:var(--text-muted);font-size:14px;font-style:italic;text-align:center;padding:2rem}.drawer-subtitle{display:flex;align-items:center;gap:.5rem;color:var(--text-muted);font-size:13px;font-weight:600}.drawer-section{display:flex;flex-direction:column;gap:.75rem;padding:0;border:none;margin:0}.drawer-section:last-child{border-bottom:none;margin-bottom:0}.drawer-section--spaced{margin-top:1rem;padding:0}.section-title,.activity-drawer .drawer-section .section-title{display:flex;align-items:center;gap:.4rem;font-size:15px;font-weight:700;color:var(--text-primary);text-transform:none;letter-spacing:.2px;margin:0 0 .65rem;opacity:1}.week-day-card.expanded{border-color:var(--accent-color);box-shadow:0 8px 24px #0f172a66}.week-day-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.85rem 1rem;background:transparent;border:none;color:var(--text-primary);cursor:pointer;transition:background .2s ease}.week-day-card.expanded .week-day-toggle,.week-day-toggle:hover{background:#94a3b814}.week-day-toggle-main{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.week-day-label{font-size:14px;font-weight:600;color:var(--text-primary)}.week-day-toggle-meta{display:flex;align-items:center;gap:.5rem}.status-icon{flex-shrink:0}.status-done{color:#22c55e}.status-partial{color:#facc15}.status-missed{color:#ef4444}.status-extra{color:#60a5fa}.status-none{color:#9ca3af}.meta-chip{display:inline-flex;align-items:center;gap:.35rem;font-size:11px;font-weight:600;border-radius:999px;padding:.2rem .65rem;background:#94a3b81f;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.02em}.meta-chip svg{flex-shrink:0}.meta-chip-prescription{background:#38bdf81f;color:#38bdf8}.meta-chip-counter{background:#3b82f61f;color:#3b82f6}.week-day-details{padding:.9rem 1rem 1.1rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:.75rem;background:#0a0f19eb}.week-activity-card{border:1px solid rgba(59,130,246,.12);border-radius:8px;padding:.75rem .9rem;background:#0f172ae6;display:flex;flex-direction:column;gap:.65rem}.week-activity-header{display:flex;align-items:flex-start;gap:.6rem;color:var(--text-primary)}.week-activity-title{display:flex;flex-direction:column;gap:.35rem}.week-activity-title strong{font-size:13px;font-weight:600}.week-activity-meta{display:flex;flex-wrap:wrap;gap:.5rem;color:var(--text-muted);font-size:11px}.week-activity-vitals{display:flex;flex-direction:column;gap:.45rem;padding:.65rem;border-left:3px solid #fbbf24;border-radius:6px;background:#1e293bd9}.vital-item{display:flex;align-items:flex-start;gap:.45rem;color:var(--text-secondary);font-size:11px}.vital-item.highlight{color:#fbbf24}.vital-item.alert{color:#f97316}.vital-metrics{display:flex;flex-wrap:wrap;gap:.75rem;color:var(--text-secondary);font-size:11px}.vital-metrics span{display:inline-flex;align-items:center;gap:.35rem}.vital-alert{margin-left:auto;color:#ef4444;font-weight:700}.quote{font-style:italic;color:var(--text-primary)}.week-empty,.drawer-empty{text-align:center;color:var(--text-muted);font-size:12px;font-style:italic;padding:.75rem .5rem}.drawer-footer{border-top:1px solid var(--border-color);background:#0a0f19f2;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.drawer-footer-header{display:flex;align-items:center;gap:.5rem;color:var(--text-primary);font-size:14px;font-weight:600}.feedback-placeholder{border:1px dashed var(--border-color);border-radius:8px;background:#1e293bcc;color:var(--text-muted);font-size:12px;font-style:italic;padding:.85rem;cursor:pointer;transition:background .2s ease,border-color .2s ease}.feedback-placeholder:hover{border-color:var(--accent-color);background:#1e40af33}.feedback-view{display:flex;flex-direction:column;gap:.75rem;background:#1e293bd9;border-radius:8px;padding:1rem;color:var(--text-primary);font-size:13px;line-height:1.6}.btn-link{align-self:flex-start;background:none;border:none;color:var(--accent-color);font-size:12px;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.05em}.feedback-form{display:flex;flex-direction:column;gap:.75rem}.drawer-textarea{width:100%;min-height:120px;border-radius:8px;border:1px solid var(--border-color);background:#0f172acc;color:var(--text-primary);font-size:13px;padding:.85rem;resize:vertical}.feedback-actions{display:flex;gap:.75rem;justify-content:flex-end;flex-wrap:wrap}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:999px;padding:.65rem 1.5rem;font-size:13px;font-weight:600;border:1px solid transparent;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.btn-primary{background:linear-gradient(135deg,#38bdf8,#3b82f6);color:#fff;border-color:#3b82f699}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-primary:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 8px 18px #3b82f640}.btn-secondary{background:transparent;color:var(--text-secondary);border-color:var(--border-color)}.btn-secondary:hover{border-color:var(--accent-color);color:var(--accent-color)}.feedback-hint{color:var(--text-muted);font-size:11px;margin-top:.35rem}.executed-activities-list{display:flex;flex-direction:column;gap:1rem}.activity-card-solid{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;border-radius:0;border-bottom:1px solid rgba(255,255,255,.06);padding:.75rem 0;margin:0;box-shadow:none;transition:all .2s ease;display:flex;flex-direction:column;gap:.5rem}.activity-card-solid:last-child{border-bottom:none}.activity-card-solid:hover{background:#ffffff03;border-color:#4fd1c538;box-shadow:0 6px 18px #0000002e}.activity-card-solid.no-activity{border-color:transparent;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:12px;padding:1rem .75rem;gap:.5rem}.activity-card-solid .card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem;padding:0}.activity-card-solid .card-header h5{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.source-chip{font-size:9px;text-transform:uppercase;border-radius:3px;border:none;background:#fbbf2426;color:#fbbf24;padding:.2rem .4rem;font-weight:700;letter-spacing:.3px;margin-left:auto}.badge-chip{margin-left:.5rem;border-radius:3px;border:none;background:#4fd1c51a;padding:.15rem .5rem;font-size:9px;font-weight:700;text-transform:uppercase;color:#4fd1c5cc;letter-spacing:.3px}.badge-chip.badge-primary{background:#1e40af26;color:#1e40af}.badge-chip.badge-extra{background:#3b82f626;color:#3b82f6}.badge-chip.badge-utility,.badge-chip.badge-recuperacao{background:#94a3b826;color:#94a3b8}.activity-card-solid .card-body{display:flex;flex-direction:column;gap:.5rem;padding:0}.activity-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;margin-top:.5rem;background:transparent;border:none;border-radius:0;padding:0;width:100%}.chip-duration{color:#e2e8f0;border:none;background:transparent}.chip-distance{color:#60a5fa;border:none;background:transparent}.chip-pace{color:#2dd4bf;border:none;background:transparent}.chip-hr{color:#f87171;border:none;background:transparent}.chip-power{color:#fbbf24;border:none;background:transparent}.chip-elevation{color:#a3e635;border:none;background:transparent}.chip-rpe{color:#c084fc;border:none;background:transparent}.activity-feedback-block{display:flex;flex-direction:column;gap:.35rem;margin-top:.25rem;padding:0}.activity-notes{display:flex;flex-direction:column;gap:.35rem;margin-top:0;padding:0;background:transparent;border-left:none;border-radius:0;font-size:12px;color:var(--text-secondary);line-height:1.4}.activity-notes svg{color:var(--text-secondary);flex-shrink:0;opacity:.7}.note-line{display:flex;align-items:flex-start;gap:.35rem;font-size:12px;color:var(--text-secondary)}.note-line span{flex:1}.note-line strong{color:var(--text-primary);font-weight:600}.quote{font-style:italic;opacity:.85}.note-paragraph{font-size:12px;line-height:1.5}.strava-header-link{margin-top:.35rem;display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .85rem;background:linear-gradient(135deg,#fc4c02,#ff6b35);color:#fff;text-decoration:none;border-radius:8px;font-size:12px;font-weight:600;transition:transform .2s ease,box-shadow .2s ease}.strava-header-link:hover{transform:translateY(-2px);box-shadow:0 4px 12px #fc4c0259}.prescription-card{background:var(--dark-lighter);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.prescription-card p{color:var(--text-secondary);font-size:14px;margin:.5rem 0}.prescription-card strong{color:var(--text-primary)}.activities-list{display:flex;flex-direction:column;gap:1rem}.activity-card{display:flex;gap:1rem;background:var(--dark-lighter);border:1px solid var(--border-color);border-radius:8px;padding:1rem;transition:all .2s ease}.activity-card:hover{border-color:var(--accent-color);transform:translate(-4px,-2px)}.activity-card.matching{border-left:4px solid #4ade80}.activity-card.extra{border-left:4px solid #60a5fa}.activity-badge{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:#f59e0b;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;box-shadow:0 6px 18px #f59e0b40}.activity-badge.extra{background:#60a5fa}.activity-details{flex:1}.activity-details h5{color:var(--text-primary);font-size:15px;font-weight:600;margin:0 0 .5rem}.activity-metrics{display:flex;flex-wrap:wrap;gap:1rem;font-size:13px;color:var(--text-secondary)}.strava-badge{display:inline-block;background:#fc4c02;color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:11px;font-weight:600;margin-top:.5rem}.extra-activities-title{color:var(--text-secondary);font-size:14px;font-weight:500;margin:1.5rem 0 .5rem}.feedback-list{display:flex;flex-direction:column;gap:1rem}.feedback-card{background:var(--dark-lighter);border:1px solid var(--border-color);border-left:4px solid var(--accent-color);border-radius:8px;padding:1rem}.feedback-card h5{color:var(--text-primary);font-size:14px;font-weight:600;margin:0 0 .5rem}.feedback-text{color:var(--text-secondary);font-size:14px;line-height:1.6;margin:0}.perceived-effort{color:var(--text-muted);font-size:13px;margin:.5rem 0 0}.strava-list{display:flex;flex-direction:column;gap:1rem}.strava-card{background:var(--dark-lighter);border:1px solid var(--border-color);border-left:4px solid #fc4c02;border-radius:8px;padding:1rem}.strava-card h5{color:var(--text-primary);font-size:15px;font-weight:600;margin:0 0 1rem}.strava-metrics p{color:var(--text-secondary);font-size:14px;margin:.5rem 0}.strava-link{display:inline-block;color:#fc4c02;font-size:14px;font-weight:500;text-decoration:none;margin-top:1rem;transition:all .2s ease}.strava-link:hover{color:#ff6b35;transform:translate(4px)}.prescription-card-outlined{background:#ffffff05;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px dashed rgba(255,255,255,.15);border-radius:12px;padding:.5rem;margin-bottom:.5rem;transition:all .3s ease}.prescription-card-outlined:hover{background:#ffffff0a;border-color:#ffffff40;transform:translateY(-2px);box-shadow:0 4px 16px #0003}.prescription-card-outlined.rest-day{display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-style:italic;font-size:14px}.metrics-grid-compact{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.metrics-grid-compact span{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--text-secondary)}.card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.card-icon{font-size:18px}.card-header h5{color:var(--text-primary);font-size:16px;font-weight:600;margin:0;flex:1}.strava-badge-inline{display:inline-flex;align-items:center;gap:4px;padding:.25rem .5rem;background:linear-gradient(135deg,#fc4c02,#ff6b35);color:#fff;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.strava-icon-tiny{color:currentColor;opacity:.9}.card-body{color:var(--text-secondary);font-size:14px}.card-body p{margin:.5rem 0}.description-truncate{color:#babacf;font-size:13px;font-style:italic;line-height:1.4;margin-top:.5rem}.metrics-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.metric-item{display:flex;align-items:center;gap:6px;background:#ffffff0d;padding:.5rem .75rem;border-radius:6px;font-size:13px;color:var(--text-secondary);border:1px solid rgba(255,255,255,.08);transition:all .2s ease;flex:0 1 auto;white-space:nowrap}.metric-item:hover{background:#ffffff14;border-color:#ffffff1f}.metric-item svg{color:var(--accent-color);flex-shrink:0}.activity-meta-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.35rem}.meta-chip-inline{display:inline-flex;align-items:center;gap:.4rem;font-size:13px;font-weight:500;color:var(--text-secondary);background:transparent;border:none;padding:0;white-space:nowrap}.chip-duration{color:#e2e8f0;border-color:#e2e8f033;background:#e2e8f00d}.chip-duration svg{color:#94a3b8}.chip-distance{color:#60a5fa;border-color:#60a5fa33;background:#60a5fa0d}.chip-distance svg{color:#3b82f6}.chip-pace{color:#2dd4bf;border-color:#2dd4bf33;background:#2dd4bf0d}.chip-pace svg{color:#14b8a6}.chip-hr{color:#f87171;border-color:#f8717133;background:#f871710d}.chip-hr svg{color:#ef4444}.chip-power{color:#fbbf24;border-color:#fbbf2433;background:#fbbf240d}.chip-power svg{color:#f59e0b}.chip-elevation{color:#a3e635;border-color:#a3e63533;background:#a3e6350d}.chip-elevation svg{color:#84cc16}.chip-rpe{color:#c084fc;border-color:#c084fc33;background:#c084fc0d}.chip-rpe svg{color:#a855f7}.metric-chip{display:inline-flex;align-items:center;gap:.35rem;padding:0;background:transparent;border:none;border-radius:0;font-size:12px;color:var(--text-secondary);white-space:nowrap}.metric-chip svg{color:#60a5fa;flex-shrink:0}.meta-chip-inline svg{color:#60a5fa;flex-shrink:0}.activity-feedback-block{margin-top:.5rem;display:flex;align-items:flex-start;gap:.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.6rem .75rem;color:var(--text-secondary)}.activity-feedback-text{display:flex;flex-direction:column;gap:.25rem}.feedback-line{margin:0;font-size:12px;line-height:1.5;color:var(--text-secondary)}.rpe-badge{display:inline-flex;align-items:center;gap:4px;margin-top:.75rem;padding:.5rem .75rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:6px;font-size:12px;font-weight:600}.feedback-subtitle{margin-top:.75rem;margin-bottom:.25rem;font-size:11px;font-weight:600;text-transform:none;color:var(--text-muted);letter-spacing:.5px}.extras-accordion{margin-bottom:1.5rem}.accordion-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--dark-lighter);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.accordion-trigger:hover{background:var(--hover-bg)}.accordion-icon{color:var(--text-muted);font-size:12px;transition:transform .2s ease}.accordion-content{margin-top:.5rem;padding-left:.5rem}.extra-activity-item{padding:.75rem;margin-bottom:.5rem;background:var(--dark-bg);border-left:3px solid #9333ea;border-radius:4px}.item-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.item-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#9333ea;color:#fff;border-radius:50%;font-size:11px;font-weight:700}.item-header h5{color:var(--text-primary);font-size:14px;font-weight:600;margin:0;flex:1}.item-metrics{display:flex;gap:1rem;font-size:13px;color:var(--text-secondary)}.feedback-section{margin-top:1.5rem}.feedback-box{background:var(--dark-bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.feedback-item{margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.05)}.feedback-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.feedback-text{color:var(--text-secondary);font-size:14px;line-height:1.6;font-style:italic}.no-feedback{color:var(--text-muted);font-size:14px;text-align:center;padding:1.5rem;font-style:italic}.inline-edit-form{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:linear-gradient(180deg,#0c1118eb,#0a0f16e0);border:1px solid rgba(79,209,197,.14);border-radius:10px;box-shadow:0 8px 24px #00000047;margin-top:.75rem}.edit-field{display:flex;flex-direction:column;gap:.5rem}.edit-field label{display:flex;align-items:center;gap:.35rem;font-size:11px;font-weight:700;color:var(--text-muted);text-transform:none;letter-spacing:.6px}.feeling-icons{display:flex;align-items:center;justify-content:space-between;gap:.25rem}.feeling-icons button{flex:1;display:flex;align-items:center;justify-content:center;padding:.6rem .35rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:var(--text-muted);cursor:pointer;transition:all .2s ease}.feeling-icons button:hover{background:#ffffff0d;border-color:#4fd1c54d;transform:scale(1.05)}.feeling-icons button.active{background:#4fd1c526;border-color:var(--accent-color);color:var(--accent-color);font-weight:600}.rpe-buttons{display:grid;grid-template-columns:repeat(10,1fr);gap:.25rem}.rpe-buttons button{padding:.5rem .25rem;background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:0}.rpe-buttons button:hover{background:#ffffff0d;border-color:#4fd1c54d;transform:scale(1.08)}.rpe-buttons button.active{background:#4fd1c533;border-color:var(--accent-color);color:var(--accent-color);font-weight:700}.edit-field textarea{padding:.75rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:var(--text-primary);font-size:12px;line-height:1.5;resize:vertical;font-family:inherit;transition:all .2s ease}.edit-field textarea:focus{outline:none;border-color:var(--accent-color);background:#4fd1c514;box-shadow:0 0 0 3px #4fd1c50d}.edit-field textarea::placeholder{color:var(--text-muted);font-style:italic}.inline-actions{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.inline-actions button{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem .85rem;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-save{background:linear-gradient(135deg,var(--accent-color) 0%,#3b9d91 100%);color:#fff;box-shadow:0 6px 16px #4fd1c547}.btn-save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px #4fd1c559}.btn-save:disabled{opacity:.5;cursor:not-allowed}.btn-cancel{background:#ffffff05;color:var(--text-secondary);border:1px solid rgba(255,255,255,.12)}.btn-cancel:hover:not(:disabled){background:#ffffff0d;border-color:#fff3;color:var(--text-primary)}.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-edit-inline{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .65rem;margin-top:.75rem;background:transparent;border:1px solid rgba(79,209,197,.2);border-radius:6px;color:var(--accent-color);font-size:11px;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.4px;width:fit-content;align-self:flex-start}.btn-edit-inline:hover{background:#4fd1c51a;border-color:var(--accent-color);transform:translateY(-1px)}.missed-workout-form{margin-top:.75rem}.btn-log-missed{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem .85rem;background:#ef444414;border:1px solid rgba(239,68,68,.28);border-radius:8px;color:#ef4444;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s ease;width:100%;text-transform:uppercase;letter-spacing:.35px}.btn-log-missed:hover{background:#ef444424;border-color:#ef44446b;box-shadow:0 6px 16px #ef444438;transform:translateY(-1px)}@media (max-width: 768px){.activity-drawer{width:100%;right:-100%;left:auto;bottom:0}.coach-performance-chart{padding:1rem}.metrics-grid{grid-template-columns:1fr}.rpe-buttons{grid-template-columns:repeat(5,1fr)}.feeling-icons button{padding:.5rem}}.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);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:var(--color-bg-tertiary);color:var(--color-accent-primary)}.calendar-status-bar--warning{background:#fbbf2426;color:var(--color-semantic-warning)}.calendar-status-bar--success{background:#22c55e26;color:var(--color-semantic-success)}.calendar-status-bar--error{background:#ef444426;color:var(--color-semantic-danger)}.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}.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-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:#0f1724a6;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.not-completed{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}.strava-badge-icon--corner{position:absolute;bottom:6px;right:6px;background:#fc4c02;color:#fff;font-size:.65rem;font-weight:700;padding:3px 6px;border-radius:4px;line-height:1;z-index:3;box-shadow:0 2px 4px #00000040;letter-spacing:.5px;display:flex;align-items:center;justify-content:center;min-width:16px;height:16px}.strava-badge-icon--extra{position:absolute;bottom:26px;right:6px;background:var(--color-accent-primary);color:#fff;font-size:.65rem;font-weight:700;padding:3px 6px;border-radius:4px;line-height:1;z-index:3;box-shadow:0 2px 4px #00000040;letter-spacing:.5px;display:flex;align-items:center;justify-content:center;min-width:20px;height:16px;white-space:pre-line}.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:var(--color-semantic-warning);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:#d97706}.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}.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{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}}.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}.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: 767px){.page-container,.card{padding:.75rem}.card__header{padding:.75rem;margin-bottom:.75rem}.card__header-title{font-size:var(--font-size-md)}.icon-btn,.action-buttons-container .icon-btn{width:36px;height:36px;font-size:var(--font-size-md)}.action-buttons-container{gap:.5rem}.action-buttons-container button:not(.icon-btn){min-width:auto;padding:.5rem .75rem;font-size:var(--font-size-sm)}.icon-btn-group{gap:.25rem;justify-content:center}.review-actions-block.review-actions-block--aligned{padding:.5rem .75rem;margin-top:1rem}.athlete-meta-line{flex-wrap:wrap;font-size:var(--font-size-sm)}.dashboard-table{font-size:var(--font-size-sm)}.dashboard-table thead{display:none}.dashboard-table tbody tr{display:block;margin-bottom:1rem;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:.75rem;background:#ffffff05}.dashboard-table tbody td{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border:none;text-align:right}.dashboard-table tbody td:before{content:attr(data-label);font-weight:600;text-align:left;color:var(--color-text-secondary);margin-right:1rem}.dashboard-table tbody td[data-label*=Ações],.dashboard-table tbody td[data-label*=Actions]{display:block}.dashboard-table tbody td[data-label*=Ações] .action-buttons-container,.dashboard-table tbody td[data-label*=Actions] .action-buttons-container{width:100%;margin-top:.5rem}.dashboard-table tbody td[data-label*=Ações]:before,.dashboard-table tbody td[data-label*=Actions]:before{display:block;margin-bottom:.5rem}}.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:var(--font-size-xl);-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}.goal-card-active{border-color:#2ecc714d!important;background-color:#2ecc710d!important}.goal-card-active:hover{border-color:var(--color-semantic-success, #22c55e)!important;transform:translateY(-2px);box-shadow:0 4px 12px #2ecc7126!important}.goal-card-header-active{background:linear-gradient(135deg,#2ecc711f,#2ecc7114)!important;border-bottom:1px solid rgba(46,204,113,.2)}.goal-active-badge{display:inline-flex;align-items:center;gap:.375rem;background:var(--color-semantic-success, #22c55e);color:#fff;padding:.25rem .625rem;border-radius:12px;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem}.badge-dot{width:6px;height:6px;background:#fff;border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.profile-field-full{grid-column:1 / -1}.goal-text-main{font-weight:500!important;color:var(--color-text-primary)!important;line-height:1.5!important}.goal-archived-section{margin-top:1.5rem;border-top:1px solid var(--color-border-secondary, #e5e7eb);padding-top:1rem}.archived-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--color-bg-secondary, #f9fafb);border-radius:var(--border-radius-sm, 6px);transition:background .2s;cursor:pointer;-webkit-user-select:none;user-select:none}.archived-header:hover{background:var(--color-bg-tertiary, #f3f4f6)}.badge-secondary{display:inline-flex;align-items:center;gap:.25rem;background:var(--color-bg-tertiary, #f3f4f6);color:var(--color-text-secondary, #6b7280);border:1px solid var(--color-border-secondary, #e5e7eb);padding:.25rem .625rem;border-radius:12px;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.archived-toggle{display:flex;align-items:center;color:var(--color-text-secondary, #6b7280)}.archived-list{margin-top:.75rem;padding-left:.5rem}.goal-archived-item{margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border-tertiary, #f3f4f6)}.goal-archived-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.goal-text-small{font-size:.8125rem;color:var(--color-text-secondary, #4b5563);margin:.25rem 0;line-height:1.4}.goal-meta-small{font-size:.75rem;color:var(--color-text-tertiary, #9ca3af);margin:.25rem 0}.text-muted{color:var(--color-text-tertiary, #9ca3af);font-style:italic}@media (max-width: 768px){.goal-dates{font-size:.75rem}.goal-active-card{padding:.625rem}.goal-main-text{font-size:.875rem}}.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)}.athlete-profile-modal{max-width:800px!important;width:90vw!important;max-height:90vh;height:auto}.athlete-profile-modal .modal-body{max-height:calc(90vh - 120px);overflow-y:auto;overflow-x:hidden;padding:0}.profile-tabs{display:flex;gap:0;padding:0;border-bottom:2px solid var(--color-border-primary, rgba(100, 181, 246, .2));background:var(--color-bg-tertiary, rgba(51, 65, 85, .6));flex-wrap:wrap;overflow-x:hidden}.profile-tab{display:flex;align-items:center;gap:.5rem;padding:1rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--color-text-secondary, #94A3B8);font-size:var(--font-size-base);font-weight:var(--font-weight-medium, 500);cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0;position:relative}.profile-tab:hover{color:var(--color-accent-primary, #38BDF8);background:#38bdf814}.profile-tab.active{color:var(--color-accent-primary, #38BDF8);border-bottom-color:var(--color-accent-primary, #38BDF8);background:#38bdf81f;font-weight:var(--font-weight-bold, 700)}.profile-tab svg{font-size:var(--font-size-md);transition:transform .2s ease}.profile-tab.active svg{transform:scale(1.1)}.profile-tab-content{padding:var(--spacing-lg, 1.5rem);min-height:300px;max-height:calc(90vh - 250px);overflow-y:auto;overflow-x:hidden;animation:fadeIn .3s ease;background:var(--color-bg-primary, #0F1724)}.profile-tab-content .card{border:1px solid var(--color-border-primary, rgba(100, 181, 246, .2));box-shadow:none;background:var(--color-bg-secondary, rgba(30, 41, 59, .5));margin:0;padding:0;border-radius:var(--border-radius-md, 8px)}.profile-tab-content .card__content{padding:var(--spacing-lg, 1.5rem);background:transparent;margin-bottom:0}.profile-tab-content .card__header{display:none}.profile-tab-content .basic-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md, 1rem)}.profile-tab-content .basic-info-grid>div{color:var(--color-text-primary, #E2E8F0)}.profile-tab-content .basic-info-grid strong{color:var(--color-text-secondary, #94A3B8);font-weight:var(--font-weight-medium, 500)}@media (max-width: 899px){.profile-tabs{padding:.75rem .75rem 0;gap:.25rem}.profile-tab{padding:.6rem .9rem;font-size:.85rem}.profile-tab svg{font-size:1rem}.profile-tab-content{padding:1rem}}@media (max-width: 767px){.athlete-profile-modal{width:100vw!important;max-width:100vw!important;height:100vh;max-height:100vh;border-radius:0}.athlete-profile-modal .modal-header{padding:1rem;font-size:1.1rem}.athlete-profile-modal .modal-body{padding:.75rem;max-height:calc(100vh - 140px)}.athlete-profile-modal .modal-footer{padding:.75rem 1rem}.athlete-profile-grid{gap:1rem}.athlete-profile-grid .card{min-height:auto}.athlete-profile-grid .card__header{padding:.75rem}.athlete-profile-grid .card__header-title{font-size:1rem}.athlete-profile-grid .card__content{padding:.75rem;font-size:.9rem}.athlete-profile-grid .basic-info-grid{display:grid;grid-template-columns:1fr;gap:.5rem}}.athlete-profile-grid .card{display:flex;flex-direction:column;height:100%;min-height:200px;max-height:none}.athlete-profile-grid .card__content{flex:1;overflow-y:auto}.athlete-profile-grid .card__content::-webkit-scrollbar{width:6px}.athlete-profile-grid .card__content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.athlete-profile-grid .card__content::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.athlete-profile-grid .card__content::-webkit-scrollbar-thumb:hover{background:#555}.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:.2rem 0}.form-fields-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem .75rem}@media (max-width: 900px){.form-fields-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.form-fields-grid{grid-template-columns:1fr}}.form-fields-inline{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}.form-field-inline{display:flex;flex-direction:column;gap:.35rem}.form-field-inline label{font-weight:600;white-space:nowrap;font-size:var(--font-size-sm);color:var(--color-text-primary, #1f2937)}.form-field-inline-row{display:flex;align-items:center;gap:.5rem}.form-field-inline input.form-input{padding:.5rem .75rem;font-size:var(--font-size-base);border-radius:var(--border-radius-md, .375rem);border:1px solid var(--color-border-primary, #d1d5db);background-color:var(--color-bg-primary, #ffffff);color:var(--color-text-primary, #1f2937);width:100%;min-width:0}.form-field-inline input.form-input:disabled{opacity:.5;cursor:not-allowed;background-color:var(--color-bg-secondary, #f3f4f6)}.form-field-inline .unit{color:var(--color-text-secondary, #6b7280);font-size:.9rem;font-weight:500;white-space:nowrap;flex-shrink:0}.form-field-inline input[type=number]{-moz-appearance:textfield}.form-field-inline input[type=number]::-webkit-inner-spin-button,.form-field-inline input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.form-field-inline .strava-sync-label{font-size:.75rem;color:#666;font-style:italic;margin-left:.25rem}.modal-section--compact{margin-bottom:.3rem}.modal-section--compact .form-input{padding:.5rem .75rem;font-size:.9rem;width:100%;min-width:0}.checkbox-group{display:flex;flex-direction:column;gap:var(--spacing-md, 1rem)}.form-checkbox{display:flex;align-items:center;cursor:pointer;font-weight:600;color:var(--color-text-primary, #1f2937)}.form-checkbox input[type=checkbox]{cursor:pointer;width:1.25rem;height:1.25rem}.checkbox-label{margin-left:var(--spacing-xs, .5rem)}.checkbox-primary input[type=checkbox]:checked{accent-color:var(--primary-cyan, #00D9FF)}.checkbox-secondary input[type=checkbox]:checked{accent-color:var(--secondary-purple, #A78BFA)}.expandable-form{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s ease;overflow:hidden}.expandable-form.expanded{grid-template-rows:1fr}.expandable-form>*{min-height:0}.modal-section--compact .form-input[placeholder*="hh:mm:ss"],.modal-section--compact .form-input[placeholder*="00:00:00"]{width:9ch}.modal-section--compact .form-input[type=number][step="0.1"]{width:7ch}.modal-section--compact .form-input[type=number][step="1"]:not([max="10"]){width:5ch}.modal-section--compact .form-input[min="1"][max="10"]{width:4ch}.modal-section--compact label{font-size:.85rem;margin-bottom:.25rem;font-weight:600}.modal-section--compact small{display:block;margin-top:.25rem}.modal-sections-stack{display:flex;flex-direction:column;gap:.2rem}.modal-sections-stack .modal-section{margin-bottom:0}.modal-sections-stack textarea{width:100%;font-family:inherit;line-height:1.5}.textarea-auto-expand{resize:none;overflow-y:auto;min-height:60px}.modal-grid{display:grid;gap:.4rem}.modal-grid--cols-2{grid-template-columns:1fr 1fr}@media (max-width: 768px){.modal-grid--cols-2{grid-template-columns:1fr}.modal-grid--cols-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.modal-grid--cols-4{grid-template-columns:1fr}.modal-sections-stack{gap:.4rem}.modal-grid{gap:.5rem}.modal-section--compact{margin-bottom:.4rem}.modal-section--compact .form-input{padding:.4rem .6rem;font-size:.85rem}.modal-section--compact label{font-size:.8rem}}.form-input--strava-disabled{background-color:#f5f5f5!important;color:#666!important;cursor:not-allowed!important;border-color:#ddd!important}.strava-sync-label{display:block;color:var(--color-text-secondary, #6b7280);font-size:.75rem;margin-top:.25rem;font-style:italic}.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}.strava-activities-table{background-color:#ffffff05;border-radius:var(--border-radius-md);padding:var(--spacing-md);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-xl);max-width:100%;overflow:hidden;transition:border-color .2s ease,background-color .25s ease}.strava-activities-table__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing-md)}.strava-activities-table__title{display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.strava-activities-table__title svg{color:var(--primary-color);font-size:1.5rem}.strava-activities-table__title h3{margin:0;color:var(--text-primary);font-size:1.25rem;font-weight:600}.strava-badge{background:linear-gradient(135deg,#fc4c02,#ff7e33);color:#fff;padding:.25rem .75rem;border-radius:var(--border-radius-sm);font-size:.75rem;font-weight:700;letter-spacing:.5px;box-shadow:0 2px 4px #fc4c0233}.strava-activities-table__count{color:var(--text-secondary);font-size:.875rem;background:var(--gray-100);padding:.5rem 1rem;border-radius:var(--border-radius-md);display:flex;align-items:center;gap:.5rem}.filter-active-badge{display:inline-flex;align-items:center;gap:.25rem;background:var(--primary-color);color:#fff;padding:.25rem .5rem;border-radius:var(--border-radius-sm);font-size:.75rem;font-weight:600;cursor:help}.strava-activities-table__filters{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-bg-secondary);border-radius:12px;flex-wrap:wrap;justify-content:space-between}.filter-buttons{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;flex:1}.period-filter-controls{display:flex;align-items:center;gap:var(--spacing-sm);margin-left:auto;flex-wrap:nowrap;padding-left:var(--spacing-md)}.date-picker-group{display:flex;align-items:center;gap:.375rem}.date-picker-group label{font-size:.8125rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;margin:0}.btn-calculate-period{padding:.5rem 1rem;background:var(--color-accent-primary);border-radius:var(--border-radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;height:36px}.btn-calculate-period svg{font-size:1.05rem;color:#fff}.btn-calculate-period:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 2px 8px #38bdf840}.btn-calculate-period:active{transform:translateY(0)}.btn-calculate-period:disabled{background:var(--gray-400);cursor:not-allowed;opacity:.6}.btn-calculate-period:disabled:hover{transform:none;box-shadow:none}.period-filter-controls .custom-datepicker-input{display:flex;align-items:center;padding:.375rem .5rem;border-radius:var(--border-radius-md);background-color:var(--color-bg-primary);min-width:110px;max-width:110px;height:36px}.period-filter-controls .custom-datepicker-input input{border:none;width:100%;background-color:transparent;color:var(--color-text-primary);cursor:pointer;font-size:.8125rem;padding:0}.period-filter-controls .custom-datepicker-input svg{color:var(--color-text-secondary);font-size:.875rem;flex-shrink:0}@media (max-width: 479px){.period-filter-controls{display:grid;grid-template-columns:minmax(125px,1fr) minmax(125px,1fr) 36px;align-items:end;gap:var(--spacing-sm);padding-left:0}.period-filter-controls .date-picker-group{display:flex;flex-direction:column;gap:.3rem}.action-button-group{display:flex;flex-direction:column;gap:.3rem;align-items:stretch}.period-filter-controls .custom-datepicker-input{width:100%;min-width:0;max-width:none;height:40px;padding:.45rem .6rem}.period-filter-controls .custom-datepicker-input input{font-size:.875rem}.btn-calculate-period{height:36px;width:36px;min-width:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;line-height:1;background:var(--color-accent-primary);border-radius:var(--border-radius-md);overflow:visible}.btn-calculate-period:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 2px 8px #38bdf840}.btn-calculate-period svg{color:#fff!important;font-size:1.375rem;flex-shrink:0}}@media (min-width: 480px) and (max-width: 768px){.period-filter-controls{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:var(--spacing-sm);padding-left:var(--spacing-sm)}.period-filter-controls .custom-datepicker-input{width:100%;min-width:0;max-width:none;height:40px;padding:.45rem .6rem}.btn-calculate-period{height:36px;width:36px;min-width:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;line-height:1;background:var(--color-accent-primary);border-radius:var(--border-radius-md);overflow:visible}.btn-calculate-period:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 2px 8px #38bdf840}.btn-calculate-period svg{color:#fff!important;font-size:1.375rem;flex-shrink:0}}.strava-activities-table__filters svg{color:var(--text-secondary);font-size:1.125rem}.filter-buttons{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filter-btn{width:36px;height:36px;padding:0;background:var(--color-bg-primary);border-radius:var(--border-radius-md);font-size:1.375rem;cursor:pointer;transition:all .2s ease;color:var(--color-text-secondary);display:flex!important;align-items:center;justify-content:center;flex-shrink:0}.filter-btn svg{font-size:1.375rem;flex-shrink:0}.filter-btn .filter-icon{display:inline-flex;align-items:center;font-size:1.375rem}.filter-btn .filter-icon svg{color:inherit}.filter-btn:hover{background:#38bdf81a;border-color:var(--color-accent-primary);color:var(--color-accent-primary)}.filter-btn.active{border-bottom:2px solid var(--color-accent-primary);color:var(--color-text-primary);font-weight:600}.filter-btn.active:first-child{background:var(--color-accent-primary);border-bottom:none;color:#fff}.filter-btn.active:first-child svg{color:#fff!important}.filter-btn.active .filter-icon{filter:brightness(1.2)}.filter-dropdown,.filter-btn-dropdown{position:relative}.dropdown-chevron{margin-left:.25rem;font-size:1rem;transition:transform .2s ease}.dropdown-chevron.open{transform:rotate(180deg)}.filter-dropdown-menu{position:absolute;top:calc(100% + .25rem);left:0;min-width:180px;background:#fff;border-radius:var(--border-radius-md);box-shadow:0 4px 12px #0000001a;z-index:100;max-height:300px;overflow-y:auto}.filter-dropdown-item{width:100%;padding:.75rem 1rem;border:none;background:transparent;text-align:left;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;color:var(--text-secondary);display:flex;align-items:center;gap:.5rem}.filter-dropdown-item:hover{background:var(--gray-50);color:var(--text-primary)}.filter-dropdown-item.active{background:#38bdf826;color:var(--color-text-primary);font-weight:600}.filter-dropdown-item.active .filter-icon{filter:brightness(1.2)}.filter-dropdown-item .filter-icon svg{color:inherit}.strava-activities-table__container{overflow-x:auto;border-radius:var(--border-radius-md)}.strava-activities-table__container{overflow-x:auto;overflow-y:visible;border-radius:var(--border-radius-md)}.strava-activities-table__table{width:100%;border-collapse:collapse;min-width:600px}.strava-activities-table__table thead{position:sticky;top:0;z-index:10;background:var(--color-bg-secondary)}.strava-activities-table__table th{padding:.5rem .375rem;text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;background:var(--color-bg-secondary)}.strava-activities-table__table th svg{margin-right:.2rem;vertical-align:middle;font-size:.75rem}.strava-activities-table__table tbody tr{transition:background-color .2s ease,transform .15s ease}.strava-activities-table__table tbody tr:nth-child(2n){background:#ffffff05}.strava-activities-table__table tbody tr:nth-child(odd){background:#00000026}.strava-activities-table__table tbody tr:hover{background:#38bdf814;transform:translate(2px);box-shadow:-2px 0 0 0 var(--color-accent-primary)}.strava-activities-table__table tbody tr:last-child{border-bottom:none}.strava-activities-table__table td{padding:.5rem .375rem;color:var(--text-primary);font-size:.75rem;white-space:nowrap}.sport-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.375rem .6rem;border-radius:var(--border-radius-md);background:var(--gray-50);color:var(--text-primary);font-weight:500;font-size:.8125rem;white-space:nowrap}.sport-badge .sport-icon{display:inline-flex;align-items:center;font-size:1.125rem}.strava-activities-table__date{font-weight:500;color:var(--text-primary);min-width:75px}.strava-activities-table__name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);font-weight:500;cursor:help}.strava-activities-table__distance,.strava-activities-table__duration,.strava-activities-table__pace,.strava-activities-table__bpm,.strava-activities-table__cadence,.strava-activities-table__elevation{font-weight:600;color:var(--text-primary);font-size:.75rem}.strava-activities-table__bpm .metric-value,.strava-activities-table__cadence .metric-value,.strava-activities-table__elevation .metric-value,.strava-activities-table__distance .metric-value,.strava-activities-table__duration .metric-value,.strava-activities-table__pace .metric-value{color:var(--success-color);font-weight:600;font-size:.75rem}.metric-na{color:var(--text-tertiary);font-style:italic}.metric-empty{color:var(--text-tertiary);opacity:.3;font-weight:300;font-size:1rem;-webkit-user-select:none;user-select:none}.strava-activities-table__footer{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--gray-200)}.strava-activities-table__footer p{display:flex;align-items:center;gap:var(--spacing-sm);margin:0;color:var(--text-secondary);font-size:.875rem}.strava-activities-table__footer svg{color:#fc4c02}.strava-activities-table__loading-overlay{position:fixed;inset:0;background:#0000008f;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease;overflow:hidden}.strava-activities-table__loading-overlay:before{content:"";position:absolute;inset:0;background:inherit}.loading-overlay-content{text-align:center;background:#fff;padding:2rem 3rem;border-radius:var(--border-radius-lg);box-shadow:0 8px 24px #0000001f}.loading-overlay-content .spinner{font-size:3rem;color:var(--primary-color);animation:spin 1s linear infinite;display:block;margin:0 auto}.loading-overlay-content p{margin-top:var(--spacing-md);color:var(--text-secondary);font-size:1rem;font-weight:500}.strava-activities-table__loading{text-align:center;padding:var(--spacing-xl)}.strava-activities-table__loading .spinner{font-size:2rem;color:var(--primary-color);animation:spin 1s linear infinite}.strava-activities-table__loading p{margin-top:var(--spacing-md);color:var(--text-secondary)}.strava-activities-table__error{text-align:center;padding:var(--spacing-xl);color:var(--error-color)}.strava-activities-table__empty{text-align:center;padding:var(--spacing-xl) var(--spacing-lg)}.strava-activities-table__empty svg{color:var(--text-tertiary);margin-bottom:var(--spacing-md)}.strava-activities-table__empty h4{margin:var(--spacing-md) 0;color:var(--text-primary);font-size:1.125rem}.strava-activities-table__empty p{color:var(--text-secondary);max-width:400px;margin:0 auto}.strava-activities-table__pagination{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--gray-50);border-radius:var(--border-radius-md);flex-wrap:wrap;gap:var(--spacing-md)}.pagination-info{color:var(--text-secondary);font-size:.875rem;font-weight:500}.pagination-controls{display:flex;gap:.5rem}.pagination-controls button{padding:.6rem .8rem;background:transparent;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:.875rem;font-weight:500;min-width:38px;display:flex;align-items:center;justify-content:center}.pagination-controls button:hover:not(:disabled){background:var(--gray-50);color:var(--text-primary);border-color:var(--primary-color);transform:translateY(-1px);box-shadow:0 2px 8px #38bdf81f}.pagination-controls button.active{background:linear-gradient(135deg,#38bdf8,#3b82f6);color:#fff;font-weight:600;border-color:transparent;box-shadow:0 4px 12px #3b82f640}.pagination-controls button:disabled{opacity:.4;cursor:not-allowed;background:transparent}.pagination-ellipsis{display:flex;align-items:center;justify-content:center;padding:.5rem .75rem;color:var(--text-tertiary);font-size:.875rem;-webkit-user-select:none;user-select:none;min-width:36px}.pagination-size{display:flex;align-items:center;gap:.75rem}.pagination-size label{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.875rem;font-weight:500}.pagination-size select{padding:.6rem .8rem;border-radius:6px;background:transparent;color:var(--text-primary);cursor:pointer;font-size:.875rem;font-weight:500;border:1px solid var(--border-color);transition:all .2s ease}.pagination-size select:hover{background:var(--gray-50);border-color:var(--primary-color)}.pagination-size select:focus{outline:none;background:var(--gray-50);border-color:var(--primary-color);box-shadow:0 0 0 3px #38bdf81a}@media (max-width: 1023px){.filter-buttons{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.strava-activities-table{padding:0}.strava-activities-table__header{flex-direction:column;align-items:flex-start}.strava-activities-table__title h3{font-size:1.125rem}.strava-activities-table__filters{flex-direction:column;align-items:stretch}.filter-buttons{grid-template-columns:repeat(2,1fr)}.period-filter-controls{border-left:none;border-top:none;padding-top:0;margin-top:0;margin-left:0}.date-picker-group{flex:unset;min-width:0}@media (max-width: 375px){.period-filter-controls{grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.btn-calculate-period{grid-column:1 / -1;justify-self:center;width:min(220px,70%)}}.filter-dropdown{grid-column:1 / -1}.filter-btn-dropdown{width:100%}.filter-dropdown-menu{width:100%;min-width:unset}.strava-activities-table__container{margin:0}.strava-activities-table__table th,.strava-activities-table__table td{padding:.375rem .5rem;font-size:.75rem}.strava-activities-table__pagination{flex-direction:column;align-items:stretch}.pagination-controls{justify-content:center}}.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:var(--font-size-xl);color:var(--color-text-secondary)}.detail-item strong{display:block;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.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:var(--font-size-lg);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)}.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{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))}.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}}.tooltip-wrapper{position:relative;display:inline-flex;flex:0 0 auto}.tooltip-trigger{display:inline-flex;width:100%;height:100%;outline:none;cursor:pointer}.tooltip-trigger:focus-visible{outline:2px solid rgba(56,189,248,.6);outline-offset:4px;border-radius:12px}.tooltip-content{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);background:#0f172af2;color:#e2e8f0;border-radius:10px;border:1px solid rgba(148,163,184,.35);box-shadow:0 16px 40px #0f172a8c;padding:.85rem 1rem;min-width:200px;max-width:min(280px,82vw);width:max-content;font-size:.85rem;line-height:1.45;text-align:left;z-index:30;pointer-events:none;white-space:normal}.tooltip-content:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);width:12px;height:12px;background:inherit;border-left:1px solid rgba(148,163,184,.35);border-bottom:1px solid rgba(148,163,184,.35);border-radius:0 0 4px;transform-origin:center;transform:translate(-50%) rotate(45deg)}.tooltip-wrapper[data-placement=bottom] .tooltip-content{top:calc(100% + 10px);bottom:auto}.tooltip-wrapper[data-placement=bottom] .tooltip-content:after{top:auto;bottom:100%;transform:translate(-50%) rotate(45deg);border-left:none;border-bottom:none;border-top:1px solid rgba(148,163,184,.35);border-right:1px solid rgba(148,163,184,.35)}@media (max-width: 640px){.tooltip-content{font-size:.8rem;padding:.75rem .85rem}}.period-controls{display:flex;padding:var(--spacing-md);border-bottom:1px solid var(--color-border-subtle);width:100%;max-width:100%}.period-controls-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap;align-items:flex-end;width:100%;max-width:100%}.date-picker-group{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-secondary);min-width:0;flex:1 1 auto;max-width:100%;overflow:hidden}.period-controls-row .date-picker-group{flex:1 1 calc(50% - var(--spacing-sm))}.plan-select-group{flex:1 1 100%;width:100%;max-width:none;min-width:0;box-sizing:border-box}.plan-select-group label{white-space:nowrap;font-weight:var(--font-weight-medium, 500)}.plan-select-wrapper{position:relative;display:flex;align-items:center;gap:8px;background:#0f172a99;border:1px solid rgba(148,163,184,.35);border-radius:var(--radius-md, 10px);padding:8px 12px;transition:all .2s ease;flex:1 1 auto;max-width:100%;width:100%;overflow:hidden;min-width:0}.plan-select-wrapper:hover{border-color:#38bdf88c;box-shadow:0 8px 24px #38bdf838}.plan-select-icon{color:var(--color-text-secondary);font-size:.9rem;flex-shrink:0}.plan-select-control{flex:1 1 auto;background:transparent;border:none;color:var(--color-text-primary, #e2e8f0);font-size:.9rem;font-weight:500;padding:0 28px 0 0;cursor:pointer;outline:none;appearance:none;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-select-control:disabled{cursor:not-allowed;color:var(--text-muted, #94a3b8)}.plan-select-control option{background:#0f172a;color:#e2e8f0}.plan-select-control:focus-visible{outline:none}.plan-select-chevron{position:absolute;right:12px;color:var(--color-text-secondary);pointer-events:none;font-size:.9rem}.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!important;align-items:center;border:1px solid var(--color-border-primary);padding:.5rem;border-radius:var(--border-radius-md);background-color:var(--color-bg-primary);min-height:40px;gap:.5rem;cursor:pointer}.custom-datepicker-input input{border:none!important;width:100%;background-color:transparent!important;color:var(--color-text-primary)!important;cursor:pointer;flex:1;min-width:80px;font-size:14px;font-family:inherit}.custom-datepicker-input svg{color:var(--color-text-secondary);flex-shrink:0;cursor:pointer}.kpi-principle-card{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:.875rem 1rem;transition:all var(--transition-base);flex:1 1 140px;min-width:140px}.kpi-principle-card:hover{transform:translateY(-4px);border-color:var(--border-color-hover);box-shadow:0 12px 40px #00d9ff26}.kpi-principle-card .kpi-icon{font-size:28px;color:var(--primary-cyan);filter:drop-shadow(0 0 20px rgba(0,217,255,.3));flex-shrink:0}.kpi-principle-card .kpi-value{font-size:32px;font-weight:700;color:var(--text-primary);line-height:1}.kpi-principle-card .kpi-label{font-size:13px;color:var(--text-secondary);margin-top:.25rem}.athlete-progress-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.header-row-title{width:100%;text-align:left}.header-row-controls{width:100%}.recharts-legend-wrapper{font-size:11px!important;width:100%!important}.recharts-legend-wrapper ul{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:center!important;gap:8px!important}.recharts-legend-item{margin-right:6px!important;font-size:11px!important;display:inline-flex!important;flex-direction:row!important;align-items:center!important}.recharts-legend-item-text{font-size:11px!important;white-space:nowrap!important;display:inline!important}@media (max-width: 768px){.progress-page-container,.coach-progress-wrapper{padding:0 16px 80px!important;overflow-x:hidden!important;width:100%!important;box-sizing:border-box!important}.progress-page-container .page-header,.coach-progress-wrapper .page-header{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:16px!important;margin-bottom:16px!important;padding:0 16px!important}.progress-page-container h1,.coach-progress-wrapper h1{padding:0!important;font-size:1.5rem!important;line-height:1.2!important;margin:0!important}.progress-page-container .period-controls,.coach-progress-wrapper .period-controls{padding:0!important;border-bottom:none!important}.progress-page-container .period-controls-row,.coach-progress-wrapper .period-controls-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) clamp(48px,9vw,64px)!important;align-items:start!important;gap:12px!important;width:100%!important;box-sizing:border-box!important;overflow:visible!important}.period-controls-row>div:first-child{grid-column:1 / 4!important;width:100%!important;max-width:100%!important}.date-picker-group{width:100%!important;margin:0!important;display:flex!important;flex-direction:column!important;gap:6px!important}.period-controls-row .date-picker-group{min-width:0!important}.date-picker-group label{font-size:12px!important;font-weight:500!important;color:var(--color-text-secondary)!important;margin:0!important;padding:0 0 0 2px!important;text-align:left!important;align-self:flex-start!important;line-height:1.2!important}.custom-datepicker-input{position:relative!important;display:flex!important;align-items:center!important;width:100%!important;height:46px!important;padding:0 12px 0 38px!important;gap:8px!important;border:1px solid var(--border-color)!important;border-radius:10px!important;background:#0f172a99!important;box-sizing:border-box!important}.react-datepicker-wrapper{width:100%!important;border:none!important;background:transparent!important;padding:0!important;margin:0!important}.react-datepicker__input-container{width:100%!important;border:none!important;background:transparent!important;padding:0!important;margin:0!important;display:block!important}.react-datepicker__input-container input,.custom-datepicker-input input{height:44px!important;width:100%!important;background:#0f172a99!important;border:1px solid var(--border-color)!important;border-radius:10px!important;color:#fff!important;padding:0 10px!important;font-size:14px!important;text-align:left!important;box-sizing:border-box!important}.custom-datepicker-input input{height:100%!important;border:none!important;background:transparent!important;padding:0!important;text-align:left!important}.custom-datepicker-input svg{position:absolute!important;left:12px!important;top:50%!important;transform:translateY(-50%)!important;color:var(--color-text-secondary)!important;z-index:2!important;pointer-events:none!important}.react-datepicker__input-container input:focus-visible,.custom-datepicker-input input:focus-visible{outline:none!important;border-color:var(--accent-color)!important;box-shadow:0 0 0 1px var(--accent-color)!important}.custom-datepicker-input:focus-within{border-color:var(--accent-color)!important;box-shadow:0 0 0 1px var(--accent-color)!important}.period-controls-row>div:last-child{grid-column:3 / 4!important;width:clamp(48px,9vw,64px)!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:6px!important;margin-top:0!important;padding:0!important;align-self:start!important;justify-self:end!important;box-sizing:border-box!important}.period-controls-row>div:last-child label{font-size:12px!important;font-weight:500!important;color:var(--color-text-secondary)!important;white-space:nowrap!important;text-align:left!important;width:100%!important}.period-controls-row>div:last-child button{flex-shrink:0!important;align-self:flex-start!important}.period-controls-row>div:last-child label{font-size:12px!important;font-weight:500!important;color:var(--color-text-secondary)!important;white-space:nowrap!important}.period-controls-row>div:last-child button{flex-shrink:0!important;box-sizing:border-box!important;width:44px!important;height:44px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;align-self:center!important;justify-self:end!important}.progress-page-container footer button,.coach-progress-wrapper button,button.back-button{white-space:nowrap!important;display:inline-flex!important;align-items:center!important;gap:6px!important;padding:10px 16px!important;height:44px!important;width:auto!important;min-width:100px!important}.progress-footer{display:flex!important;justify-content:center!important;width:100%!important;padding:var(--spacing-lg) 0!important;box-sizing:border-box!important}.progress-footer .progress-back-button{width:auto!important;max-width:320px!important;align-self:center!important;justify-content:center!important}.recharts-legend-wrapper{font-size:10px!important}}.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}}.goal-details-modal{max-width:600px;width:90%}.detail-section{margin-bottom:var(--spacing-lg)}.detail-label{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.detail-label svg{width:16px;height:16px}.detail-value{font-size:var(--font-size-md);color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.detail-value-large{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-accent-primary);line-height:1.4}.detail-value-description{background:#1e293b80;padding:var(--spacing-md);border-radius:8px;border:1px solid var(--color-border-primary);line-height:1.6;white-space:pre-wrap}.detail-value .badge{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.badge-type-event{background:#38bdf833;color:var(--color-accent-primary);border:1px solid var(--color-accent-primary)}.badge-type-performance{background:#2ecc7133;color:var(--color-semantic-success);border:1px solid var(--color-semantic-success)}.badge-type-process{background:#f39c1233;color:var(--color-semantic-warning);border:1px solid var(--color-semantic-warning)}.badge-priority{font-weight:var(--font-weight-bold)}.detail-timestamps{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border-primary)}.timestamp-item{font-size:var(--font-size-xs);color:var(--color-text-secondary);opacity:.8}.modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;flex-wrap:wrap}.btn-warning{background-color:#f39c121a;color:var(--color-semantic-warning);border-color:var(--color-semantic-warning)}.btn-warning:hover:not(:disabled){background-color:#f39c1233;border-color:var(--color-semantic-warning)}.btn-success{background-color:#2ecc711a;color:var(--color-semantic-success);border-color:var(--color-semantic-success)}.btn-success:hover:not(:disabled){background-color:#2ecc7133;border-color:var(--color-semantic-success)}@media (max-width: 480px){.goal-details-modal{width:95%}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}.goals-calendar{width:100%}.calendar-header{display:flex;flex-direction:column;margin-bottom:var(--spacing-lg);gap:var(--spacing-md)}.calendar-year-controls{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md)}.year-nav-btn,.year-today-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--primary-color);color:var(--text-light);border:none;border-radius:8px;cursor:pointer;font-size:var(--font-sm);font-weight:500;transition:all .2s ease}.year-nav-btn{width:36px;height:36px;padding:0}.year-nav-btn:hover,.year-today-btn:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.year-nav-btn:active,.year-today-btn:active{transform:translateY(0)}.calendar-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.calendar-title svg{color:var(--color-accent-primary);width:24px;height:24px}.calendar-legend{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.legend-icon{width:16px;height:16px}.legend-icon-event{color:var(--color-accent-primary)}.legend-icon-performance{color:var(--color-semantic-success)}.legend-icon-process{color:var(--color-semantic-warning)}.calendar-grid{display:grid;gap:var(--spacing-sm);grid-template-columns:repeat(4,1fr);max-width:100%}@media (max-width: 1024px){.calendar-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.calendar-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.calendar-grid{grid-template-columns:1fr}.calendar-header{flex-direction:column;align-items:flex-start}}.calendar-month{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:8px;padding:8px;transition:all .2s ease;min-width:0}.calendar-month:hover{border-color:var(--color-accent-primary);box-shadow:0 4px 12px #38bdf81a}.month-header{display:flex;align-items:center;justify-content:center;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--color-border-primary)}.month-name{font-size:14px;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.month-badge{background:var(--color-accent-primary);color:var(--color-bg-primary);font-size:9px;font-weight:var(--font-weight-bold);padding:2px 5px;border-radius:8px;min-width:16px;text-align:center;line-height:1}.month-calendar{width:100%}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:0;margin-bottom:2px}.weekday{font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-text-secondary);text-align:center;padding:2px 0}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:0}.calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;border-radius:3px;background:#1e293b4d;cursor:default;transition:all .2s ease;min-height:24px;max-height:24px;font-size:12px;margin:1px}.calendar-day.empty{background:transparent}.calendar-day.has-goal{cursor:pointer;background:#1e293b99}.calendar-day.has-goal:hover{background:#38bdf81a;border:1px solid var(--color-accent-primary);transform:scale(1.05);z-index:10}.day-number{font-size:12px;color:var(--color-text-secondary);font-weight:var(--font-weight-medium);line-height:1;z-index:1;text-shadow:0 1px 2px rgba(0,0,0,.5);text-align:center}.calendar-day.has-goal .day-number{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.goal-indicator{display:flex;align-items:center;justify-content:center;gap:2px;margin-top:2px;transition:all .2s ease;position:relative;z-index:2}.goal-indicator.archived{opacity:.4}.goal-icon{width:18px;height:18px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5));stroke-width:2.5}.goal-icon-event{color:var(--color-accent-primary)}.goal-icon-performance{color:var(--color-semantic-success)}.goal-icon-process{color:var(--color-semantic-warning)}.goal-count{font-size:8px;font-weight:var(--font-weight-bold);color:var(--color-accent-primary);background:#38bdf833;padding:1px 3px;border-radius:5px;line-height:1}@media (max-width: 768px){.calendar-day{min-height:26px}.day-number{font-size:8px}.goal-icon{width:12px;height:12px}}@media (max-width: 480px){.calendar-day{min-height:32px}.day-number{font-size:10px}.goal-icon{width:14px;height:14px}}.my-goals-page{padding:var(--spacing-xl);max-width:1200px;margin:0 auto}.tab-panel .my-goals-page{padding:0;max-width:none}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--spacing-xl);gap:var(--spacing-lg)}.page-header-content{flex:1}.page-title{display:flex;align-items:center;gap:var(--spacing-md);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm) 0}.page-title svg{color:var(--color-accent-primary);width:32px;height:32px}.page-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-base);margin:0}.goals-filters{background:var(--color-bg-secondary);border-radius:12px;padding:var(--spacing-lg);margin-bottom:var(--spacing-xl);border:1px solid var(--color-border-primary)}.filter-group{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.filter-group svg{color:var(--color-text-secondary);width:20px;height:20px}.filter-label{font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-size:var(--font-size-sm)}.filter-buttons{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.filter-btn{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border-primary);background:#1e293b4d;color:var(--color-text-secondary);border-radius:8px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s}.filter-btn:hover{border-color:var(--color-accent-primary);color:var(--color-accent-primary);background-color:#38bdf81a}.filter-btn.active{background-color:var(--color-accent-primary);color:var(--color-bg-primary);border-color:var(--color-accent-primary)}.goals-list{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-xxl)}.goal-card{background:var(--color-bg-secondary);border-radius:12px;padding:var(--spacing-lg);border:1px solid var(--color-border-primary);transition:all .2s}.goal-card:hover{border-color:var(--color-accent-primary);background:#1e293bb3}.goal-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.goal-info{flex:1}.goal-objective{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm) 0;line-height:1.4}.goal-meta{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:6px;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.025em}.badge-active{background-color:#2ecc7133;color:var(--color-semantic-success);border:1px solid var(--color-semantic-success)}.badge-archived{background-color:#94a3b833;color:var(--color-text-secondary);border:1px solid var(--color-border-primary)}.badge-priority-A{background-color:#e74c3c33;color:var(--color-semantic-danger);border:1px solid var(--color-semantic-danger)}.badge-priority-B{background-color:#f39c1233;color:var(--color-semantic-warning);border:1px solid var(--color-semantic-warning)}.badge-priority-C{background-color:#38bdf833;color:var(--color-accent-primary);border:1px solid var(--color-accent-primary)}.badge-type{background-color:#94a3b81a;color:var(--color-text-secondary);border:1px solid var(--color-border-primary)}.goal-actions{display:flex;gap:var(--spacing-sm)}.btn-icon{background:#1e293b80;border:1px solid var(--color-border-primary);padding:var(--spacing-sm);border-radius:6px;cursor:pointer;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-icon:hover:not(:disabled){background-color:#38bdf81a;color:var(--color-accent-primary);border-color:var(--color-accent-primary)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-icon svg{width:18px;height:18px}.btn-icon.btn-warning:hover:not(:disabled){background-color:#f39c121a;color:var(--color-semantic-warning);border-color:var(--color-semantic-warning)}.btn-icon.btn-success:hover:not(:disabled){background-color:#2ecc711a;color:var(--color-semantic-success);border-color:var(--color-semantic-success)}.spinner-small{width:18px;height:18px;border:2px solid var(--color-border-primary);border-top-color:var(--color-accent-primary);border-radius:50%;animation:spin .8s linear infinite}.goal-card-body{display:flex;flex-direction:column;gap:var(--spacing-sm)}.goal-detail{display:flex;gap:var(--spacing-sm)}.detail-label{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:var(--font-size-sm);min-width:fit-content}.detail-value{color:var(--color-text-primary);font-size:var(--font-size-sm)}.goal-notes{display:flex;flex-direction:column;gap:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border-primary)}.goal-notes .detail-value{color:var(--color-text-secondary);line-height:1.6}.goal-timestamps{display:flex;gap:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border-primary)}.timestamp{color:var(--color-text-secondary);font-size:var(--font-size-xs);opacity:.7}.goals-timeline-section{margin-top:var(--spacing-xxl)}.section-title{display:flex;align-items:center;gap:var(--spacing-md);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-lg) 0}.section-title svg{color:var(--color-accent-primary);width:24px;height:24px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl) var(--spacing-xl);text-align:center}.loading-container p{margin-top:var(--spacing-md);color:var(--color-text-secondary)}.spinner{width:40px;height:40px;border:3px solid var(--color-border-primary);border-top-color:var(--color-accent-primary);border-radius:50%;animation:spin .8s linear infinite}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl) var(--spacing-xl);text-align:center;background:var(--color-bg-secondary);border-radius:12px;border:2px dashed var(--color-border-primary)}.empty-icon{width:64px;height:64px;color:var(--color-text-secondary);opacity:.5;margin-bottom:var(--spacing-md)}.empty-state h3{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm) 0}.empty-state p{color:var(--color-text-secondary);margin:0 0 var(--spacing-lg) 0}.alert{padding:var(--spacing-md);border-radius:8px;display:flex;align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);border:1px solid}.alert svg{width:20px;height:20px;flex-shrink:0;margin-top:2px}.alert-error{background-color:#e74c3c1a;color:var(--color-semantic-danger);border-color:var(--color-semantic-danger)}.btn{padding:var(--spacing-sm) var(--spacing-lg);border-radius:8px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s;border:1px solid;display:inline-flex;align-items:center;gap:var(--spacing-sm);white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--color-accent-primary);color:var(--color-bg-primary);border-color:var(--color-accent-primary)}.btn-primary:hover:not(:disabled){background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.btn-secondary{background-color:#1e293b80;color:var(--color-text-primary);border-color:var(--color-border-primary)}.btn-secondary:hover:not(:disabled){background-color:#1e293bcc;border-color:var(--color-accent-primary)}.btn svg{width:18px;height:18px}@media (max-width: 768px){.my-goals-page{padding:var(--spacing-lg)}.page-header{flex-direction:column;align-items:flex-start}.page-title{font-size:var(--font-size-xl)}.goal-card{padding:var(--spacing-lg)}.goal-card-header{flex-direction:column}.goal-actions{width:100%;justify-content:flex-end}.goals-filters{padding:var(--spacing-lg)}.filter-group{flex-direction:column;align-items:flex-start}.filter-buttons{width:100%}.filter-btn{flex:1;text-align:center}}@media (max-width: 480px){.page-title{font-size:var(--font-size-lg)}.goal-objective{font-size:var(--font-size-md)}.goal-meta{flex-direction:column;align-items:flex-start}.goal-timestamps{flex-direction:column;gap:var(--spacing-xs)}}.career-event-card{background:var(--color-bg-secondary);border-radius:8px;padding:var(--spacing-md);border-left:4px solid var(--color-accent-primary);transition:all .2s ease;margin-bottom:var(--spacing-md)}.career-event-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.career-event-card .card-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.career-event-card .icon{font-size:24px;display:flex;align-items:center;justify-content:center}.career-event-card .header-info{display:flex;flex-direction:column;gap:4px;flex:1}.career-event-card .event-type{font-size:var(--font-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.career-event-card .event-date{font-size:var(--font-xs);color:var(--color-text-secondary)}.career-event-card .badge-strava{display:flex;align-items:center;gap:4px;padding:4px 8px;background:#fc4c02;color:#fff;border-radius:12px;font-size:10px;font-weight:var(--font-weight-semibold)}.career-event-card .card-body{display:flex;flex-direction:column;gap:var(--spacing-sm)}.career-event-card .event-description{font-size:var(--font-md);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin:0;line-height:1.5}.performance-details,.injury-details,.milestone-details{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);padding-top:var(--spacing-xs);border-top:1px solid var(--color-border-primary)}.metric{display:flex;flex-direction:column;gap:4px}.metric-label{font-size:var(--font-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:var(--font-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.severity{padding:2px 8px;border-radius:12px;font-size:var(--font-xs);font-weight:var(--font-weight-semibold)}.severity-minor{background:#fef3c7;color:#92400e}.severity-moderate{background:#fed7aa;color:#9a3412}.severity-severe{background:#fecaca;color:#991b1b}.milestone-badge{padding:4px 12px;background:var(--color-accent-primary);color:#fff;border-radius:12px;font-size:var(--font-xs);font-weight:var(--font-weight-semibold)}.event-notes{padding-top:var(--spacing-xs);border-top:1px solid var(--color-border-primary)}.event-notes p{font-size:var(--font-sm);color:var(--color-text-secondary);margin:0;line-height:1.6;font-style:italic}@media (max-width: 768px){.career-event-card{padding:var(--spacing-sm)}.career-event-card .icon{font-size:20px}.career-event-card .event-description{font-size:var(--font-sm)}}.career-timeline{display:flex;flex-direction:column;gap:var(--spacing-xl);width:100%;max-width:900px;margin:0 auto}.timeline-month{display:flex;flex-direction:column;gap:var(--spacing-md)}.month-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-border-primary)}.month-title{font-size:var(--font-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;text-transform:capitalize}.event-count{font-size:var(--font-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.month-events{display:flex;flex-direction:column;gap:var(--spacing-md);padding-left:var(--spacing-md);position:relative}.month-events:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--color-border-primary)}.career-timeline-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);text-align:center;background:var(--color-bg-secondary);border-radius:12px;min-height:300px}.career-timeline-empty p{font-size:var(--font-md);color:var(--color-text-secondary);margin:var(--spacing-sm) 0}.career-timeline-empty .help-text{font-size:var(--font-sm);color:var(--color-text-tertiary)}@media (max-width: 768px){.career-timeline{gap:var(--spacing-lg)}.month-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.month-title{font-size:var(--font-md)}.month-events{padding-left:var(--spacing-sm)}}.strava-connection{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;margin-bottom:2rem}.strava-connection__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.strava-connection__logo{display:flex;align-items:center;gap:.75rem}.strava-icon{width:32px;height:32px;flex-shrink:0}.strava-connection__logo span{font-size:1.25rem;font-weight:600;color:#e2e8f0!important;margin:0}.strava-connection__badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:500}.strava-connection__badge--connected{background:#d1fae5;color:#065f46}.strava-connection__loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:2rem;color:#6b7280}.strava-connection__loading .spinner{animation:spin 1s linear infinite}.strava-connection__content{margin-top:1rem}.strava-connection__description{font-size:1rem;color:#4a5568;margin-bottom:1rem;line-height:1.6}.strava-connection__note{font-size:.875rem;color:#718096;margin-top:1rem;text-align:center;line-height:1.5}.strava-connection__benefits{list-style:none;padding:0;margin:1.5rem 0}.strava-connection__benefits li{padding:.5rem 0;color:#2d3748;font-size:.95rem}.strava-connection__info{background:#f7fafc;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.strava-connection__profile{margin-bottom:1rem}.strava-connection__name{font-size:1.1rem;font-weight:600;color:#1a202c;margin:0 0 .25rem}.strava-connection__username{font-size:.95rem;color:#718096;margin:0}.strava-connection__sync-info{display:flex;gap:.5rem;margin-bottom:1rem;padding:.75rem;background:#f7fafc;border-radius:8px}.strava-connection__sync-label{font-weight:500;color:#4a5568}.strava-connection__sync-time{color:#2d3748}.strava-connection__info-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #e2e8f0}.strava-connection__info-row:last-child{border-bottom:none}.strava-connection__info-row .label{font-weight:500;color:#4a5568}.strava-connection__info-row .value{color:#1a202c}.strava-connection__button{width:100%;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;border:none;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.strava-connection__actions{display:flex;gap:.75rem;margin-top:1rem}.strava-connection__actions .strava-connection__button{width:auto;flex:1}.strava-connection__button{white-space:nowrap}@media (max-width: 380px){.strava-connection__actions{flex-wrap:wrap}.strava-connection__actions .strava-connection__button{flex:1 1 100%}.strava-connection__button{font-size:.95rem}}.strava-connection__button--connect{background:#fc4c02;color:#fff}.strava-connection__button--connect:hover:not(:disabled){background:#e03c00;transform:translateY(-1px);box-shadow:0 4px 12px #fc4c024d}.strava-connection__button--sync{background:#fc4c02;color:#fff}.strava-connection__button--sync:hover:not(:disabled){background:#e03c00;transform:translateY(-1px);box-shadow:0 4px 12px #fc4c024d}.strava-connection__button--disconnect{background:#f3f4f6;color:#374151}.strava-connection__button--disconnect:hover:not(:disabled){background:#e5e7eb}.strava-connection__button:disabled{opacity:.6;cursor:not-allowed}.strava-connection__modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.strava-connection__modal{background:#fff;border-radius:12px;max-width:450px;width:100%;box-shadow:0 20px 60px #0000004d}.strava-connection__modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e5e7eb}.strava-connection__modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#1a202c}.strava-connection__modal-close{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.strava-connection__modal-close:hover{color:#1a202c}.strava-connection__modal-body{padding:1.5rem}.strava-connection__modal-body p{margin:.75rem 0;color:#4a5568;line-height:1.6}.strava-connection__modal-footer{display:flex;gap:1rem;padding:1.5rem;border-top:1px solid #e5e7eb}.strava-connection__modal-footer button{flex:1;padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;border:none;cursor:pointer;transition:all .2s}.button-secondary{background:#f3f4f6;color:#374151}.button-secondary:hover{background:#e5e7eb}.button-danger{background:#ef4444;color:#fff}.button-danger:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}@media (prefers-color-scheme: dark){.strava-connection{background:#2d3748}.strava-connection__logo h3{color:#f7fafc}.strava-connection__description{color:#cbd5e0}.strava-connection__benefits li{color:#e2e8f0}.strava-connection__info{background:#1a202c}.strava-connection__info-row{border-bottom-color:#4a5568}.strava-connection__info-row .label{color:#a0aec0}.strava-connection__info-row .value{color:#f7fafc}.strava-connection__button--disconnect{background:#4a5568;color:#e2e8f0}.strava-connection__button--disconnect:hover:not(:disabled){background:#718096}.strava-connection__modal{background:#2d3748}.strava-connection__modal-header{border-bottom-color:#4a5568}.strava-connection__modal-header h3{color:#f7fafc}.strava-connection__modal-close{color:#a0aec0}.strava-connection__modal-close:hover{color:#f7fafc}.strava-connection__modal-body p{color:#cbd5e0}.strava-connection__modal-footer{border-top-color:#4a5568}.button-secondary{background:#4a5568;color:#e2e8f0}.button-secondary:hover{background:#718096}}@media (max-width: 768px){.strava-connection{padding:1rem}.strava-connection__header{flex-direction:column;align-items:flex-start;gap:1rem}.strava-connection__info-row{flex-direction:column;gap:.25rem}.strava-connection__modal-footer{flex-direction:column}}.profile-tabs{width:100%;max-width:1200px;margin:var(--spacing-lg) auto 0 auto}.tabs-nav{display:flex;gap:0;margin-bottom:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md) 0 var(--spacing-md);background:#33415599;border-radius:12px 12px 0 0;border-bottom:2px solid rgba(100,181,246,.2);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.tabs-nav::-webkit-scrollbar{display:none}.tab-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:none;border-bottom:3px solid transparent;color:var(--color-text-secondary, #94A3B8);font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-medium, 500);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap;position:relative}.tab-button:hover:not(.active){color:#7dd3fc;background:#38bdf80d;border-bottom-color:#7dd3fc4d}.tab-button.active{color:#38bdf8;border-bottom-color:#38bdf8;font-weight:var(--font-weight-semibold, 600);background:#38bdf814}.tab-button svg{width:18px;height:18px;transition:transform .3s ease}.tab-button.active svg{transform:scale(1.1)}.tab-content{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tab-content{width:100%}.tab-panel{display:none;width:100%}.tab-panel.active{display:block;width:100%;padding:var(--spacing-lg);background:#0f1724;border-radius:0 0 12px 12px;min-height:400px;box-sizing:border-box}.tab-panel .card{width:100%;max-width:none;background:#1e293b80;border:1px solid rgba(100,181,246,.2);box-sizing:border-box}.tab-panel .card__content{padding:var(--spacing-lg, 1.5rem)}.tab-panel .profile-fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg, 1.5rem)}@media (max-width: 768px){.profile-tabs{max-width:100%}.tabs-nav{padding:var(--spacing-xs) var(--spacing-sm) 0 var(--spacing-sm);flex-wrap:wrap}.tab-button{padding:var(--spacing-sm) var(--spacing-md);font-size:.8125rem;flex:1 1 auto;min-width:120px}.tab-button svg{width:16px;height:16px}.tab-panel.active{padding:var(--spacing-md)}.tab-panel .profile-fields-grid{grid-template-columns:1fr;gap:var(--spacing-md)}}.athlete-dashboard-layout{display:flex;flex-direction:column;min-height:100vh;background:linear-gradient(135deg,var(--color-bg-primary) 0%,#0a0f1a 100%);color:var(--color-text-primary);font-family:var(--font-family-sans)}.athlete-header-modern{position:sticky;top:0;z-index:1000;background:#0f1724d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(56,189,248,.15);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,4vw,2rem);height:64px;box-shadow:0 4px 16px #00000026}.logo-icon{font-size:1.75rem;line-height:1;color:var(--color-accent-primary);filter:drop-shadow(0 2px 4px rgba(56,189,248,.3));display:flex;align-items:center}.notification-badge{position:absolute;top:0;right:0;width:8px;height:8px;background:var(--color-semantic-danger);border-radius:50%;border:2px solid var(--color-bg-primary)}.tab-item{position:relative}.tab-item .notification-badge{top:8px;right:8px}.content-wrapper-modern{flex:1;padding:clamp(1rem,3vw,2rem);max-width:1600px;width:100%;margin:0 auto}@media (max-width: 767px){.athlete-header-modern{padding:1rem;height:auto;flex-wrap:wrap;gap:.5rem}.header-left{min-width:auto}}@media (max-width: 479px){.logo-text{display:none}.logo-icon{font-size:1.5rem}.tabs-navigation{order:3;width:100%;flex-basis:100%;justify-content:flex-start;gap:.25rem;overflow-x:auto;padding:.5rem 0;scrollbar-width:none;-ms-overflow-style:none}.tabs-navigation::-webkit-scrollbar{display:none}.tab-item{padding:.5rem .85rem;font-size:var(--font-size-xs);flex-shrink:0}.tab-item.active:after{bottom:-8px;height:2px}.tab-text{display:none}.tab-icon{font-size:1.25rem}.header-right{min-width:auto}.user-name{display:none}.user-menu-trigger{padding:.5rem}.content-wrapper-modern{padding:1rem}.profile-menu-dropdown,.user-dropdown,.dropdown-menu,[role=menu]{position:absolute!important;top:100%!important;right:16px!important;left:auto!important;width:auto!important;min-width:200px!important}}@media (min-width: 1400px){.athlete-header-modern{padding:0 3rem}.tabs-navigation{gap:.5rem}.tab-item{padding:.75rem 1.5rem;font-size:var(--font-size-base)}}.side-by-side-cards{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.kpi-divider{width:1px;background:#94a3b859;align-self:stretch;border-radius:999px;margin:0 .25rem}@media (max-width: 768px){.side-by-side-cards{grid-template-columns:1fr}.page-header{flex-direction:column!important;align-items:flex-start!important;gap:var(--spacing-md)!important}.page-header>div:last-child{width:100%;justify-content:flex-start!important}}.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:var(--font-size-xl)}}@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:var(--font-size-lg);margin-bottom:4px}.metric-indicator__value{font-size:var(--font-size-lg)}.metric-indicator__label{font-size:var(--font-size-xs)}}.filter-toolbar>div{cursor:default}.filter-toolbar>div:has(select:not(:disabled)){cursor:pointer}.filter-toolbar>div:hover{background:#334155b3!important;border-color:#ffffff26!important}.filter-toolbar select::-ms-expand{display:none}.filter-toolbar select:focus{outline:2px solid rgba(56,189,248,.3);outline-offset:2px}.filter-toolbar select:disabled{cursor:default;opacity:.5}.filter-toolbar select option{background-color:#1e293bf2;color:var(--color-text-primary);padding:8px 12px}.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:var(--font-size-sm);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%}}@media (min-width: 1024px){.lg\:col-span-8>div{height:clamp(380px,50vh,480px)}.lg\:col-span-4>div{height:clamp(380px,50vh,480px)}}@media (max-width: 1023px){.lg\:col-span-8>div{min-height:420px;height:auto}.lg\:col-span-4>div{height:auto!important;min-height:300px}}@media (max-width: 767px){.kpi-principle-card{padding:.4rem!important}.kpi-value{font-size:18px!important}.kpi-label{font-size:9px!important}.performance-cockpit-chart>div{min-height:350px!important}.performance-cockpit-insights .performance-insights-body{min-height:250px!important}}.performance-cockpit-scroll{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding-bottom:8px}.performance-cockpit-wrapper{height:auto;overflow:visible;padding:12px 16px 16px;gap:12px}@media (max-width: 768px){.page-container{padding-left:0!important;padding-right:0!important;overflow-x:hidden!important}.performance-cockpit-wrapper{padding:0!important;border:none!important;background:transparent!important;box-shadow:none!important;gap:0!important;overflow:visible!important;display:block!important}.performance-cockpit-grid{display:flex!important;flex-direction:column!important;gap:0!important;margin:0!important;padding:0!important}}.performance-cockpit-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;margin-bottom:1.5rem;align-items:start}@media (max-width: 1023px){.performance-cockpit-wrapper{height:auto!important;min-height:auto!important}.performance-cockpit-scroll{overflow-x:visible;height:auto!important}.performance-cockpit-grid{grid-template-columns:1fr;gap:.75rem;height:auto!important}.performance-cockpit-chart{height:auto!important;min-height:380px}.performance-cockpit-insights{height:auto!important;min-height:300px;margin-top:24px!important;background:transparent!important;box-shadow:none!important}.performance-insights-card{height:auto!important;min-height:300px!important;max-height:none!important;border:none!important;background:transparent!important;box-shadow:none!important}.performance-insights-header{padding:.75rem 1rem!important}}@media (min-width: 1024px){.performance-cockpit-wrapper{height:clamp(420px,68vh,620px);overflow:visible;padding:14px 24px 20px;gap:20px}.performance-cockpit-grid{grid-template-columns:62fr 38fr;gap:1.25rem;align-items:stretch}.performance-cockpit-scroll{overflow-x:visible}.performance-cockpit-insights,.performance-insights-card{height:100%}}.performance-cockpit-chart,.performance-cockpit-insights{width:100%;display:flex;flex-direction:column}.performance-insights-card{display:flex;flex-direction:column;height:100%;min-height:clamp(360px,45vh,440px)!important;max-height:clamp(360px,45vh,440px)!important;background:#1e293b80;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:none;border-radius:1rem;box-shadow:0 10px 30px #0000004d;overflow:visible}.performance-insights-header{display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;border-bottom:1px solid rgba(255,255,255,.1);background:transparent!important;padding-left:0!important;margin-bottom:16px!important;flex-shrink:0;flex-wrap:nowrap}.performance-insights-icon{color:var(--primary-cyan, #06b6d4);font-size:1rem;flex-shrink:0}.performance-insights-title{margin:0;font-size:.9375rem;font-weight:600;color:#fff;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.performance-insights-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:1.25rem;min-height:0;overscroll-behavior-y:contain}@media (max-width: 480px){.performance-insights-header{gap:.375rem}.performance-insights-title,.performance-insights-icon{font-size:.875rem}}.performance-insights-body::-webkit-scrollbar{width:6px}.performance-insights-body::-webkit-scrollbar-track{background:#ffffff05}.performance-insights-body::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.performance-insights-body::-webkit-scrollbar-thumb:hover{background:#ffffff40}.performance-insights-paragraph{display:block!important;margin:0 0 1.5rem!important;line-height:var(--line-height-base, 1.5)!important;text-align:justify!important;-webkit-hyphens:auto!important;hyphens:auto!important;font-size:var(--font-size-base)!important;color:#e2e8f0!important;font-weight:400!important;letter-spacing:.01em!important}.performance-insights-paragraph:last-child{margin-bottom:0!important}.performance-insights-text{width:100%!important;display:block!important;padding:0!important}.performance-insights-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;color:#6b7280;font-style:italic;opacity:.6;text-align:center}.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}.coach-dashboard-layout{display:flex;flex-direction:column;min-height:100vh;background:linear-gradient(135deg,var(--color-bg-primary) 0%,#0a0f1a 100%);color:var(--color-text-primary);font-family:var(--font-family-sans)}.coach-header-modern{position:sticky;top:0;z-index:1000;background:#0f1724d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(56,189,248,.15);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,4vw,2rem);height:64px;box-shadow:0 4px 16px #00000026}.header-left{display:flex;align-items:center;min-width:180px}.logo-modern{display:flex;align-items:center;gap:.5rem;cursor:pointer;transition:opacity .2s ease}.logo-modern:hover{opacity:.85}.logo-icon{font-size:1.75rem;line-height:1;color:var(--color-accent-primary);display:flex;align-items:center;filter:drop-shadow(0 2px 4px rgba(56,189,248,.3))}.logo-text{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-accent-primary);letter-spacing:-.02em}.tabs-navigation{display:flex;align-items:center;gap:.25rem;flex:1;justify-content:center;max-width:600px}.tab-item{display:flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;background:transparent;border:none;border-radius:8px;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family-sans);text-decoration:none;cursor:pointer;transition:all .2s ease;position:relative;white-space:nowrap}.tab-item:hover{background:#38bdf814;color:var(--color-accent-primary)}.tab-item.active{color:var(--color-accent-primary);background:#38bdf81f}.tab-item.active:after{content:"";position:absolute;bottom:-16px;left:50%;transform:translate(-50%);width:60%;height:3px;background:var(--color-accent-primary);border-radius:2px 2px 0 0;box-shadow:0 0 8px #38bdf866}.tab-icon{font-size:1.1rem;display:flex;align-items:center}.tab-text{font-weight:inherit}.header-right{display:flex;align-items:center;gap:1rem;min-width:180px;justify-content:flex-end}.user-menu-wrapper{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:.5rem;padding:.5rem .85rem;background:#38bdf814;border:1px solid rgba(56,189,248,.2);border-radius:8px;color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;font-family:var(--font-family-sans)}.user-menu-trigger:hover{background:#38bdf826;border-color:#38bdf859;transform:translateY(-1px)}.user-icon{font-size:1.15rem}.user-name{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown{position:absolute;top:calc(100% + 8px);right:0!important;left:auto!important;min-width:200px;max-width:90vw;background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:8px;box-shadow:0 8px 24px #00000040;padding:.5rem;z-index:1001;animation:dropdownFadeIn .2s ease}.profile-menu-dropdown,.user-dropdown,.dropdown-menu,[role=menu]{right:0!important;left:auto!important;transform:none!important;max-width:90vw!important;overflow-x:hidden!important}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{display:flex;align-items:center;gap:.65rem;padding:.65rem .85rem;background:transparent;border:none;border-radius:6px;color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);font-family:var(--font-family-sans);text-decoration:none;cursor:pointer;transition:all .15s ease;width:100%;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-item:hover{background:#38bdf81a;color:var(--color-accent-primary)}.dropdown-item.logout{color:var(--color-semantic-danger);margin-top:.25rem;border-top:1px solid rgba(255,255,255,.05);padding-top:.85rem}.dropdown-item.logout:hover{background:#e74c3c1a;color:var(--color-semantic-danger)}.main-content{flex:1;display:flex;flex-direction:column;overflow-x:hidden}.coach-content-wrapper{padding:clamp(1rem,3vw,2rem);max-width:1600px;width:100%;margin:0 auto}.profile-field{margin-bottom:1.5rem}.profile-field label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.profile-field p{font-size:var(--font-size-base);color:var(--color-text-primary);margin:0;padding:.75rem;background:#0f172466;border-radius:6px;border:1px solid rgba(56,189,248,.1)}.loading-state,.error-state{text-align:center;padding:3rem 1rem;font-size:var(--font-size-lg);color:var(--color-text-secondary)}@media (max-width: 767px){.coach-header-modern{padding:0 1rem;height:auto;flex-wrap:wrap;gap:.5rem}.header-left{min-width:auto}}@media (max-width: 479px){.logo-text{display:none}.logo-icon{font-size:1.5rem}.tabs-navigation{order:3;width:100%;flex-basis:100%;justify-content:flex-start;gap:.25rem;overflow-x:auto;padding:.5rem 0;scrollbar-width:none;-ms-overflow-style:none}.tabs-navigation::-webkit-scrollbar{display:none}.tab-item{padding:.5rem .85rem;font-size:var(--font-size-xs);flex-shrink:0}.tab-item.active:after{bottom:-8px;height:2px}.tab-text{display:none}.tab-icon{font-size:1.25rem}.header-right{min-width:auto}.user-name{display:none}.user-menu-trigger{padding:.5rem}.profile-menu-dropdown,.user-dropdown,.dropdown-menu,[role=menu]{position:absolute!important;top:100%!important;right:16px!important;left:auto!important;width:auto!important;min-width:200px!important}}@media (min-width: 768px) and (max-width: 1024px){.logo-text{font-size:var(--font-size-base)}.tab-text{display:none}.tab-item{padding:.65rem}.user-name{max-width:80px}}@media (min-width: 1400px){.coach-header-modern{padding:0 3rem}.tabs-navigation{gap:.5rem}.tab-item{padding:.75rem 1.5rem;font-size:var(--font-size-base)}}.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:.625rem}.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:.75rem 1rem;transition:all .2s ease;position:relative;cursor:pointer}.notification-card:hover{border-color:var(--color-border-hover, #d1d5db);box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.notification-card--unread{border-left-color:var(--color-notification-unread-border)!important;background-color:var(--color-notification-unread-bg);border-left-width:4px;box-shadow:0 1px 3px #0000000d}.notification-card--unread .notification-card-title{font-weight:600}.notification-card--read{border-left-color:var(--color-notification-read-border)!important;background-color:var(--color-notification-read-bg);border-left-width:4px;opacity:.85}.notification-card--read:hover{opacity:1}.notification-card--read .notification-card-title{font-weight:500;color:var(--color-text-secondary, #6b7280)}.notification-read-status{font-size:.75rem;font-weight:600;padding:3px 8px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px;line-height:1;white-space:nowrap}.notification-read-status--unread{background-color:#3b82f6;color:#fff}.notification-read-status--read{background-color:#e5e7eb;color:#6b7280}.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:center;gap:.75rem;margin-bottom:.5rem}.notification-card-icon{flex-shrink:0;display:flex;align-items:center;gap:.5rem}.notification-unread-badge{position:absolute;top:-4px;right:-4px;width:12px;height:12px;background:#3b82f6;border:2px solid #ffffff;border-radius:50%;animation:pulse 2s infinite;box-shadow:0 0 #3b82f666}@keyframes pulse{0%{box-shadow:0 0 #3b82f6b3}50%{box-shadow:0 0 0 6px #3b82f600}to{box-shadow:0 0 #3b82f600}}.notification-type-icon{font-size:1.5rem;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-bg-secondary, #f8fafc);border-radius:50%;border:2px solid var(--color-border-subtle, #f3f4f6);flex-shrink:0}.notification-card-title-section{flex:1;min-width:0;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.notification-card-title{margin:0;font-size:.9375rem;font-weight:600;color:var(--color-text-primary, #1f2937);line-height:1.4;display:flex;align-items:center;gap:.5rem}.notification-new-label{display:inline-block;background:#3b82f6;color:#fff;font-size:.625rem;font-weight:700;padding:.15rem .4rem;border-radius:3px;letter-spacing:.025em}.notification-card-timestamp{font-size:.75rem;color:var(--color-text-secondary, #6b7280);font-weight:400;white-space:nowrap}.notification-card-dismiss,.notification-card-delete{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,.notification-card-delete:hover{background:var(--color-bg-tertiary, #f1f5f9);color:var(--color-semantic-danger, #ef4444)}.notification-card-delete{margin-left:auto}.notification-card-content{padding-left:3rem}.notification-card-message{margin:0 0 .25rem;color:var(--color-text-primary, #1f2937);line-height:1.4;font-size:.875rem}.notification-card-details{margin:0;color:var(--color-text-secondary, #6b7280);font-size:.8125rem;line-height:1.3;font-style:italic}.notification-priority-indicator{position:absolute;top:.5rem;right:3rem;padding:.15rem .4rem;border-radius:4px;font-size:.6875rem;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}.strava-callback-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.strava-callback-card{background:#fff;border-radius:16px;padding:3rem 2rem;max-width:500px;width:100%;text-align:center;box-shadow:0 20px 60px #0000004d}.strava-callback-icon{margin-bottom:1.5rem;display:flex;justify-content:center}.strava-callback-icon .spinner{color:#fc4c02;animation:spin 1s linear infinite}.strava-callback-icon .success-icon{color:#10b981}.strava-callback-icon .error-icon{color:#ef4444}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.strava-callback-title{font-size:1.75rem;font-weight:700;margin-bottom:1rem;color:#1a202c}.strava-callback-message{font-size:1rem;color:#4a5568;margin-bottom:2rem;line-height:1.6}.strava-callback-loading{margin-bottom:2rem}.loading-bar{height:4px;background:#e2e8f0;border-radius:2px;overflow:hidden}.loading-bar-progress{height:100%;background:linear-gradient(90deg,#fc4c02,#ff6b35);animation:loading 1.5s ease-in-out infinite}@keyframes loading{0%{width:0%;margin-left:0%}50%{width:50%;margin-left:25%}to{width:0%;margin-left:100%}}.strava-callback-card .button-primary{margin-top:1rem}@media (prefers-color-scheme: dark){.strava-callback-card{background:#2d3748}.strava-callback-title{color:#f7fafc}.strava-callback-message{color:#cbd5e0}.loading-bar{background:#4a5568}}@media (max-width: 768px){.strava-callback-page{padding:1rem}.strava-callback-card{padding:2rem 1.5rem}.strava-callback-title{font-size:1.5rem}.strava-callback-message{font-size:.95rem}}.landing-page{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;width:100%;overflow-x:hidden;position:relative;z-index:1}.hero-section{min-height:80vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:4rem 2rem;position:relative;z-index:1;overflow:hidden}.hero-background{position:absolute;inset:0;background:linear-gradient(135deg,#1a1a2e80,#16213e80),url(/hero-runner.webp);background-size:cover;background-position:center;z-index:-1}.language-switcher-overlay{position:absolute;top:1.5rem;right:1.5rem;z-index:10;display:inline-flex;gap:.5rem}.language-switcher-overlay .lang-btn{background:transparent;border:none;cursor:pointer;padding:0;border-radius:4px;transition:all .2s ease;opacity:.8;line-height:1;display:inline-flex;align-items:center;justify-content:center}.language-switcher-overlay .lang-btn:hover{opacity:1;transform:scale(1.05)}.language-switcher-overlay .lang-btn.active{opacity:1}.language-switcher-overlay .lang-btn .flag-icon{width:32px;height:22px;display:block;border-radius:4px;overflow:hidden;border:1px solid rgba(255,255,255,.2);box-shadow:0 2px 4px #0003}.hero-content{position:relative;z-index:2}.hero-title{font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;color:#fff;line-height:1.2}.hero-subtitle{font-size:1.5rem;color:#fff;margin-bottom:2.5rem;line-height:1.6}.hero-cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.5rem}.hero-login-hint{margin-top:1.5rem;font-size:1rem;color:#fffc}.hero-login-link{color:#fff;text-decoration:none;font-weight:700;font-size:1.1rem;padding:.25rem .5rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;transition:all .3s ease;margin-left:.25rem}.hero-login-link:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.waitlist-form{max-width:600px;margin:6rem auto 1.5rem}.waitlist-input-group{display:flex;gap:.75rem;align-items:center;background:#ffffff05;padding:.5rem;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(138,180,248,.2);margin-top:4rem}.waitlist-input-group .input-icon{color:#8ab4f8;font-size:1.25rem;margin-left:.75rem}.waitlist-input{flex:1;background:transparent;border:none;color:#fff;font-size:1rem;padding:.75rem;outline:none}.waitlist-input::placeholder{color:#ffffff80}.waitlist-btn{white-space:nowrap;margin:0;padding:.875rem 1.75rem}.waitlist-success{max-width:600px;margin:2rem auto 1.5rem;text-align:center;background:#43e97b1a;border:2px solid rgba(67,233,123,.3);border-radius:12px;padding:2rem}.waitlist-success .success-icon{font-size:3rem;color:#43e97b;margin-bottom:1rem}.waitlist-success h3{font-size:1.5rem;font-weight:700;margin-bottom:.75rem;color:#fff}.waitlist-success p{font-size:1rem;color:#fffc;margin:0}.waitlist-error{max-width:600px;margin:2rem auto 1.5rem;text-align:center;background:#ff57571a;border:2px solid rgba(255,87,87,.3);border-radius:12px;padding:2rem}.waitlist-error .error-icon{font-size:3rem;margin-bottom:1rem}.waitlist-error h3{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;color:#ff5757}.waitlist-error .btn{margin-top:.5rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;font-size:1.1rem;font-weight:600;text-decoration:none;border-radius:8px;transition:all .3s ease;cursor:pointer;border:none}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea99}.btn-secondary{background:transparent;color:#8ab4f8;border:2px solid #8ab4f8}.btn-secondary:hover{background:#8ab4f81a;transform:translateY(-2px)}.btn-large{padding:1.2rem 2.5rem;font-size:1.2rem}.features-section{padding:5rem 2rem}.section-title{text-align:center;font-size:2.5rem;font-weight:700;margin-bottom:3rem;color:#8ab4f8}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.feature-card{background:#ffffff0d;padding:2.5rem;border-radius:12px;text-align:center;transition:all .3s ease;border:1px solid rgba(138,180,248,.1);overflow:hidden;position:relative}.feature-image{width:calc(100% + 5rem);height:180px;margin:-2.5rem -2.5rem 1.5rem;background-size:cover;background-position:center}.feature-image-ai{background-image:url(/feature-ai.png)}.feature-image-strava{background-image:url(/feature-strava.png)}.feature-image-coaches{background-image:url(/feature-coaches.png)}.feature-card{background:#ffffff0d;padding:2.5rem;border-radius:12px;text-align:center;transition:all .3s ease;border:1px solid rgba(138,180,248,.1)}.feature-card:hover{transform:translateY(-5px);background:#ffffff14;border-color:#8ab4f84d;box-shadow:0 8px 25px #0000004d}.feature-icon{font-size:3rem;color:#8ab4f8;margin-bottom:1.5rem}.feature-card h3{font-size:1.5rem;margin-bottom:1rem;color:#fff}.feature-card p{color:#b8c5d6;line-height:1.6}.how-it-works-section{padding:5rem 2rem}.steps-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:3rem;max-width:1100px;margin:0 auto}.step-image{width:100%;height:200px;margin-bottom:1.5rem;border-radius:12px;background-size:cover;background-position:center;position:relative;overflow:hidden}.step-image-signup{background:linear-gradient(135deg,#667eea,#764ba2)}.step-image-signup:after{content:"📝";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:5rem;opacity:.4}.step-image-goals{background:linear-gradient(135deg,#f093fb,#f5576c)}.step-image-goals:after{content:"🎯";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:5rem;opacity:.4}.step-image-train{background:linear-gradient(135deg,#4facfe,#00f2fe)}.step-image-train:after{content:"🏃";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:5rem;opacity:.4}.step{text-align:center;position:relative}.step-number{width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:700;margin:0 auto 1.5rem;box-shadow:0 4px 15px #667eea66}.step h3{font-size:1.4rem;margin-bottom:1rem;color:#8ab4f8}.step p{color:#b8c5d6;line-height:1.6}.cta-section{padding:5rem 2rem;text-align:center;background:linear-gradient(135deg,#1a1a2eb3,#16213eb3),url(/cta-background.png);background-size:cover;background-position:center;position:relative;overflow:hidden}.cta-section h2{font-size:2.5rem;margin-bottom:1rem;color:#fff}.cta-section p{font-size:1.3rem;color:#b8c5d6;margin-bottom:2.5rem}.landing-footer{background:#0000004d;padding:3rem 2rem 1rem;border-top:1px solid rgba(138,180,248,.1)}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto 2rem}.footer-section h4{color:#8ab4f8;margin-bottom:1rem;font-size:1.2rem}.footer-section p{color:#b8c5d6;line-height:1.6}.footer-section ul{list-style:none;padding:0}.footer-section ul li{margin-bottom:.5rem}.footer-section ul li a{color:#b8c5d6;text-decoration:none;transition:color .3s ease}.footer-section ul li a:hover{color:#8ab4f8}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid rgba(138,180,248,.1);color:#8a8a9e}@media (max-width: 768px){.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.2rem}.section-title{font-size:2rem}.features-grid,.steps-container{grid-template-columns:1fr}.waitlist-input-group{flex-direction:column;gap:.5rem}.waitlist-input,.waitlist-btn{width:100%}}.how-it-works-step-image-1,.how-it-works-step-image-2,.how-it-works-step-image-3{width:100%;height:200px;background-size:cover;background-position:center;border-radius:8px;margin-bottom:20px;position:relative}.how-it-works-step-image-1{background-image:url(/step-signup.png);background-size:cover;background-position:center}.how-it-works-step-image-2{background-image:url(/step-goals.png);background-size:cover;background-position:center}.how-it-works-step-image-3{background-image:url(/step-train.png);background-size:cover;background-position:center}.coach-landing-page{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;width:100%;overflow-x:hidden}.coach-hero-section{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden}.coach-hero-background{position:absolute;inset:0;background:url(/hero-coach.webp);background-size:cover;background-position:center;z-index:0}.coach-hero-section .language-switcher-overlay{position:absolute;top:1.5rem;right:1.5rem;z-index:10;display:inline-flex;gap:.5rem}.coach-hero-section .language-switcher-overlay .lang-btn{background:transparent;border:none;cursor:pointer;padding:0;border-radius:4px;transition:all .2s ease;opacity:.8;line-height:1;display:inline-flex;align-items:center;justify-content:center}.coach-hero-section .language-switcher-overlay .lang-btn:hover{opacity:1;transform:scale(1.05)}.coach-hero-section .language-switcher-overlay .lang-btn.active{opacity:1}.coach-hero-section .language-switcher-overlay .lang-btn .flag-icon{width:32px;height:22px;display:block;border-radius:4px;overflow:hidden;border:1px solid rgba(255,255,255,.2);box-shadow:0 2px 4px #0003}.coach-hero-overlay{position:absolute;inset:0;background:#0006;z-index:1}.coach-hero-content{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:4rem 2rem}.coach-hero-title{font-size:3.5rem;font-weight:800;margin-bottom:2rem;line-height:1.2;color:#fff}.coach-hero-subtitle{font-size:1.5rem;margin-bottom:3rem;line-height:1.6;color:#fffffff2;max-width:900px;margin-left:auto;margin-right:auto;font-weight:300}.coach-accent{color:#fbbf24;font-weight:900}.coach-primary{color:#8ab4f8;font-weight:700}.coach-accent-bold{display:block;color:#fbbf24;font-weight:800;font-size:1.35rem;margin-top:1rem}.coach-manifesto-section{padding:6rem 2rem;background:#ffffff08}.coach-section-container{max-width:1200px;margin:0 auto}.coach-manifesto-content{text-align:center;max-width:1000px;margin:0 auto}.coach-section-title{font-size:2.5rem;font-weight:700;margin-bottom:2rem;color:#fff;line-height:1.3}.coach-manifesto-text{font-size:1.25rem;color:#b8c5d6;line-height:1.8}.coach-convite-section{padding:6rem 2rem;background:#ffffff0d}.coach-convite-content{max-width:1200px;margin:0 auto}.coach-convite-header{text-align:center;margin-bottom:4rem}.coach-convite-subtitle{font-size:1.125rem;color:#b8c5d6;line-height:1.7;max-width:900px;margin:0 auto}.coach-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.coach-feature-item{display:flex;align-items:flex-start;gap:1.5rem;transition:transform .3s ease}.coach-feature-item:hover{transform:translateY(-5px)}.coach-feature-icon{flex-shrink:0;width:3rem;height:3rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px #667eea66;transition:all .3s ease}.coach-feature-item:hover .coach-feature-icon{box-shadow:0 8px 25px #667eea99;transform:scale(1.05)}.coach-feature-icon svg{width:1.5rem;height:1.5rem;color:#fff}.coach-feature-text{font-size:1.125rem;color:#fff;font-weight:500;line-height:1.6}.coach-benefits-section{padding:6rem 2rem;background:#ffffff08}.coach-benefits-content{max-width:1400px;margin:0 auto}.coach-benefits-header{text-align:center;margin-bottom:4rem}.coach-benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.coach-benefit-card{background:#ffffff0d;border:1px solid rgba(138,180,248,.2);border-radius:16px;padding:2.5rem;transition:all .3s ease}.coach-benefit-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #667eea4d;border-color:#8ab4f866}.coach-benefit-icon{width:4rem;height:4rem;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;transition:transform .3s ease}.coach-benefit-card:hover .coach-benefit-icon{transform:scale(1.1)}.coach-benefit-icon-accent{background:linear-gradient(135deg,#fbbf24,#f59e0b)}.coach-benefit-icon-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.coach-benefit-icon svg{width:2rem;height:2rem;color:#fff}.coach-benefit-title{font-size:1.5rem;font-weight:600;color:#fff;margin-bottom:1rem}.coach-benefit-text{font-size:1.125rem;color:#b8c5d6;line-height:1.7}.coach-cta-final-section{padding:6rem 2rem;position:relative;overflow:hidden;background:#01061ad9}.coach-cta-final-overlay{position:absolute;inset:0;background:transparent;z-index:1}.coach-cta-final-content{position:relative;z-index:2;text-align:center;max-width:1000px;margin:0 auto}.coach-cta-final-title{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:1.5rem;line-height:1.3}.coach-cta-final-subtitle{font-size:1.25rem;color:#fffffff2;line-height:1.7;margin-bottom:3rem;max-width:900px;margin-left:auto;margin-right:auto}@media (max-width: 768px){.coach-hero-title{font-size:2.5rem}.coach-hero-subtitle{font-size:1.25rem}.coach-section-title{font-size:2rem}.coach-manifesto-text{font-size:1.125rem}.coach-features-grid,.coach-benefits-grid{grid-template-columns:1fr}.coach-cta-final-title{font-size:2rem}.coach-cta-final-subtitle{font-size:1.125rem}}@media (max-width: 480px){.coach-hero-title{font-size:2rem}.coach-hero-subtitle{font-size:1.125rem}.coach-section-title{font-size:1.75rem}.coach-convite-section,.coach-benefits-section,.coach-manifesto-section,.coach-cta-final-section{padding:4rem 1.5rem}.coach-benefit-card{padding:2rem}}.thank-you-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;text-align:center}.thank-you-content{max-width:600px;animation:fadeInUp .6s ease-out}.thank-you-icon{font-size:4rem;margin-bottom:1.5rem;animation:scaleIn .5s ease-out .2s both}.thank-you-content h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;animation:fadeInUp .6s ease-out .3s both}.thank-you-content p{font-size:1.2rem;line-height:1.8;margin-bottom:2rem;opacity:.95;animation:fadeInUp .6s ease-out .4s both}.thank-you-actions{display:flex;flex-direction:column;gap:1rem;margin-top:2rem;animation:fadeInUp .6s ease-out .5s both}.thank-you-btn{padding:1rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer}.thank-you-btn-primary{background:#fff;color:#667eea;border:none}.thank-you-btn-primary:hover{background:#f8f9fa;transform:translateY(-2px);box-shadow:0 8px 20px #0003}.thank-you-btn-secondary{background:transparent;color:#fff;border:2px solid white}.thank-you-btn-secondary:hover{background:#ffffff1a;transform:translateY(-2px)}.social-link{display:inline-flex;align-items:center;gap:.5rem;color:#fff;text-decoration:none;padding:.75rem 1.5rem;border:2px solid rgba(255,255,255,.3);border-radius:8px;transition:all .3s ease;margin-top:1rem}.social-link:hover{background:#ffffff1a;border-color:#fff;transform:translateY(-2px)}.social-link svg{font-size:1.5rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@media (max-width: 768px){.thank-you-content h1{font-size:2rem}.thank-you-content p{font-size:1rem}.thank-you-icon{font-size:3rem}}.support-page{min-height:100vh;background:var(--background-color);padding:var(--spacing-xl) var(--spacing-md)}.support-container{max-width:1200px;margin:0 auto}.support-header{text-align:center;margin-bottom:var(--spacing-2xl)}.support-icon{font-size:4rem;color:var(--primary-color);margin-bottom:var(--spacing-md)}.support-header h1{font-size:2.5rem;color:var(--text-primary);margin-bottom:var(--spacing-sm);font-weight:700}.support-intro{font-size:1.125rem;color:var(--text-secondary);max-width:600px;margin:0 auto;line-height:1.6}.faq-section{margin-bottom:var(--spacing-2xl)}.faq-section h2{font-size:1.75rem;color:var(--text-primary);margin-bottom:var(--spacing-xl);font-weight:600;text-align:center}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-lg)}.faq-item{background:var(--surface-color);border-radius:12px;padding:var(--spacing-lg);box-shadow:0 2px 8px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.faq-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.faq-item h3{font-size:1.125rem;color:var(--primary-color);margin-bottom:var(--spacing-sm);font-weight:600}.faq-item p{font-size:.938rem;color:var(--text-secondary);line-height:1.6;margin:0}.support-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.card{background:var(--surface-color);border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.card__header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg);background:var(--background-color);border-bottom:1px solid var(--border-color)}.card__header svg{font-size:1.5rem;color:var(--primary-color)}.card__header h2{font-size:1.25rem;color:var(--text-primary);margin:0;font-weight:600}.card__content{padding:var(--spacing-lg)}.contact-section .card__content p{color:var(--text-secondary);margin-bottom:var(--spacing-md)}.contact-info{display:flex;flex-direction:column;gap:var(--spacing-md)}.contact-email{display:inline-flex;align-items:center;font-size:1.125rem;font-weight:600;color:var(--primary-color);text-decoration:none;padding:var(--spacing-sm) var(--spacing-md);background:var(--background-color);border-radius:8px;transition:background-color .2s ease}.contact-email:hover{background:var(--primary-color);color:#fff}.contact-hours{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-secondary);font-size:.938rem}.contact-hours svg{color:var(--primary-color)}.links-nav{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.link-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--background-color);border-radius:8px;text-decoration:none;color:var(--text-primary);font-weight:500;transition:all .2s ease;border:1px solid transparent}.link-item:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color);transform:translate(4px)}.link-item svg:first-child{font-size:1.25rem;color:var(--primary-color)}.link-item:hover svg:first-child{color:#fff}.external-icon{margin-left:auto;font-size:1rem;opacity:.6}.links-note{font-size:.875rem;color:var(--text-secondary);line-height:1.6;padding:var(--spacing-md);background:var(--background-color);border-left:3px solid var(--primary-color);border-radius:4px;margin:0}.links-note strong{color:var(--text-primary)}@media (max-width: 768px){.support-page{padding:var(--spacing-lg) var(--spacing-sm)}.support-header h1{font-size:2rem}.support-icon{font-size:3rem}.faq-grid{grid-template-columns:1fr}.support-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.link-item{padding:var(--spacing-sm) var(--spacing-md)}}@media (max-width: 480px){.support-header h1{font-size:1.75rem}.support-intro{font-size:1rem}.faq-section h2{font-size:1.5rem}.card__header h2{font-size:1.125rem}}.legal-page{min-height:100vh;background:var(--background-color);padding:var(--spacing-2xl) var(--spacing-md)}.legal-container{max-width:900px;margin:0 auto;background:var(--surface-color);border-radius:var(--border-radius);box-shadow:var(--shadow-md);overflow:hidden}.legal-header{text-align:center;padding:var(--spacing-2xl) var(--spacing-xl);background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-dark) 100%);color:#fff}.legal-icon{font-size:3.5rem;margin-bottom:var(--spacing-md);opacity:.9}.legal-header h1{font-size:2.5rem;font-weight:var(--font-weight-bold);margin:0 0 var(--spacing-sm) 0}.legal-date{font-size:var(--font-size-sm);opacity:.9;margin:0}.legal-content{padding:var(--spacing-2xl) var(--spacing-xl)}.legal-section{margin-bottom:var(--spacing-2xl)}.legal-section:last-child{margin-bottom:0}.legal-section h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--primary-color)}.legal-section h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--text-primary);margin:var(--spacing-lg) 0 var(--spacing-sm) 0}.legal-section p{font-size:var(--font-size-base);line-height:1.8;color:var(--text-secondary);margin-bottom:var(--spacing-md)}.legal-section ul{list-style:disc;padding-left:var(--spacing-xl);margin:var(--spacing-md) 0}.legal-section li{font-size:var(--font-size-base);line-height:1.8;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.legal-section a{color:var(--primary-color);text-decoration:none;font-weight:var(--font-weight-medium);transition:color var(--transition-fast)}.legal-section a:hover{color:var(--primary-dark);text-decoration:underline}.section-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.section-header svg{font-size:1.75rem;color:var(--primary-color)}.section-header h2{border-bottom:none;padding-bottom:0;margin-bottom:0}.info-box{display:flex;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:var(--background-color);border-left:4px solid var(--primary-color);border-radius:var(--border-radius);margin:var(--spacing-lg) 0}.info-box svg{font-size:1.5rem;color:var(--primary-color);flex-shrink:0;margin-top:2px}.info-box p{margin:0;color:var(--text-primary)}.info-box strong{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.info-box ul{margin:var(--spacing-sm) 0 0 var(--spacing-md);padding-left:var(--spacing-md)}.info-box li{color:var(--text-secondary)}.info-box.success{border-left-color:var(--success-color);background:#22c55e0d}.info-box.success svg{color:var(--success-color)}.info-box.warning{border-left-color:var(--warning-color);background:#fbbf240d}.info-box.warning svg{color:var(--warning-color)}.warning-box{display:flex;gap:var(--spacing-md);padding:var(--spacing-lg);background:#ef44440d;border:2px solid var(--error-color);border-radius:var(--border-radius);margin:var(--spacing-lg) 0}.warning-box svg{font-size:2rem;color:var(--error-color);flex-shrink:0}.warning-box p{margin:0;color:var(--text-primary)}.warning-box strong{color:var(--error-color);font-weight:var(--font-weight-bold)}.contact-box{background:var(--background-color);border-radius:var(--border-radius);padding:var(--spacing-lg);margin-top:var(--spacing-md)}.contact-box p{margin:var(--spacing-xs) 0;color:var(--text-primary);font-size:var(--font-size-base)}.contact-box strong{color:var(--text-primary);font-weight:var(--font-weight-semibold)}@media (max-width: 768px){.legal-page{padding:var(--spacing-lg) var(--spacing-sm)}.legal-header{padding:var(--spacing-xl) var(--spacing-md)}.legal-header h1{font-size:2rem}.legal-icon{font-size:2.5rem}.legal-content{padding:var(--spacing-xl) var(--spacing-md)}.legal-section h2{font-size:var(--font-size-lg)}.legal-section h3{font-size:var(--font-size-base)}.info-box,.warning-box{flex-direction:column;gap:var(--spacing-sm)}}@media (max-width: 480px){.legal-header h1{font-size:1.75rem}.legal-section ul{padding-left:var(--spacing-lg)}}.legal-terms-modal-overlay{position:fixed;inset:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:9999;padding:2rem;overflow:hidden}.legal-terms-modal{background:linear-gradient(135deg,#161c2dfa,#111523fa);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(139,92,246,.2);border-radius:24px;box-shadow:0 8px 32px #0006,0 0 80px #8b5cf626;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.legal-modal-header{padding:2rem 2rem 1.5rem;border-bottom:1px solid rgba(139,92,246,.15);text-align:center}.legal-modal-header h1{color:#fff;font-size:1.75rem;font-weight:600;margin:0 0 .5rem}.legal-modal-subtitle{color:#ffffffb3;font-size:.95rem;margin:0}.legal-tabs{display:flex;gap:1rem;padding:0 2rem;border-bottom:1px solid rgba(139,92,246,.15)}.legal-tab{background:transparent;border:none;padding:1rem 1.5rem;color:#fff9;font-size:1rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:.5rem;border-bottom:2px solid transparent;transition:all .3s ease;position:relative;top:1px}.legal-tab:hover{color:#ffffffe6}.legal-tab.active{color:#8b5cf6;border-bottom-color:#8b5cf6}.legal-tab svg{width:18px;height:18px}.legal-scroll-container{flex:1;overflow-y:auto;padding:2rem;min-height:300px;max-height:50vh}.legal-scroll-container::-webkit-scrollbar{width:8px}.legal-scroll-container::-webkit-scrollbar-track{background:#8b5cf60d;border-radius:4px}.legal-scroll-container::-webkit-scrollbar-thumb{background:#8b5cf64d;border-radius:4px}.legal-scroll-container::-webkit-scrollbar-thumb:hover{background:#8b5cf680}.legal-content{color:#ffffffe6;line-height:1.7}.legal-section{margin-bottom:2.5rem}.legal-section h2{color:#fff;font-size:1.4rem;font-weight:600;margin-bottom:1rem}.legal-section h3{color:#fffffff2;font-size:1.1rem;font-weight:500;margin:1.5rem 0 .75rem}.legal-section p{margin-bottom:1rem;color:#fffc}.legal-section ul{margin:1rem 0 1rem 1.5rem;padding:0;list-style:disc}.legal-section li{margin-bottom:.5rem;color:#fffc}.info-box,.warning-box{padding:1.5rem;border-radius:12px;margin:1.5rem 0;display:flex;align-items:flex-start;gap:1rem}.info-box.success{background:#10b9811a;border:1px solid rgba(16,185,129,.3)}.info-box.warning{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3)}.warning-box{background:#ef44441a;border:1px solid rgba(239,68,68,.3)}.info-box svg,.warning-box svg{width:20px;height:20px;flex-shrink:0;margin-top:2px}.contact-box{background:#8b5cf61a;border:1px solid rgba(139,92,246,.3);border-radius:12px;padding:1.5rem;margin:1rem 0}.contact-box p{margin:.5rem 0}.scroll-indicator{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 2rem;background:#f59e0b1a;border-top:1px solid rgba(245,158,11,.3);border-bottom:1px solid rgba(245,158,11,.3);color:#f59e0b;font-size:.9rem;animation:pulse 2s ease-in-out infinite}.scroll-indicator svg{width:18px;height:18px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.legal-checkboxes{display:flex;flex-direction:column;gap:1rem;padding:1.5rem 2rem;border-bottom:1px solid rgba(139,92,246,.15)}.legal-checkbox{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:1rem;color:#ffffffe6;transition:all .3s ease}.legal-checkbox.disabled{opacity:.4;cursor:not-allowed}.legal-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#8b5cf6}.legal-checkbox.disabled input[type=checkbox]{cursor:not-allowed}.legal-checkbox:hover:not(.disabled){color:#fff}.legal-error{display:flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:#ef44441a;border-top:1px solid rgba(239,68,68,.3);border-bottom:1px solid rgba(239,68,68,.3);color:#ef4444;font-size:.9rem}.legal-error svg{width:18px;height:18px;flex-shrink:0}.legal-buttons{display:flex;gap:1rem;padding:2rem}.legal-buttons button{flex:1;padding:1rem 2rem;font-size:1rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .3s ease}.btn-reject{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444}.btn-reject:hover:not(:disabled){background:#ef444433;border-color:#ef444480}.btn-accept{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 4px 16px #8b5cf64d}.btn-accept:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 6px 20px #8b5cf666;transform:translateY(-1px)}.btn-accept:disabled,.btn-reject:disabled{opacity:.4;cursor:not-allowed;transform:none}.legal-version{text-align:center;padding:0 2rem 1.5rem;color:#fff6;font-size:.85rem;margin:0}@media (max-width: 768px){.legal-terms-modal-overlay{padding:.75rem;align-items:flex-start;justify-content:flex-start}.legal-terms-modal{max-height:calc(100vh - 1.5rem);margin-top:.75rem;margin-bottom:.75rem}.legal-modal-header{padding:1rem 1rem .75rem;flex-shrink:0}.legal-modal-header h1{font-size:1.3rem;margin-bottom:.25rem}.legal-modal-subtitle{font-size:.85rem}.legal-tabs{padding:0 1rem;flex-shrink:0;gap:.5rem}.legal-tab{padding:.6rem .8rem;font-size:.85rem}.legal-scroll-container{padding:1rem;flex:1;min-height:auto;max-height:none;overflow-y:auto}.scroll-indicator{padding:.75rem 1rem;font-size:.8rem;flex-shrink:0}.legal-checkboxes{padding:.75rem 1rem;gap:.75rem;flex-shrink:0}.legal-checkbox{font-size:.9rem;gap:.6rem}.legal-checkbox input[type=checkbox]{width:18px;height:18px}.legal-error{padding:.75rem 1rem;font-size:.8rem;flex-shrink:0}.legal-buttons{flex-direction:column;padding:1rem;gap:.75rem;flex-shrink:0}.legal-buttons button{padding:.9rem 1rem;font-size:.95rem}.legal-version{padding:0 1rem .75rem;font-size:.75rem}}@media (max-width: 480px){.legal-terms-modal-overlay{padding:.5rem}.legal-terms-modal{max-height:calc(100vh - 1rem);margin-top:.5rem;margin-bottom:.5rem;border-radius:16px}.legal-modal-header{padding:.75rem .75rem .5rem}.legal-modal-header h1{font-size:1.1rem;margin-bottom:.25rem}.legal-modal-subtitle{font-size:.75rem}.legal-tabs{padding:0 .75rem;gap:.25rem}.legal-tab{padding:.5rem .6rem;font-size:.75rem}.legal-tab svg{width:16px;height:16px}.legal-scroll-container{padding:.75rem}.legal-checkboxes{padding:.6rem .75rem;gap:.6rem}.legal-checkbox{font-size:.85rem}.legal-error{padding:.6rem .75rem;font-size:.75rem}.legal-buttons{padding:.75rem;gap:.5rem}.legal-buttons button{padding:.8rem .75rem;font-size:.9rem}.legal-version{padding:0 .75rem .5rem;font-size:.7rem}}:root{--primary-cyan: #00D9FF;--primary-cyan-hover: #00B8D4;--primary-teal: #00FFC2;--secondary-purple: #A78BFA;--secondary-purple-hover: #9333EA;--success-green: #10B981;--success-green-hover: #059669;--warning-yellow: #F59E0B;--warning-yellow-hover: #D97706;--error-red: #EF4444;--error-red-hover: #DC2626;--info-blue: #3B82F6;--info-blue-hover: #2563EB;--bg-primary: #0A0E1A;--bg-secondary: rgba(15, 20, 35, .6);--bg-tertiary: rgba(25, 35, 55, .5);--bg-card: rgba(20, 30, 50, .4);--bg-hover: rgba(30, 45, 70, .6);--text-primary: #FFFFFF;--text-secondary: #A0A0B8;--text-muted: #6B6B8B;--text-disabled: #4A4A6A;--border-color: rgba(0, 217, 255, .15);--border-color-hover: rgba(0, 217, 255, .35);--border-glow: rgba(0, 217, 255, .5);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .6);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}.design-system-demo{font-family:"Exo 2",Poppins,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);background-image:radial-gradient(circle at 20% 50%,rgba(0,217,255,.08) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(167,139,250,.08) 0%,transparent 50%);color:var(--text-primary);min-height:100vh;line-height:1.6}.design-system-demo *{box-sizing:border-box}.text-4xl{font-size:3rem;font-weight:800;line-height:1.2;letter-spacing:-.02em}.text-3xl{font-size:2.25rem;font-weight:700;line-height:1.25;letter-spacing:-.01em}.text-2xl{font-size:1.875rem;font-weight:600;line-height:1.3}.text-xl{font-size:1.5rem;font-weight:600;line-height:1.4}.text-lg{font-size:1.125rem;font-weight:500;line-height:1.5}.text-base{font-size:1rem;line-height:1.6}.text-sm{font-size:.875rem;line-height:1.5}.text-xs{font-size:.75rem;line-height:1.4}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.demo-container{max-width:1400px;margin:0 auto;padding:0 var(--spacing-lg)}.demo-header{background:linear-gradient(135deg,#00d9ff33,#a78bfa33);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-color);padding:var(--spacing-3xl) 0;margin-bottom:var(--spacing-3xl);text-align:center;position:relative;overflow:hidden}.demo-header:before{content:"";position:absolute;top:-50%;right:-10%;width:40%;height:200%;background:radial-gradient(circle,rgba(0,217,255,.15) 0%,transparent 70%);animation:float 8s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) translate(0)}50%{transform:translateY(-20px) translate(10px)}}.demo-title{font-size:3.5rem;font-weight:900;margin:0 0 var(--spacing-md) 0;letter-spacing:-.02em}.logo-accent{background:linear-gradient(135deg,var(--primary-cyan),var(--primary-teal));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 30px rgba(0,217,255,.3)}.demo-subtitle{font-size:1.25rem;color:#ffffffe6;margin:0}.demo-section{margin-bottom:var(--spacing-3xl);padding-bottom:var(--spacing-3xl);border-bottom:1px solid var(--border-color)}.demo-section:last-of-type{border-bottom:none}.section-title{font-size:2rem;font-weight:700;margin:0 0 var(--spacing-xl) 0;color:var(--text-primary)}.design-principles{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.principle-card{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--spacing-xl);text-align:center;transition:all var(--transition-base)}.principle-card:hover{transform:translateY(-4px);border-color:var(--border-color-hover);box-shadow:0 12px 40px #00d9ff26}.principle-icon{display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-md);color:var(--primary-cyan);filter:drop-shadow(0 0 20px rgba(0,217,255,.3))}.principle-icon svg{width:48px;height:48px}.principle-card h3{font-size:1.25rem;font-weight:700;margin:0 0 var(--spacing-sm) 0;background:linear-gradient(135deg,var(--primary-cyan),var(--primary-teal));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.principle-card p{font-size:.875rem;color:var(--text-secondary);margin:0;line-height:1.6}.color-section{margin-bottom:var(--spacing-xl)}.color-section h3{font-size:1.25rem;font-weight:600;margin:0 0 var(--spacing-md) 0;color:var(--text-secondary)}.color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-md)}.color-card{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-md);transition:all var(--transition-fast)}.color-card:hover{transform:translateY(-2px);border-color:var(--border-color-hover);box-shadow:0 8px 32px #00d9ff26,0 0 0 1px #00d9ff1a inset}.color-swatch{height:80px;border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.color-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.color-name{font-weight:600;font-size:.875rem}.color-value{font-family:Courier New,monospace;font-size:.75rem;color:var(--text-secondary)}.color-usage{font-size:.75rem;color:var(--text-muted);font-style:italic}.typography-showcase{display:flex;flex-direction:column;gap:var(--spacing-lg)}.typo-item{padding:var(--spacing-md);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.typo-label{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em}.button-showcase{margin-bottom:var(--spacing-xl)}.button-showcase h3{font-size:1.125rem;font-weight:600;margin:0 0 var(--spacing-md) 0;color:var(--text-secondary)}.button-row{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}button[class*=btn-]{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:10px 20px;font-family:inherit;font-size:1rem;font-weight:500;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);white-space:nowrap}button[class*=btn-]:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:6px 14px;font-size:.875rem}.btn-lg{padding:14px 28px;font-size:1.125rem}.btn-icon{width:40px!important;height:40px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:var(--radius-md)!important;position:relative;background:#141e32cc!important;border:1px solid rgba(255,255,255,.05)!important;box-shadow:none!important;transition:all var(--transition-normal)!important}.btn-icon:hover{background:#1e2d46e6!important;border-color:#ffffff1a!important;box-shadow:none!important;transform:translateY(-1px)!important}.btn-icon svg{width:20px;height:20px;display:block;flex-shrink:0}.btn-icon.btn-primary svg{color:var(--primary-cyan)!important;fill:currentColor!important;stroke:currentColor!important}.btn-icon.btn-secondary svg{color:var(--secondary-purple)!important;fill:currentColor!important;stroke:currentColor!important}.btn-icon.btn-success svg{color:var(--success-green)!important;fill:currentColor!important;stroke:currentColor!important}.btn-icon.btn-danger svg{color:var(--error-red)!important;fill:currentColor!important;stroke:currentColor!important}.btn-icon.btn-ghost svg{color:var(--text-secondary)!important;fill:currentColor!important;stroke:currentColor!important}.btn-icon.btn-ghost:hover svg{color:var(--primary-cyan)!important}.btn-icon:after{content:attr(title);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);background:#0a0e1af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-primary);padding:6px 12px;border-radius:var(--radius-sm);font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;transition:all var(--transition-fast);border:1px solid var(--border-color);z-index:10}.btn-icon:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.btn-primary{background:linear-gradient(135deg,var(--primary-cyan),var(--primary-teal));color:#0a0e1a;font-weight:600;box-shadow:0 0 20px #00d9ff4d}.btn-primary:hover:not(:disabled){box-shadow:0 0 30px #00d9ff80,0 4px 20px #00d9ff33;transform:translateY(-2px)}.btn-secondary{background:#a78bfa33;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(167,139,250,.3);color:var(--secondary-purple);font-weight:600}.btn-secondary:hover:not(:disabled){background:#a78bfa4d;border-color:var(--secondary-purple);box-shadow:0 0 20px #a78bfa4d;transform:translateY(-2px)}.btn-success{background:var(--success-green);color:#fff}.btn-success:hover:not(:disabled){background:var(--success-green-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-danger{background:var(--error-red);color:#fff}.btn-danger:hover:not(:disabled){background:var(--error-red-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-ghost{background:#ffffff08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-secondary);border:1px solid var(--border-color)}.btn-ghost:hover:not(:disabled){background:#ffffff14;color:var(--primary-cyan);border-color:var(--border-color-hover);box-shadow:0 0 15px #00d9ff1a}.btn-loading{position:relative;color:transparent!important}.btn-spinner{position:absolute;left:50%;top:50%;margin-left:-8px;margin-top:-8px;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-lg)}.demo-card{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-base);position:relative}.demo-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(0,217,255,.08) 0%,transparent 50%);opacity:0;transition:opacity var(--transition-base)}.demo-card:hover{transform:translateY(-4px);border-color:var(--border-color-hover);box-shadow:0 12px 40px #00d9ff26,0 0 0 1px #00d9ff1a inset}.demo-card:hover:before{opacity:1}.card-highlight{border-color:var(--primary-cyan);box-shadow:0 0 20px #00d9ff33}.card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);border-bottom:1px solid var(--border-color)}.card-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.125rem;font-weight:600;margin:0}.card-content{padding:var(--spacing-md)}.card-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md);border-top:1px solid var(--border-color);background:var(--bg-secondary)}.card-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-top:var(--spacing-md)}.stat-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.progress-bar{width:100%;height:8px;background:var(--bg-secondary);border-radius:var(--radius-full);overflow:hidden;margin:var(--spacing-md) 0 var(--spacing-xs) 0}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-cyan),var(--primary-teal));border-radius:var(--radius-full);box-shadow:0 0 10px #00d9ff80;transition:width var(--transition-slow)}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.metric-item{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);border-left:3px solid}.metric-success{border-left-color:var(--success-green)}.metric-info{border-left-color:var(--info-blue)}.design-system-demo .metric-value{font-size:1.5rem;font-weight:700}.design-system-demo .metric-label{font-size:.75rem;color:var(--text-secondary)}.form-demo{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-xl)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group-full{grid-column:1 / -1}.form-label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px;font-family:inherit;font-size:1rem;color:var(--text-primary);background:#0f142366;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-base);min-height:40px}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary-cyan);background:#0f142399;box-shadow:0 0 0 3px #00d9ff1a,0 0 20px #00d9ff26}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{opacity:.5;cursor:not-allowed}.input-error{border-color:var(--error-red)}.form-error{font-size:.75rem;color:var(--error-red);margin-top:calc(var(--spacing-xs) * -1)}.form-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;-webkit-user-select:none;user-select:none}.form-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--primary-cyan);pointer-events:auto!important;position:relative;z-index:10;margin-right:var(--spacing-sm)}.checkbox-label{font-size:.875rem;color:var(--text-primary);margin-left:var(--spacing-xs)}.checkbox-label a,.checkbox-label .link-style{color:var(--primary-cyan);text-decoration:none;transition:all var(--transition-fast);border-bottom:1px solid transparent}.checkbox-label a:hover,.checkbox-label .link-style:hover{border-bottom-color:var(--primary-cyan);cursor:pointer}.planned-workout{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.workout-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.detail-row{display:flex;gap:var(--spacing-sm);font-size:.875rem}.detail-label{color:var(--text-muted);font-weight:500;min-width:100px}.detail-value{color:var(--text-primary);font-weight:600}.checkbox-divider{height:1px;background:var(--border-color);margin:var(--spacing-lg) 0}.checkbox-group{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.checkbox-primary input[type=checkbox]:checked{accent-color:var(--success-green)}.checkbox-secondary input[type=checkbox]:checked{accent-color:var(--error-red)}.expandable-form{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.4,0,.2,1),opacity .4s cubic-bezier(.4,0,.2,1),margin-top .4s cubic-bezier(.4,0,.2,1);opacity:0;margin-top:0}.expandable-form>*{overflow:hidden}.expandable-form.expanded{grid-template-rows:1fr;opacity:1;margin-top:var(--spacing-lg)}.badge-showcase{margin-bottom:var(--spacing-xl)}.badge-showcase h3{font-size:1.125rem;font-weight:600;margin:0 0 var(--spacing-md) 0;color:var(--text-secondary)}.badge-row{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.badge{display:inline-flex;align-items:center;padding:4px 12px;font-size:.75rem;font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em}.badge-success{background:#10b98133;color:var(--success-green)}.badge-warning{background:#f59e0b33;color:var(--warning-yellow)}.badge-danger{background:#ef444433;color:var(--error-red)}.badge-info{background:#3b82f633;color:var(--info-blue)}.badge-primary{background:#00d9ff33;color:var(--primary-cyan);border:1px solid rgba(0,217,255,.3)}.tag{display:inline-flex;align-items:center;padding:6px 14px;font-size:.875rem;font-weight:500;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-full);transition:all var(--transition-fast)}.tag:hover{background:var(--bg-hover);border-color:var(--border-color-hover)}.modal-overlay{position:fixed;inset:0;background:#0a0e1ad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg);animation:fadeIn var(--transition-base)}.modal-container{background:#141e3299;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:var(--radius-xl);max-width:600px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp var(--transition-slow);box-shadow:0 20px 60px #00d9ff26,0 0 0 1px #00d9ff1a inset}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.25rem;font-weight:600;margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.modal-body{padding:var(--spacing-lg);overflow-y:auto;flex:1}.modal-list{margin:var(--spacing-md) 0;padding-left:var(--spacing-lg);color:var(--text-secondary)}.modal-list li{margin-bottom:var(--spacing-xs)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--border-color);background:var(--bg-secondary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.loading-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn var(--transition-base)}.loading-container{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg)}.loading-spinner{width:48px;height:48px;border:4px solid rgba(0,217,255,.2);border-top-color:var(--primary-cyan);border-radius:50%;box-shadow:0 0 20px #00d9ff4d;animation:spin .8s linear infinite}.loading-message{font-size:1.125rem;font-weight:500;color:var(--text-primary)}.skeleton{background:linear-gradient(90deg,var(--bg-secondary) 0%,var(--bg-tertiary) 50%,var(--bg-secondary) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:var(--radius-md)}.skeleton-text{height:16px;margin-bottom:var(--spacing-sm)}.skeleton-title{height:24px}.skeleton-circle{width:48px;height:48px;border-radius:50%}.skeleton-rect{width:100%}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.demo-footer{text-align:center;padding:var(--spacing-3xl) 0;margin-top:var(--spacing-3xl);border-top:1px solid var(--border-color)}.demo-footer p{margin:var(--spacing-xs) 0}@media (max-width: 768px){.demo-title{font-size:2.5rem}.demo-subtitle{font-size:1rem}.color-grid,.cards-grid,.form-grid{grid-template-columns:1fr}.button-row{flex-direction:column}button[class*=btn-]{width:100%;justify-content:center}.modal-container{max-width:100%;margin:var(--spacing-md)}}@media (max-width: 480px){.demo-header{padding:var(--spacing-xl) 0}.demo-title{font-size:2rem}.section-title{font-size:1.5rem}}body{margin:0}.loading-fullscreen{width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;font-size:1.5rem}header .absolute,nav .absolute,.page-header .absolute{right:16px!important;left:auto!important;transform:none!important;max-width:300px!important}body .user-dropdown,body .profile-menu,body .dropdown-menu,body [role=menu],body .absolute.right-0.mt-2{right:16px!important;left:auto!important;transform:none!important;max-width:calc(100vw - 32px)!important;overflow:hidden!important}body .page-header,body header{overflow:visible!important;z-index:50!important}: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(1.5rem,3vw,3rem);padding-right:clamp(1.5rem,3vw,3rem);padding-top:1.5rem;padding-bottom:1.5rem}@media (max-width: 768px){.container-fluid,.page-container{padding:.75rem}}.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}}.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}
