@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";*{box-sizing:border-box;padding:0;margin:0}html{font-family:Inter,system-ui,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}ul,ol{list-style:none;display:flex;flex-direction:column}:root{--color-slate-dark: #0f172a;--color-slate-medium: #334155;--color-slate-light: #cbd5e1;--color-blue-dark: #1e3a8a;--color-blue-medium: #3b82f6;--color-blue-light: #60a5fa;--color-green-dark: #064e3b;--color-green-medium: #22c55e;--color-green-light: #10b981;--color-yellow-dark: #451a03;--color-yellow-medium: #fbbf24;--color-yellow-light: #f59e0b;--color-red-dark: #450a0a;--color-red-medium: #ef4444;--color-red-light: #f87171;--color-black-alpha: rgba(0, 0, 0, .25);--size-lg: 1.5rem;--size: 1rem;--size-md: .75rem;--size-sm: .5rem;--size-xs: .25rem;--border-radius-sm: .375rem;--font-size-sm: .875rem;--font-size-lg: 1.125rem;--font-weight-medium: 500;--font-weight-semibold: 600;--transition-colors: background-color .2s ease, border-color .2s ease;--transition-all: all .2s ease;--input-focus-shadow: 0 0 0 2px var(--color-blue-medium)}body{background-color:var(--color-slate-dark);color:var(--color-slate-light);min-height:100vh;transition:background-color .2s ease,color .2s ease}.container{max-width:1200px;padding:0 1rem}.heart-rate-zone{border-radius:var(--size-sm);padding:var(--size);text-align:center;font-weight:var(--font-weight-semibold)}.heart-rate-recovery{background-color:var(--color-green-light);color:var(--color-slate-light)}.heart-rate-aerobic{background-color:var(--color-blue-medium);color:var(--color-slate-light)}.heart-rate-threshold{background-color:var(--color-yellow-light);color:var(--color-slate-light)}.heart-rate-anaerobic{background-color:var(--color-red-medium);color:var(--color-slate-light)}.btn-primary{background-color:var(--color-blue-medium);color:var(--color-slate-light);&:hover{background-color:var(--color-blue-dark)}}.btn-secondary{background-color:var(--color-slate-medium);color:var(--color-slate-light);border-color:var(--color-slate-medium);&:hover{background-color:var(--color-slate-dark)}}.btn-danger{background-color:var(--color-red-medium);color:var(--color-slate-light);&:hover{background-color:var(--color-red-dark)}}.btn-icon{height:var(--size);width:var(--size)}.reconnection-icon{height:var(--size-md);width:var(--size-md)}.btn{display:inline-flex;gap:var(--size-sm);align-items:center;padding:var(--size-sm) var(--size);border:1px solid transparent;border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-decoration:none;cursor:pointer;transition:all .2s;&:focus{outline:2px solid transparent;outline-offset:2px;box-shadow:var(--input-focus-shadow)}&:disabled{opacity:.5;cursor:not-allowed}}.card-base{background-color:var(--color-slate-medium);border-radius:var(--size-sm);border:1px solid var(--color-slate-medium);padding:var(--size-lg);transition:var(--transition-colors)}.input{display:block;width:100%;padding:var(--size-sm) var(--size-md);border:1px solid var(--color-slate-light);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);background-color:var(--color-slate-light);&:focus{outline:2px solid transparent;outline-offset:2px;border-color:var(--color-blue-medium);box-shadow:var(--input-focus-shadow)}}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.session-controls{display:flex;flex-wrap:wrap;gap:var(--size-md);align-items:center;justify-content:space-between;background-color:var(--color-slate-medium);border-radius:var(--size-sm);border:1px solid var(--color-slate-medium);padding:var(--size-lg);transition:var(--transition-colors)}.session-restoration-notification{display:flex;align-items:center;gap:var(--size-sm);background-color:var(--color-green-dark);color:var(--color-white);padding:var(--size-sm) var(--size-md);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);animation:slideInFromTop .3s ease-out}.restoration-icon{width:16px;height:16px;color:var(--color-white)}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.session-info{display:flex;flex-direction:column;gap:var(--size-xs)}.session-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.session-subtitle{font-size:var(--font-size-sm)}.session-status{display:flex;align-items:center;gap:var(--size)}.status-indicator{display:flex;align-items:center;gap:var(--size-xs)}.status-icon{width:var(--size);height:var(--size)}.status-text{font-size:var(--size-md)}.status-text--success{color:var(--color-green-medium)}.status-text--error{color:var(--color-red-medium)}.status-text--info{color:var(--color-blue-medium)}.session-actions{display:flex;flex-wrap:wrap;gap:var(--size-md)}.rower-overview{display:flex;flex-direction:column;gap:var(--size-md);background-color:var(--color-slate-medium);border-radius:var(--size-sm);box-shadow:var(--shadow-primary);border:1px solid var(--color-slate-medium);padding:var(--size);transition:var(--transition-colors)}.rower-overview-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.rower-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--size-md)}@media (orientation: landscape){.rower-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.rower-seat{padding:var(--size-md);border-radius:var(--size-sm);border:1px solid var(--color-slate-medium);transition:var(--transition-colors);display:flex;align-items:baseline;justify-content:space-between}.rower-seat--connected{background-color:var(--color-green-dark);border-color:var(--color-green-medium)}.rower-seat--device-only{background-color:var(--color-yellow-dark);border-color:var(--color-yellow-medium)}.rower-seat--empty{border-color:var(--color-slate-light)}.rower-status-indicator{width:var(--size-md);height:var(--size-md);border-radius:50%}.rower-status-indicator--connected{background-color:var(--color-green-medium)}.rower-status-indicator--device-only{background-color:var(--color-yellow-medium)}.rower-status-indicator--empty{background-color:var(--color-slate-light)}.rower-seat-number{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.rower-name,.rower-status{font-size:var(--size-md)}.heart-rate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--size)}@media (orientation: landscape){.heart-rate-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.empty-state{padding:3rem;text-align:center}.empty-state-icon{width:3rem;height:3rem}.empty-state-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.empty-state-description{font-size:var(--font-size-sm)}.heart-rate-zones-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.heart-rate-zones-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--size)}@media (orientation: landscape){.heart-rate-zones-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.heart-rate-zone-item{text-align:center;display:flex;flex-direction:column;gap:var(--size-xs)}.heart-rate-zone-color{width:100%;height:var(--size);border-radius:var(--size-xs);&.recovery{background-color:var(--color-green-light)}&.aerobic{background-color:var(--color-blue-medium)}&.threshold{background-color:var(--color-yellow-medium)}&.anaerobic{background-color:var(--color-red-medium)}}.heart-rate-zone-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.heart-rate-zone-range{font-size:var(--size-md)}.header{background-color:var(--color-slate-medium);border-bottom:1px solid var(--color-slate-medium);padding:0 1rem;transition:var(--transition-colors)}.header-content{display:flex;justify-content:space-between;align-items:center;height:4rem}.header-brand{display:flex;align-items:center;flex-shrink:0;gap:var(--size-sm)}.header-logo-icon{width:2rem;height:2rem;color:var(--color-blue-medium)}.header-app-name{font-size:1.25rem;font-weight:700}.header-subtitle{font-size:var(--size-md)}.header-status{display:flex;align-items:center;gap:var(--size)}.header-connection-status{display:flex;align-items:center;gap:var(--size-sm)}.header-connection-icon{width:1.25rem;height:1.25rem}.header-connection-icon--connected{color:var(--color-green-medium)}.header-connection-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.header-connection-text--connected{color:var(--color-green-medium)}.header-mobile-menu-button{display:none;padding:var(--size-sm);border-radius:var(--border-radius-sm);color:var(--color-slate-light);background:none;border:none;cursor:pointer;transition:color .2s ease,background-color .2s ease}@media (max-width: 767px){.header-mobile-menu-button{display:block}}.header-mobile-menu-icon{width:var(--size-lg);height:var(--size-lg)}.header-mobile-menu{display:none;border-top:1px solid var(--color-slate-medium)}.header-mobile-menu--open{display:flex;flex-direction:column;gap:var(--size-xs)}.header-desktop-menu{display:none;border-top:1px solid var(--color-slate-medium)}@media (min-width: 768px){.header-desktop-menu{display:flex;gap:2rem}}.header-nav-button{display:flex;align-items:center;padding:var(--size-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;transition:color .2s ease,border-color .2s ease;gap:var(--size-sm)}.header-nav-button--active{border-bottom-color:var(--color-blue-medium);color:var(--color-blue-medium)}.header-nav-button--inactive{color:var(--color-slate-light);&:hover{border-bottom-color:var(--color-slate-light)}}.header-nav-icon{width:1.25rem;height:1.25rem}.header-mobile-nav-button{width:100%;display:flex;align-items:center;padding:var(--size-md);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background:none;border:none;cursor:pointer;transition:background-color .2s ease,color .2s ease}.header-mobile-nav-button--active{background-color:var(--color-blue-dark);color:var(--color-blue-light)}.header-mobile-nav-button--inactive{color:var(--color-slate-light);&:hover{background-color:var(--color-slate-light)}}.header-mobile-nav-icon{width:1.25rem;height:1.25rem}.device-discovery{background-color:var(--color-slate-medium);border-radius:var(--size-sm);border:1px solid var(--color-slate-medium);padding:var(--size-lg);transition:var(--transition-colors);display:flex;flex-direction:column;gap:var(--size)}.device-discovery-header{display:flex;align-items:center;justify-content:space-between}.device-discovery-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.device-list{gap:var(--size-sm)}.device-list-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.device-item{display:flex;align-items:center;justify-content:space-between;padding:var(--size-md);border:1px solid var(--color-slate-light);border-radius:var(--size-sm);transition:background-color .2s ease}.device-item-info{display:flex;align-items:center;gap:var(--size-md)}.device-item-icon{width:1.25rem;height:1.25rem}.device-item-details{display:flex;flex-direction:column}.device-item-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.device-item-id{font-size:var(--size-md)}.device-item-connect-button{padding:var(--size-xs) var(--size-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-blue-medium);background:none;border:none;cursor:pointer;transition:color .2s ease;&:hover{color:var(--color-green-light)}}.no-devices-warning{display:flex;align-items:flex-start;padding:var(--size);background-color:var(--color-yellow-dark);border-radius:var(--size-sm);border:1px solid var(--color-yellow-medium);transition:var(--transition-colors);color:var(--color-yellow-medium);gap:var(--size-md)}.no-devices-warning-icon{width:1.25rem;height:1.25rem;flex-shrink:0}.no-devices-warning-text{flex:1;display:flex;flex-direction:column;gap:var(--size-xs);*{font-size:var(--font-size-sm)}}.debug-info{display:flex;flex-direction:column;gap:var(--size-sm);padding:var(--size-md);background-color:var(--color-blue-dark);border-radius:var(--size-sm);border:1px solid var(--color-blue-light);transition:var(--transition-colors);color:var(--color-blue-light)}.debug-info-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.debug-info-content{display:flex;flex-direction:column;font-size:var(--size-md);gap:var(--size-xs)}.debug-clear-button{padding:var(--size-xs) var(--size-md);background-color:var(--color-blue-dark);color:var(--color-slate-light);border:none;border-radius:var(--size-sm);cursor:pointer;transition:all .2s ease;&:hover{background-color:var(--color-blue-medium)}}.connected-devices{display:flex;flex-direction:column;gap:var(--size-sm)}.connected-devices-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.connected-device-item{display:flex;align-items:center;justify-content:space-between;padding:var(--size-md);border-radius:var(--size-sm);transition:background-color .2s ease}.connected-device-item--healthy{background-color:var(--color-green-dark)}.connected-device-item--unhealthy{background-color:var(--color-red-dark)}.connected-device-info{display:flex;align-items:center;gap:var(--size-md)}.connected-device-status-indicator{width:var(--size-sm);height:var(--size-sm);border-radius:50%}.connected-device-status-indicator--healthy{background-color:var(--color-green-medium)}.connected-device-status-indicator--unhealthy{background-color:var(--color-red-medium)}.connected-device-details{display:flex;flex-direction:column;gap:var(--size-xs)}.connected-device-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.connected-device-status{font-size:var(--size-md)}.connected-device-status--healthy{color:var(--color-green-medium)}.connected-device-status--unhealthy{color:var(--color-red-medium)}.connected-device-actions{display:flex;align-items:center;gap:var(--size-sm)}.connected-device-warning-icon{width:var(--size);height:var(--size);color:var(--color-red-medium)}.connected-device-retry-button{padding:var(--size-xs);background:none;border:none;cursor:pointer;border-radius:.25rem;transition:background-color .2s ease;&:hover{background-color:var(--color-slate-medium)}}.connected-device-retry-icon{width:var(--size);height:var(--size);color:var(--color-yellow-medium)}.connected-device-disconnect-button{padding:var(--size-xs) var(--size-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-light);color:var(--color-red-light);background:none;border:none;cursor:pointer;transition:color .2s ease;&:hover{color:var(--color-red-medium)}}.rower-management{display:flex;flex-direction:column;gap:var(--size-md)}.rower-management-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.add-rower-section{display:flex;flex-direction:column;gap:var(--size-md);border-radius:var(--size-sm);transition:background-color .2s ease}.add-rower-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.add-rower-form{display:flex;gap:var(--size-md)}.add-rower-name-input{flex:1;padding:var(--size-sm) var(--size-md);border:1px solid var(--color-slate-light);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);background-color:var(--color-slate-medium);color:var(--color-slate-light);width:100%;transition:border-color .2s ease,background-color .2s ease;&:focus{outline:2px solid transparent;outline-offset:2px;border-color:var(--color-blue-medium);box-shadow:0 0 0 2px var(--color-blue-medium)}}.add-rower-seat-select{padding:var(--size-sm) var(--size-md);border:1px solid var(--color-slate-light);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);background-color:var(--color-slate-medium);color:var(--color-slate-light);cursor:pointer;transition:border-color .2s ease,background-color .2s ease;&:focus{outline:2px solid transparent;outline-offset:2px;border-color:var(--color-blue-medium);box-shadow:0 0 0 2px var(--color-blue-medium)}}.rower-list{gap:var(--size-md)}.rower-list-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.rower-item{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);transition:border-color .2s ease}.rower-item-info{display:flex;align-items:center;gap:var(--size-md)}.rower-item-icon{width:1.25rem;height:1.25rem}.rower-item-details{display:flex;flex-direction:column;gap:var(--size-xs)}.rower-item-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.rower-item-seat{font-size:var(--size-md)}.rower-item-actions{display:flex;align-items:center;gap:var(--size-md)}.rower-device-assignment{display:flex;align-items:center;gap:var(--size-sm)}.rower-device-select{padding:var(--size-xs) var(--size-md);font-size:var(--font-size-sm);border:1px solid var(--color-slate-light);border-radius:.25rem;background-color:var(--color-slate-medium);color:var(--color-slate-light);cursor:pointer;transition:border-color .2s ease,background-color .2s ease;&:focus{outline:2px solid transparent;outline-offset:2px;border-color:var(--color-blue-medium);box-shadow:0 0 0 2px var(--color-blue-medium)}}.rower-device-health{display:flex;align-items:center;gap:var(--size-xs)}.rower-device-health-text{font-size:var(--size-md)}.rower-device-health-text--healthy{color:var(--color-green-medium)}.rower-device-health-text--unhealthy{color:var(--color-red-medium)}.rower-remove-button{padding:var(--size-xs);color:var(--color-red-medium);background:none;border:none;cursor:pointer;transition:color .2s ease;&:hover{color:var(--color-red-dark)}}.rower-remove-icon{width:var(--size);height:var(--size)}.connection-status{padding:var(--size)}.connection-status-content{display:flex;align-items:center;justify-content:space-between;background-color:var(--color-slate-medium);border-radius:var(--size-sm);border:1px solid var(--color-slate-medium);padding:var(--size-lg);transition:var(--transition-colors);gap:var(--size-md)}.connection-status-info{display:flex;align-items:center;gap:var(--size-md)}.connection-status-icon{width:1.25rem;height:1.25rem}.connection-status-icon--scanning{color:var(--color-blue-light)}.connection-status-icon--connected{color:var(--color-green-medium)}.connection-status-icon--unhealthy{color:var(--color-red-medium)}.connection-status-icon--conflict{color:var(--color-yellow-medium)}.connection-status-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.connection-status-text--scanning{color:var(--color-blue-light)}.connection-status-text--connected{color:var(--color-green-medium)}.connection-status-text--unhealthy{color:var(--color-red-medium)}.connection-status-text--conflict{color:var(--color-yellow-medium)}.connection-status-subtitle{font-size:var(--size-md)}.connection-device-list{gap:var(--size-sm)}.connection-device-item{display:flex;align-items:center;gap:var(--size-xs);padding:var(--size-xs) var(--size-md);border-radius:9999px}.connection-device-item--healthy{background-color:var(--color-green-dark)}.connection-device-item--unhealthy{background-color:var(--color-red-dark)}.connection-device-indicator{width:var(--size-sm);height:var(--size-sm);border-radius:50%}.connection-device-indicator--healthy{background-color:var(--color-green-medium)}.connection-device-indicator--unhealthy{background-color:var(--color-red-medium)}.connection-device-name{font-size:var(--size-md);font-weight:var(--font-weight-medium)}.connection-device-name--healthy{color:var(--color-green-medium)}.connection-device-name--unhealthy{color:var(--color-red-medium)}.connection-issues{display:flex;background-color:var(--color-slate-medium);border-radius:var(--size-sm);border:1px solid var(--color-slate-medium);padding:var(--size-lg);transition:var(--transition-colors)}.connection-issue{display:flex;align-items:flex-start;gap:var(--size-sm)}.connection-issue-icon{width:var(--size);height:var(--size);flex-shrink:0}.connection-issue-icon--error{color:var(--color-red-medium)}.connection-issue-icon--warning{color:var(--color-yellow-medium)}.connection-issue-content{font-size:var(--font-size-sm)}.connection-issue-title{font-weight:var(--font-weight-medium)}.connection-issue-title--error{color:var(--color-red-medium)}.connection-issue-title--warning{color:var(--color-yellow-medium)}.connection-issue-item{font-size:var(--size-md)}.connection-issue-item--error{color:var(--color-red-medium)}.connection-issue-item--warning{color:var(--color-yellow-medium)}.reconnection-status{border:1px solid var(--color-red-medium);padding:var(--size)}.reconnection-status-header{display:flex;align-items:center;justify-content:space-between}.reconnection-status-title{display:flex;align-items:center;gap:var(--size-sm)}.reconnection-status-icon{width:1.25rem;height:1.25rem;color:var(--color-red-medium)}.reconnection-status-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-red-medium)}.reconnection-status-actions{display:flex;gap:var(--size-sm)}.reconnection-device-list{gap:var(--size-sm)}.reconnection-device-item{display:flex;align-items:center;justify-content:space-between;padding:var(--size-sm);background-color:var(--color-red-dark);border-radius:var(--size-sm);transition:background-color .2s ease}.reconnection-device-info{display:flex;align-items:center;gap:var(--size-sm)}.reconnection-device-indicator{width:var(--size-sm);height:var(--size-sm);background-color:var(--color-red-medium);border-radius:50%}.reconnection-device-details{display:flex;flex-direction:column}.reconnection-device-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.reconnection-device-timeout{font-size:var(--size-md);color:var(--color-red-medium)}.reconnection-device-actions{display:flex;align-items:center;gap:var(--size-sm)}.reconnection-result{display:flex;align-items:center;gap:var(--size-xs)}.reconnection-result--success{color:var(--color-green-medium)}.reconnection-result--failure{color:var(--color-red-medium)}.reconnection-result-icon{width:var(--size);height:var(--size)}.reconnection-result-text{font-size:var(--size-md)}.reconnection-button{display:flex;align-items:center;padding:.25rem .5rem;border:1px solid var(--color-red-medium);font-size:var(--size-md);font-weight:var(--font-weight-medium);border-radius:.25rem;background-color:var(--color-slate-medium);color:var(--color-red-medium);cursor:pointer;transition:background-color .2s ease,color .2s ease;&:hover{background-color:var(--color-red-dark)}&:disabled{opacity:.5;cursor:not-allowed}}.reconnection-button-icon{width:var(--size-md);height:var(--size-md)}.reconnection-button-icon--spinning{animation:spin 1s linear infinite}.heart-rate-card{background-color:var(--color-slate-medium);border-radius:var(--size-sm);border:1px solid var(--color-slate-medium);padding:var(--size-lg);transition:var(--transition-colors);display:flex;flex-direction:column;gap:var(--size)}.heart-rate-card-header{display:flex;align-items:center;justify-content:space-between}.heart-rate-card-info{display:flex;flex-direction:column}.heart-rate-card-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.heart-rate-card-seat{font-size:var(--font-size-sm)}.heart-rate-card-status{display:flex;align-items:center;gap:var(--size-sm)}.heart-rate-card-status-icon{width:1.25rem;height:1.25rem}.heart-rate-card-status-icon--connected{color:var(--color-green-medium)}.heart-rate-card-status-icon--connecting{color:var(--color-yellow-medium)}.heart-rate-card-battery-icon{width:1.25rem;height:1.25rem}.heart-rate-display{text-align:center}.heart-rate-value-container{display:flex;align-items:center;justify-content:center}.heart-rate-icon{width:2rem;height:2rem;color:var(--color-red-medium)}.heart-rate-value{font-size:2.25rem;font-weight:700}.heart-rate-unit{font-size:var(--font-size-sm)}.heart-rate-zone-badge{display:inline-flex;align-items:center;padding:var(--size-xs) var(--size-md);border-radius:9999px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-100)}.heart-rate-zone-labels{display:flex;justify-content:space-between;font-size:var(--size-md)}.heart-rate-progress-bar{width:100%;height:8px;border-radius:4px;background-color:var(--color-slate-light);border:none}.heart-rate-progress-bar::-webkit-progress-bar{background-color:var(--color-slate-light);border-radius:4px}.heart-rate-progress-bar::-webkit-progress-value{background-color:var(--zone-color);border-radius:4px}.heart-rate-progress-bar::-moz-progress-bar{background-color:var(--zone-color);border-radius:4px}.heart-rate-last-update{font-size:var(--size-md);text-align:center}.heart-rate-chart{display:flex;flex-direction:column;gap:var(--size);background-color:var(--color-slate-medium);border-radius:var(--size-sm);border:1px solid var(--color-slate-medium);padding:var(--size-lg);transition:var(--transition-colors)}.heart-rate-chart-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.heart-rate-chart-container{height:16rem;@media (orientation: portrait){height:20rem}}.heart-rate-chart-empty{display:flex;flex-direction:column;gap:var(--size-sm);align-items:center;justify-content:center;height:16rem;text-align:center}.heart-rate-chart-empty-icon{font-size:2.25rem}.heart-rate-chart-empty-subtext{font-size:var(--font-size-sm)}.heart-rate-tooltip{background-color:var(--color-slate-medium);padding:var(--size-md);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);transition:var(--transition-colors);display:flex;flex-direction:column;gap:var(--size-xs)}.heart-rate-tooltip-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.heart-rate-tooltip-text{font-size:var(--size-md)}.heart-rate-tooltip-item{display:flex;align-items:center;gap:var(--size-sm)}.heart-rate-tooltip-indicator{width:var(--size-md);height:var(--size-md);border-radius:50%}.heart-rate-chart-header{display:flex;align-items:center;justify-content:space-between}.heart-rate-chart-subtitle{font-size:var(--font-size-sm)}.heart-rate-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--size)}.heart-rate-legend-item{display:flex;align-items:center;gap:var(--size-sm)}.heart-rate-legend-indicator{width:var(--size-md);height:var(--size-md);border-radius:50%}.heart-rate-legend-text{font-size:var(--font-size-sm)}#root{display:flex;flex-direction:column;gap:var(--size)}.main-container{padding:0 var(--size);display:flex;flex-direction:column;gap:var(--size-lg)}.error-content-center{text-align:center}.error-container{display:flex;align-items:center;justify-content:center;min-height:100vh}.error-icon{font-size:3.75rem}.error-title{font-size:var(--size-lg);font-weight:700}.loading-container{display:flex;align-items:center;justify-content:center;height:16rem}.loading-spinner{animation:spin 1s linear infinite;border-radius:50%;height:2rem;width:2rem;border-bottom:2px solid var(--color-blue-medium)}.error-message{display:flex;align-items:flex-start;gap:var(--size-md);background-color:var(--color-slate-medium);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);padding:var(--size)}.error-svg-icon{height:1.25rem;width:1.25rem;flex-shrink:0}.error-text-container{flex:1}.error-text-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.error-text-description{font-size:var(--font-size-sm)}.warning-message{display:flex;align-items:flex-start;gap:var(--size-md);background-color:var(--color-slate-medium);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);padding:var(--size)}.warning-svg-icon{height:1.25rem;width:1.25rem;flex-shrink:0}.warning-text-container{flex:1}.warning-text-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.warning-text-description{font-size:var(--font-size-sm)}.dialog-overlay{position:fixed;inset:0;background-color:var(--color-black-alpha);z-index:50}.dialog-icon-container{flex-shrink:0}.dialog-container{position:fixed;inset:0;overflow-y:auto;z-index:50}.dialog-content{display:flex;min-height:100%;align-items:center;justify-content:center;padding:var(--size);text-align:center}.dialog-panel{width:100%;max-width:28rem;overflow:hidden;border-radius:1rem;background-color:var(--color-slate-medium);padding:var(--size-lg);text-align:left;align-items:center;transition:all .2s ease,background-color .2s ease}.dialog-header{display:flex;align-items:center;justify-content:space-between}.dialog-title-container{display:flex;align-items:center;gap:var(--size-md)}.dialog-icon{flex-shrink:0;width:2rem;height:2rem;color:var(--color-yellow-medium)}.dialog-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);line-height:1.5}.dialog-close-button{color:var(--color-slate-light);background:none;border:none;cursor:pointer;transition:color .2s ease;&:hover{color:var(--color-slate-medium)}}.dialog-close-icon{width:var(--size-lg);height:var(--size-lg)}.dialog-body{display:flex;flex-direction:column;gap:var(--size)}.dialog-description{font-size:var(--font-size-sm)}.dialog-conflict-list{gap:var(--size-md)}.dialog-conflict-item{display:flex;align-items:center;justify-content:space-between;padding:var(--size-md);background-color:var(--color-yellow-dark);border-radius:var(--size-sm);border:1px solid var(--color-yellow-medium);transition:var(--transition-colors)}.dialog-conflict-info{display:flex;align-items:center;gap:var(--size-md)}.dialog-conflict-icon{width:1.25rem;height:1.25rem;color:var(--color-yellow-medium)}.dialog-conflict-details{display:flex;flex-direction:column;gap:var(--size-xs)}.dialog-conflict-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.dialog-conflict-status{font-size:var(--size-md)}.dialog-conflict-actions{display:flex;align-items:center;gap:var(--size-sm)}.dialog-conflict-warning-icon{width:var(--size);height:var(--size);color:var(--color-yellow-medium)}.dialog-conflict-warning-text{font-size:var(--size-md);color:var(--color-yellow-medium)}.dialog-note{padding:var(--size-md);background-color:var(--color-blue-dark);border-radius:var(--size-sm);border:1px solid var(--color-blue-light);transition:var(--transition-colors)}.dialog-note-text{font-size:var(--font-size-sm);color:var(--color-blue-light)}.dialog-actions{display:flex;gap:var(--size-md)}.dialog-button{flex:1;display:inline-flex;justify-content:center;padding:var(--size-sm) var(--size);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition-all);&:focus{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 2px var(--color-blue-medium)}}.dialog-button--secondary{color:var(--color-slate-light);background-color:var(--color-slate-medium);border:1px solid var(--color-slate-light);&:hover{background-color:var(--color-slate-light)}}.dialog-button--primary{color:var(--color-slate-100);background-color:var(--color-blue-medium);border:1px solid transparent;&:hover{background-color:var(--color-blue-dark)}&:disabled{opacity:.5;cursor:not-allowed}}.error-boundary{min-height:100vh;background-color:var(--color-slate-dark);display:flex;flex-direction:column;gap:var(--size);align-items:center;justify-content:center;transition:background-color .2s ease}.error-boundary-header{display:flex;align-items:center;gap:var(--size-md)}.error-boundary-icon{width:2rem;height:2rem;color:var(--color-red-medium)}.error-boundary-title{font-size:1.25rem;font-weight:var(--font-weight-semibold)}.error-boundary-details-summary{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer}.error-boundary-details-content{font-size:var(--size-md);padding:var(--size-sm);border-radius:.25rem;overflow:auto;white-space:pre-wrap;transition:background-color .2s ease}.error-boundary-actions{display:flex;gap:var(--size-md)}.error-boundary-button{flex:1;background-color:var(--color-blue-medium);color:var(--color-slate-100);padding:var(--size-sm) var(--size);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border:none;cursor:pointer;transition:background-color .2s ease;&:hover{background-color:var(--color-blue-dark)}&:focus{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 2px var(--color-blue-medium)}}.error-boundary-button--secondary{color:var(--color-slate-light);&:hover{background-color:var(--color-blue-dark)}}.dev-toggle{display:flex;flex-direction:column;gap:var(--size-md);background-color:var(--color-blue-dark);border:1px solid var(--color-blue-light);border-radius:var(--size-sm);padding:var(--size);transition:var(--transition-colors)}.dev-toggle-header{display:flex;align-items:center;gap:var(--size-sm)}.dev-toggle-icon{width:1.25rem;height:1.25rem;color:var(--color-blue-light)}.dev-toggle-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-blue-light)}.dev-toggle-content{display:flex;flex-direction:column;gap:var(--size-md)}.dev-toggle-control{display:flex;align-items:center;gap:var(--size-sm)}.dev-toggle-label{font-size:var(--font-size-sm);color:var(--color-blue-light)}.dev-toggle-switch{position:relative;display:inline-flex;height:var(--size-lg);width:2.75rem;flex-shrink:0;cursor:pointer;border-radius:9999px;border:2px solid transparent;transition:var(--transition-all);&:focus{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 2px var(--color-blue-light)}}.dev-toggle-switch--active{background-color:var(--color-blue-light)}.dev-toggle-switch--inactive{background-color:var(--color-slate-dark)}.dev-toggle-switch-thumb{pointer-events:none;display:inline-block;height:1.25rem;width:1.25rem;border-radius:50%;transition:var(--transition-all)}.dev-toggle-switch-thumb--active{background-color:var(--color-slate-light);transform:translate(1.25rem)}.dev-toggle-switch-thumb--inactive{background-color:var(--color-slate-medium);transform:translate(0)}.dev-toggle-actions{display:flex;flex-wrap:wrap;gap:var(--size-sm)}.dev-toggle-button{display:inline-flex;align-items:center;padding:var(--size-xs) var(--size-md);border:1px solid var(--color-blue-light);font-size:var(--size-md);font-weight:var(--font-weight-medium);border-radius:var(--border-radius-sm);color:var(--color-blue-light);background-color:var(--color-slate-medium);cursor:pointer;transition:var(--transition-all);&:hover{background-color:var(--color-blue-dark)}&:focus{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 2px var(--color-blue-light)}}.dev-toggle-button--primary{color:var(--color-slate-100);background-color:var(--color-blue-light);border:1px solid transparent;&:hover{background-color:var(--color-blue-dark)}}.dev-toggle-button--danger{color:var(--color-slate-100);background-color:var(--color-red-medium);border:1px solid transparent;&:hover{background-color:var(--color-red-dark)}}.dev-toggle-button-icon{width:var(--size-md);height:var(--size-md)}.dev-toggle-scenarios{display:flex;flex-direction:column;gap:var(--size-sm)}.dev-toggle-scenarios-label{font-size:var(--size-md);color:var(--color-blue-light)}.dev-toggle-scenarios-list{gap:var(--size-sm)}.dev-toggle-scenario-button{display:inline-flex;align-items:center;padding:.25rem .5rem;border:1px solid var(--color-blue-light);font-size:var(--size-md);font-weight:var(--font-weight-medium);border-radius:.25rem;color:var(--color-blue-light);background-color:var(--color-slate-medium);cursor:pointer;transition:var(--transition-all);&:hover{background-color:var(--color-blue-dark)}&:focus{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 2px var(--color-blue-light)}}.dev-toggle-scenario-icon{width:var(--size-md);height:var(--size-md)}.dev-toggle-status{display:flex;align-items:center;gap:var(--size-sm);font-size:var(--size-md);color:var(--color-blue-light)}.dev-toggle-status-indicator{width:var(--size-sm);height:var(--size-sm);background-color:var(--color-blue-light);border-radius:50%;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.rower-profile{background-color:var(--color-slate-medium);border-radius:var(--size-sm);border:1px solid var(--color-slate-medium);padding:var(--size-lg);transition:var(--transition-colors)}.rower-profile-header{display:flex;align-items:center;justify-content:space-between}.rower-profile-info{display:flex;align-items:center;gap:var(--size-md)}.rower-profile-icon{width:2rem;height:2rem;color:var(--color-blue-light)}.rower-profile-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.rower-profile-seat{font-size:var(--font-size-sm);color:var(--color-slate-400)}.rower-profile-actions{display:flex;gap:var(--size-sm)}.rower-profile-details{display:grid;grid-template-columns:1fr;gap:var(--size-md)}.rower-profile-field{display:flex;flex-direction:column;gap:var(--size-xs)}.rower-profile-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-300)}.rower-profile-value{font-size:var(--font-size-base);color:var(--color-slate-100);padding:var(--size-sm);background-color:var(--color-slate-dark);border-radius:var(--size-sm);border:1px solid var(--color-slate-medium)}.rower-profile-input{font-size:var(--font-size-base);color:var(--color-slate-100);background-color:var(--color-slate-dark);border:1px solid var(--color-slate-medium);border-radius:var(--size-xs);padding:var(--size-sm);transition:var(--transition-colors)}.rower-profile-input:focus{outline:2px solid transparent;outline-offset:2px;border-color:var(--color-blue-light);box-shadow:0 0 0 2px var(--color-blue-light)}.rower-profile-input-group,.rower-profile-estimate-group{display:flex;flex-direction:column;gap:var(--size-xs)}.rower-profile-estimate{font-size:var(--font-size-xs);color:var(--color-slate-400);font-style:italic;transition:var(--transition-colors)}.rower-profile-estimate--animated{animation:estimateUpdate .3s ease-in-out}@keyframes estimateUpdate{0%{color:var(--color-blue-light);transform:scale(1.05)}50%{color:var(--color-blue-medium);transform:scale(1.02)}to{color:var(--color-slate-400);transform:scale(1)}}.rower-profile-use-estimate-btn{font-size:var(--font-size-xs);color:var(--color-blue-light);background:none;border:none;padding:var(--size-xs);cursor:pointer;text-decoration:underline;transition:var(--transition-colors)}.rower-profile-use-estimate-btn:hover{color:var(--color-blue-medium)}@media (min-width: 640px){.rower-profile-details{grid-template-columns:repeat(3,1fr)}}.rower-profiles{display:flex;flex-direction:column;gap:var(--size-lg)}.rower-profiles-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.rower-profiles-grid{display:grid;grid-template-columns:1fr;gap:var(--size-lg)}.rower-profile-container{display:flex;flex-direction:column;gap:var(--size-md)}.rower-device-assignment{display:flex;flex-direction:column;gap:var(--size-sm);padding:var(--size-md);background-color:var(--color-slate-dark);border-radius:var(--size);border:1px solid var(--color-slate-medium)}.rower-device-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-300)}.rower-device-select{font-size:var(--font-size-base);color:var(--color-slate-100);background-color:var(--color-slate-medium);border:1px solid var(--color-slate-medium);border-radius:var(--size-xs);padding:var(--size-sm);transition:var(--transition-colors)}.rower-device-select:focus{outline:2px solid transparent;outline-offset:2px;border-color:var(--color-blue-light);box-shadow:0 0 0 2px var(--color-blue-light)}.rower-device-health{display:flex;align-items:center;gap:var(--size-sm)}.rower-device-health-indicator{width:var(--size-sm);height:var(--size-sm);border-radius:50%}.rower-device-health-indicator--healthy{background-color:var(--color-green-medium)}.rower-device-health-indicator--unhealthy{background-color:var(--color-red-medium)}.rower-device-health-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.rower-device-health-text--healthy{color:var(--color-green-light)}.rower-device-health-text--unhealthy{color:var(--color-red-light)}@media (min-width: 768px){.rower-profiles-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.rower-profiles-grid{grid-template-columns:repeat(2,1fr)}}.historical-sessions{display:flex;flex-direction:column;gap:var(--size-lg)}.historical-sessions-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--size-md)}.historical-sessions-title{display:flex;align-items:center;gap:var(--size-sm);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.historical-sessions-icon{width:1.5rem;height:1.5rem;color:var(--color-blue-light)}.historical-sessions-stats{display:flex;gap:var(--size-lg)}.stat-item{display:flex;flex-direction:column;align-items:center;gap:var(--size-xs)}.stat-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-blue-light)}.stat-label{font-size:var(--font-size-sm);color:var(--color-slate-400)}.historical-sessions-content{display:grid;grid-template-columns:1fr;gap:var(--size-lg)}.historical-sessions-list-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.historical-sessions-grid{display:grid;grid-template-columns:1fr;gap:var(--size-md)}.historical-session-card{background-color:var(--color-slate-medium);border-radius:var(--size-sm);border:1px solid var(--color-slate-medium);padding:var(--size-lg);transition:var(--transition-all);cursor:pointer}.historical-session-card:hover{border-color:var(--color-blue-light);transform:translateY(-2px)}.historical-session-card--selected{border-color:var(--color-blue-light);background-color:var(--color-slate-dark)}.historical-session-header{display:flex;align-items:flex-start;justify-content:space-between}.historical-session-info{flex:1}.historical-session-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.historical-session-date{display:flex;align-items:center;gap:var(--size-xs);font-size:var(--font-size-sm);color:var(--color-slate-400)}.historical-session-date-icon{width:1rem;height:1rem}.historical-session-status-badge{padding:var(--size-xs) var(--size-sm);border-radius:var(--size-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.05em}.historical-session-status-badge--active{background-color:var(--color-green-medium);color:var(--color-green-light)}.historical-session-status-badge--completed{background-color:var(--color-slate-light);color:var(--color-slate-300)}.historical-session-details{display:grid;grid-template-columns:1fr;gap:var(--size-sm)}.historical-session-detail{display:flex;align-items:center;gap:var(--size-sm);font-size:var(--font-size-sm)}.historical-session-detail-icon{width:1rem;height:1rem;color:var(--color-slate-400)}.historical-session-detail-label{color:var(--color-slate-400);min-width:80px}.historical-session-detail-value{color:var(--color-slate-100);font-weight:var(--font-weight-medium)}.historical-session-actions{display:flex;gap:var(--size-sm)}.historical-sessions-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--size-xl);text-align:center;color:var(--color-slate-400)}.historical-sessions-empty-icon{width:3rem;height:3rem;opacity:.5}.historical-sessions-empty-subtitle{font-size:var(--font-size-sm)}.historical-sessions-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--size-xl);gap:var(--size-md)}.loading-spinner{width:2rem;height:2rem;border:2px solid var(--color-slate-medium);border-top:2px solid var(--color-blue-light);border-radius:50%;animation:spin 1s linear infinite}.historical-session-details-panel{background-color:var(--color-slate-medium);border-radius:var(--size-sm);border:1px solid var(--color-slate-medium);padding:var(--size-lg)}.historical-session-details-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.historical-session-summary{display:grid;grid-template-columns:1fr;gap:var(--size-sm)}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:var(--size-sm);background-color:var(--color-slate-dark);border-radius:var(--size-xs)}.summary-label{font-size:var(--font-size-sm);color:var(--color-slate-400)}.summary-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-100)}.historical-session-rowers-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.historical-session-rowers-list{display:grid;grid-template-columns:1fr;gap:var(--size-sm)}.historical-session-rower{display:flex;justify-content:space-between;align-items:center;padding:var(--size-sm);background-color:var(--color-slate-dark);border-radius:var(--size-xs)}.historical-session-rower-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-100)}.historical-session-rower-seat{font-size:var(--font-size-sm);color:var(--color-slate-400)}@media (min-width: 768px){.historical-sessions-content{grid-template-columns:2fr 1fr}.historical-sessions-grid,.historical-session-details,.historical-session-summary{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.historical-sessions-grid{grid-template-columns:repeat(3,1fr)}}.enhanced-dashboard{display:flex;flex-direction:column;gap:var(--size-lg)}.card-title{display:flex;align-items:center;gap:var(--size-sm);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.card-title-icon{width:1.25rem;height:1.25rem;color:var(--color-blue-light)}.performance-metrics{background-color:var(--color-slate-medium);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);padding:var(--size-lg);transition:var(--transition-colors)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--size-md)}.metric-item{display:flex;align-items:center;gap:var(--size-sm);padding:var(--size-md);background-color:var(--color-slate-dark);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);transition:var(--transition-colors)}.metric-icon{width:1.5rem;height:1.5rem;color:var(--color-blue-light);flex-shrink:0}.metric-content{display:flex;flex-direction:column}.metric-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-slate-100);line-height:1}.metric-label{font-size:var(--font-size-sm);color:var(--color-slate-400)}.trend-chart{background-color:var(--color-slate-medium);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);padding:var(--size-lg);transition:var(--transition-colors)}.chart-header{display:flex;justify-content:space-between;align-items:center}.time-range-selector{display:flex;gap:var(--size-xs)}.time-range-btn{padding:var(--size-xs) var(--size-sm);background:transparent;color:var(--color-slate-400);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);font-size:var(--font-size-sm);cursor:pointer;transition:var(--transition-all)}.time-range-btn:hover{background-color:var(--color-slate-dark);color:var(--color-slate-100)}.time-range-btn.active{background-color:var(--color-blue-light);color:var(--color-slate-100);border-color:var(--color-blue-light)}.chart-container{width:100%;height:300px}.zone-distribution{background-color:var(--color-slate-medium);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);padding:var(--size-lg);transition:var(--transition-colors)}.zone-chart-container{width:100%;height:250px;display:flex;justify-content:center;align-items:center}.historical-comparison,.rower-metrics{background-color:var(--color-slate-medium);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);padding:var(--size-lg);transition:var(--transition-colors)}.rower-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--size-md)}.rower-metric-card{background-color:var(--color-slate-dark);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);padding:var(--size-md);transition:var(--transition-colors)}.rower-metric-header{display:flex;justify-content:space-between;align-items:center}.rower-metric-name{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.rower-metric-seat{font-size:var(--font-size-sm);color:var(--color-slate-400);background-color:var(--color-slate-medium);padding:var(--size-xs) var(--size-sm);border-radius:var(--size-xs)}.rower-metric-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--size-sm)}.rower-metric-stat{display:flex;flex-direction:column;align-items:center;text-align:center}.rower-metric-stat-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-blue-light);line-height:1}.rower-metric-stat-label{font-size:var(--font-size-xs);color:var(--color-slate-400)}.rower-zone-breakdown{border-top:1px solid var(--color-slate-medium)}.rower-zone-breakdown-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-slate-200)}.rower-zone-list{gap:var(--size-xs)}.rower-zone-item{display:flex;justify-content:space-between;align-items:center;padding:var(--size-xs);background-color:var(--color-slate-dark);border-radius:var(--size-xs)}.rower-zone-header{display:flex;align-items:center;gap:var(--size-xs)}.rower-zone-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.rower-zone-name{font-size:var(--font-size-xs);color:var(--color-slate-300);font-weight:var(--font-weight-medium)}.rower-zone-details{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.rower-zone-percentage{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-blue-light)}.rower-zone-duration{font-size:var(--font-size-xs);color:var(--color-slate-400)}.session-comparison{background-color:var(--color-slate-medium);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);padding:var(--size-lg);transition:var(--transition-colors)}.session-selection-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.session-selection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--size-sm)}.session-selection-card{background-color:var(--color-slate-dark);border:2px solid var(--color-slate-medium);border-radius:var(--size-sm);padding:var(--size-md);cursor:pointer;transition:var(--transition-colors)}.session-selection-card:hover{border-color:var(--color-blue-light)}.session-selection-card.selected{border-color:var(--color-blue-light);background-color:var(--color-slate-medium)}.session-selection-header{display:flex;align-items:flex-start;gap:var(--size-sm)}.session-selection-radio{accent-color:var(--color-blue-light)}.session-selection-info{flex:1;display:flex;flex-direction:column;gap:var(--size-xs)}.session-selection-date{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-100)}.session-selection-details{font-size:var(--font-size-xs);color:var(--color-slate-400)}.comparison-section-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-slate-100);display:flex;align-items:center;gap:var(--size-xs)}.comparison-section-icon{width:16px;height:16px;color:var(--color-blue-light)}.rower-comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--size-md)}.rower-comparison-card{background-color:var(--color-slate-dark);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);padding:var(--size-md)}.rower-comparison-header{display:flex;justify-content:space-between;align-items:center}.rower-comparison-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.rower-comparison-seat{font-size:var(--font-size-xs);color:var(--color-slate-400);background-color:var(--color-slate-medium);padding:var(--size-xs) var(--size-sm);border-radius:var(--size-xs)}.rower-comparison-metrics{display:flex;justify-content:space-between;gap:var(--size-sm)}.rower-comparison-metric{display:flex;flex-direction:column;align-items:center;text-align:center}.rower-comparison-session{font-size:var(--font-size-xs);color:var(--color-slate-400)}.rower-comparison-avg{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-blue-light)}.session-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--size-md)}.session-overview-card{background-color:var(--color-slate-dark);border:1px solid var(--color-slate-medium);border-radius:var(--size-sm);padding:var(--size-md)}.session-overview-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.session-overview-meta{display:flex;flex-wrap:wrap;gap:var(--size-sm)}.session-overview-date,.session-overview-time,.session-overview-duration{font-size:var(--font-size-xs);color:var(--color-slate-400);background-color:var(--color-slate-medium);padding:var(--size-xs) var(--size-sm);border-radius:var(--size-xs)}.session-overview-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--size-sm)}.session-overview-metric{display:flex;align-items:center;gap:var(--size-xs);padding:var(--size-sm);background-color:var(--color-slate-medium);border-radius:var(--size-xs)}.session-overview-metric-icon{width:16px;height:16px;color:var(--color-blue-light);flex-shrink:0}.session-overview-metric-content{display:flex;flex-direction:column}.session-overview-metric-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-slate-100);line-height:1}.session-overview-metric-label{font-size:var(--font-size-xs);color:var(--color-slate-400)}.rower-comparison-sessions{display:flex;flex-direction:column;gap:var(--size-md)}.rower-comparison-session{background-color:var(--color-slate-medium);border-radius:var(--size-sm);padding:var(--size-md)}.rower-comparison-session-header{display:flex;justify-content:space-between;align-items:center}.rower-comparison-session-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-slate-100)}.rower-comparison-session-date{font-size:var(--font-size-xs);color:var(--color-slate-400);background-color:var(--color-slate-dark);padding:var(--size-xs) var(--size-sm);border-radius:var(--size-xs)}.rower-comparison-session-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--size-sm)}.rower-comparison-session-metric{display:flex;align-items:center;gap:var(--size-xs);padding:var(--size-sm);background-color:var(--color-slate-dark);border-radius:var(--size-xs)}.rower-comparison-session-metric-icon{width:14px;height:14px;color:var(--color-blue-light);flex-shrink:0}.rower-comparison-session-metric-content{display:flex;flex-direction:column}.rower-comparison-session-metric-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-slate-100);line-height:1}.rower-comparison-session-metric-label{font-size:var(--font-size-xs);color:var(--color-slate-400)}.rower-comparison-session-zones{border-top:1px solid var(--color-slate-dark)}.rower-comparison-session-zones-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--size-xs)}.rower-comparison-session-zone{display:flex;align-items:center;gap:var(--size-xs);padding:var(--size-xs);background-color:var(--color-slate-dark);border-radius:var(--size-xs)}.rower-comparison-session-zone-color{width:10px;height:10px;border-radius:50%;flex-shrink:0}.rower-comparison-session-zone-name{font-size:var(--font-size-xs);color:var(--color-slate-300);flex:1}.rower-comparison-session-zone-percentage{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-blue-light)}.progress-indicator{display:flex;align-items:center;gap:var(--size-xs);padding:var(--size-xs);border-radius:var(--size-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.progress-indicator.improvement{background-color:#10b9811a;color:#10b981}.progress-indicator.decline{background-color:#ef44441a;color:#ef4444}.progress-indicator.neutral{background-color:#3b82f61a;color:#3b82f6}.alert-panel-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--size-lg)}.alert-panel{background-color:var(--color-slate-dark);border:1px solid var(--color-slate-medium);border-radius:var(--border-radius-lg);width:100%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.alert-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--size-lg);border-bottom:1px solid var(--color-slate-medium)}.alert-panel-title{display:flex;align-items:center;gap:var(--size-sm)}.alert-panel-title-icon{width:24px;height:24px;color:var(--color-blue-light)}.alert-panel-count{background-color:var(--color-red);color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.alert-panel-actions{display:flex;align-items:center;gap:var(--size-sm)}.alert-panel-settings-btn,.alert-panel-close-btn{background:none;border:none;color:var(--color-slate-light);cursor:pointer;padding:var(--size-xs);border-radius:var(--border-radius-sm);transition:var(--transition-colors)}.alert-panel-settings-btn:hover,.alert-panel-close-btn:hover{background-color:var(--color-slate-medium);color:var(--color-white)}.alert-panel-settings-icon,.alert-panel-close-icon{width:20px;height:20px}.alert-panel-settings{padding:var(--size-lg);border-bottom:1px solid var(--color-slate-medium);background-color:var(--color-slate-darker)}.alert-panel-settings h4{color:var(--color-white);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.alert-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--size-md)}.alert-setting-item{display:flex;align-items:center;gap:var(--size-sm);color:var(--color-slate-light);cursor:pointer}.alert-setting-item input[type=checkbox]{accent-color:var(--color-blue-light)}.alert-settings-sliders{display:flex;flex-direction:column;gap:var(--size-md)}.alert-setting-slider{display:flex;flex-direction:column;gap:var(--size-xs)}.alert-setting-slider label{color:var(--color-slate-light);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.alert-setting-slider input[type=range]{accent-color:var(--color-blue-light)}.alert-setting-slider span{color:var(--color-blue-light);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:right}.alert-panel-content{flex:1;overflow-y:auto;padding:var(--size-lg)}.alert-panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--size-xl);color:var(--color-slate-light);text-align:center}.alert-panel-empty-icon{width:48px;height:48px;opacity:.5}.alert-list{gap:var(--size-lg)}.alert-severity-group{display:flex;flex-direction:column;gap:var(--size-sm)}.alert-severity-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--size-xs) var(--size-sm);border-radius:var(--border-radius-sm)}.alert-severity-title--high{background-color:#ef44441a;color:var(--color-red)}.alert-severity-title--medium{background-color:#f59e0b1a;color:var(--color-orange)}.alert-severity-title--low{background-color:#3b82f61a;color:var(--color-blue-light)}.alert-item{background-color:var(--color-slate-darker);border:1px solid var(--color-slate-medium);border-radius:var(--size-md);padding:var(--size-md);transition:var(--transition-colors)}.alert-item:hover{border-color:var(--color-slate-light)}.alert-item--high{border-left:4px solid var(--color-red)}.alert-item--medium{border-left:4px solid var(--color-orange)}.alert-item--low{border-left:4px solid var(--color-blue-light)}.alert-item-header{display:flex;align-items:flex-start;gap:var(--size-sm)}.alert-icon{width:20px;height:20px;flex-shrink:0}.alert-icon--high{color:var(--color-red)}.alert-icon--medium{color:var(--color-orange)}.alert-icon--low{color:var(--color-blue-light)}.alert-item-content{flex:1}.alert-item-title{color:var(--color-white);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.alert-item-message{color:var(--color-slate-light);font-size:var(--font-size-sm);line-height:1.4}.alert-item-dismiss{background:none;border:none;color:var(--color-slate-light);cursor:pointer;padding:var(--size-xs);border-radius:var(--border-radius-sm);transition:var(--transition-colors);flex-shrink:0}.alert-item-dismiss:hover{background-color:var(--color-slate-medium);color:var(--color-white)}.alert-item-dismiss-icon{width:16px;height:16px}.alert-item-meta{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-xs);color:var(--color-slate-medium)}.alert-item-rower{background-color:var(--color-slate-medium);color:var(--color-slate-light);padding:2px var(--size-xs);border-radius:var(--border-radius-sm);font-weight:var(--font-weight-medium)}.alert-panel-footer{display:flex;gap:var(--size-sm);padding:var(--size-lg);border-top:1px solid var(--color-slate-medium);background-color:var(--color-slate-darker)}.alert-panel-dismiss-all,.alert-panel-clear-all{flex:1;padding:var(--size-sm) var(--size-md);border:1px solid var(--color-slate-medium);border-radius:var(--border-radius-sm);background-color:transparent;color:var(--color-slate-light);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-colors)}.alert-panel-dismiss-all:hover{background-color:var(--color-orange);border-color:var(--color-orange);color:var(--color-white)}.alert-panel-clear-all:hover{background-color:var(--color-red);border-color:var(--color-red);color:var(--color-white)}.btn-alert{position:relative}.alert-badge{position:absolute;top:-8px;right:-8px;background-color:var(--color-red);color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);border:2px solid var(--color-slate-dark)}.settings-header{padding:var(--size-lg);border-bottom:1px solid var(--color-slate-medium);display:flex;align-items:center;gap:var(--size)}.settings-title-icon{width:24px;height:24px;color:var(--color-blue-light)}.settings-back-btn{background:none;border:none;color:var(--color-slate-light);cursor:pointer;padding:var(--size-xs);border-radius:var(--border-radius-sm);transition:var(--transition-colors)}.settings-back-btn:hover{background-color:var(--color-slate-medium);color:var(--color-white)}.settings-back-icon{width:20px;height:20px}.settings-content{flex:1;overflow-y:auto;padding:var(--size-lg)}.settings-tabs{display:flex;gap:var(--size-xs);border-bottom:1px solid var(--color-slate-medium)}.settings-tab{display:flex;align-items:center;gap:var(--size-xs);padding:var(--size-sm) var(--size-md);background:none;border:none;color:var(--color-slate-light);cursor:pointer;border-bottom:2px solid transparent;transition:var(--transition-colors);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.settings-tab:hover{color:var(--color-white);background-color:var(--color-slate-medium)}.settings-tab.active{color:var(--color-blue-light);border-bottom-color:var(--color-blue-light);background-color:var(--color-slate-darker)}.settings-tab-icon{width:16px;height:16px}.settings-section{display:flex;flex-direction:column;gap:var(--size-lg)}.settings-section-title{color:var(--color-white);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.settings-section-description{color:var(--color-slate-light);font-size:var(--font-size-sm);line-height:1.5}.settings-group{display:flex;flex-direction:column;gap:var(--size-md)}.settings-group-title{color:var(--color-white);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);border-bottom:1px solid var(--color-slate-medium)}.settings-item{background-color:var(--color-slate-darker);border:1px solid var(--color-slate-medium);border-radius:var(--size-md);padding:var(--size-md);transition:var(--transition-colors)}.settings-item:hover{border-color:var(--color-slate-light)}.settings-item-content{display:flex;align-items:center;justify-content:space-between;gap:var(--size-md)}.settings-item-header{display:flex;align-items:flex-start;gap:var(--size-sm);flex:1}.settings-item-icon{width:20px;height:20px;color:var(--color-blue-light);flex-shrink:0}.settings-item-info{flex:1}.settings-item-title{color:var(--color-white);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.settings-item-description{color:var(--color-slate-light);font-size:var(--font-size-xs);line-height:1.4}.settings-toggle{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer}.settings-toggle input{opacity:0;width:0;height:0}.settings-toggle-slider{position:absolute;inset:0;background-color:var(--color-slate-medium);border-radius:24px;transition:var(--transition-colors)}.settings-toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--color-white);border-radius:50%;transition:var(--transition-colors)}.settings-toggle input:checked+.settings-toggle-slider{background-color:var(--color-blue-light)}.settings-toggle input:checked+.settings-toggle-slider:before{transform:translate(20px)}.settings-slider-container{display:flex;align-items:center;gap:var(--size-sm);min-width:200px}.settings-slider{flex:1;accent-color:var(--color-blue-light)}.settings-slider-value{color:var(--color-blue-light);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);min-width:40px;text-align:right}.settings-select{min-width:150px}.settings-select-input{width:100%;padding:var(--size-sm);background-color:var(--color-slate-medium);border:1px solid var(--color-slate-light);border-radius:var(--border-radius-sm);color:var(--color-white);font-size:var(--font-size-sm)}.settings-select-input:focus{outline:none;border-color:var(--color-blue-light)}.settings-danger-btn{padding:var(--size-sm) var(--size-md);background-color:transparent;border:1px solid var(--color-red);border-radius:var(--border-radius-sm);color:var(--color-red);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-colors)}.settings-danger-btn:hover:not(:disabled){background-color:var(--color-red);color:var(--color-white)}.settings-danger-btn:disabled{background-color:var(--color-slate-medium);border-color:var(--color-slate-medium);color:var(--color-slate-light);cursor:not-allowed}.settings-progress-container{display:flex;align-items:center;gap:var(--size-sm);min-width:200px}.settings-progress{flex:1;height:8px;border-radius:var(--border-radius-sm);background-color:var(--color-slate-medium);overflow:hidden}.settings-progress::-webkit-progress-bar{background-color:var(--color-slate-medium);border-radius:var(--border-radius-sm)}.settings-progress::-webkit-progress-value{background-color:var(--color-blue);border-radius:var(--border-radius-sm)}.settings-progress::-moz-progress-bar{background-color:var(--color-blue);border-radius:var(--border-radius-sm)}.settings-progress-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-light);min-width:40px;text-align:right}.settings-footer{display:flex;align-items:center;border-top:1px solid var(--color-slate-medium);gap:var(--size)}.settings-footer-actions{display:flex;gap:var(--size)}.settings-reset-btn,.settings-cancel-btn,.settings-save-btn{padding:var(--size-sm) var(--size-md);border:1px solid var(--color-slate-medium);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-colors);display:flex;align-items:center;gap:var(--size-xs)}.settings-reset-btn,.settings-cancel-btn,.settings-save-btn{background-color:transparent;color:var(--color-blue-medium);border-color:var(--color-blue-medium);&:hover{background-color:var(--color-blue-dark);color:var(--color-white)}}.settings-save-icon{width:16px;height:16px}@media (max-width: 768px){.alert-panel-overlay{padding:var(--size-md)}.alert-panel{max-height:90vh}.alert-settings-grid{grid-template-columns:1fr}.alert-panel-footer{flex-direction:column}}.progress-icon{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.progress-text{font-size:var(--font-size-xs)}.session-overview-card.current-session{border-color:var(--color-blue-light);background-color:#3b82f60d}.session-overview-card.previous-session{border-color:var(--color-slate-medium)}@media (max-width: 768px){.enhanced-dashboard{gap:var(--size-md)}.metrics-grid{grid-template-columns:repeat(2,1fr)}.chart-header{flex-direction:column;align-items:flex-start;gap:var(--size-sm)}.time-range-selector{width:100%;justify-content:center}.chart-container{height:250px}.zone-chart-container{height:200px}}@media (max-width: 480px){.metrics-grid{grid-template-columns:1fr}.metric-item{padding:var(--size-sm)}.metric-value{font-size:var(--font-size-lg)}}.session-analytics{display:flex;flex-direction:column;gap:var(--size-lg)}.analytics-overview{padding:var(--size-lg)}.analytics-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--size-lg)}.analytics-metric-group{display:flex;flex-direction:column;gap:var(--size-md)}.analytics-metric-group-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-dark)}.analytics-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--size-md)}.analytics-metric{display:flex;align-items:center;gap:var(--size-sm);padding:var(--size-md);background-color:var(--color-slate-light);border-radius:var(--size-md);border:1px solid var(--color-slate-medium)}.analytics-metric-icon{width:24px;height:24px;color:var(--color-blue-medium);flex-shrink:0}.analytics-metric-content{display:flex;flex-direction:column;gap:var(--size-xs)}.analytics-metric-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-slate-dark);line-height:1}.analytics-metric-label{font-size:var(--font-size-sm);color:var(--color-slate-medium);line-height:1}.performance-scores{padding:var(--size-lg)}.performance-scores-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--size-md)}.performance-score{padding:var(--size-md);border-radius:var(--size-md);border:1px solid var(--color-slate-medium)}.performance-score-header{display:flex;justify-content:space-between;align-items:center}.performance-score-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-dark)}.performance-score-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.performance-score-bar{height:8px;background-color:var(--color-slate-light);border-radius:var(--border-radius-sm);overflow:hidden}.performance-score-fill{height:100%;transition:width .3s ease}.zone-analysis{padding:var(--size-lg)}.zone-analysis-content{display:flex;flex-direction:column;gap:var(--size-lg)}.zone-distribution-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-dark)}.zone-distribution-bars{display:flex;flex-direction:column;gap:var(--size-md)}.zone-distribution-bar{display:flex;flex-direction:column;gap:var(--size-xs)}.zone-distribution-bar-header{display:flex;align-items:center;gap:var(--size-sm)}.zone-distribution-bar-color{width:16px;height:16px;border-radius:var(--border-radius-sm);flex-shrink:0}.zone-distribution-bar-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-dark);flex:1}.zone-distribution-bar-percentage{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-slate-dark)}.zone-distribution-bar-track{height:12px;background-color:var(--color-slate-light);border-radius:var(--border-radius-sm);overflow:hidden}.zone-distribution-bar-fill{height:100%;transition:width .3s ease}.zone-distribution-bar-time{font-size:var(--font-size-xs);color:var(--color-slate-medium);text-align:right}.crew-analysis{padding:var(--size-lg)}.crew-analysis-content{display:flex;flex-direction:column;gap:var(--size-lg)}.crew-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--size-md)}.crew-metric{display:flex;justify-content:space-between;align-items:center;padding:var(--size-md);background-color:var(--color-slate-light);border-radius:var(--size-md);border:1px solid var(--color-slate-medium)}.crew-metric-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-dark)}.crew-metric-value{display:flex;align-items:baseline;gap:var(--size-xs)}.crew-metric-score{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.crew-metric-unit{font-size:var(--font-size-sm);color:var(--color-slate-medium)}.rower-performance-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-dark)}.rower-performance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--size-md)}.rower-performance-card{padding:var(--size-md);background-color:var(--color-slate-light);border-radius:var(--size-md);border:1px solid var(--color-slate-medium)}.rower-performance-header{display:flex;justify-content:space-between;align-items:center}.rower-performance-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-slate-dark)}.rower-performance-seat{font-size:var(--font-size-xs);color:var(--color-slate-medium);background-color:var(--color-slate-medium);color:var(--color-white);padding:var(--size-xs) var(--size-sm);border-radius:var(--border-radius-sm)}.rower-performance-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--size-sm)}.rower-performance-metric{display:flex;flex-direction:column;align-items:center;gap:var(--size-xs)}.rower-performance-metric-icon{width:16px;height:16px;color:var(--color-blue-medium)}.rower-performance-metric-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-slate-dark)}.rower-performance-metric-label{font-size:var(--font-size-xs);color:var(--color-slate-medium);text-align:center}.training-insights{padding:var(--size-lg)}.training-insights-content{display:flex;flex-direction:column;gap:var(--size-lg)}.insight-primary-zone{display:flex;align-items:center;gap:var(--size-sm);padding:var(--size-md);background-color:var(--color-slate-light);border-radius:var(--size-md);border:1px solid var(--color-slate-medium)}.insight-zone-indicator{width:20px;height:20px;border-radius:var(--border-radius-sm);flex-shrink:0}.insight-zone-name{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-slate-dark);flex:1}.insight-zone-effectiveness{font-size:var(--font-size-sm);color:var(--color-slate-medium)}.insight-item.strength{background-color:#10b9811a;border-left:4px solid var(--color-green-medium);color:var(--color-green-dark)}.insight-item.improvement{background-color:#f59e0b1a;border-left:4px solid var(--color-yellow-medium);color:var(--color-yellow-dark)}.insight-item.recommendation{background-color:#3b82f61a;border-left:4px solid var(--color-blue-medium);color:var(--color-blue-dark)}.recovery-info{padding:var(--size-lg)}.recovery-info-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--size-md)}.recovery-metric{display:flex;justify-content:space-between;align-items:center;padding:var(--size-md);background-color:var(--color-slate-light);border-radius:var(--size-md);border:1px solid var(--color-slate-medium)}.recovery-metric-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-dark)}.recovery-metric-value{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-slate-dark)}.analytics-toggle{padding:var(--size-lg)}.analytics-toggle-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--size-md)}.analytics-toggle-title{display:flex;align-items:center;gap:var(--size-sm);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-slate-dark)}.analytics-toggle-icon{width:24px;height:24px;color:var(--color-blue-medium)}.analytics-toggle-description{font-size:var(--font-size-sm);color:var(--color-slate-medium);max-width:500px;line-height:1.5}.analytics-toggle-button{padding:var(--size-sm) var(--size-lg);background-color:var(--color-blue-medium);color:var(--color-white);border:none;border-radius:var(--size-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;min-width:150px}.analytics-toggle-button:hover{background-color:var(--color-blue-dark);transform:translateY(-1px)}.analytics-toggle-button.active{background-color:var(--color-slate-medium)}.analytics-toggle-button.active:hover{background-color:var(--color-slate-dark)}@media (max-width: 768px){.analytics-overview-grid{grid-template-columns:1fr}.analytics-metric-grid,.performance-scores-grid{grid-template-columns:repeat(2,1fr)}.crew-metrics,.rower-performance-grid{grid-template-columns:1fr}.rower-performance-metrics{grid-template-columns:repeat(2,1fr)}.recovery-info-content{grid-template-columns:1fr}}@media (max-width: 480px){.analytics-metric-grid,.performance-scores-grid,.rower-performance-metrics{grid-template-columns:1fr}}.progress-tracking{display:flex;flex-direction:column;gap:var(--size-lg)}.progress-header{padding:var(--size-lg)}.progress-header-content{display:flex;justify-content:space-between;align-items:center;gap:var(--size-lg)}.progress-header-title{display:flex;align-items:center;gap:var(--size-sm);font-weight:var(--font-weight-bold)}.progress-header-icon{width:28px;height:28px;color:var(--color-blue-medium)}.progress-header-controls{display:flex;align-items:center;gap:var(--size-lg)}.period-selector{display:flex;align-items:center;gap:var(--size-sm)}.period-selector-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-blue-light)}.period-selector-select{padding:var(--size-sm) var(--size-md);border:1px solid var(--color-slate-medium);border-radius:var(--size-md);background-color:var(--color-white);font-size:var(--font-size-sm);color:var(--color-blue-light);cursor:pointer;option{background-color:var(--color-slate-dark)}}.view-toggles{display:flex;gap:var(--size-sm)}.view-toggle{display:flex;align-items:center;gap:var(--size-xs);padding:var(--size-sm) var(--size-md);background-color:var(--color-slate-dark);border:1px solid var(--color-slate-medium);border-radius:var(--size-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-light);cursor:pointer;transition:all .2s ease}.view-toggle:hover{background-color:var(--color-slate-medium);color:var(--color-white)}.view-toggle.active{background-color:var(--color-blue-medium);color:var(--color-white);border-color:var(--color-blue-medium)}.view-toggle-icon{width:16px;height:16px}.progress-overview{padding:var(--size-lg)}.progress-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--size-lg)}.progress-metric{display:flex;flex-direction:column;gap:var(--size-sm)}.progress-metric-header{display:flex;justify-content:space-between;align-items:center}.progress-metric-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-blue-light)}.progress-metric-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.progress-metric-progress{width:100%;height:8px;border:none;border-radius:var(--border-radius-sm);background-color:var(--color-slate-light);overflow:hidden;appearance:none;-webkit-appearance:none;-moz-appearance:none}.progress-metric-progress::-webkit-progress-bar{background-color:var(--color-slate-light);border-radius:var(--border-radius-sm)}.progress-metric-progress::-webkit-progress-value{background:linear-gradient(90deg,var(--color-green-medium),var(--color-blue-medium));border-radius:var(--border-radius-sm);transition:all .3s ease;box-shadow:0 1px 3px #0000001a}.progress-metric-progress::-moz-progress-bar{background:linear-gradient(90deg,var(--color-green-medium),var(--color-blue-medium));border-radius:var(--border-radius-sm);box-shadow:0 1px 3px #0000001a}.progress-metric-progress[value="0"]::-webkit-progress-value{background:var(--color-slate-medium)}.progress-metric-progress[value="0"]::-moz-progress-bar{background:var(--color-slate-medium)}.progress-metric-progress[value^="1"]::-webkit-progress-value,.progress-metric-progress[value^="2"]::-webkit-progress-value,.progress-metric-progress[value^="3"]::-webkit-progress-value,.progress-metric-progress[value^="4"]::-webkit-progress-value{background:var(--color-red-medium)}.progress-metric-progress[value^="1"]::-moz-progress-bar,.progress-metric-progress[value^="2"]::-moz-progress-bar,.progress-metric-progress[value^="3"]::-moz-progress-bar,.progress-metric-progress[value^="4"]::-moz-progress-bar{background:var(--color-red-medium)}.progress-metric-progress[value^="5"]::-webkit-progress-value,.progress-metric-progress[value^="6"]::-webkit-progress-value,.progress-metric-progress[value^="7"]::-webkit-progress-value{background:var(--color-yellow-medium)}.progress-metric-progress[value^="5"]::-moz-progress-bar,.progress-metric-progress[value^="6"]::-moz-progress-bar,.progress-metric-progress[value^="7"]::-moz-progress-bar{background:var(--color-yellow-medium)}.progress-metric-progress[value^="8"]::-webkit-progress-value,.progress-metric-progress[value^="9"]::-webkit-progress-value,.progress-metric-progress[value="100"]::-webkit-progress-value{background:var(--color-green-medium)}.progress-metric-progress[value^="8"]::-moz-progress-bar,.progress-metric-progress[value^="9"]::-moz-progress-bar,.progress-metric-progress[value="100"]::-moz-progress-bar{background:var(--color-green-medium)}.trend-charts{padding:var(--size-lg)}.trend-charts-content{display:grid;grid-template-columns:2fr 1fr;gap:var(--size-lg)}.trend-chart{display:flex;flex-direction:column;gap:var(--size-md)}.trend-chart-title{font-weight:var(--font-weight-semibold);color:var(--color-blue-light)}.trend-chart-container{height:300px;width:100%}.individual-progress{padding:var(--size-lg)}.individual-progress-content{display:flex;flex-direction:column;gap:var(--size-lg)}.rower-selector{display:flex;align-items:center;gap:var(--size-sm)}.rower-selector-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-blue-light)}.rower-selector-select{padding:var(--size-sm) var(--size-md);border:1px solid var(--color-slate-medium);border-radius:var(--size-md);background-color:var(--color-white);font-size:var(--font-size-sm);color:var(--color-blue-light);cursor:pointer;min-width:200px}.individual-progress-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--size-lg)}.rower-progress-card{padding:var(--size-lg);background-color:var(--color-slate-dark);border-radius:var(--size-lg);border:1px solid var(--color-slate-medium)}.rower-progress-header{display:flex;justify-content:space-between;align-items:center}.rower-progress-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.rower-progress-seat{font-size:var(--font-size-sm);background-color:var(--color-slate-medium);color:var(--color-slate-light);padding:var(--size-xs) var(--size-sm);border-radius:var(--border-radius-sm)}.rower-progress-metrics{display:flex;flex-direction:column;gap:var(--size-md)}.rower-progress-metric{display:flex;justify-content:space-between;align-items:center}.rower-progress-metric-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-blue-light)}.rower-progress-score{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.rower-progress-trends{display:flex;flex-direction:column;gap:var(--size-sm)}.rower-trend-item{padding:var(--size-sm);background-color:var(--color-white);border-radius:var(--border-radius-sm);border:1px solid var(--color-slate-medium)}.rower-trend-header{display:flex;justify-content:space-between;align-items:center}.rower-trend-metric{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-blue-light)}.rower-trend-details{display:flex;justify-content:space-between;align-items:center}.rower-trend-rate{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.rower-trend-confidence{font-size:var(--font-size-xs);color:var(--color-green-medium)}.rower-strengths-title,.rower-improvements-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-slate-dark)}.rower-strengths-list,.rower-improvements-list{gap:var(--size-xs)}.rower-strength-item,.rower-improvement-item{display:flex;align-items:center;gap:var(--size-xs);font-size:var(--font-size-xs);line-height:1.4}.rower-strength-icon{width:12px;height:12px;color:var(--color-green-medium);flex-shrink:0}.rower-improvement-icon{width:12px;height:12px;color:var(--color-yellow-medium);flex-shrink:0}.progress-insights{padding:var(--size-lg)}.progress-insights-content{display:flex;flex-direction:column;gap:var(--size-lg);color:var(--color-blue-light)}.insight-section{display:flex;flex-direction:column;gap:var(--size-md)}.insight-section-title{display:flex;align-items:center;gap:var(--size-sm);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.insight-section-icon{width:20px;height:20px;color:var(--color-blue-medium)}.insight-list{gap:var(--size-sm)}.insight-item{padding:var(--size-sm) var(--size-md);border-radius:var(--size-md);font-size:var(--font-size-sm);line-height:1.4}.insight-item.improvement{background-color:#10b9811a;border-left:4px solid var(--color-green-medium);color:var(--color-green-dark)}.insight-item.concern{background-color:#f59e0b1a;border-left:4px solid var(--color-yellow-medium);color:var(--color-yellow-light)}.insight-item.recommendation{background-color:#3b82f61a;border-left:4px solid var(--color-blue-medium);color:var(--color-blue-light)}.insight-focus-text{font-size:var(--font-size-sm);padding:var(--size-md);background-color:#10b9811a;border-left:4px solid var(--color-green-light);border-radius:var(--size-md);color:var(--color-green-light)}@media (max-width: 768px){.progress-header-content,.progress-header-controls{flex-direction:column;align-items:flex-start;gap:var(--size-md)}.trend-charts-content,.individual-progress-grid{grid-template-columns:1fr}.rower-progress-trends{gap:var(--size-xs)}}@media (max-width: 480px){.progress-overview-grid{grid-template-columns:1fr}.view-toggles{flex-direction:column}.rower-selector{flex-direction:column;align-items:flex-start}.rower-selector-select{min-width:100%}}.data-export{display:flex;flex-direction:column;gap:var(--size-lg)}.export-header{padding:var(--size-lg)}.export-header-content{text-align:center}.export-header-title{display:flex;align-items:center;justify-content:center;gap:var(--size-sm);font-weight:var(--font-weight-bold);color:var(--color-blue-light)}.export-header-icon{width:28px;height:28px;color:var(--color-blue-medium)}.export-header-description{font-size:var(--font-size-md);color:var(--color-slate-medium);line-height:1.5}.export-stats{padding:var(--size-lg)}.export-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--size-md)}.export-stat{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--size-md);border-radius:var(--size-md);border:1px solid var(--color-blue-medium)}.export-stat-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-blue-light)}.export-stat-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-blue-light)}.export-options{padding:var(--size-lg)}.export-options-content{display:flex;flex-direction:column;gap:var(--size)}.export-option-group{display:flex;flex-direction:column;gap:var(--size-md)}.export-option-group-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-blue-light)}.export-format-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--size-md)}.export-format-option{display:flex;align-items:center;gap:var(--size-md);padding:var(--size-md);border:2px solid var(--color-blue-medium);border-radius:var(--size-md);cursor:pointer;transition:all .2s ease}.export-format-option:hover{border-color:var(--color-blue-medium);background-color:#3b82f60d}.export-format-option:has(input:checked){border-color:var(--color-blue-medium);background-color:#3b82f61a}.export-format-radio{width:20px;height:20px}.export-format-content{display:flex;align-items:center;gap:var(--size-sm);flex:1}.export-format-icon{width:24px;height:24px;color:var(--color-blue-medium);flex-shrink:0}.export-format-info{display:flex;flex-direction:column;gap:var(--size-xs)}.export-format-name{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.export-format-description{font-size:var(--font-size-sm)}.export-data-options{display:flex;flex-direction:column;gap:var(--size-md)}.export-data-option{display:flex;padding:var(--size-md);background-color:var(--color-slate-dark);border-radius:var(--size-md);border:1px solid var(--color-slate-medium);cursor:pointer;transition:all .2s ease;gap:var(--size)}.export-data-option:hover{background-color:#3b82f60d}.export-data-option:has(input:checked){background-color:#3b82f61a;border-color:var(--color-blue-medium)}.export-data-checkbox{width:18px;height:18px}.export-data-label{font-weight:var(--font-weight-medium);color:var(--color-slate-dark)}.export-data-description{font-size:var(--font-size-sm)}.export-advanced-header{display:flex;justify-content:space-between;align-items:center}.export-advanced-toggle{padding:var(--size-sm) var(--size-md);background-color:var(--color-blue-medium);border:1px solid var(--color-slate-medium);border-radius:var(--size-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-light);cursor:pointer;transition:all .2s ease}.export-advanced-toggle:hover{background-color:var(--color-blue-dark);color:var(--color-white)}.export-advanced-content{display:flex;flex-direction:column;gap:var(--size-lg);padding:var(--size-lg);background-color:#3b82f61a;border-radius:var(--size-md);border:1px solid var(--color-blue-medium)}.export-filter-group{display:flex;flex-direction:column;gap:var(--size-md)}.export-filter-title{display:flex;align-items:center;gap:var(--size-sm);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-slate-dark)}.export-filter-icon{width:18px;height:18px;color:var(--color-blue-medium)}.export-date-range{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--size-md)}.export-date-input{display:flex;flex-direction:column;gap:var(--size-xs)}.export-date-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-slate-dark)}.export-date-field{padding:var(--size-sm) var(--size-md);border:1px solid var(--color-blue-medium);border-radius:var(--size-md);background-color:transparent;font-size:var(--font-size-sm);color:var(--color-blue-light)}.export-rower-selection,.export-session-selection{display:flex;flex-direction:column;gap:var(--size-sm);max-height:200px;overflow-y:auto;padding:var(--size-sm);background-color:var(--color-white);border-radius:var(--size-md);border:1px solid var(--color-blue-medium)}.export-rower-option,.export-session-option{display:flex;align-items:center;gap:var(--size-sm);padding:var(--size-sm);border-radius:var(--border-radius-sm);cursor:pointer;transition:background-color .2s ease}.export-rower-option:hover,.export-session-option:hover{color:var(--color-blue-dark);background-color:var(--color-slate-light)}.export-rower-checkbox,.export-session-checkbox{width:16px;height:16px}.export-rower-label,.export-session-label{font-size:var(--font-size-sm);display:flex;flex-direction:column;gap:var(--size-xs)}.export-session-details{font-size:var(--font-size-xs);color:var(--color-blue-medium)}.export-filter-actions{display:flex;justify-content:flex-end}.export-reset-button{padding:var(--size-sm) var(--size-md);background-color:var(--color-blue-medium);color:var(--color-white);border:none;border-radius:var(--size-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color .2s ease}.export-reset-button:hover{background-color:var(--color-blue-dark)}.export-actions{padding:var(--size-lg)}.export-actions-content{display:flex;justify-content:space-between;align-items:center;gap:var(--size-lg)}.export-actions-info{flex:1}.export-actions-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-blue-light)}.export-actions-description{font-size:var(--font-size-sm);color:var(--color-slate-medium)}.export-actions-buttons{display:flex;gap:var(--size-md)}.export-button{display:flex;align-items:center;gap:var(--size-sm);padding:var(--size-md) var(--size-lg);background-color:var(--color-blue-medium);color:var(--color-white);border:none;border-radius:var(--size-md);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s ease;min-width:150px;justify-content:center}.export-button:hover:not(:disabled){background-color:var(--color-blue-dark);transform:translateY(-1px)}.export-button:disabled{background-color:var(--color-slate-medium);cursor:not-allowed;transform:none}.export-button-icon{width:20px;height:20px}.export-button-spinner{width:20px;height:20px;border:2px solid var(--color-white);border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.export-info{padding:var(--size-lg)}.export-info-content{display:flex;flex-direction:column;gap:var(--size-lg)}.export-info-section{display:flex;flex-direction:column;gap:var(--size-md)}.export-info-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-blue-light)}.export-info-list{gap:var(--size-sm)}.export-info-list li{font-size:var(--font-size-sm);line-height:1.5}@media (max-width: 768px){.export-stats-grid{grid-template-columns:repeat(2,1fr)}.export-format-options{grid-template-columns:1fr}.export-actions-content{flex-direction:column;align-items:flex-start}.export-actions-buttons,.export-button{width:100%}.export-date-range{grid-template-columns:1fr}}@media (max-width: 480px){.export-stats-grid{grid-template-columns:1fr}.export-advanced-content{padding:var(--size-md)}}
