:root{--color-primary:#ac2e00;--color-primary-light:#ea580c;--bg-page:#f9f9fc;--bg-sidebar:#f8fafc;--bg-card:#fff;--bg-section:#f3f3f6;--bg-topnav:#ffffffb3;--border-sidebar:#e2e8f0;--border-card:#f1f5f9;--text-dark:#1a1c1e;--text-heading:#0f172a;--text-muted:#5c4038;--text-secondary:#475569;--text-tertiary:#64748b;--text-placeholder:#94a3b8;--success-bg:#d1fae5;--success-bg-light:#ecfdf5;--success-text:#047857;--success-text-light:#059669;--success-dot:#10b981;--warning-bg:#fff7ed;--warning-text:#ea580c;--accent-strava:#ffdbd1;--accent-strava-light:#ffedd5;--accent-garmin:#cde5ff;--accent-garmin-light:#dbeafe;--accent-garmin-dot:#3b82f6;--accent-neutral:#e2e2e5;--accent-badge:#e8e8eb;--font-heading:"Lexend", sans-serif;--font-body:"Manrope", sans-serif;--radius-card:12px;--radius-sm:8px;--radius-full:9999px;--shadow-card:0 1px 3px #0000000a, 0 1px 2px #0000000f;--shadow-sm:0 1px 2px #0000000d;--sidebar-width:256px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);background-color:var(--bg-page);color:var(--text-dark);line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}ul,ol{list-style:none}img{max-width:100%;display:block}.app-layout{min-height:100vh;display:flex}.main-wrapper{margin-left:var(--sidebar-width);flex-direction:column;flex:1;display:flex}.main-content{flex:1;width:100%;max-width:1024px;margin:0 auto;padding:32px 40px 48px}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border-sidebar);z-index:100;flex-direction:column;height:100vh;display:flex;position:fixed;top:0;left:0}.sidebar-logo{align-items:center;gap:12px;padding:28px 24px 24px;display:flex}.sidebar-logo-icon{background:var(--color-primary-light);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.sidebar-logo-text{flex-direction:column;display:flex}.sidebar-logo-title{font-family:var(--font-heading);color:var(--color-primary-light);font-size:18px;font-weight:900;line-height:1.2}.sidebar-logo-subtitle{font-family:var(--font-body);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1px;font-size:10px;font-weight:700;line-height:1.4}.sidebar-nav{flex:1;padding:8px 12px}.sidebar-nav-item{font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;transition:background .15s,color .15s;display:flex;position:relative}.sidebar-nav-item:hover{background:#f1f5f980}.sidebar-nav-item.active{color:var(--color-primary-light);background:#f1f5f980;font-weight:600}.sidebar-nav-item.active:after{content:"";background:var(--color-primary-light);border-radius:2px;width:4px;position:absolute;top:0;bottom:0;right:-12px}.sidebar-nav-item svg{flex-shrink:0;width:20px;height:20px}.sidebar-bottom{border-top:1px solid var(--border-sidebar);flex-direction:column;gap:4px;padding:16px 12px 20px;display:flex}.sidebar-sync-btn{background:var(--color-primary);color:#fff;border-radius:var(--radius-card);width:100%;font-family:var(--font-body);justify-content:center;align-items:center;gap:8px;margin-bottom:8px;padding:12px;font-size:14px;font-weight:700;transition:opacity .15s;display:flex}.sidebar-sync-btn:hover{opacity:.9}.sidebar-bottom-link{font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;transition:background .15s;display:flex}.sidebar-bottom-link:hover{background:#f1f5f980}.sidebar-bottom-link svg{width:20px;height:20px}.topnav{z-index:50;background:var(--bg-topnav);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-card);justify-content:space-between;align-items:center;padding:16px 40px;display:flex;position:sticky;top:0}.topnav-title{font-family:var(--font-heading);color:var(--text-heading);letter-spacing:-1.2px;font-size:24px;font-weight:700}.topnav-actions{align-items:center;gap:8px;display:flex}.topnav-icon-btn{width:40px;height:40px;color:var(--text-secondary);border-radius:10px;justify-content:center;align-items:center;transition:background .15s;display:flex;position:relative}.topnav-icon-btn:hover{background:var(--bg-section)}.topnav-icon-btn svg{width:20px;height:20px}.topnav-notification-dot{background:var(--color-primary);border:2px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute;top:8px;right:8px}.topnav-avatar{background:var(--bg-section);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin-left:4px;display:flex;overflow:hidden}.topnav-avatar-placeholder{background:linear-gradient(135deg, var(--accent-strava), var(--accent-garmin));border-radius:50%;width:100%;height:100%}.hero-grid{grid-template-columns:2fr 1fr;gap:24px;margin-bottom:32px;display:grid}.connection-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:28px;position:relative;overflow:hidden}.connection-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.connection-card-title{font-family:var(--font-heading);color:var(--text-dark);margin-bottom:4px;font-size:20px;font-weight:700}.connection-card-subtitle{font-family:var(--font-body);color:var(--text-muted);font-size:14px;font-weight:400}.connection-card-icons{align-items:center;display:flex}.connection-card-icon-circle{border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.connection-card-icon-circle.strava{background:var(--accent-strava-light);z-index:2}.connection-card-icon-circle.garmin{background:var(--accent-garmin-light);z-index:1;margin-left:-10px}.connection-card-icon-circle svg{width:18px;height:18px}.connection-card-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.connection-item{background:var(--bg-section);border-radius:var(--radius-card);align-items:center;gap:16px;padding:21px;display:flex}.connection-item-logo{width:44px;height:44px;box-shadow:var(--shadow-sm);background:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.connection-item-logo svg{width:22px;height:22px}.connection-item-logo.strava svg{color:var(--color-primary-light)}.connection-item-logo.garmin svg{color:var(--accent-garmin-dot)}.connection-item-info{flex:1;min-width:0}.connection-item-name{font-family:var(--font-body);color:var(--text-dark);margin-bottom:2px;font-size:16px;font-weight:700}.connection-item-date{font-family:var(--font-body);color:var(--text-muted);font-size:12px;font-weight:400;line-height:1.4}.connection-badge{background:var(--success-bg);border-radius:var(--radius-full);flex-shrink:0;align-items:center;gap:5px;padding:4px 10px;display:inline-flex}.connection-badge-dot{background:var(--success-dot);border-radius:50%;width:6px;height:6px}.connection-badge-text{font-family:var(--font-body);color:var(--success-text);text-transform:uppercase;font-size:10px;font-weight:700}.connection-card-glass{filter:blur(32px);pointer-events:none;background:#ac2e000d;border-radius:50%;width:160px;height:160px;position:absolute;bottom:-40px;right:-40px}.last-sync-card{background:var(--color-primary);border-radius:var(--radius-card);box-shadow:var(--shadow-card);color:#fff;flex-direction:column;justify-content:space-between;padding:28px;display:flex;position:relative;overflow:hidden}.last-sync-label{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:1.2px;opacity:.8;margin-bottom:16px;font-size:12px;font-weight:700}.last-sync-value{align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.last-sync-number{font-family:var(--font-body);font-size:48px;font-weight:800;line-height:1}.last-sync-unit{font-family:var(--font-body);opacity:.8;font-size:20px;font-weight:500}.last-sync-description{font-family:var(--font-body);opacity:.7;margin-bottom:20px;font-size:14px;font-weight:500}.last-sync-footer{border-top:1px solid #ffffff1a;align-items:center;gap:8px;padding-top:16px;display:flex}.last-sync-footer svg{opacity:.8;width:14px;height:14px}.last-sync-time{font-family:var(--font-body);font-size:12px;font-weight:700}.last-sync-decoration{pointer-events:none;width:160px;height:160px;position:absolute;top:20px;right:-20px}.last-sync-decoration circle{fill:none;stroke:#ffffff0f;stroke-width:1.5px}.recent-syncs{margin-bottom:32px}.recent-syncs-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.recent-syncs-title{font-family:var(--font-heading);color:var(--text-dark);font-size:20px;font-weight:700}.recent-syncs-badge{background:var(--accent-badge);border-radius:var(--radius-full);font-family:var(--font-heading);color:var(--text-secondary);padding:4px 10px;font-size:10px;font-weight:700}.recent-syncs-link{font-family:var(--font-body);color:var(--color-primary);cursor:pointer;margin-left:auto;font-size:14px;font-weight:700;transition:opacity .15s}.recent-syncs-link:hover{opacity:.8}.syncs-table{background:var(--bg-section);border:1px solid var(--border-card);border-radius:var(--radius-card);overflow:hidden}.syncs-table-header{background:#ffffff80;grid-template-columns:2fr 1.2fr 1.2fr .8fr;padding:14px 24px;display:grid}.syncs-table-header-cell{font-family:var(--font-body);color:var(--text-muted);text-transform:uppercase;letter-spacing:.6px;font-size:12px;font-weight:700}.syncs-table-header-cell:last-child{text-align:right}.syncs-table-row{border-bottom:1px solid var(--border-card);grid-template-columns:2fr 1.2fr 1.2fr .8fr;align-items:center;padding:16px 24px;display:grid}.syncs-table-row:last-child{border-bottom:none}.sync-activity{align-items:center;gap:12px;display:flex}.sync-activity-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.sync-activity-icon svg{width:16px;height:16px}.sync-activity-name{font-family:var(--font-body);color:var(--text-dark);font-size:14px;font-weight:700}.sync-activity-meta{font-family:var(--font-body);color:var(--text-placeholder);margin-top:2px;font-size:10px;font-weight:400}.sync-source{align-items:center;gap:8px;display:flex}.sync-source-dot{background:var(--accent-garmin-dot);border-radius:50%;flex-shrink:0;width:8px;height:8px}.sync-source-name{font-family:var(--font-body);color:var(--text-dark);font-size:14px;font-weight:500}.sync-destination{color:var(--text-secondary);align-items:center;gap:8px;display:flex}.sync-destination svg{flex-shrink:0;width:14px;height:14px}.sync-destination-name{font-family:var(--font-body);font-size:14px;font-weight:500}.sync-status{justify-content:flex-end;display:flex}.status-badge{border-radius:var(--radius-full);font-family:var(--font-body);align-items:center;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.status-badge.success{background:var(--success-bg-light);color:var(--success-text-light)}.status-badge.retrying{background:var(--warning-bg);color:var(--warning-text)}.action-hub{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.action-hub-title{font-family:var(--font-heading);color:var(--text-dark);grid-column:1/-1;margin-bottom:16px;font-size:20px;font-weight:700}.action-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-card);cursor:pointer;align-items:center;gap:20px;padding:25px;transition:box-shadow .15s,transform .15s;display:flex}.action-card:hover{box-shadow:var(--shadow-card);transform:translateY(-1px)}.action-card-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.action-card-icon svg{width:22px;height:22px}.action-card-icon.blue{background:var(--accent-garmin)}.action-card-icon.orange{background:var(--accent-strava)}.action-card-icon.neutral{background:var(--accent-neutral)}.action-card-content{flex:1;min-width:0}.action-card-title{font-family:var(--font-heading);color:var(--text-dark);margin-bottom:4px;font-size:16px;font-weight:700}.action-card-description{font-family:var(--font-body);color:var(--text-muted);font-size:12px;font-weight:400}:root{--ah-icon-running:#ffdbd1;--ah-icon-cycling:#cde5ff;--ah-icon-swimming:#ccfbf1;--ah-icon-hiking:#dcfce7}.ah-page{flex-direction:column;gap:24px;display:flex}.ah-topbar{justify-content:space-between;align-items:center;display:flex}.ah-topbar-title{font-family:var(--font-heading);color:var(--text-heading);font-size:20px;font-weight:700;line-height:1.3}.ah-topbar-subtitle{font-family:var(--font-body);color:var(--text-muted);margin-top:2px;font-size:12px;font-weight:500}.ah-topbar-right{align-items:center;gap:8px;display:flex}.ah-search-input{align-items:center;display:flex;position:relative}.ah-search-icon{color:var(--text-placeholder);pointer-events:none;position:absolute;left:12px}.ah-search-field{font-family:var(--font-body);border-radius:var(--radius-full);background:var(--bg-section);color:var(--text-dark);border:1px solid #e6beb233;outline:none;width:200px;padding:8px 12px 8px 36px;font-size:14px;transition:border-color .15s}.ah-search-field::placeholder{color:var(--text-placeholder)}.ah-search-field:focus{border-color:#e6beb280}.ah-user-avatar{border:2px solid #ac2e0033;border-radius:50%;flex-shrink:0;width:32px;height:32px;margin-left:4px;overflow:hidden}.ah-filter-bar{background:var(--bg-section);border-radius:16px;justify-content:space-between;align-items:flex-end;padding:16px;display:flex}.ah-filter-left{align-items:flex-end;gap:12px;display:flex}.ah-filter-group{flex-direction:column;gap:6px;display:flex}.ah-filter-label{font-family:var(--font-body);color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-size:10px;font-weight:700}.ah-filter-select-wrapper{align-items:center;display:flex;position:relative}.ah-filter-select{font-family:var(--font-body);color:var(--text-dark);appearance:none;cursor:pointer;background:#fff;border:none;border-radius:12px;outline:none;padding:10px 32px 10px 14px;font-size:14px;font-weight:500}.ah-filter-chevron{color:var(--text-muted);pointer-events:none;position:absolute;right:10px}.ah-status-segmented{background:#fff;border-radius:12px;gap:0;padding:4px;display:flex}.ah-status-btn{font-family:var(--font-body);color:var(--text-muted);border-radius:8px;padding:8px 16px;font-size:12px;font-weight:700;transition:background .15s,color .15s}.ah-status-btn.active{background:var(--color-primary);color:#fff}.ah-advanced-filters-btn{font-family:var(--font-body);color:var(--text-muted);align-items:center;gap:8px;padding:10px 0;font-size:14px;font-weight:500;transition:opacity .15s;display:flex}.ah-advanced-filters-btn:hover{opacity:.7}.ah-table-card{background:var(--bg-card);box-shadow:var(--shadow-card);border:1px solid #edeef1;border-radius:24px;overflow:hidden}.ah-table-header{background:#f3f3f680;grid-template-columns:1.4fr .6fr 1.6fr 1.6fr .8fr;padding:14px 24px;display:grid}.ah-table-header-cell{font-family:var(--font-body);color:var(--text-muted);text-transform:uppercase;letter-spacing:1.1px;font-size:11px;font-weight:800}.ah-cell-right{text-align:right;justify-content:flex-end;display:flex}.ah-table-row{border-top:1px solid var(--bg-section);grid-template-columns:1.4fr .6fr 1.6fr 1.6fr .8fr;align-items:center;padding:16px 24px;display:grid}.ah-cell-datetime{flex-direction:column;gap:2px;display:flex}.ah-cell-date{font-family:var(--font-heading);color:var(--text-dark);font-size:16px;font-weight:700}.ah-cell-time{font-family:var(--font-body);color:var(--text-muted);font-size:12px;font-weight:400}.ah-type-icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:32px;height:32px;display:flex}.ah-type-icon svg{width:16px;height:16px}.ah-garmin-name{font-family:var(--font-body);color:var(--text-dark);font-size:14px;font-weight:500}.ah-strava-name{font-family:var(--font-body);color:var(--color-primary);font-size:14px;font-weight:500}.ah-strava-name--failed{color:var(--text-muted);font-weight:400}.ah-badge-synced{border-radius:var(--radius-full);font-family:var(--font-body);color:#15803d;background:#f0fdf4;border:1px solid #dcfce7;align-items:center;gap:6px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.ah-badge-synced-dot{background:#22c55e;border-radius:50%;width:6px;height:6px}.ah-badge-error{border-radius:var(--radius-full);font-family:var(--font-body);color:#93000a;background:#ffdad6;align-items:center;gap:6px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.ah-badge-error svg{width:12px;height:12px}.ah-stats-grid{grid-template-columns:2fr 1fr 1fr;gap:24px;display:grid}.ah-stat-reliability{color:#fff;background:#006398;border-radius:24px;padding:24px;position:relative;overflow:hidden}.ah-stat-label{font-family:var(--font-body);text-transform:uppercase;letter-spacing:1.2px;opacity:.8;margin-bottom:8px;font-size:12px;font-weight:700;display:block}.ah-stat-big-value{font-family:var(--font-heading);margin-bottom:12px;font-size:36px;font-weight:900;display:block}.ah-progress-track{border-radius:var(--radius-full);background:#fff3;height:8px;overflow:hidden}.ah-progress-fill{border-radius:var(--radius-full);background:#fff;height:100%;transition:width .4s}.ah-stat-decoration{opacity:.08;pointer-events:none;position:absolute;bottom:-8px;right:-8px;transform:rotate(-15deg)}.ah-stat-decoration svg{width:80px;height:80px}.ah-stat-card{background:#e8e8eb;border-radius:24px;flex-direction:column;padding:24px;display:flex}.ah-stat-card-label{font-family:var(--font-body);color:var(--text-muted);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:8px;font-size:12px;font-weight:700}.ah-stat-card-value{font-family:var(--font-heading);color:var(--text-dark);margin-bottom:8px;font-size:24px;font-weight:700}.ah-stat-card-trend{font-family:var(--font-body);color:#16a34a;align-items:center;gap:4px;font-size:14px;font-weight:700;display:flex}.ah-stat-card-desc{font-family:var(--font-body);color:var(--text-muted);font-size:12px;font-weight:500}.ah-pagination{border-top:1px solid var(--bg-section);justify-content:space-between;align-items:center;padding-top:33px;display:flex}.ah-pagination-info{font-family:var(--font-body);color:var(--text-muted);font-size:14px;font-weight:500}.ah-pagination-buttons{align-items:center;gap:8px;display:flex}.ah-pagination-arrow{background:var(--bg-section);width:40px;height:40px;color:var(--text-muted);border-radius:12px;justify-content:center;align-items:center;transition:background .15s;display:flex}.ah-pagination-arrow:hover:not(:disabled){background:#e8e8eb}.ah-pagination-arrow:disabled{opacity:.4;cursor:not-allowed}.ah-pagination-page{background:var(--bg-section);width:40px;height:40px;font-family:var(--font-body);color:var(--text-muted);border-radius:12px;justify-content:center;align-items:center;font-size:14px;font-weight:700;transition:background .15s,color .15s;display:flex}.ah-pagination-page:hover:not(.active){background:#e8e8eb}.ah-pagination-page.active{background:var(--color-primary);color:#fff}.connections-page{background:var(--bg-page);flex-direction:column;min-height:100vh;display:flex}.conn-topnav{z-index:50;background:var(--bg-topnav);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-card);justify-content:space-between;align-items:center;height:65px;padding:16px 40px;display:flex;position:sticky;top:0}.conn-topnav-brand{font-family:var(--font-body);color:var(--text-heading);letter-spacing:-1.2px;font-size:24px;font-weight:700}.conn-topnav-links{align-items:center;gap:32px;display:flex}.conn-topnav-link{font-family:var(--font-body);color:var(--text-tertiary);font-size:14px;font-weight:400;transition:color .15s}.conn-topnav-link:hover{color:var(--text-secondary)}.conn-topnav-link--active{color:var(--color-primary-light);font-weight:700}.conn-topnav-actions{align-items:center;gap:8px;display:flex}.conn-topnav-avatar{background:#edeef1;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;margin-left:4px;display:flex;overflow:hidden}.conn-topnav-avatar-inner{background:linear-gradient(135deg, var(--accent-strava), var(--accent-garmin));border-radius:50%;width:100%;height:100%}.conn-main{flex:1;width:100%;max-width:896px;margin:0 auto;padding:96px 24px}.conn-header{text-align:center;padding-bottom:48px}.conn-title{font-family:var(--font-heading);color:var(--text-dark);letter-spacing:-3px;margin-bottom:16px;font-size:60px;font-weight:900;line-height:1.1}.conn-subtitle{font-family:var(--font-body);color:var(--text-muted);max-width:720px;margin:0 auto;font-size:18px;font-weight:400;line-height:1.6}.conn-subtitle-bold{color:var(--color-primary);font-weight:700}.conn-cards-grid{grid-template-columns:1fr 1fr;gap:32px;padding-bottom:64px;display:grid}.conn-card{background:var(--bg-card);border-radius:var(--radius-card);text-align:center;flex-direction:column;align-items:center;padding:33px;display:flex}.conn-card-icon{border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:20px;display:flex}.conn-card-icon--strava{color:var(--color-primary-light);background:#fc61001a}.conn-card-icon--garmin{color:#006398;background:#0063981a}.conn-card-title{font-family:var(--font-heading);color:var(--text-dark);margin-bottom:8px;font-size:24px;font-weight:700}.conn-card-desc{font-family:var(--font-body);color:var(--text-muted);margin-bottom:24px;font-size:14px;font-weight:400;line-height:1.5}.conn-card-btn{background:var(--bg-section);border-radius:var(--radius-card);width:100%;font-family:var(--font-body);color:var(--text-dark);justify-content:center;align-items:center;gap:10px;padding:16px;font-size:16px;font-weight:700;transition:background .15s;display:flex}.conn-card-btn:hover{background:var(--accent-neutral)}.conn-card-btn svg{flex-shrink:0}.conn-protocol{background:var(--bg-section);border-radius:var(--radius-card);gap:32px;margin-bottom:64px;padding:32px;display:flex}.conn-protocol-text{flex:1;min-width:0}.conn-protocol-header{align-items:center;gap:10px;margin-bottom:12px;display:flex}.conn-protocol-title{font-family:var(--font-heading);color:#006398;font-size:20px;font-weight:700}.conn-protocol-body{font-family:var(--font-body);color:var(--text-muted);font-size:14px;font-weight:400;line-height:22.75px}.conn-protocol-images{flex-shrink:0;align-items:flex-start;gap:12px;display:flex}.conn-protocol-img{border-radius:var(--radius-sm);width:180px;height:128px}.conn-protocol-img--data{background:var(--accent-neutral)}.conn-protocol-img--athlete{background:var(--accent-strava);margin-top:32px}.conn-cta{flex-direction:column;align-items:center;padding-bottom:64px;display:flex}.conn-cta-btn{background:var(--accent-neutral);border-radius:var(--radius-card);width:100%;max-width:384px;font-family:var(--font-heading);color:#5c403866;cursor:not-allowed;justify-content:center;align-items:center;gap:10px;padding:20px;font-size:20px;font-weight:900;display:flex}.conn-cta-btn:disabled{opacity:1}.conn-cta-btn svg{color:#5c403866;flex-shrink:0}.conn-cta-hint{font-family:var(--font-body);color:var(--text-muted);text-transform:uppercase;letter-spacing:1.2px;text-align:center;margin-top:12px;font-size:12px;font-weight:700}.conn-footer{opacity:.5;justify-content:space-between;align-items:center;width:100%;padding:48px 24px;display:flex}.conn-footer-left{align-items:center;gap:8px;display:flex}.conn-footer-dot{background:#006398;border-radius:50%;width:8px;height:8px}.conn-footer-version{font-family:var(--font-body);color:var(--text-muted);font-size:12px;font-weight:500}.conn-footer-right{align-items:center;gap:24px;display:flex}.conn-footer-link{font-family:var(--font-body);color:var(--text-muted);font-size:12px;font-weight:400;transition:opacity .15s}.conn-footer-link:hover{opacity:.7}.topnav-left{align-items:center;gap:16px;display:flex}.topnav-divider{background:var(--border-sidebar);width:1px;height:24px}.topnav-status-indicator{font-family:var(--font-body);color:#006398;align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.topnav-status-dot{background:#006398;border-radius:50%;flex-shrink:0;width:8px;height:8px}.sync-settings-header{justify-content:space-between;align-items:flex-start;margin-bottom:32px;display:flex}.sync-settings-title{font-family:var(--font-heading);color:var(--text-dark);letter-spacing:-.75px;margin-bottom:4px;font-size:30px;font-weight:800}.sync-settings-subtitle{font-family:var(--font-body);color:var(--text-muted);font-size:16px;font-weight:500}.sync-settings-profile-badge{background:var(--accent-garmin);color:#001d32;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.6px;border-radius:var(--radius-full);white-space:nowrap;flex-shrink:0;align-items:center;padding:8px 16px;font-size:12px;font-weight:700;display:inline-flex}.sync-bento-grid{grid-template-columns:repeat(12,1fr);gap:24px;max-width:928px;margin:0 auto 32px;display:grid}.sync-logic-card{background:var(--bg-card);border-radius:var(--radius-card);box-shadow:var(--shadow-card);grid-column:span 8;padding:32px}.sync-logic-card-header{align-items:center;gap:12px;margin-bottom:24px;display:flex}.sync-logic-icon-wrapper{color:var(--color-primary-light)}.sync-logic-card-title{font-family:var(--font-body);color:var(--text-dark);font-size:20px;font-weight:700}.sync-radio-option{background:var(--bg-section);border-radius:var(--radius-card);cursor:pointer;border:2px solid #0000;align-items:flex-start;gap:16px;margin-bottom:12px;padding:25px;transition:background .15s,border-color .15s;display:flex}.sync-radio-option:last-child{margin-bottom:0}.sync-radio-option.selected{background:var(--accent-badge);border-color:#ac2e0033}.sync-radio-input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.sync-radio-circle{background:#fff;border:2px solid #e6beb2;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-top:2px;transition:background .15s,border-color .15s;display:flex}.sync-radio-circle.checked{background:var(--color-primary);border-color:var(--color-primary)}.sync-radio-content{flex-direction:column;gap:4px;display:flex}.sync-radio-title{font-family:var(--font-body);color:var(--text-dark);font-size:18px;font-weight:700}.sync-radio-description{font-family:var(--font-body);color:var(--text-muted);font-size:14px;font-weight:400;line-height:1.5}.sync-info-card{border-radius:var(--radius-card);background:#6bbdff1a;border:1px solid #6bbdff33;flex-direction:column;grid-column:span 4;padding:33px;display:flex}.sync-info-card-header{align-items:center;gap:10px;margin-bottom:16px;display:flex}.sync-info-icon{color:#006398;flex-shrink:0}.sync-info-card-title{font-family:var(--font-body);color:var(--text-dark);font-size:18px;font-weight:700}.sync-info-body{font-family:var(--font-body);color:var(--text-muted);flex:1;margin-bottom:20px;font-size:14px;font-weight:400;line-height:1.6}.sync-code-tag{color:var(--text-dark);background:#fff;border-radius:4px;padding:2px 6px;font-family:Liberation Mono,Courier New,monospace;font-size:13px}.sync-preview-box{border:1px solid var(--accent-garmin);border-radius:var(--radius-card);background:#fff;padding:17px}.sync-preview-label{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.sync-preview-label span{font-family:var(--font-body);color:var(--text-placeholder);text-transform:uppercase;font-size:10px;font-weight:700}.sync-preview-label svg{color:var(--text-placeholder)}.sync-preview-content{font-family:var(--font-body);color:#006398;font-size:16px;font-weight:700}.sync-templates-card{background:var(--bg-card);border-radius:var(--radius-card);box-shadow:var(--shadow-card);grid-column:span 12;padding:40px}.sync-templates-header{border-bottom:1px solid var(--accent-neutral);color:var(--text-dark);align-items:center;gap:12px;margin-bottom:32px;padding-bottom:25px;display:flex}.sync-templates-title{font-family:var(--font-body);color:var(--text-dark);font-size:20px;font-weight:700}.sync-templates-grid{grid-template-columns:repeat(3,1fr);gap:40px 48px;margin-bottom:32px;display:grid}.sync-template-field{flex-direction:column;display:flex}.sync-template-label-row{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.sync-template-label{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.7px;color:var(--text-dark);font-size:14px;font-weight:700}.sync-template-label-icon{color:var(--text-placeholder)}.sync-template-input{background:var(--bg-section);border-radius:var(--radius-card);font-family:var(--font-body);color:var(--text-dark);border:none;outline:none;width:100%;padding:12px 16px;font-size:16px;font-weight:500;transition:box-shadow .15s}.sync-template-input::placeholder{color:var(--text-placeholder)}.sync-template-input:focus{box-shadow:0 0 0 2px #ac2e0026}.sync-template-helper{font-family:var(--font-body);color:var(--text-muted);margin-top:8px;font-size:11px;font-weight:400}.sync-add-sport-btn{border-radius:var(--radius-card);color:var(--text-placeholder);cursor:pointer;background:0 0;border:2px dashed #e2e8f0;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:100px;padding:24px;transition:border-color .15s,color .15s;display:flex}.sync-add-sport-btn span{font-family:var(--font-body);text-transform:uppercase;letter-spacing:1.2px;font-size:12px;font-weight:700}.sync-add-sport-btn:hover{border-color:var(--text-tertiary);color:var(--text-tertiary)}.sync-variables-section{border-radius:var(--radius-card);background:#f8fafc;border:1px solid #f1f5f9;padding:25px}.sync-variables-title{font-family:var(--font-body);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:14px;font-size:12px;font-weight:800}.sync-variables-tags{flex-wrap:wrap;gap:12px;margin-bottom:14px;display:flex}.sync-variable-tag{border-radius:var(--radius-sm);color:#006398;background:#fff;border:1px solid #e2e8f0;padding:5px 13px;font-family:Liberation Mono,Courier New,monospace;font-size:12px}.sync-variables-tip{font-family:var(--font-body);color:var(--text-muted);font-size:12px;font-weight:400;line-height:1.5}.sync-action-bar{border-top:1px solid var(--accent-neutral);justify-content:space-between;align-items:center;max-width:928px;margin:0 auto;padding-top:33px;display:flex}.sync-action-bar-meta{color:var(--text-placeholder);font-family:var(--font-body);align-items:center;gap:8px;font-size:14px;font-weight:400;display:flex}.sync-action-bar-buttons{align-items:center;gap:12px;display:flex}.sync-discard-btn{font-family:var(--font-body);color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-card);background:0 0;border:none;padding:18px 32px;font-size:16px;font-weight:700;transition:background .15s}.sync-discard-btn:hover{background:var(--bg-section)}.sync-save-btn{color:#fff;font-family:var(--font-body);border-radius:var(--radius-card);cursor:pointer;background:#fc4c02;border:none;align-items:center;gap:8px;padding:16px 40px;font-size:18px;font-weight:800;transition:opacity .15s,transform .15s;display:inline-flex;box-shadow:0 4px 14px #fc4c0233}.sync-save-btn:hover{opacity:.92;transform:translateY(-1px)}.sync-save-btn:active{transform:translateY(0)}.auth-container{background:var(--bg-card);min-height:100vh;display:flex}.auth-panel-left{color:#fff;background:linear-gradient(160deg,#5c2a0e 0%,#8b3a14 40%,sienna 100%);flex-direction:column;flex:0 0 45%;justify-content:center;padding:48px;display:flex;position:relative;overflow:hidden}.auth-brand{align-items:center;gap:10px;margin-bottom:32px;display:flex}.auth-brand-logo{border-radius:var(--radius-sm);color:#fff;background:#fff3;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.auth-brand-name{font-family:var(--font-heading);color:#fff;font-size:16px;font-weight:700}.auth-hero-title{font-family:var(--font-heading);color:#fff;margin-bottom:20px;font-size:48px;font-weight:900;line-height:1.1}.auth-hero-description{color:#fffc;max-width:380px;margin-bottom:40px;font-size:15px;line-height:1.7}.auth-hero-stats{gap:40px;display:flex}.auth-hero-stat-value{font-family:var(--font-heading);color:#fff;font-size:32px;font-weight:900;display:block}.auth-hero-stat-label{letter-spacing:.08em;color:#ffffffb3;text-transform:uppercase;font-size:11px;font-weight:700}.auth-hero-card{border-radius:var(--radius-card);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff26;padding:20px}.auth-hero-card-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.auth-hero-card-label{letter-spacing:.08em;color:#ffffffb3;font-size:11px;font-weight:700}.auth-hero-card-badge{color:#fff;border-radius:var(--radius-full);background:#ffffff26;align-items:center;gap:6px;padding:4px 12px;font-size:12px;font-weight:600;display:flex}.auth-hero-card-dot{background:var(--success-dot);border-radius:50%;width:6px;height:6px}.auth-hero-bars{align-items:flex-end;gap:12px;height:80px;display:flex}.auth-hero-bar{background:#ffffff40;border-radius:4px 4px 0 0;flex:1;min-height:20px}.auth-panel-right{flex:1;justify-content:center;align-items:center;padding:48px;display:flex}.auth-form-wrapper{width:100%;max-width:420px}.auth-form-title{font-family:var(--font-heading);color:var(--text-heading);margin-bottom:8px;font-size:28px;font-weight:900}.auth-form-subtitle{color:var(--text-tertiary);margin-bottom:32px;font-size:14px;line-height:1.5}.auth-form{flex-direction:column;gap:20px;display:flex}.auth-field{flex-direction:column;flex:1;gap:6px;display:flex}.auth-field-row{gap:12px;display:flex}.auth-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);font-size:11px;font-weight:700}.auth-label-row{justify-content:space-between;align-items:center;display:flex}.auth-forgot-link{color:var(--color-primary);font-size:12px;font-weight:600;text-decoration:none}.auth-forgot-link:hover{text-decoration:underline}.auth-input-wrapper{align-items:center;display:flex;position:relative}.auth-input-icon{color:var(--text-placeholder);pointer-events:none;position:absolute;left:14px}.auth-input{width:100%;font-family:var(--font-body);color:var(--text-dark);background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid #e2e8f0;outline:none;padding:12px 14px 12px 40px;font-size:14px;transition:border-color .15s}.auth-input::placeholder{color:var(--text-placeholder)}.auth-input:focus{border-color:var(--color-primary-light);box-shadow:0 0 0 3px #ea580c14}.auth-input-toggle{color:var(--text-placeholder);cursor:pointer;background:0 0;border:none;padding:0;display:flex;position:absolute;right:14px}.auth-input-toggle:hover{color:var(--text-secondary)}.auth-checkbox-label{color:var(--text-secondary);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.auth-checkbox{width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer}.auth-submit-btn{width:100%;font-family:var(--font-heading);color:#fff;background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);border-radius:var(--radius-sm);cursor:pointer;border:none;padding:14px;font-size:15px;font-weight:700;transition:opacity .15s,transform .15s}.auth-submit-btn:hover{opacity:.92;transform:translateY(-1px)}.auth-submit-btn:active{transform:translateY(0)}.auth-divider{align-items:center;gap:16px;margin:24px 0;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#e2e8f0;flex:1;height:1px}.auth-divider span{letter-spacing:.08em;color:var(--text-tertiary);white-space:nowrap;font-size:11px;font-weight:700}.auth-oauth-row{justify-content:center;gap:12px;display:flex}.auth-oauth-btn{font-family:var(--font-body);color:var(--text-dark);background:var(--bg-card);border-radius:var(--radius-sm);cursor:pointer;border:1px solid #e2e8f0;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s;display:flex}.auth-oauth-btn:hover{background:var(--bg-section);border-color:#cbd5e1}.auth-link{color:var(--color-primary);font-weight:600;text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-switch-text{text-align:center;color:var(--text-tertiary);margin-top:24px;font-size:14px}.auth-switch-link{color:var(--color-primary);font-weight:700;text-decoration:none}.auth-switch-link:hover{text-decoration:underline}.auth-footer{border-top:1px solid #f1f5f9;justify-content:center;gap:24px;margin-top:40px;padding-top:24px;display:flex}.auth-footer a{color:var(--text-tertiary);font-size:12px;text-decoration:none}.auth-footer a:hover{color:var(--text-secondary)}@media (width<=768px){.auth-container{flex-direction:column}.auth-panel-left{flex:none;padding:32px 24px}.auth-hero-title{font-size:32px}.auth-panel-right{padding:32px 24px}.auth-field-row{flex-direction:column}}.auth-error{color:#dc2626;border-radius:var(--radius-sm);background:#fef2f2;border:1px solid #fecaca;margin-bottom:8px;padding:12px 16px;font-size:13px;font-weight:500}.auth-loading{background:var(--bg-page);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-loading-spinner{border:3px solid #e2e8f0;border-top-color:var(--color-primary);border-radius:50%;width:32px;height:32px;animation:.6s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}.spin{animation:1s linear infinite auth-spin}.conn-card-connected{color:var(--success-text);align-items:center;gap:8px;padding:10px 0;font-size:13px;font-weight:600;display:flex}
