@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";
*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}a,button,[role=button],.bottom-nav-item,.bottom-nav-fab{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}:root{--primary-color:#059669;--primary-light:#ecfdf5;--primary-hover:#047857;--accent-color:#10b981;--brand-gradient:linear-gradient(135deg, #059669 0%, #0369a1 100%);--brand-gradient-soft:linear-gradient(135deg, #d1fae5 0%, #e0e7ff 100%);--bg-body:#f6f8f7;--surface-card:#fff;--glass-bg:#ffffffe0;--glass-bg-strong:#fffffff5;--border-color:#e5e7eb;--border-subtle:#f3f4f6;--text-main:#111827;--text-body:#374151;--text-muted:#9ca3af;--shadow-card:0 4px 20px #0000000f, 0 1px 2px #0000000a;--shadow-hover:0 4px 24px #0000001a;--shadow-sm:0 1px 3px #00000012;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--medal-1:#d4a017;--medal-2:#64748b;--medal-3:#b06d3b;--gold:#d4a017;--gold-soft:#e8b44a;--gold-tint:#d4a01724;--focus-warmup:#f59e0b;--focus-open:#10b981;--focus-sr:#065f46;--focus-strength:#0284c7;--focus-match:#0e7490;--focus-freeplay:#94a3b8;--error-bg:#fee2e2;--error-text:#b91c1c;--error-border:#fecaca;--success-bg:#dcfce7;--success-text:#166534;--success-border:#bbf7d0;--header-height:64px;--bottom-nav-height:64px;--sheet-peek:92px;--max-content-width:640px;--max-layout-width:1200px}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body{color:var(--text-main);overscroll-behavior-y:none;min-height:100vh;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5}body:before{content:"";z-index:-1;background:var(--brand-gradient-soft);position:fixed;inset:0}h1,h2,h3,h4,h5,h6{color:var(--text-main);font-weight:700;line-height:1.2}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}img{max-width:100%;display:block}.page-container{max-width:var(--max-content-width);padding:1rem 1rem calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + 1.5rem);margin:0 auto}.special-tag{vertical-align:middle;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:#059669cc;border-radius:5px;flex-shrink:0;align-items:center;margin-left:.4rem;padding:3px 6px;font-size:.6rem;font-weight:800;line-height:1;display:inline-flex}.special-tag-role{text-transform:none;letter-spacing:0;background:#0369a1d9}.activity-badge-row{flex-wrap:wrap;align-items:center;gap:6px;padding:0 1rem;display:flex}.activity-badge-row-md{padding:0}.activity-badge-medal-btn{cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;line-height:0;transition:transform .1s;display:inline-flex}.activity-badge-medal-btn:active{transform:scale(.92)}.activity-badge-rest{background:var(--surface-muted,#0000000f);color:var(--text-muted);cursor:pointer;box-shadow:inset 0 0 0 1px var(--border-color);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.activity-badge-rest-sm{width:26px;height:26px;font-size:.66rem}.activity-badge-rest-md{width:34px;height:34px;font-size:.75rem}.activity-badge-overlay-title{color:var(--text-main);font-size:1.05rem;font-weight:800}.activity-badge-overlay-list{flex-direction:column;gap:.9rem;display:flex}.activity-badge-overlay-row{align-items:center;gap:.75rem;display:flex}.activity-badge-overlay-info{flex-direction:column;gap:1px;min-width:0;display:flex}.activity-badge-overlay-tier{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.65rem;font-weight:800}.activity-badge-overlay-name{color:var(--text-main);font-size:.9rem;font-weight:700}.activity-badge-overlay-desc{color:var(--text-muted);font-size:.78rem;line-height:1.4}.activity-detail-author-name-row{align-items:center;display:inline-flex}.card{background:var(--surface-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid var(--border-color);overflow:hidden}.detail-stack{flex-direction:column;gap:1rem;display:flex}.group-detail-stack{gap:.75rem}.group-detail-stack>section{margin-top:.5rem}.group-detail-stack>section:first-of-type{margin-top:0}.group-detail-stack .section-header{margin-bottom:.5rem}.stats-dual-row{align-items:stretch;gap:.5rem;display:flex}.stats-dual-row>*{flex:1 1 0;min-width:0}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-family:inherit;font-size:.9rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-1px)}.btn-gradient{background:var(--brand-gradient);color:#fff}.btn-gradient:hover{opacity:.92;transform:translateY(-1px)}.btn-outline{border:1.5px solid var(--border-color);color:var(--text-main);background:0 0}.btn-outline:hover{border-color:var(--primary-color);color:var(--primary-color)}.btn-ghost{color:var(--text-muted);background:0 0}.btn-ghost:hover{color:var(--text-main);background:var(--border-subtle)}.btn-danger{background:var(--error-text);color:#fff}.btn-danger:hover{background:#a01a1a;transform:translateY(-1px)}.btn-gold{color:#7a4e00;background:linear-gradient(135deg,#ffe08a 0%,#e8b44a 55%,#c98f2a 100%);box-shadow:inset 0 1px 1px #fff9}.btn-gold:hover{filter:brightness(.96);transform:translateY(-1px)}.btn-danger-outline{border:1.5px solid var(--error-border);color:var(--error-text);background:0 0}.btn-danger-outline:hover{border-color:var(--error-text);background:var(--error-bg)}.btn-sm{padding:.4rem .875rem;font-size:.82rem}.desktop-create-btn{display:none}.btn-full{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-overlay{z-index:1200;background:#00000073;justify-content:center;align-items:flex-end;animation:.18s ease-out fadeIn;display:flex;position:fixed;inset:0}@media (min-width:480px){.sheet-overlay{align-items:center}}.sheet{background:var(--surface-card);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-width:480px;box-shadow:var(--shadow-hover);padding:1.5rem 1.5rem calc(1.5rem + env(safe-area-inset-bottom));animation:.24s cubic-bezier(.32,.72,0,1) sheet-up}@media (min-width:480px){.sheet{border-radius:var(--radius-xl);animation:.2s ease-out fadeIn}}.sheet-title{color:var(--text-main);font-size:1.05rem;font-weight:800}.sheet-text{color:var(--text-body);margin-top:.4rem;font-size:.875rem;line-height:1.5}.sheet-actions{flex-direction:column;gap:.625rem;margin-top:1.25rem;display:flex}.form-group{flex-direction:column;gap:.375rem;display:flex}.form-label{color:var(--text-body);font-size:.85rem;font-weight:600}.form-input{border:1.5px solid var(--border-color);border-radius:var(--radius-sm);width:100%;color:var(--text-main);background:#fff;outline:none;padding:.7rem 1rem;font-family:inherit;font-size:.95rem;transition:border-color .15s}.form-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #0596691a}.form-input::placeholder{color:var(--text-muted)}input[type=date].form-input{appearance:none;min-width:0;max-width:100%;height:calc(1.2em + 1.4rem + 3px);line-height:1.2;display:block}input[type=date].form-input::-webkit-date-and-time-value{text-align:left;margin:0}textarea.form-input{resize:vertical;min-height:100px}.form-hint-error{color:var(--error-text);margin-top:-.15rem;font-size:.78rem}.form-input.is-invalid{border-color:var(--error-border);background:var(--error-bg)}.form-input.is-invalid:focus{border-color:var(--error-text)}.error-message{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border);border-radius:var(--radius-sm);padding:.75rem 1rem;font-size:.875rem;font-weight:500}.success-message{background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border);border-radius:var(--radius-sm);padding:.75rem 1rem;font-size:.875rem;font-weight:500}.badge{border-radius:100px;align-items:center;gap:.25rem;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-green{background:var(--primary-light);color:var(--primary-hover)}.badge-blue{color:#1d4ed8;background:#eff6ff}.badge-neutral{background:var(--border-subtle);color:var(--text-muted)}.badge-gold{background:var(--gold-tint);color:var(--gold)}.tournament-placement-badge{white-space:nowrap;flex-shrink:0}.divider{border:none;border-top:1px solid var(--border-color);margin:1rem 0}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%) 0 0/200% 100%;animation:1.4s infinite skeleton-loading}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.spinner{border:2px solid #05966933;border-top-color:var(--primary-color);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.app-content-loading{justify-content:center;align-items:center;min-height:40vh;display:flex}.app-content-loading .spinner{border-width:3px;width:32px;height:32px}.empty-state{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 1.5rem;display:flex}.homebase-empty-wrap{min-height:calc(100dvh - var(--header-height) - var(--bottom-nav-height) - env(safe-area-inset-bottom));flex-direction:column;display:flex}.homebase-empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1.5rem;min-height:0;padding:2rem 1.25rem;display:flex}.homebase-empty-head{flex-direction:column;gap:.4rem;max-width:30ch;display:flex}.homebase-empty-title{color:var(--text-main);text-wrap:balance;margin:0;font-size:1.15rem;font-weight:700}.homebase-empty-sub{color:var(--text-muted);margin:0;font-size:.85rem;line-height:1.5}.homebase-empty-actions{gap:.75rem;width:100%;max-width:380px;display:flex}.homebase-empty-card{border-radius:var(--radius-lg);background:var(--surface-card);border:1px solid var(--border-color);box-shadow:var(--shadow-card);flex-direction:column;flex:1;align-items:center;gap:.5rem;padding:1.4rem .75rem;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.homebase-empty-card:hover,.homebase-empty-card:active{box-shadow:var(--shadow-hover);border-color:var(--primary-color);transform:translateY(-2px)}.homebase-empty-icon{background:var(--primary-light);width:52px;height:52px;color:var(--primary-color);border-radius:50%;justify-content:center;align-items:center;display:flex}.homebase-empty-label{color:var(--text-main);font-size:.9rem;font-weight:700}.homebase-empty-hint{color:var(--text-muted);font-size:.72rem}.stats-row{gap:0;display:flex}.stat-value{color:var(--text-main);font-size:1.25rem;font-weight:700}.stat-label{color:var(--text-muted);margin-top:2px;font-size:.72rem;font-weight:500}.profile-cover-wrap{position:relative}.profile-page-body{padding-top:0}.profile-main{display:contents}.profile-page-body.is-locked{min-height:calc(100dvh - 200px - var(--header-height) - env(safe-area-inset-top));flex-direction:column;display:flex}.profile-head-card{z-index:10;margin-top:-2rem;padding:1.25rem;position:relative}.profile-avatar-wrap{flex-shrink:0;position:relative}.profile-avatar{background:var(--primary-light);width:80px;height:80px;color:var(--primary-color);border:3px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;font-weight:800;display:flex;overflow:hidden}.profile-avatar-btn{cursor:pointer;padding:0}.profile-avatar img{object-fit:cover;width:100%;height:100%}.profile-name{flex-wrap:wrap;align-items:center;margin:.9rem 0 .2rem;font-size:1.15rem;font-weight:800;display:flex}.profile-bio{color:var(--text-body);font-size:.875rem;line-height:1.5}.profile-h2h-row{border-top:1px solid var(--border-color);align-items:center;gap:.5rem;min-height:44px;margin-top:.75rem;padding-top:.6rem;transition:opacity .15s;display:flex}.profile-h2h-row:active{opacity:.6}.profile-h2h-row+.profile-head-actions{margin-top:.6rem}.profile-h2h-icon{color:var(--text-muted);flex-shrink:0}.profile-h2h-label{color:var(--text-main);flex-shrink:0;font-size:.85rem;font-weight:700}.profile-h2h-score{min-width:0;color:var(--text-muted);align-items:baseline;gap:.35rem;margin-left:auto;font-size:.8rem;font-weight:600;display:flex}.profile-h2h-num{font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:800}.profile-h2h-num.won{color:var(--success-text)}.profile-h2h-num.lost{color:var(--error-text)}.profile-h2h-name{text-overflow:ellipsis;white-space:nowrap;max-width:8rem;overflow:hidden}.profile-h2h-locked{white-space:nowrap;align-items:center;gap:.3rem;font-weight:700}.profile-h2h-locked svg{color:var(--gold);flex-shrink:0}button.profile-h2h-row{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border-bottom:0;border-left:0;border-right:0;padding-bottom:0;padding-left:0;padding-right:0}.profile-h2h-chevron{color:var(--text-muted);flex-shrink:0}.profile-locked-note{color:var(--text-muted);justify-content:center;align-items:center;gap:.4rem;margin:1.75rem 0 .5rem;font-size:.82rem;font-weight:600;display:flex}.profile-page-body.is-locked .profile-locked-note{margin:auto 0;padding:2rem 0 1.5rem}.profile-head-top{align-items:center;gap:1rem;display:flex}.profile-head-stats{flex:1;justify-content:space-around;align-items:center;gap:.25rem;display:flex}.profile-hstat{cursor:default;background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:.25rem .35rem;text-decoration:none;display:flex}a.profile-hstat,button.profile-hstat{cursor:pointer}.profile-hstat-val{color:var(--text-main);font-size:1.15rem;font-weight:800;line-height:1.1}.profile-hstat-label{color:var(--text-muted);white-space:nowrap;font-size:.68rem;font-weight:500}.profile-head-actions{align-items:center;gap:.5rem;margin-top:1rem;display:flex}.site-header{height:calc(var(--header-height) + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-color);z-index:100;position:sticky;top:0}.header-inner{height:100%;max-width:var(--max-content-width);justify-content:space-between;align-items:center;margin:0 auto;padding:0 1rem;display:flex}.header-logo{color:var(--text-main);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:.4rem;font-size:1.25rem;font-weight:800;text-decoration:none;display:flex}.header-page-title{color:var(--text-main);letter-spacing:-.01em;font-size:1.125rem;font-weight:700}.header-inner-centered{justify-content:space-between;position:relative}.header-actions-left{justify-content:flex-start}.header-page-title-centered{pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.header-actions{z-index:1;align-items:center;gap:.125rem;display:flex;position:relative}.header-icon-btn{width:38px;height:38px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.header-icon-btn:active{background:var(--border-subtle)}.header-icon-btn.is-active{color:var(--primary-color);background:var(--primary-light)}.header-account-btn{width:34px;height:34px;color:var(--text-muted);background:var(--border-subtle);cursor:pointer;border:2px solid #0000;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:border-color .15s;display:flex;overflow:hidden}.header-account-btn.is-open{border-color:var(--primary-color)}.header-account-btn-avatar{object-fit:cover;width:100%;height:100%}.header-menu-wrap{position:relative}.header-menu{border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-hover);z-index:200;background:#fff;min-width:180px;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden}.header-menu-item{color:var(--text-body);border-bottom:1px solid var(--border-subtle);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.625rem;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:.875rem;font-weight:500;text-decoration:none;display:flex}.header-menu-item.danger{color:var(--error-text)}.header-menu-item.header-menu-section{border-top:1px solid var(--border-subtle)}.header-menu-chev{color:var(--text-muted);margin-left:auto;transition:transform .15s}.header-menu-chev.is-open{transform:rotate(180deg)}.header-menu-item.header-menu-subitem{padding-top:.6rem;padding-bottom:.6rem;padding-left:2.25rem;font-size:.8125rem}.header-menu-item-check{color:var(--primary-color);visibility:hidden;display:inline-flex}.header-menu-item.is-checked .header-menu-item-check{visibility:visible}.header-menu-item.is-checked{color:var(--primary-color);font-weight:600}.chip-select{position:relative}.chip-select-btn{background:var(--bg-body);letter-spacing:-.01em;color:var(--text-main);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:.3rem;padding:.35rem .65rem .35rem .8rem;font-family:inherit;font-size:.85rem;font-weight:700;transition:background .15s;display:flex}.chip-select-btn:active{background:var(--border-subtle)}.chip-select-btn svg{color:var(--text-muted);flex-shrink:0}@keyframes page-slide-in{0%{transform:translate(100%)}to{transform:translate(0,0)}}@keyframes page-slide-in-back{0%{transform:translate(-100%)}to{transform:translate(0,0)}}.page-slide-in,.page-slide-in-back{backface-visibility:hidden;z-index:50;position:relative;transform:translateZ(0)}.page-slide-in{animation:.75s cubic-bezier(.22,1,.36,1) page-slide-in}.page-slide-in-back{animation:.75s cubic-bezier(.22,1,.36,1) page-slide-in-back}@media (prefers-reduced-motion:reduce){.page-slide-in,.page-slide-in-back{animation:none}}.detail-header{height:calc(var(--header-height) + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-color);z-index:100;position:sticky;top:0}.detail-header-inner{height:100%;max-width:var(--max-content-width);grid-template-columns:1fr auto 1fr;align-items:center;gap:.25rem;margin:0 auto;padding:0 .5rem;display:grid}.detail-header-title{color:var(--text-main);letter-spacing:-.01em;text-align:center;white-space:nowrap;text-overflow:ellipsis;font-size:1.0625rem;font-weight:700;overflow:hidden}.detail-header-title-group{align-items:center;gap:.5rem;min-width:0;display:flex}.detail-header-title-avatar{background:var(--primary-light);width:26px;height:26px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.detail-header-title-avatar img{object-fit:cover;width:100%;height:100%}.detail-header-title-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.detail-header-btn{width:40px;height:40px;color:var(--text-main);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s;display:inline-flex}.detail-header-btn:hover{background:var(--border-subtle)}.detail-header-btn-primary{color:var(--primary-color)}.detail-header-btn-primary:hover{background:var(--primary-light)}.detail-header-btn-gold{color:var(--gold)}.detail-header-btn-gold:hover{background:var(--gold-tint)}.detail-header-btn.is-danger{color:var(--error-text)}.detail-header-btn.is-danger:hover{background:var(--error-bg)}.detail-header-btn.is-active{color:#fff;background:var(--primary-color)}.detail-header-btn.is-active:hover{background:var(--primary-color)}.detail-header-back{justify-self:start}.detail-header-actions{justify-self:end;align-items:center;gap:.15rem;display:inline-flex}.bottom-nav{isolation:isolate;background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--border-color);z-index:100;padding-bottom:env(safe-area-inset-bottom);position:fixed;bottom:0;left:0;right:0}.bottom-nav-inner{max-width:var(--max-content-width);height:var(--bottom-nav-height);justify-content:space-around;align-items:center;margin:0 auto;padding:0 .5rem;display:flex}.bottom-nav-item{color:var(--text-muted);flex-direction:column;flex:1;align-items:center;gap:3px;min-width:0;padding:.5rem 0;font-size:.65rem;font-weight:500;text-decoration:none;transition:color .15s;display:flex}.bottom-nav-item.active,.bottom-nav-item:hover{color:var(--primary-color)}.bottom-nav-indicator{height:3px;width:var(--nav-indicator-width,0);transform:translateX(var(--nav-indicator-left,0));background:var(--primary-color);pointer-events:none;border-radius:0 0 3px 3px;transition:transform .28s cubic-bezier(.4,0,.2,1),width .28s cubic-bezier(.4,0,.2,1);position:absolute;top:-1px;left:0}.bottom-nav-fab{background:var(--brand-gradient);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 4px 16px #05966959}.bottom-nav-fab:hover{transform:scale(1.06);box-shadow:0 6px 20px #05966973}.bottom-nav-fab{cursor:pointer;border:none}.bottom-nav-fab svg{transition:transform .2s}.bottom-nav-fab.open svg{transform:rotate(45deg)}.bottom-nav-fab-wrap{justify-content:center;align-items:center;display:flex;position:relative}.create-menu-backdrop{z-index:1200;position:fixed;inset:0}.create-menu{z-index:1201;background:var(--surface-card,#fff);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:min(78vw,300px);animation:.16s ease-out create-menu-in;position:fixed;overflow:hidden;transform:translate(-50%);box-shadow:0 12px 40px #0000002e}@keyframes create-menu-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.create-menu-item{color:var(--text-main);align-items:center;gap:.75rem;padding:.85rem 1rem;text-decoration:none;display:flex}.create-menu-item:not(:last-child){border-bottom:1px solid var(--border-subtle)}.create-menu-item:active{background:var(--border-subtle)}.create-menu-icon{background:var(--brand-gradient-soft);width:38px;height:38px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.create-menu-title{color:var(--text-main);font-size:.9rem;font-weight:650}.dm-fab{right:1.25rem;bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + 1rem);z-index:90;background:var(--brand-gradient);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:transform .15s,box-shadow .15s;display:flex;position:fixed;box-shadow:0 6px 20px #05966966}.dm-fab:hover{transform:scale(1.06);box-shadow:0 8px 24px #05966980}.action-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:.35rem;padding:.35rem .5rem;font-size:.82rem;font-weight:500;transition:all .15s;display:flex}.action-btn:hover{color:var(--text-main);background:var(--border-subtle)}.action-btn.liked{color:#e11d48}.feed-list{max-width:var(--max-content-width);padding:.5rem .75rem;padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + 1.5rem);flex-direction:column;gap:.85rem;margin:0 auto;display:flex}@keyframes feed-reveal{0%{opacity:0}to{opacity:1}}.feed-reveal{opacity:0;animation:.3s ease-out forwards feed-reveal;animation-delay:var(--reveal-delay,0s)}@media (prefers-reduced-motion:reduce){.feed-reveal{opacity:1;animation:none}}.feed-load-more{min-height:48px;color:var(--primary-color);justify-content:center;align-items:center;display:flex}.ptr-spacer{flex-shrink:0;overflow:hidden}.ptr-spinner{z-index:90;color:var(--primary-color);opacity:0;justify-content:center;align-items:center;display:inline-flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.ptr-spinner-icon{display:inline-flex}.ptr-spinner-icon.ptr-spin{animation:.7s linear infinite spin}.feed-pull-indicator{color:var(--primary-color);justify-content:center;align-items:center;transition:opacity .15s;display:flex;overflow:hidden}.feed-pull-spin{animation:.8s linear infinite spin}.feed-card{background:var(--surface-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid var(--border-color);cursor:pointer;transition:box-shadow .18s;overflow:hidden}.feed-card:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}@media (hover:hover){.feed-card:hover{box-shadow:0 6px 28px #00000017,0 2px 6px #0000000d}}.feed-next-training-body{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.feed-next-training-label{color:var(--primary-color);text-transform:uppercase;letter-spacing:.03em;font-size:.7rem;font-weight:700}.feed-next-training-time{color:var(--text-main);font-size:.9rem;font-weight:700}.feed-next-training-sub{color:var(--text-muted);font-size:.78rem}.feed-next-training-label,.feed-next-training-time,.feed-next-training-sub{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.feed-next-training-standalone{max-width:var(--max-content-width);margin:0 auto;padding:.5rem .75rem 0}.feed-poll-card{flex-direction:column;justify-content:center;gap:.75rem;padding:.85rem 1rem;display:flex}.feed-poll-head{min-width:0;color:inherit;align-items:center;gap:.75rem;text-decoration:none;display:flex}.feed-poll-when{flex-direction:column;flex-shrink:0;align-items:center;gap:.3rem;display:flex}.feed-poll-day{color:var(--primary-color);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;font-size:.62rem;font-weight:800}.gev-rsvp-btn.feed-poll-primary{background:var(--brand-gradient);color:#fff;border-color:#0000;text-decoration:none}.gev-rsvp-btn:disabled{opacity:.55;cursor:default}.feed-poll-card.has-status{position:relative}.feed-poll-status{pointer-events:none;position:absolute;top:.6rem;right:.7rem}.feed-poll-status .gev-pill{gap:.3rem;height:20px;padding:0 .45rem;font-size:.64rem}.feed-poll-status .gev-pill-dot{width:6px;height:6px}.feed-poll-card.has-status .feed-next-training-label{padding-right:4.75rem}.feed-poll-confirmed{border-radius:var(--radius-sm);background:var(--primary-light);height:38px;color:var(--primary-hover);justify-content:center;align-items:center;gap:.4rem;margin:0;font-size:.82rem;font-weight:700;display:flex}.feed-suggest-track{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x mandatory;gap:.6rem;margin:0 -.75rem;padding:.1rem .75rem .3rem;scroll-padding-inline:.75rem;display:flex;overflow-x:auto}.feed-suggest-track::-webkit-scrollbar{display:none}.feed-section{flex-direction:column;gap:.85rem;display:flex}.feed-section-head{justify-content:space-between;align-items:center;gap:.5rem;margin:.15rem 0 -.35rem;padding:0 .25rem;display:flex}.feed-section-head .stats-section-title{margin:0}.feed-search-track{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x mandatory;align-items:stretch;gap:.6rem;margin:0 -.75rem;padding:.1rem .75rem .3rem;scroll-padding-inline:.75rem;display:flex;overflow-x:auto}.feed-search-track::-webkit-scrollbar{display:none}.feed-search-slide{scroll-snap-align:start;flex:0 0 86%;min-width:0;display:flex}.feed-search-track.is-single .feed-search-slide{flex-basis:100%}.feed-search-slide .partner-search-card{flex-direction:column;flex:1;min-width:0;display:flex}.feed-search-slide .partner-search-footer{margin-top:auto}.feed-upcoming-slide{scroll-snap-align:start;flex:0 0 100%;min-width:0;display:flex}.feed-upcoming-slide>.card{flex:1;min-width:0}.feed-suggest-card{scroll-snap-align:start;background:var(--surface-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid var(--border-color);flex-direction:column;flex:0 0 200px;align-items:center;gap:.5rem;padding:1rem .75rem .85rem;display:flex}.feed-suggest-avatar{background:var(--brand-gradient);color:#fff;width:60px;height:60px;font-size:1.2rem;font-weight:700;display:flex}.feed-suggest-name{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.85rem;font-weight:700;overflow:hidden}.feed-suggest-reason{color:var(--text-muted);text-align:center;min-height:1.7em;font-size:.72rem;line-height:1.3}.feed-suggest-actions{flex-direction:row;gap:.4rem;width:100%;display:flex}.feed-suggest-actions .follow-btn-wrap{flex:1 1 0;min-width:0}.feed-suggest-actions .follow-btn{width:100%;padding:.45rem .4rem;font-size:.74rem}.feed-suggest-remove{border-radius:100px;flex:1 1 0;min-width:0;padding:.45rem .4rem;font-size:.74rem}.feed-card-header{align-items:flex-start;gap:.75rem;padding:1rem 1rem .5rem;display:flex}.feed-live-badge{color:#e11d48;letter-spacing:.03em;text-transform:uppercase;background:#e11d481a;border-radius:100px;flex-shrink:0;align-items:center;gap:.3rem;margin-left:auto;padding:.25rem .55rem;font-size:.68rem;font-weight:800;display:inline-flex}.feed-live-dot{background:#e11d48;border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:1.6s ease-in-out infinite feed-live-pulse}@keyframes feed-live-pulse{0%,to{opacity:1}50%{opacity:.3}}@media (prefers-reduced-motion:reduce){.feed-live-dot{animation:none}}.feed-card.partner-search-card{cursor:default}.feed-card.partner-search-card.is-linked{cursor:pointer}.partner-search-head-end{flex-shrink:0;align-items:center;gap:.35rem;height:1.17188rem;margin-left:auto;display:inline-flex}.partner-search-dot{background:var(--primary-color);width:8px;height:8px}.partner-search-card .feed-author-row{flex-wrap:nowrap;min-width:0}.partner-search-card .feed-author{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.partner-search-delete,.feed-more-btn{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-right:-6px;display:inline-flex}.partner-search-delete:active,.feed-more-btn:active{color:var(--text-body)}.feed-more{display:inline-flex}.partner-search-notes{margin-top:-.4rem}.partner-search-toggle{justify-content:center;align-items:center;gap:.35rem;display:inline-flex}.partner-search-chev{transition:transform .15s}.partner-search-chev.is-open{transform:rotate(180deg)}.partner-search-requests.partner-search-panel{border-radius:var(--radius-md);background:var(--bg-body);margin:.6rem 0 0;padding:.85rem}.partner-search-facts{grid-template-columns:1fr 1fr;gap:.5rem;margin:0 1rem .9rem;display:grid}.partner-search-fact{border-radius:var(--radius-md);background:var(--bg-body);flex-direction:column;gap:.2rem;min-width:0;padding:.7rem .8rem;display:flex;position:relative}.partner-search-fact-label{color:var(--primary-color);text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:.3rem;font-size:.68rem;font-weight:700;display:inline-flex}.partner-search-fact-value,.partner-search-fact-sub,.partner-search-fact-address{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.partner-search-fact-value{color:var(--text-main);font-size:.95rem;font-weight:750;line-height:1.25}.partner-search-fact-sub{color:var(--text-body);font-size:.85rem;font-weight:600}.partner-search-fact-address{color:var(--text-muted);font-size:.78rem;font-weight:500;line-height:1.3}.partner-search-fact-info{width:28px;height:28px;color:var(--primary-color);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:.45rem;right:.45rem}.partner-search-fact-info:active{background:var(--surface-card)}.partner-search-fact:has(.partner-search-fact-info) .partner-search-fact-label{padding-right:1.5rem}.partner-search-footer{border-top:1px solid var(--border-subtle);padding:.75rem 1rem 1rem}.partner-search-footer>:first-child,.partner-search-footer .btn-full{min-height:2.5rem}.partner-search-status{text-align:center;color:var(--text-muted);justify-content:center;align-items:center;margin:0;font-size:.85rem;font-weight:600;display:flex}.partner-search-found{justify-content:space-between;align-items:center;gap:.75rem;font-size:.9rem;display:flex}.partner-search-requests{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.partner-search-request{flex-direction:column;gap:.4rem;font-size:.9rem;display:flex}.partner-search-request-row{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.partner-search-request+.partner-search-request{border-top:1px solid var(--border-subtle);padding-top:.6rem}.partner-search-request-msg{color:var(--text-body);word-break:break-word;margin:0;font-size:.85rem;font-style:italic;line-height:1.4}.partner-search-compose-input{resize:none}.partner-search-sheet-foot>.btn{flex:1 1 0}.badge-info-backdrop.is-sheet.partner-search-sheet-scrim{transition:none}.racket-sheet.partner-search-sheet{animation:.18s .12s both partner-sheet-fade}@keyframes partner-sheet-fade{0%{opacity:0}to{opacity:1}}.partner-search-request-icons{flex-shrink:0;align-items:center;gap:.35rem;display:inline-flex}.partner-search-icon-btn{border:1.5px solid var(--border-color);background:var(--surface-card);width:32px;height:32px;color:var(--text-body);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.partner-search-icon-btn:disabled{opacity:.5;cursor:default}.partner-search-icon-btn.is-accept{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.partner-search-declined{color:var(--error-text);padding:0 .25rem;font-size:.78rem;font-weight:700}.partner-search-request .feed-partner-chip{min-width:0}.partner-search-request .feed-partner-name{white-space:normal;overflow-wrap:anywhere;line-height:1.25}.partner-search-meta{white-space:nowrap;flex-wrap:nowrap;overflow:hidden}.partner-search-meta>*{flex-shrink:0}.partner-search-found .feed-partner-chip{min-width:0}.partner-search-found .feed-partner-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.partner-search-via{background:var(--bg-body);color:var(--text-body);letter-spacing:.02em;border-radius:100px;flex-shrink:0;padding:.05rem .4rem;font-size:.62rem;font-weight:700}.partner-search-error{color:var(--error-text);text-align:center;margin:.5rem 0 0;font-size:.8rem}.feed-avatar,.comment-avatar,.dm-avatar,.discover-player-avatar,.stats-rank-avatar,.onb-sugg-avatar,.feed-suggest-avatar,.activity-detail-avatar,.share-avatar,.log-partner-avatar,.feed-partner-avatar,.activity-detail-partner-avatar,.activity-detail-match-avatar,.settings-row-avatar,.live-partner-row-avatar,.match-list-row-avatar,.dm-search-avatar,.mention-suggestion-avatar,.stats-match-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;overflow:hidden}.feed-avatar img,.comment-avatar img,.dm-avatar img,.discover-player-avatar img,.stats-rank-avatar img,.onb-sugg-avatar img,.feed-suggest-avatar img,.activity-detail-avatar img,.share-avatar img,.log-partner-avatar img,.feed-partner-avatar img,.activity-detail-partner-avatar img,.activity-detail-match-avatar img,.settings-row-avatar img,.live-partner-row-avatar img,.match-list-row-avatar img,.dm-search-avatar img,.mention-suggestion-avatar img,.stats-match-icon img{object-fit:cover;width:100%;height:100%}.feed-avatar{background:var(--brand-gradient);color:#fff;width:42px;height:42px;font-size:1rem;font-weight:700;text-decoration:none;display:flex;position:relative;box-shadow:0 1px 4px #0000001a}.feed-card-meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.feed-author-row{flex-wrap:wrap;align-items:center;gap:2px 0;display:flex}.feed-author{color:var(--text-main);letter-spacing:-.01em;font-size:.9375rem;font-weight:700;line-height:1.25;text-decoration:none}.feed-author:hover{color:var(--primary-color)}.feed-datetime{color:var(--text-muted);letter-spacing:.01em;flex-wrap:wrap;align-items:center;gap:.3rem;font-size:.68rem;display:flex}.feed-sport-name{flex-shrink:0;align-items:center;gap:3px;font-weight:600;display:inline-flex}.feed-sport-name svg,.feed-dt-when{flex-shrink:0}.feed-dt-sep{opacity:.6;flex-shrink:0}.feed-loc-inline{flex:0 auto;align-items:center;gap:3px;min-width:0;display:inline-flex}.feed-loc-inline svg{flex-shrink:0}.feed-loc-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.feed-partner-line{color:var(--text-body);flex-wrap:wrap;align-items:center;gap:.3rem .5rem;margin:0 1rem .7rem;font-size:.9rem;line-height:1.3;display:flex}.feed-partner-label{color:var(--text-muted);font-weight:500}.feed-partner-chip{align-items:center;gap:.35rem;text-decoration:none;display:inline-flex}.feed-partner-name{color:var(--text-main);font-weight:700}.feed-league-club-logo{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex;overflow:hidden}.feed-partner-more{height:24px;color:var(--text-main);cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;padding:0 .1rem;font-family:inherit;font-size:.9rem;font-weight:700;display:inline-flex}.feed-partner-more-stack{align-items:center;display:inline-flex}.feed-partner-more-avatar{background:var(--brand-gradient);color:#fff;border:2px solid var(--surface-card);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-left:-9px;font-size:.6rem;font-weight:700;display:inline-flex;overflow:hidden}.feed-partner-more-avatar:first-child{margin-left:0}.feed-partner-more-avatar img{object-fit:cover;width:100%;height:100%}.feed-partner-avatar{background:var(--brand-gradient);color:#fff;width:24px;height:24px;font-size:.7rem;font-weight:700;display:inline-flex}.hall-rank-banner{border-radius:var(--radius-md);border:1px solid;align-items:center;gap:.75rem;width:100%;margin:.5rem 0 1rem;padding:.75rem .85rem;text-decoration:none;transition:transform .1s;display:flex;box-shadow:inset 0 1px #ffffff8c}.hall-rank-banner:active{transform:scale(.995)}.hall-rank-banner.in-feed{width:auto;margin:.25rem 1rem .9rem}.hall-rank-banner.rank-1{color:#8a6508;background:linear-gradient(135deg,#d4a0172b 0%,#d4a01712 48%,#d4a01721 100%);border-color:#d4a01757}.hall-rank-banner.rank-2{color:#556072;background:linear-gradient(135deg,#94a3b82e 0%,#94a3b814 48%,#94a3b824 100%);border-color:#94a3b85c}.hall-rank-banner.rank-3{color:#8a5528;background:linear-gradient(135deg,#b06d3b2b 0%,#b06d3b12 48%,#b06d3b21 100%);border-color:#b06d3b57}.tournament-placement-banner{cursor:default;margin:0}.tournament-placement-banner:active{transform:none}.hall-rank-icon{width:30px;height:30px;color:inherit;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.hall-rank-banner.rank-1 .hall-rank-icon{background:#d4a01729}.hall-rank-banner.rank-2 .hall-rank-icon{background:#94a3b82e}.hall-rank-banner.rank-3 .hall-rank-icon{background:#b06d3b29}.hall-rank-text{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.hall-rank-headline{letter-spacing:-.01em;color:inherit;font-size:.88rem;font-weight:800;line-height:1.25}.hall-rank-venue{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;font-weight:600;overflow:hidden}.hall-rank-chev{opacity:.55;color:inherit;flex-shrink:0}@media (prefers-reduced-motion:reduce){.hall-rank-banner:active{transform:none}}.gender-toggle .drill-type-btn{flex:1;justify-content:center;padding:.5rem;font-size:.85rem}.hall-trophy-empty{color:var(--text-muted);margin:0 .15rem;font-size:.85rem;line-height:1.5}.profile-nav-row{align-items:center;gap:.5rem;width:100%;padding:.9rem 1rem;text-decoration:none;transition:transform .1s;display:flex}.profile-nav-row:active{transform:scale(.99)}.profile-sections{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.profile-nav-list{flex-direction:column;gap:.75rem;display:flex}.profile-sections .activity-detail-material{background:var(--surface-card);margin-bottom:0}.profile-activities-list{flex-direction:column;gap:1.25rem;display:flex}.profile-nav-icon{color:var(--primary-color);flex-shrink:0}.profile-nav-icon.koh{color:#d4a017}.profile-panels{flex-direction:column;gap:1rem;display:flex}.profile-subtabs{border-bottom:1px solid var(--surface-card);display:flex}.profile-subtab{min-width:0;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex-direction:column;flex:1;align-items:center;gap:4px;margin-bottom:-1px;padding:.55rem .25rem .65rem;font-size:.72rem;font-weight:600;transition:color .15s,border-color .15s;display:flex}.profile-subtab span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.profile-subtab svg{flex-shrink:0}.profile-subtab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.profile-subtab .koh{color:var(--gold)}.profile-panel{min-height:calc(100dvh - var(--header-height) - var(--bottom-nav-height) - env(safe-area-inset-bottom));flex-direction:column;display:flex}.hall-ranks-view{flex-direction:column;gap:1.5rem;display:flex}.profile-nav-title{color:var(--text-main);font-size:.95rem;font-weight:700}.profile-nav-count{color:var(--primary-color);background:color-mix(in srgb, var(--primary-color) 12%, transparent);border-radius:999px;padding:.05rem .45rem;font-size:.72rem;font-weight:800}.profile-nav-hall{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:45%;margin-left:auto;font-size:.82rem;overflow:hidden}.profile-bilanz-record{text-overflow:clip;align-items:center;gap:.4rem;max-width:none;display:flex;overflow:visible}.profile-bilanz-won,.profile-bilanz-loss{white-space:nowrap;font-size:.78rem;font-weight:700}.profile-bilanz-won{color:var(--success-text)}.profile-bilanz-loss{color:var(--error-text)}.profile-nav-chevron{color:var(--text-muted);flex-shrink:0;margin-left:auto}.profile-nav-hall~.profile-nav-chevron{margin-left:.4rem}.profile-badges-row{gap:.7rem}.profile-badges-spotlight{background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.profile-badges-spotlight:disabled{cursor:default}.profile-badges-spotlight-empty{background:var(--border-subtle);width:30px;height:30px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.profile-badges-spotlight-star{color:#fff;border:1.5px solid var(--surface-card);background:#d4a017;border-radius:50%;justify-content:center;align-items:center;width:15px;height:15px;display:inline-flex;position:absolute;bottom:-3px;right:-3px}.profile-badges-link{flex:1;align-items:center;gap:.5rem;min-width:0;text-decoration:none;display:flex}.hall-section{flex-direction:column;display:flex}.hall-section-heading{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 .15rem .55rem;font-size:.7rem;font-weight:700}.hall-rank-list{flex-direction:column;gap:.5rem;display:flex}.hall-rank-item{align-items:center;gap:.6rem;padding:.75rem .9rem;text-decoration:none;transition:transform .1s;display:flex}.hall-rank-item:active{transform:scale(.99)}.hall-rank-num{text-align:center;min-width:1.6rem;color:var(--text-muted);flex-shrink:0;font-size:.95rem;font-weight:800}.hall-rank-num.rank-1{color:var(--medal-1)}.hall-rank-num.rank-2{color:var(--medal-2)}.hall-rank-num.rank-3{color:var(--medal-3)}.hall-rank-crown{color:var(--text-muted);flex-shrink:0}.hall-rank-crown.rank-1{color:var(--medal-1)}.hall-rank-crown.rank-2{color:var(--medal-2)}.hall-rank-crown.rank-3{color:var(--medal-3)}.hall-rank-name{min-width:0;color:var(--text-main);flex:1;font-size:.92rem;font-weight:700}.hall-rank-of{color:var(--text-muted);white-space:nowrap;font-size:.78rem}.feed-headline{color:var(--text-main);letter-spacing:-.015em;margin:0;padding:.375rem 1rem .75rem;font-size:1.15rem;font-weight:750;line-height:1.35;transition:color .15s}.feed-post-text{color:var(--text-body);white-space:pre-wrap;word-break:break-word;margin:0;padding:0 1rem .875rem;font-size:.9rem;line-height:1.5}.feed-stats-grid{background:var(--surface-card);grid-template-columns:repeat(4,1fr);display:grid}.feed-stat-val-p{color:var(--primary-color)}.feed-stats-grid .feed-stat-block{position:relative}.activity-detail-stats-row:not(.activity-detail-stats-tiles) .feed-stat-block:not(:last-child):after{content:"";background:var(--border-subtle);width:1px;position:absolute;top:20%;bottom:20%;right:0}.feed-stat-block{flex-direction:column;flex:1;align-items:center;gap:2px;min-width:0;padding:.7rem .375rem;display:flex}.feed-stat-block-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;font-family:inherit}.feed-stat-val-bilanz{align-items:center;gap:3px;display:inline-flex}.feed-bilanz-chev{color:var(--text-muted);transition:transform .15s}.feed-bilanz-chev.is-open{transform:rotate(180deg)}.tournament-champion-val{align-items:center;gap:4px;display:inline-flex}.tournament-champion-crown{color:var(--gold);flex-shrink:0}.feed-stat-val-placement{white-space:nowrap;font-size:.95rem;display:inline-block}.feed-stats-grid-tournament{grid-template-columns:25% auto auto 25%;justify-content:space-between}.feed-stat-val-win{color:var(--primary-color)}.feed-stat-val-loss{color:var(--error-text)}.feed-tournament-expand{padding:.75rem 1rem}.log-import-hint{border-radius:var(--radius-md);background:var(--primary-light);color:var(--primary-hover);align-items:center;gap:.5rem;padding:.7rem .875rem;font-size:.8rem;font-weight:600;display:flex}.log-import-hint svg{flex-shrink:0}.log-edit-loading{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1.25rem;display:flex}.log-edit-loading-title{color:var(--text-main);font-size:1rem;font-weight:700}.log-edit-loading-text{color:var(--text-muted);font-size:.85rem;line-height:1.5}.log-edit-loading-err{border-radius:var(--radius-md);background:var(--error-bg);width:100%;color:var(--error-text);word-break:break-word;padding:.6rem .75rem;font-size:.75rem;font-weight:600}.log-edit-loading .btn{margin-top:.25rem}.import-stats{border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);grid-auto-columns:1fr;grid-auto-flow:column;display:grid}.import-stats .feed-stat-block+.feed-stat-block{border-left:1px solid var(--border-subtle)}.workout-import-list{flex-direction:column;gap:.625rem;display:flex}.workout-import-item{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-card);overflow:hidden}.workout-import-item.open{box-shadow:var(--shadow-card)}.workout-import-head{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.7rem;width:100%;padding:.75rem .85rem;font-family:inherit;display:flex}.workout-import-status{letter-spacing:.03em;text-transform:uppercase;background:var(--brand-gradient-soft);color:var(--primary-color);border-radius:100px;flex-shrink:0;padding:.3rem .55rem;font-size:.68rem;font-weight:800}.workout-import-status.done{background:var(--border-subtle);color:var(--text-muted)}.workout-import-head-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.workout-import-head-title{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:700;overflow:hidden}.workout-import-head-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.workout-import-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.workout-import-item.open .workout-import-chevron{transform:rotate(180deg)}.workout-import-body{padding:0 .85rem .85rem}.workout-import-body .import-stats{margin-bottom:.85rem}.workout-import-hint{color:var(--text-muted);align-items:flex-start;gap:.4rem;margin-bottom:.85rem;font-size:.72rem;display:flex}.workout-import-action{justify-content:center;gap:.35rem;width:100%}.workout-import-done-note{color:var(--text-muted);text-align:center;margin:0;font-size:.8rem}.workout-import-empty-link{align-items:center;gap:.35rem;margin-top:.25rem;display:inline-flex}.workout-import-merge{border:1.5px solid var(--primary-color);border-radius:var(--radius-md);background:var(--primary-light);padding:.75rem .85rem}.workout-import-merge-text{color:var(--text-main);margin:0 0 .75rem;font-size:.85rem;font-weight:600;line-height:1.4}.workout-import-merge-actions{gap:.5rem;display:flex}.workout-import-merge-actions .btn{flex:1;justify-content:center}.workout-import-merge-done{color:var(--primary-color);flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.82rem;font-weight:600;display:flex}.workout-import-merge-link{cursor:pointer;color:var(--primary-color);background:0 0;border:none;align-items:center;gap:.25rem;margin-left:auto;padding:0;font-size:.8rem;font-weight:600;display:inline-flex}.activity-detail-merge-banner{border:1.5px solid var(--primary-color);border-radius:var(--radius-md);background:var(--primary-light);margin:.25rem 0 .5rem;padding:.85rem .95rem}.activity-detail-merge-banner.done{color:var(--primary-color);align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;display:flex}.activity-detail-merge-banner-head{color:var(--primary-color);align-items:center;gap:.4rem;margin-bottom:.65rem;font-size:.85rem;font-weight:700;display:flex}.activity-detail-merge-banner .btn{justify-content:center;width:100%}.feed-stat-val{color:var(--text-main);letter-spacing:-.03em;font-size:1.25rem;font-weight:800;line-height:1}.feed-stat-unit{color:var(--text-muted);letter-spacing:.02em;text-transform:uppercase;text-align:center;min-height:13px;font-size:.625rem;font-weight:700}.feed-stat-lbl{color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;margin-top:4px;font-size:.6rem;font-weight:600}.feed-map{width:100%;height:240px;position:relative;overflow:hidden}.feed-map iframe{transform-origin:50%;border:none;width:100%;height:100%;display:block;transform:scale(1.03)}.feed-media{aspect-ratio:4/3;width:100%;position:relative;overflow:hidden;container-type:inline-size}.feed-media-single{width:100%;height:100%;position:relative}.feed-media-single img{object-fit:cover;object-position:center center;width:100%;height:100%;display:block}.feed-media-strip{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-webkit-user-select:none;user-select:none;gap:8px;width:100%;height:100%;display:flex;overflow:auto hidden}.feed-media-strip:before{content:"";flex:0 0 max(0px,7cqw - 8px)}.feed-media-strip::-webkit-scrollbar{display:none}.feed-strip-card{scroll-snap-align:center;scroll-snap-stop:always;border-radius:14px;flex-shrink:0;height:100%;position:relative;overflow:hidden}.feed-strip-card:first-child{scroll-snap-align:start;scroll-margin-inline-start:7cqw}.feed-strip-card:last-child{scroll-snap-align:end}.feed-strip-card img{object-fit:cover;object-position:center center;width:100%;height:100%;display:block}.feed-strip-map{flex:0 0 86cqw}.feed-strip-photo{aspect-ratio:3/4;flex:none}.feed-strip-photo.is-video{aspect-ratio:1}.feed-strip-photo.is-landscape{aspect-ratio:auto;flex-basis:calc(100cqw - 32px)}.feed-strip-video{background:var(--brand-gradient-soft);width:100%;height:100%;position:relative}.feed-strip-video .feed-strip-video-poster,.feed-strip-video video{object-fit:cover;object-position:center center;width:100%;height:100%;display:block;position:absolute;inset:0}.feed-strip-video video{opacity:0;background:0 0;transition:opacity .25s}.feed-strip-video video,.activity-detail-video-card video,.video-lightbox-host video{dynamic-range-limit:standard}.feed-strip-video video.is-ready{opacity:1}.feed-strip-video{cursor:pointer}.feed-strip-video-badge{pointer-events:none;z-index:1;color:#fff;cursor:pointer;background:#00000073;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.feed-strip-video-spinner{border:2.5px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:24px;height:24px;animation:.7s linear infinite spin}.feed-strip-video-time{z-index:1;color:#fff;font-variant-numeric:tabular-nums;pointer-events:none;background:#00000073;border-radius:100px;padding:3px 8px;font-size:.72rem;font-weight:600;position:absolute;bottom:8px;left:8px}.feed-strip-video-mute{z-index:1;color:#fff;cursor:pointer;background:#00000073;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:absolute;bottom:8px;right:8px}.feed-carousel-map-label{-webkit-backdrop-filter:blur(14px);color:#fff;z-index:3;white-space:nowrap;text-overflow:ellipsis;background:#064e3bb8;border-radius:100px;align-items:center;gap:4px;max-width:70%;padding:4px 9px;font-size:.72rem;font-weight:500;display:flex;position:absolute;bottom:10px;left:10px;overflow:hidden}.hero-media-toggle{-webkit-backdrop-filter:blur(10px);z-index:5;pointer-events:auto;background:#0000006b;border-radius:100px;gap:2px;padding:3px;display:flex;position:absolute;bottom:44px;left:50%;transform:translate(-50%)}.hero-media-btn{color:#ffffffb3;cursor:pointer;white-space:nowrap;letter-spacing:.01em;background:0 0;border:none;border-radius:100px;padding:5px 16px;font-size:.73rem;font-weight:500;transition:all .15s}.hero-media-btn.active{color:#fff;background:#ffffff38}.map-fallback{background:var(--brand-gradient-soft);color:var(--primary-color);text-align:center;cursor:pointer;border:none;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;width:100%;padding:1rem;font-family:inherit;font-size:.8rem;font-weight:600;display:flex;position:absolute;inset:0}.map-fallback span{text-overflow:ellipsis;white-space:nowrap;max-width:90%;overflow:hidden}.map-fallback-retry{opacity:.75;align-items:center;gap:.3rem;margin-top:.15rem;font-size:.72rem;font-weight:600;display:inline-flex}.map-skeleton{background:var(--brand-gradient-soft);color:var(--primary-color);opacity:.55;justify-content:center;align-items:center;animation:1.4s ease-in-out infinite map-skeleton-pulse;display:flex;position:absolute;inset:0}@keyframes map-skeleton-pulse{0%,to{opacity:.35}50%{opacity:.65}}@media (prefers-reduced-motion:reduce){.map-skeleton{opacity:.5;animation:none}}.expandable-map{position:relative}.expandable-map-trigger{cursor:pointer;background:0 0;border:none;width:100%;height:100%;padding:0;display:block;position:relative}.expandable-map-hint{-webkit-backdrop-filter:blur(4px);color:#fff;pointer-events:none;background:#00000073;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:absolute;bottom:.6rem;right:.6rem}.map-overlay{z-index:1000;opacity:0;background:#000;width:100vw;height:100dvh;transition:opacity .2s;position:fixed;inset:0}.map-overlay.map-overlay-visible{opacity:1}.map-overlay-stage{z-index:1;position:absolute;inset:0}.map-overlay-canvas{width:100%;height:100%}.map-overlay-close{top:calc(env(safe-area-inset-top,0px) + .75rem);width:40px;height:40px;color:var(--text-main);cursor:pointer;z-index:3;box-shadow:var(--shadow-sm);background:#ffffffe6;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;right:.75rem}.interactive-map-pin{background:0 0;border:none}.map-pin-label-anchor{background:0 0;border:none;width:0!important;height:0!important}.map-pin-label{pointer-events:auto;border-radius:var(--radius-md);background:var(--surface-card);width:max-content;max-width:230px;color:var(--text-main);box-shadow:var(--shadow-card);align-items:center;gap:.5rem;padding:.45rem .45rem .45rem .55rem;font-family:inherit;display:flex;position:absolute;bottom:48px;left:0;transform:translate(-50%)}.map-pin-label-logo{width:30px;height:30px;color:var(--primary-color);background:#0596691a;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex;overflow:hidden}.map-pin-label-logo img{object-fit:contain;width:100%;height:100%}.map-pin-label-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.map-pin-label-name{font-size:.82rem;font-weight:700}.map-pin-label-address{color:var(--text-muted);font-size:.72rem}.map-pin-label-info{width:30px;height:30px;color:var(--primary-color);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.map-pin-label-info:active{background:var(--bg-body)}.map-route-pop{border-radius:var(--radius-md);background:var(--surface-card);min-width:140px;box-shadow:var(--shadow-card);flex-direction:column;display:flex;position:absolute;bottom:calc(100% + 6px);right:0;overflow:hidden}.map-route-pop a,.leaflet-container .map-route-pop a{color:var(--text-main);white-space:nowrap;padding:.65rem .85rem;font-size:.85rem;font-weight:600;text-decoration:none}.map-route-pop a+a{border-top:1px solid var(--border-subtle)}.map-route-pop a:active{background:var(--bg-body)}.leaflet-container img{max-width:none}.discover-tabs{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:999px;gap:.35rem;margin-bottom:.75rem;padding:4px;display:flex}.discover-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.55rem .75rem;font-size:.85rem;font-weight:600;transition:background .15s,color .15s;display:flex}.discover-tab.active{background:var(--primary-light);color:var(--primary-color)}.discover-page{padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + 2.5rem)}body.has-live-bar .discover-page{padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + 6rem)}.discover-sticky{top:calc(var(--header-height) + env(safe-area-inset-top) + 1rem);z-index:20;margin:0 -1rem;padding:0 1rem 1rem;position:sticky}.contacts-finder>.search-field{margin-bottom:1rem}.discover-sticky:before{content:"";top:calc(-1 * (var(--header-height) + env(safe-area-inset-top) + 1rem));z-index:-1;background:var(--brand-gradient-soft);pointer-events:none;background-position:0 0;background-repeat:no-repeat;background-size:100vw 100vh;position:absolute;bottom:0;left:0;right:0}.discover-player-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:.75rem;padding:.7rem 1rem;display:flex}.discover-player-row:last-child{border-bottom:none}.discover-player-list{flex-direction:column;gap:.875rem;display:flex}.discover-player-card .discover-player-row{border-bottom:none;padding:.7rem .85rem}.discover-block{margin-bottom:1.5rem}.discover-block:last-child{margin-bottom:0}.discover-player-rank{color:var(--text-muted);text-align:center;flex-shrink:0;width:20px;font-size:.78rem;font-weight:700}.discover-player-avatar{background:var(--brand-gradient);color:#fff;width:42px;height:42px;font-size:1rem;font-weight:700;text-decoration:none;display:flex;position:relative;box-shadow:0 1px 4px #0000001a}.discover-player-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.discover-player-name-row{align-items:center;min-width:0;display:flex}.discover-player-name{min-width:0;color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;text-decoration:none;overflow:hidden}.discover-player-meta{color:var(--text-muted);font-size:.75rem}.discover-player-place{min-width:0;color:var(--text-muted);align-items:center;gap:3px;font-size:.75rem;display:flex}.discover-player-place svg{opacity:.75;flex-shrink:0}.discover-player-place>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.discover-player-follow{flex-shrink:0}.coach-row-actions{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.coach-perms-btn{border:1.5px solid var(--border-color);width:32px;height:32px;color:var(--text-main);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;display:flex}.coach-perms-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.coach-permissions-list{flex-direction:column;gap:.6rem;margin-top:1rem;display:flex}.spin{animation:.8s linear infinite spin}.spin-primary{color:var(--primary-color);animation:.8s linear infinite spin}.feed-actions{border-top:1px solid var(--border-subtle);align-items:center;display:flex}.feed-action-btn{color:var(--text-muted);cursor:pointer;letter-spacing:.01em;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:.375rem;padding:.8125rem 0;font-size:.8125rem;font-weight:600;transition:color .15s,background .15s;display:flex}.feed-action-btn:hover,.feed-action-btn:active{color:var(--text-main)}.feed-action-btn.liked{color:#e11d48}.feed-action-btn.liked svg{filter:drop-shadow(0 0 4px #e11d484d)}.profile-cover{object-fit:cover;width:100%;height:200px}.profile-cover-placeholder{background:var(--brand-gradient);width:100%;height:200px}.profile-cover-edit{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);z-index:5;background:#00000080;border:none;border-radius:999px;align-items:center;gap:.35rem;padding:.4rem .7rem;font-size:.75rem;font-weight:600;display:inline-flex;position:absolute;top:.75rem;right:.75rem}.group-cover-actions{z-index:5;align-items:center;gap:.5rem;display:flex;position:absolute;top:.75rem;right:.75rem}.group-cover-actions .profile-cover-edit{position:static}.profile-avatar-edit{background:var(--primary-color);color:#fff;cursor:pointer;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;position:absolute;bottom:-2px;right:-2px}.settings-topbar{padding:.75rem 1rem;padding-top:calc(.75rem + env(safe-area-inset-top));z-index:100;background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-color);grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;display:grid;position:sticky;top:0}.settings-topbar:after{content:"";width:40px}.settings-topbar>.settings-title{text-align:center;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.settings-back{width:38px;height:38px;color:var(--text-body);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:background .15s;display:flex}.settings-back:hover{background:var(--surface-card)}.settings-title{color:var(--text-main);font-size:1.05rem;font-weight:800}.notif-dd{top:calc(var(--header-height) + env(safe-area-inset-top) + 6px);right:calc(max(0px, (100vw - var(--max-content-width)) / 2) + 1rem);border:1px solid var(--border-color);border-radius:var(--radius-md);width:400px;max-width:calc(100vw - 1.5rem);box-shadow:var(--shadow-hover);z-index:200;background:#fff;position:fixed;overflow:hidden}.notif-dd-head{color:var(--text-main);border-bottom:1px solid var(--border-subtle);padding:.75rem 1rem;font-size:.85rem;font-weight:800}.notif-dd-state{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:1.75rem 1rem;font-size:.85rem;display:flex}.notif-dd-list{max-height:380px;overflow-y:auto}.notif-item{border-bottom:1px solid var(--border-subtle);align-items:center;gap:.7rem;padding:.7rem 1rem;text-decoration:none;transition:background .12s;display:flex}.notif-item:hover{background:var(--bg-body)}.notif-item.unread{background:var(--primary-light)}.notif-item.unread:hover{background:#dcfbef}.notif-item-static{cursor:default}.notif-item-static:hover{background:0 0}.notif-item-static.unread:hover{background:var(--primary-light)}.notif-item-request{align-items:flex-start}.notif-item-av{background:var(--brand-gradient);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-weight:700;display:flex;position:relative;overflow:visible}.notif-item-av img{object-fit:cover;border-radius:50%;width:100%;height:100%}.notif-item-av.system{background:var(--brand-gradient);color:#fff}.notif-item-av .notif-item-club-logo{object-fit:contain;background:#fff;padding:4px}.notif-crown{color:var(--gold,#d4a017);vertical-align:-2px;flex-shrink:0}.notif-item-badge{border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;display:flex;position:absolute;bottom:-2px;right:-2px}.notif-item-body{flex:1;min-width:0}.notif-item-text{color:var(--text-body);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.82rem;line-height:1.35;display:-webkit-box;overflow:hidden}.notif-item-text strong{color:var(--text-main);font-weight:700}.notif-quote{color:var(--text-main);font-style:italic}.notif-item-time{color:var(--text-muted);margin-top:2px;font-size:.7rem}.notif-request-actions{gap:.5rem;margin-top:.5rem;display:flex}.notif-request-btn{cursor:pointer;border:1.5px solid #0000;border-radius:999px;padding:.4rem .95rem;font-family:inherit;font-size:.78rem;font-weight:700;transition:opacity .15s}.notif-request-btn.confirm{color:#fff;background:var(--primary-color)}.notif-request-btn.delete{color:var(--text-muted);background:var(--bg-body);border-color:var(--border-color)}.notif-request-btn:hover{opacity:.85}.notif-request-btn:disabled{opacity:.5;cursor:default}a.notif-request-btn{align-items:center;text-decoration:none;display:inline-flex}.notif-dd-foot{text-align:center;color:var(--primary-color);padding:.75rem 1rem;font-size:.82rem;font-weight:700;text-decoration:none;display:block}.notif-dd-foot:hover{background:var(--bg-body)}.onb-wrap{background:var(--surface-card);flex-direction:column;min-height:100dvh;display:flex}body.keyboard-open .onb-wrap{padding-bottom:var(--keyboard-height,0px)}.onb-card{width:100%;padding:env(safe-area-inset-top) 1.25rem 0;flex-direction:column;flex:1;display:flex}.onb-body{flex-direction:column;flex:1;padding-bottom:1.5rem;display:flex}.onb-step{flex-direction:column;flex:1;animation:.22s ease-out fadeIn;display:flex}@media (prefers-reduced-motion:reduce){.onb-step{animation:none}}.onb-step>.find-friends{flex-direction:column;flex:1;display:flex}.onb-foot{z-index:5;padding:.75rem 1.25rem max(1rem, env(safe-area-inset-bottom));background:var(--surface-card);box-shadow:0 -1px 0 var(--border-subtle);flex-direction:column;gap:.5rem;margin:auto -1.25rem 0;display:flex;position:sticky;bottom:0}.onb-foot:before{content:"";background:linear-gradient(to bottom, transparent, var(--surface-card));pointer-events:none;height:16px;position:absolute;top:-16px;left:0;right:0}.onb-foot .btn-ghost{color:var(--text-body);font-weight:600}.onb-legal{text-align:center;color:var(--text-muted);margin-top:.15rem;font-size:.75rem}.onb-legal a{color:var(--text-body)}.find-friends>.onb-foot{margin-top:auto;margin-bottom:-1.5rem}body.keyboard-open .onb-foot{position:static}@media (min-width:640px){.onb-wrap{background:linear-gradient(160deg, var(--primary-light) 0%, var(--bg-body) 70%);justify-content:center;align-items:center;padding:2rem 1.25rem}.onb-card{background:var(--surface-card);border-radius:var(--radius-xl);max-width:440px;height:min(720px,100dvh - 4rem);box-shadow:var(--shadow-card);border:1px solid var(--border-color);flex:none;padding:0 1.5rem;overflow-y:auto}.onb-foot{border-radius:0 0 var(--radius-xl) var(--radius-xl);margin:auto -1.5rem 0;padding:.75rem 1.5rem 1.25rem}}.onb-racket-preview{margin:.25rem 0 1.25rem;display:flex}.onb-racket-preview .racket-set-card{flex:1}.racket-set-card.is-static{cursor:default}body.keyboard-open .onb-racket-preview{display:none}.onb-head-row{z-index:5;background:var(--surface-card);flex-direction:column;gap:.35rem;margin-bottom:.75rem;padding:.25rem 0 .75rem;display:flex;position:sticky;top:0}.onb-head-nav{justify-content:space-between;align-items:center;min-height:44px;display:flex}.onb-preview-tag{background:var(--border-subtle);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-radius:100px;align-self:center;margin:.5rem 0 0;padding:.2rem .65rem;font-size:.66rem;font-weight:700}.onb-progress{background:var(--border-color);border-radius:100px;width:100%;height:4px;overflow:hidden}.onb-progress-fill{background:var(--primary-color);border-radius:100px;height:100%;transition:width .2s;display:block}.onb-back,.onb-back-spacer{flex-shrink:0;width:44px;height:44px}.onb-back{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:flex-start;align-items:center;margin-left:-.35rem;display:flex}.onb-back:hover{background:var(--border-subtle);color:var(--text-body)}.onb-back:disabled{opacity:.4;cursor:default}.onb-title{color:var(--text-main);letter-spacing:-.01em;font-size:1.6rem;font-weight:800;line-height:1.2}.onb-title.is-center{text-align:center}.onb-title:focus{outline:none}.onb-body .onb-title{margin-bottom:1.25rem}.onb-body>.error-message{margin-bottom:1rem}.onb-optional{color:var(--text-muted);font-size:.78rem;font-weight:400}.onb-avatar{background:var(--primary-light);border:3px solid var(--surface-card);width:104px;height:104px;box-shadow:0 0 0 1px var(--border-color);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;margin:0 auto;padding:0;display:flex;position:relative}.onb-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%}.onb-profile-head{align-items:center;gap:.9rem;display:flex}.onb-avatar.is-sm{flex-shrink:0;width:72px;height:72px;margin:0}.onb-avatar.is-sm .onb-avatar-initial{font-size:1.7rem}.onb-avatar.is-sm .onb-avatar-cam{width:26px;height:26px}.onb-photo-btn{color:var(--primary-color);padding-left:.5rem;padding-right:.5rem;font-weight:700}.onb-avatar-initial{color:var(--primary-color);font-size:2.4rem;font-weight:800}.onb-avatar-cam{background:var(--primary-color);color:#fff;border:2px solid var(--surface-card);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:absolute;bottom:-2px;right:-2px}.onb-next,.onb-later{width:100%}.onb-foot .btn-gold+.onb-later,.onb-foot .onb-later{padding-top:.45rem;padding-bottom:.45rem;font-size:.9rem}.onb-skip{min-width:44px;height:44px;color:var(--text-body);cursor:pointer;background:0 0;border:none;margin-right:-.25rem;padding:0 .25rem;font-size:.85rem;font-weight:600}.onb-skip:hover{color:var(--text-body)}.onb-gap{margin-top:.875rem}.onb-gap-lg{margin-top:1.25rem}.onb-bio textarea{resize:vertical}.onb-empty{color:var(--text-muted);text-align:center;padding:1rem 0;font-size:.9rem;line-height:1.5}.onb-suggestions{flex-direction:column;display:flex}.onb-sugg{align-items:center;gap:.75rem;padding:.6rem 0;display:flex}.onb-sugg+.onb-sugg{border-top:1px solid var(--border-subtle)}.onb-sugg-avatar{background:var(--brand-gradient);color:#fff;width:42px;height:42px;font-weight:800;display:flex}.onb-sugg-info{flex:1;min-width:0}.onb-sugg-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:700;overflow:hidden}.onb-sugg-bio{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.onb-sugg .follow-btn{flex-shrink:0}.ff-prime{flex-direction:column;flex:1;justify-content:center;align-items:center;padding-bottom:2rem;display:flex}.ff-prime .onb-title{margin:1.5rem 0 .25rem}.ff-prime .error-message{align-self:stretch;margin-top:1rem}.ff-stack{align-items:center;display:flex;position:relative}.ff-stack-avatar{border:3px solid var(--surface-card);width:64px;height:64px;margin-left:-16px;font-size:1.4rem}.ff-stack-avatar:first-child{margin-left:0}.ff-stack-badge{background:var(--primary-color);color:#fff;border:3px solid var(--surface-card);border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:flex;position:absolute;bottom:-4px;right:-10px}.find-friends-all .spinner{width:14px;height:14px}.find-friends-all{cursor:pointer;color:var(--primary-color);background:0 0;border:none;padding:0;font-size:.82rem;font-weight:700}.find-friends-connected.is-off{color:var(--text-muted);justify-content:flex-start;margin-bottom:1rem}.find-friends-group+.find-friends-group{margin-top:1.5rem}.friends-loading{justify-content:center;padding:2.5rem 0;display:flex}.friends-prompt{flex-direction:column;align-items:center;gap:.75rem;padding:2rem 1.25rem 1.5rem;display:flex}.friends-prompt .btn{margin-top:.5rem}.friends-prompt .error-message{align-self:stretch}.friends-prompt-icon{background:var(--primary-light);width:56px;height:56px;color:var(--primary-color);border-radius:50%;justify-content:center;align-items:center;display:flex}.friends-invite-list{flex-direction:column;padding:0 .85rem;display:flex}.friends-invite-row{align-items:center;gap:.75rem;padding:.7rem 0;display:flex}.friends-invite-row+.friends-invite-row{border-top:1px solid var(--border-subtle)}.friends-invite-avatar{background:var(--border-subtle);width:42px;height:42px;color:var(--text-body);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.friends-invite-name{min-width:0;color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.9rem;font-weight:600;overflow:hidden}.btn.friends-invite-btn{background:var(--border-subtle);color:var(--text-body);border:1.5px solid #0000;border-radius:100px;flex-shrink:0;padding:.4rem 1.1rem;font-size:.82rem;font-weight:600}.friends-more-link{width:fit-content;color:var(--primary-color);margin:1.5rem auto 0;font-size:.82rem;font-weight:700;text-decoration:none;display:block}.tour-track{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto}.tour-track::-webkit-scrollbar{display:none}.tour-page{scroll-snap-align:start;text-align:center;flex-direction:column;flex:0 0 100%;align-items:center;padding:1.5rem .75rem .5rem;display:flex}.tour-icon{background:var(--primary-light);width:72px;height:72px;color:var(--primary-color);border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.25rem;display:flex}.tour-line{color:var(--text-muted);min-height:3em;margin-top:.5rem;font-size:.92rem;line-height:1.5}.tour-dots{justify-content:center;gap:.35rem;margin-top:1.25rem;display:flex}.tour-dot{background:var(--border-color);border-radius:100px;width:6px;height:6px;transition:width .2s,background .2s}.tour-dot.on{background:var(--primary-color);width:18px}.onb-role-option:active:not(.active){background:var(--border-subtle)}.onb-wrap .btn{-webkit-tap-highlight-color:transparent}.onb-wrap .btn:active:not(:disabled){transform:scale(.98)}.onb-label-row{align-items:center;gap:.3rem;display:flex}.onb-info-icon{width:24px;height:24px;color:var(--primary-color);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.onb-label-row .onb-info-icon{margin:-4px 0}.onb-info-sheet{text-align:left}.onb-info-title{color:var(--text-main);margin:0 1.75rem .85rem 0;font-size:1.05rem;font-weight:800}.onb-info-list{flex-direction:column;gap:.75rem;list-style:none;display:flex}.onb-info-list li{color:var(--text-body);flex-direction:column;gap:.1rem;font-size:.85rem;line-height:1.45;display:flex}.onb-info-list b{color:var(--text-main);font-size:.88rem}.onb-info-foot{color:var(--text-muted);align-items:center;gap:.35rem;margin-top:1rem;font-size:.78rem;display:flex}.badge-info-backdrop.above-keyboard .badge-info-sheet.phone-prompt-sheet{height:auto;overflow-y:auto}.phone-prompt-text{color:var(--text-body);margin:-.35rem 1.75rem 1rem 0;font-size:.88rem;line-height:1.45}.phone-prompt-error{margin-top:.75rem}.phone-prompt-sheet .onb-info-foot{margin-top:.6rem}.phone-prompt-actions .btn-ghost{color:var(--text-body);font-weight:600}.phone-prompt-actions{flex-direction:column;gap:.35rem;margin-top:1.1rem;display:flex}.onb-start{flex-direction:column;flex:1;justify-content:center;align-items:center;padding-bottom:3rem;display:flex}.onb-start-avatar{background:var(--primary-light);width:96px;height:96px;box-shadow:0 0 0 3px var(--surface-card), 0 0 0 5px var(--primary-color);border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.25rem;display:flex;overflow:hidden}.onb-start-avatar img{object-fit:cover;width:100%;height:100%}.onb-step>.onb-watch,.onb-step>.onb-push{flex-direction:column;flex:1;display:flex}.onb-hero{align-self:center;margin:.5rem 0 1rem;position:relative}.onb-hero-icon{background:var(--brand-gradient);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.onb-hero-badge{width:28px;height:28px;bottom:-4px;right:-8px}.onb-body .onb-hero+.onb-title{margin-bottom:.375rem}.onb-hero-sub{text-align:center;color:var(--text-body);text-wrap:balance;max-width:20rem;margin:0 auto;font-size:.88rem;line-height:1.45}.onb-push .onb-hero,.onb-watch .onb-hero{margin-top:auto}.onb-push .onb-hero-sub{margin-bottom:auto}.onb-push .onb-foot,.onb-watch .onb-foot{margin-top:1.5rem}.onb-watch-guides{box-shadow:none;margin:1.75rem 0 auto}.onb-watch-guides-chevron.open{transform:rotate(180deg)}.onb-watch-list,.onb-watch-list>div+div{border-top:1px solid var(--border-subtle)}.onb-watch-list>div{scroll-margin-bottom:9rem}.onb-watch-list .watch-guide-item{box-shadow:none;border:none;border-radius:0}.onb-plans-trial{color:var(--text-body);margin:-.5rem 0 1rem;font-size:.82rem;line-height:1.45}.onb-plans-trial b{color:var(--text-main)}.onb-plans{padding-top:1.5rem}.onb-plans .plan-list-card{box-shadow:none}button.plan-list-head{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;padding:0}button.plan-list-head:focus:not(:focus-visible){outline:none}button.plan-list-head:focus-visible{outline:2px solid var(--primary-color);outline-offset:4px;border-radius:var(--radius-md)}.plan-list-card.is-selectable .plan-list-check.is-on{border-color:var(--primary-color);background:var(--primary-color);color:#fff}.start-checklist{margin-bottom:1rem;padding:1rem 1rem .5rem}.start-checklist-head{align-items:center;gap:.5rem;display:flex}.start-checklist-title{color:var(--text-main);font-size:1rem;font-weight:800}.start-checklist-count{color:var(--text-muted);margin-left:auto;font-size:.8rem;font-weight:600}.start-checklist-close{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin-right:-.35rem;display:flex}.start-checklist-bar{background:var(--border-color);border-radius:100px;height:5px;margin:.65rem 0 .35rem;overflow:hidden}.start-checklist-bar span{background:var(--primary-color);border-radius:100px;height:100%;transition:width .2s;display:block}.start-checklist-list{list-style:none}.start-checklist-item{color:var(--text-main);align-items:center;gap:.75rem;padding:.7rem 0;font-size:.92rem;font-weight:600;display:flex}.start-checklist-list li+li .start-checklist-item{border-top:1px solid var(--border-subtle)}.start-checklist-item.done{color:var(--text-muted);pointer-events:none}.start-checklist-item.done .start-checklist-label{text-decoration:line-through}.start-checklist-check{border:1.5px solid var(--border-color);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.start-checklist-item.done .start-checklist-check{background:var(--primary-color);border-color:var(--primary-color)}.start-checklist-label{flex:1;min-width:0}.start-checklist-progress{color:var(--primary-color);font-size:.8rem;font-weight:700}.start-checklist-chev{color:var(--text-muted);flex-shrink:0}.onb-role-options{flex-direction:column;gap:.6rem;display:flex}.onb-role-option{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);text-align:left;cursor:pointer;align-items:center;gap:.75rem;width:100%;padding:.75rem .9rem;transition:all .15s;display:flex}.onb-role-option.active{border-color:var(--primary-color);background:var(--primary-light)}.onb-role-option-text{flex:1;min-width:0}.onb-role-option-title{color:var(--text-main);font-size:.92rem;font-weight:700;display:block}.onb-role-option-desc{color:var(--text-muted);margin-top:.15rem;font-size:.78rem;line-height:1.35;display:block}.onb-role-option-check{border:1.5px solid var(--border-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.onb-role-option.active .onb-role-option-check{border-color:var(--primary-color);background:var(--primary-color);color:#fff}.onb-roles{flex-direction:column;gap:.75rem;display:flex}.onb-roles .plan-list-card{box-shadow:none}.group-notice{text-align:left;width:100%;color:inherit;align-items:center;gap:.75rem;padding:.75rem .85rem .75rem 1rem;font-family:inherit;text-decoration:none;display:flex}.group-notice-icon{background:var(--primary-light);width:30px;height:30px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.group-notice-body{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.group-notice-text{color:var(--text-main);-webkit-line-clamp:3;white-space:pre-wrap;word-break:break-word;-webkit-box-orient:vertical;font-size:.88rem;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.group-notice-empty{cursor:pointer}.group-notice-empty .group-notice-text{color:var(--text-muted)}.group-members-row{gap:.75rem}.group-members-stack .feed-partner-more-avatar{width:28px;height:28px;font-size:.68rem}.group-list{flex-direction:column;gap:.75rem;display:flex}.group-row-cover{overflow:hidden}.group-row-cover img{object-fit:cover;width:100%;height:100%}.group-invite-row{flex-direction:column;align-items:stretch;gap:.65rem}.group-invite-row .template-row-open{cursor:default}.group-invite-row .notif-request-actions{margin-top:0}.group-thread-error{margin-top:.5rem}.feed-card.group-post-card{color:inherit;text-decoration:none;display:block}.group-thread{flex-direction:column;gap:.875rem;display:flex}.card.group-post-card.is-detail{padding:0}.group-post-meta{min-width:0}.group-post-group{min-width:0;color:inherit;align-items:center;gap:.3rem;font-weight:600;text-decoration:none;display:inline-flex}.group-post-group-avatar{background:var(--primary-light);width:16px;height:16px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.group-post-group-avatar img{object-fit:cover;width:100%;height:100%}.group-post-group-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.group-post-card .feed-card-header>.feed-more{margin-left:auto}.group-post-card .feed-card-header>.group-post-badge+.feed-more{margin-left:-.35rem}.group-post-badge{background:var(--primary-light);width:30px;height:30px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:flex}.group-post-text{color:var(--text-body);white-space:pre-wrap;word-break:break-word;-webkit-line-clamp:6;-webkit-box-orient:vertical;margin:0;padding:.25rem 1rem .875rem;font-size:.9rem;line-height:1.5;display:-webkit-box;overflow:hidden}.group-post-card.is-detail .group-post-text{-webkit-line-clamp:unset;display:block}.group-post-card.is-detail .group-post-like-row{border-top:1px solid var(--border-subtle);padding:.35rem 1rem .5rem}.group-post-comments{padding:0 1rem .5rem}.group-profile-body{padding-top:0}.group-head{flex-direction:column;display:flex}.group-head-avatar{border:3px solid var(--surface-card);background:var(--brand-gradient);color:#fff;width:84px;height:84px;box-shadow:var(--shadow-card);border-radius:20px;justify-content:center;align-items:center;margin-top:-42px;font-size:1.75rem;font-weight:800;display:flex;position:relative;overflow:hidden}.group-head-avatar img{object-fit:cover;width:100%;height:100%}.group-head-name{letter-spacing:-.01em;margin:.85rem 0 .45rem;font-size:1.35rem;font-weight:800}.group-head-name.has-city{margin-bottom:.2rem}.group-head-city{color:var(--text-muted);align-items:center;gap:.25rem;margin:0 0 .45rem;font-size:.85rem;font-weight:500;display:flex}.group-head-meta{color:var(--text-body);flex-wrap:wrap;align-items:center;gap:.3rem .9rem;font-size:.84rem;font-weight:500;display:flex}.group-head-meta-item,.group-head-members{align-items:center;gap:.35rem;display:inline-flex}.group-head-members{color:var(--text-main);font-weight:700;text-decoration:none}.group-head-chevron{color:var(--text-muted);margin-left:-.15rem}.group-head-desc{color:var(--text-body);margin:.5rem 0 0;font-size:.84rem}.group-head-actions{gap:.5rem;margin-top:1rem;display:flex}.group-head-actions .btn{flex:1}.group-tabs{margin-top:1.1rem}.group-tab-panel{padding-top:1rem}.group-notice-list{flex-direction:column;gap:.5rem;display:flex}.group-notice-event{color:var(--primary-hover);font-size:.72rem;font-weight:700}.group-event-link{color:inherit;align-items:center;gap:.875rem;padding:1rem;text-decoration:none;display:flex}.group-event-body{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.group-event-title{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:800;overflow:hidden}.group-event-when{color:var(--text-body);font-size:.82rem}.group-event-count{color:var(--text-muted);font-size:.75rem;font-weight:500}.group-event-rsvp{padding:0 1rem 1rem}.group-event-list{flex-direction:column;gap:.75rem;display:flex}.gev-tile{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--surface-card);flex-direction:column;flex-shrink:0;align-items:center;width:54px;line-height:1.1;display:flex;overflow:hidden}.gev-tile-month{text-align:center;background:var(--primary-color);color:#fff;letter-spacing:.06em;align-self:stretch;padding:3px 0;font-size:.66rem;font-weight:800}.gev-tile-day{color:var(--text-main);padding-top:3px;font-size:1.35rem;font-weight:800}.gev-tile-weekday{color:var(--text-muted);padding-bottom:4px;font-size:.66rem;font-weight:600}.gev-tile.is-large{width:64px}.gev-tile.is-large .gev-tile-month{background:var(--brand-gradient)}.gev-tile.is-large .gev-tile-day{font-size:1.65rem}.gev-pill{border-radius:999px;flex-shrink:0;align-items:center;gap:.35rem;height:26px;padding:0 .6rem;font-size:.72rem;font-weight:700;display:inline-flex}.gev-pill-dot{background:currentColor;border-radius:50%;width:7px;height:7px}.gev-pill.is-open{color:#92400e;background:#fef3c7}.gev-pill.is-open .gev-pill-dot{background:#d97706}.gev-pill.is-yes{background:var(--primary-light);color:var(--primary-hover)}.gev-pill.is-yes .gev-pill-dot{background:var(--primary-color)}.gev-pill.is-no{background:var(--error-bg);color:var(--error-text)}.gev-rsvp{gap:.5rem;display:flex}.gev-rsvp-btn{border-radius:var(--radius-sm);border:1.5px solid var(--border-color);background:var(--surface-card);height:38px;color:var(--text-main);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:.35rem;font-family:inherit;font-size:.85rem;font-weight:700;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.gev-rsvp-btn.is-yes{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.gev-rsvp-btn.is-no{background:var(--error-text);border-color:var(--error-text);color:#fff}.gev-rsvp.is-large .gev-rsvp-btn{height:46px;font-size:.9rem}.group-event-hero{padding:1rem}.group-event-hero-top{align-items:center;gap:.875rem;display:flex}.group-event-hero-text{flex:1;min-width:0}.group-event-hero-title{margin:0;font-size:1.2rem;font-weight:800}.group-event-hero-group{color:var(--text-muted);margin-top:.15rem;font-size:.8rem;font-weight:600;text-decoration:none;display:block}.group-event-facts{border-top:1px solid var(--border-subtle);flex-direction:column;gap:.6rem;margin-top:1rem;padding-top:.875rem;display:flex}.group-event-fact{color:var(--text-body);align-items:center;gap:.6rem;font-size:.85rem;text-decoration:none;display:flex}.group-event-fact svg{color:var(--primary-color);flex-shrink:0}.group-event-fact strong{color:var(--text-main);font-weight:700}.group-event-fact.is-note{white-space:pre-wrap;align-items:flex-start}.group-event-bar{border-radius:999px;gap:2px;height:6px;margin-top:.875rem;display:flex;overflow:hidden}.group-event-bar .is-yes{background:var(--primary-color)}.group-event-bar .is-no{background:var(--error-text)}.group-event-bar .is-open{background:var(--surface-card)}.group-event-count-inline{color:var(--text-muted);font-weight:700}.group-remind-btn{background:var(--surface-card);box-shadow:var(--shadow-sm)}.group-remind-hint{color:var(--text-muted);margin:-.4rem 0 .5rem;font-size:.78rem}.group-rank-filters{align-items:center;gap:.75rem;display:flex}.group-rank-stack{flex-direction:column;gap:.875rem;display:flex}.group-rank-loading{justify-content:center;padding:2rem 0;display:flex}.gev-time-row{grid-template-columns:1.4fr 1fr 1fr;gap:.5rem;display:grid}.gev-venue-row{align-items:center;gap:.5rem;display:flex}.gev-venue-btn{text-align:left;cursor:pointer;flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.gev-venue-icon{color:var(--text-muted);flex-shrink:0}.gev-venue-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:600;overflow:hidden}.gev-venue-name.is-empty{color:var(--text-muted);font-weight:500}.gev-venue-clear{background:var(--bg-body);width:40px;height:40px;color:var(--text-muted);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.gev-repeat-toggle{align-self:flex-start}.gev-weekdays{justify-content:space-between;gap:.25rem;margin-top:.6rem;display:flex}.gev-weekday{border:1px solid var(--border-color);background:var(--surface-card);width:38px;height:38px;color:var(--text-body);cursor:pointer;border-radius:50%;font-family:inherit;font-size:.78rem;font-weight:700}.gev-weekday.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.gev-until{margin-top:.6rem}.gev-delete-stack{flex-direction:column;gap:.5rem;display:flex}a.comment-action{text-decoration:none}.settings-counter{text-align:right;color:var(--text-muted);margin-top:.3rem;font-size:.72rem}.settings-danger{border:1px solid var(--error-border);background:var(--error-bg);border-radius:var(--radius-md);margin-top:2rem;padding:1rem 1.1rem}.settings-danger-title{color:var(--error-text);font-size:.9rem;font-weight:800}.settings-danger-text{color:var(--text-body);margin:.35rem 0 .8rem;font-size:.8rem;line-height:1.5}.settings-danger-btn{color:#fff;background:var(--error-text);border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.45rem;min-height:40px;padding:0 1rem;font-family:inherit;font-size:.85rem;font-weight:700;transition:opacity .15s;display:inline-flex}.settings-danger-btn:hover{opacity:.9}.settings-danger-btn:disabled{opacity:.6;cursor:not-allowed}.settings-row{align-items:center;gap:.85rem;padding:1rem;text-decoration:none;display:flex}.settings-row-body{flex:1;min-width:0}.settings-row-title{color:var(--text-main);font-size:.9rem;font-weight:600}.settings-row-sub{color:var(--text-muted);margin-top:1px;font-size:.75rem}.settings-row-chevron{color:var(--text-muted);flex-shrink:0}.settings-icon-circle{background:var(--brand-gradient);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.settings-row-avatar{background:var(--brand-gradient);color:#fff;width:38px;height:38px;font-size:.9rem;font-weight:700;display:flex;position:relative}.connection-row{position:relative}.connection-row-link{flex:1;min-width:0;text-decoration:none}.connection-row-link:after{content:"";position:absolute;inset:0}.connection-btn{z-index:1;flex-shrink:0;position:relative}.connection-badge{background:var(--border-subtle);color:var(--text-muted);border-radius:100px;flex-shrink:0;justify-content:center;align-items:center;padding:.25rem .5rem;display:inline-flex}.connection-note{color:var(--text-muted);flex-shrink:0;font-size:.75rem}.settings-hint{color:var(--text-muted);font-size:.8rem;line-height:1.5}.settings-toggle{background:var(--border-strong,#cbd5e1);cursor:pointer;border:none;border-radius:13px;flex-shrink:0;width:46px;height:26px;transition:background .2s;position:relative}.settings-toggle.is-on{background:var(--primary-color)}.settings-toggle:disabled{cursor:not-allowed;opacity:.6}.settings-toggle-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:left .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.settings-toggle.is-on .settings-toggle-knob{left:23px}.empty-state-title{color:var(--text-main);margin:0;font-size:.95rem;font-weight:700}.empty-state-sub{color:var(--text-muted);max-width:34ch;margin:0;font-size:.85rem;line-height:1.45}.empty-state-icon{opacity:.3}.settings-hint-block{margin-top:1rem}.hr-zones-notice{padding:.9rem 1rem;font-size:.8rem}.hr-zones-notice-link{color:var(--primary-color);font-weight:600}.hr-zones-hfmax{margin-bottom:1rem;padding:1rem}.hr-zones-list{flex-direction:column;gap:.85rem;padding:1rem;display:flex}.hr-zone-row{align-items:center;gap:.75rem;display:flex}.hr-zone-row-body{flex:1;min-width:0}.hr-zone-row-title{font-size:.85rem;font-weight:600}.hr-zone-row-hint{color:var(--text-muted);font-weight:400}.hr-zone-row-value{color:var(--text-muted);font-size:.72rem}.hr-zone-row-input{text-align:center;width:90px}.settings-form-card{flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.settings-form-card+.settings-form-card{margin-top:1rem}.settings-page{padding-bottom:96px}.settings-page-body{padding-top:1rem}.settings-page-body-rows{flex-direction:column;gap:.75rem;padding-top:1rem;display:flex}.abo-section-title{margin-bottom:.75rem}.abo-section+.abo-section{margin-top:1.25rem}.abo-other-list{flex-direction:column;gap:.75rem;display:flex}.abo-compare-link{text-align:center;color:var(--text-body);margin-top:1rem;font-size:.85rem;font-weight:600;display:block}.abo-card{flex-direction:column;gap:.3rem;padding:1rem;display:flex}.abo-card-plan{color:var(--text-main);align-items:center;gap:.5rem;font-size:1rem;font-weight:700;display:flex}.abo-card-plan svg{color:var(--primary-color);flex-shrink:0}.abo-card-meta{color:var(--text-muted);font-size:.85rem}.abo-card-btn{margin-top:1rem}.abo-cancel-confirm{background:var(--error-bg);border-radius:var(--radius-md);border:1px solid var(--error-border);flex-direction:column;gap:.5rem;margin-top:1rem;padding:.75rem;display:flex}.abo-cancel-confirm-text{color:var(--text-muted);margin:0;font-size:.82rem;line-height:1.45}.abo-card-row{flex-direction:column;align-items:flex-start;gap:.15rem;display:flex}.abo-card-status{color:var(--text-muted);text-align:left;font-size:.8rem}.abo-card-top{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.abo-card-corner-btn{color:var(--text-muted);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-size:.82rem;font-weight:600;text-decoration:underline}.abo-card-corner-btn:hover{color:var(--text-main)}.abo-card-corner-btn:disabled{opacity:.6;cursor:default}.abo-crown-icon{background:var(--gold,#c98f2a);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.abo-crown-icon svg{color:#fff;width:12px;height:12px}.abo-coach-icon{background:var(--text-muted);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.abo-coach-icon svg{color:#fff;width:12px;height:12px}.watch-guide-tabs{margin-bottom:0}.watch-guide-intro{align-items:flex-start;gap:.85rem;padding:1rem;display:flex}.watch-guide-intro-text{color:var(--text-body);margin:0;font-size:.85rem;line-height:1.55}.watch-guide-label{margin-top:.5rem}.watch-guide-item{overflow:hidden}.watch-guide-head{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.85rem;width:100%;padding:1rem;display:flex}.watch-guide-head-text{flex:1;min-width:0}.watch-guide-head-title{color:var(--text-main);font-size:.9rem;font-weight:600;display:block}.watch-guide-head-sub{color:var(--text-muted);margin-top:1px;font-size:.75rem;display:block}.watch-guide-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.watch-guide-item.open .watch-guide-chevron{transform:rotate(180deg)}.watch-guide-body{padding:0 1rem 1rem}.watch-guide-steps{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.watch-guide-step{color:var(--text-body);align-items:flex-start;gap:.6rem;font-size:.82rem;line-height:1.5;display:flex}.watch-guide-step-num{background:var(--primary-light);width:20px;height:20px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:inline-flex}.watch-guide-note{background:var(--primary-light);border-radius:var(--radius-md);color:var(--text-body);margin:.75rem 0 0;padding:.6rem .75rem;font-size:.78rem;line-height:1.5}.watch-guide-outro{padding:1rem}.watch-guide-outro-title{color:var(--text-main);font-size:.9rem;font-weight:600;display:block}.watch-guide-outro-text{color:var(--text-muted);margin:.35rem 0 .85rem;font-size:.82rem;line-height:1.5}.watch-guide-outro-btn{align-items:center;gap:.35rem;display:inline-flex}.watch-guide-notes{flex-direction:column;gap:.6rem;margin-top:.5rem;display:flex}.report-list{flex-direction:column;gap:.75rem;display:flex}.report-card{padding:1rem}.report-card-head{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.report-card-reason{color:var(--text-muted);font-size:.78rem}.report-card-status{margin-left:auto}.report-card-date{color:var(--text-muted);font-size:.72rem}.report-card-date.has-note{margin-bottom:.6rem}.report-card-note{background:var(--primary-light);border-radius:var(--radius-md);padding:.6rem .75rem}.report-card-note-head{color:var(--primary-color);align-items:center;gap:.4rem;margin-bottom:.3rem;font-size:.72rem;font-weight:700;display:flex}.report-card-note-icon{flex-shrink:0}.report-card-note-text{color:var(--text-body);font-size:.82rem}.follow-btn{cursor:pointer;border:1.5px solid var(--primary-color);background:var(--primary-color);color:#fff;white-space:nowrap;border-radius:100px;justify-content:center;align-items:center;padding:.4rem 1.1rem;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.follow-btn.following{color:var(--text-muted);border-color:var(--border-color);background:0 0}.follow-btn.requested{color:var(--text-muted);border-color:var(--border-color);background:0 0;border-style:dashed}.follow-btn:hover{opacity:.85}.follow-btn:disabled{opacity:.6;cursor:default}.follow-btn-wrap{flex-shrink:0;display:inline-flex;position:relative}.follow-btn-wrap.is-full{flex:1}.follow-btn-wrap.is-full .follow-btn{width:100%}.follow-btn-toast{left:50%;bottom:calc(72px + env(safe-area-inset-bottom,0px));text-align:center;color:#fff;background:var(--text-main);max-width:min(90vw,22rem);box-shadow:var(--shadow-card);z-index:3000;border-radius:999px;padding:.5rem .9rem;font-size:.78rem;font-weight:600;animation:.15s fadeIn;position:fixed;transform:translate(-50%)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.25s ease-out fadeIn}.auth-page{justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}body.keyboard-open .auth-page{padding-top:max(1.5rem, env(safe-area-inset-top));padding-bottom:calc(1.5rem + var(--keyboard-height,0px));align-items:flex-start}.auth-card{background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-hover);border:1px solid var(--border-color);width:100%;max-width:420px;padding:2.5rem 2rem}.auth-logo{flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.75rem;display:flex}.auth-logo-text{color:var(--text-main);text-transform:uppercase;letter-spacing:.04em;font-size:2rem;font-weight:800}.auth-logo-slogan{color:var(--primary-color);letter-spacing:.06em;margin-top:-.35rem;font-size:.8rem;font-weight:600}.auth-title{text-align:center;margin-bottom:.375rem;font-size:1.4rem;font-weight:700}.auth-subtitle{color:var(--text-muted);text-align:center;margin-bottom:1.75rem;font-size:.875rem}.auth-title:has(+.auth-form){margin-bottom:1.75rem}.auth-card>.onb-preview-tag{margin-bottom:1rem}.auth-form{flex-direction:column;gap:1rem;display:flex}.auth-footer{text-align:center;color:var(--text-muted);margin-top:1.25rem;font-size:.875rem}.creator-offer{justify-content:center;margin:.75rem 0 1.25rem;display:flex}.creator-account{border:1px solid var(--border-subtle);border-radius:var(--radius-md);align-items:center;gap:.75rem;margin-bottom:1.25rem;padding:.875rem 1rem;display:flex}.creator-account-label{color:var(--text-muted);font-size:.72rem}.creator-account form{flex-shrink:0}.creator-account .discover-player-meta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.creator-actions{flex-direction:column;gap:.6rem;display:flex}.creator-plans{flex-direction:column;gap:.75rem;display:flex}.creator-plans .plan-list-card{box-shadow:none}.creator-plans .plan-list-price s{color:var(--text-muted);margin-left:.4rem;font-size:.8em;font-weight:500}.creator-premium-active{text-align:center;color:var(--success-text);margin:0 0 .75rem;font-size:.9rem;font-weight:600}.auth-footer a{color:var(--primary-color);font-weight:600}.auth-hint{color:var(--text-muted);justify-content:center;align-items:center;gap:.35rem;margin-top:.6rem;font-size:.8rem;display:flex}.auth-consent{color:var(--text-body);cursor:pointer;align-items:flex-start;gap:.5rem;font-size:.8rem;line-height:1.45;display:flex}.auth-consent input{width:1rem;height:1rem;accent-color:var(--primary-color);flex-shrink:0;margin-top:.15rem}.auth-consent a{color:var(--primary-color);font-weight:600}.mod-menu-item{text-align:left;width:100%;color:var(--text-body);cursor:pointer;background:0 0;border:none;align-items:center;gap:.6rem;padding:.7rem 1rem;font-size:.85rem;font-weight:500;display:flex}.mod-menu-item:hover{background:var(--border-subtle)}.mod-menu-item-danger{color:var(--error-text)}.mod-overlay{z-index:1000;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom));background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (min-width:480px){.mod-overlay{align-items:center}}.mod-dialog{border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-hover);background:#fff;padding:1.25rem}.mod-dialog-head{justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:1rem;font-weight:700;display:flex}.mod-dialog-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:.25rem;display:inline-flex}.mod-dialog-sub{color:var(--text-muted);margin-bottom:.75rem;font-size:.85rem}.mod-reasons{flex-direction:column;gap:.4rem;display:flex}.mod-reason{border-radius:var(--radius-md);border:1px solid var(--border-color);cursor:pointer;color:var(--text-body);align-items:center;gap:.6rem;padding:.65rem .75rem;font-size:.85rem;transition:border-color .15s,background .15s;display:flex}.mod-reason.active{border-color:var(--primary-color);background:var(--primary-light);color:var(--text-main)}.mod-reason input{accent-color:var(--primary-color);flex-shrink:0}.mod-dialog-done{text-align:center}.mod-dialog-check{background:var(--success-bg);width:48px;height:48px;color:var(--success-text);border-radius:50%;justify-content:center;align-items:center;margin:.5rem auto 1rem;display:flex}.mod-dialog-done p{color:var(--text-body);margin-bottom:1.25rem;font-size:.875rem}.section-header{justify-content:space-between;align-items:center;margin-bottom:.875rem;display:flex}.section-header-sub{color:var(--text-muted);font-size:.8rem}a.section-header-sub{text-underline-offset:2px;text-decoration:underline}.meinespieler-coach-premium-title{align-items:center;gap:.3rem;display:inline-flex}a.meinespieler-coach-premium-title{color:#d4a017;text-underline-offset:2px;font-weight:600;text-decoration:underline}a.meinespieler-coach-premium-title:hover{opacity:.85}.section-title{color:var(--text-body);text-transform:uppercase;letter-spacing:.05em;font-size:.9rem;font-weight:700}.activity-detail-page{max-width:var(--max-content-width);padding-bottom:calc(var(--bottom-nav-height) + 2rem);background:0 0;flex-direction:column;min-height:100vh;margin:0 auto;display:flex}.activity-detail-hero{z-index:1;flex-shrink:0;width:100%;height:300px;transition:height .42s cubic-bezier(.22,1,.36,1);position:relative;overflow:hidden}.activity-detail-hero .expandable-map-hint{bottom:30px}.activity-detail-hero.is-expanded{height:calc(100dvh - var(--header-height) - env(safe-area-inset-top) - var(--bottom-nav-height) - env(safe-area-inset-bottom) - var(--sheet-peek))}.activity-detail-hero.is-dragging{transition:none}@media (prefers-reduced-motion:reduce){.activity-detail-hero{transition:none}}.activity-detail-hero-tap{cursor:pointer;background:0 0;border:none;width:100%;height:100%;padding:0;display:block;position:relative}.activity-detail-hero-live{opacity:0;transition:opacity .5s;position:absolute;inset:0}.activity-detail-hero-live.is-visible{opacity:1}.activity-detail-hero-canvas{width:100%;height:100%}@media (prefers-reduced-motion:reduce){.activity-detail-hero-live{transition:none}}.activity-detail-hero-iframe{transform-origin:50%;border:none;width:100%;height:100%;display:block;transform:scale(1.04)}.activity-detail-hero-map{width:100%;height:100%;position:relative}.activity-detail-hero-img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.activity-detail-hero-map .feed-carousel-map-label{inset:20px auto auto 50%;transform:translate(-50%)}.activity-detail-hero-nomap{background:var(--brand-gradient-soft);width:100%;height:100%}.photo-carousel{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:relative;overflow:hidden}.activity-detail-photo-strip{scroll-snap-type:none;-webkit-overflow-scrolling:touch;scrollbar-width:none;-webkit-user-select:none;user-select:none;background:0 0;gap:8px;width:100%;height:100%;padding:8px 12px 28px 0;display:flex;overflow:auto hidden;container-type:inline-size}.activity-detail-photo-strip::-webkit-scrollbar{display:none}.activity-detail-photo-card{aspect-ratio:3/4;border-radius:14px;flex:none;height:100%;overflow:hidden}.activity-detail-photo-card.activity-detail-video-card{aspect-ratio:1}.activity-detail-photo-card.is-landscape{aspect-ratio:auto;flex-basis:calc(100cqw - 20px)}.activity-detail-photo-card img{object-fit:cover;object-position:center center;cursor:zoom-in;width:100%;height:100%;display:block}.activity-detail-video-card{background:var(--brand-gradient-soft);cursor:pointer;position:relative}.activity-detail-video-card video,.activity-detail-video-card .activity-detail-video-poster{object-fit:cover;object-position:center center;cursor:pointer;background:0 0;width:100%;height:100%;display:block;position:absolute;inset:0}.activity-detail-video-card .activity-detail-video-poster{z-index:1}.activity-detail-video-badge{pointer-events:none;z-index:2;color:#fff;cursor:pointer;background:#00000073;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.photo-carousel-img{object-fit:cover;width:100%;height:100%;display:block}.photo-carousel-dots{z-index:2;gap:5px;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.photo-carousel-dot{cursor:pointer;background:#ffffff80;border:none;border-radius:50%;width:6px;height:6px;padding:0;transition:background .15s}.photo-carousel-dot.active{background:#fff}.photo-carousel-map-label{color:#ffffffd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2;background:#0000004d;border-radius:100px;align-items:center;gap:4px;padding:2px 7px;font-size:.7rem;display:flex;position:absolute;bottom:10px;right:12px}.activity-detail-body{background:var(--surface-card);z-index:2;flex-direction:column;flex:1;gap:0;padding:1.5rem 1.25rem 2rem;display:flex;position:relative}.activity-detail-hero+.activity-detail-body,.activity-detail-hero+.activity-detail-sheet>.activity-detail-body{border-radius:20px 20px 0 0;margin-top:-20px;box-shadow:0 -6px 32px #0000001a}.activity-detail-sheet{flex-direction:column;flex:1;display:flex;position:relative}.activity-detail-sheet.is-expanded,.activity-detail-sheet.is-dragging{touch-action:none}.detail-sheet-grip{cursor:grab;z-index:3;background:0 0;border:none;justify-content:center;align-items:center;height:34px;display:flex;position:absolute;top:-20px;left:0;right:0}.detail-sheet-grip span{background:var(--border-color);border-radius:999px;width:40px;height:4px}.activity-detail-author-row{align-items:center;gap:.875rem;margin-bottom:1.25rem;display:flex}.activity-detail-avatar{background:var(--brand-gradient);color:#fff;width:46px;height:46px;font-size:1rem;font-weight:700;text-decoration:none;display:flex}.activity-detail-author-meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.activity-detail-author-name{color:var(--text-main);font-size:.95rem;font-weight:700;line-height:1.2;text-decoration:none}.activity-detail-author-name:hover{color:var(--primary-color)}.activity-detail-headline{color:var(--text-main);letter-spacing:-.03em;text-transform:uppercase;margin-bottom:.5rem;font-size:1.6rem;font-weight:800;line-height:1.15}.activity-detail-notes{color:var(--text-body);margin-bottom:1.5rem;font-size:.9rem;line-height:1.6}.activity-detail-stats-row{border:1px solid var(--border-color);border-radius:var(--radius-md);margin:1.25rem 0 0;overflow:hidden}.activity-detail-stats-tiles{background:var(--surface-card);grid-template-columns:repeat(2,1fr);display:grid}.activity-detail-stats-tiles .feed-stat-block{padding:.75rem .5rem;position:relative}.activity-detail-stats-tiles .feed-stat-block:nth-child(odd):not(:last-child){border-right:1px solid var(--border-color)}.activity-detail-stats-tiles .feed-stat-block:not(:last-child):not(:nth-last-child(2)){border-bottom:1px solid var(--border-color)}.activity-detail-stats-tiles .feed-stat-block:last-child:nth-child(odd){border-top:1px solid var(--border-color);grid-column:1/-1}.activity-detail-sep{background:var(--border-subtle);height:1px;margin:1.375rem 0}.activity-detail-meta-row{align-items:center;gap:1rem;margin-bottom:.875rem;padding:.25rem 0;display:flex}.activity-detail-meta-row:last-of-type{margin-bottom:0}.activity-detail-meta-icon{flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.25rem;display:flex}.activity-detail-meta-content{flex-direction:column;gap:2px;display:flex}.activity-detail-meta-primary{color:var(--text-main);font-size:.95rem;font-weight:600}.activity-detail-meta-secondary{color:var(--text-muted);font-size:.78rem}.activity-detail-material{border-radius:var(--radius-lg);background:var(--brand-gradient-soft);border:1px solid var(--border-subtle);align-items:center;gap:.9rem;margin-bottom:.875rem;padding:.85rem 1rem;display:flex}.activity-detail-material-bat{flex-shrink:0;width:38px;height:50px}.activity-detail-material-body{flex-direction:column;flex:1;gap:.35rem;min-width:0;display:flex}.activity-detail-material-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.1rem;font-size:.9rem;font-weight:700;overflow:hidden}.activity-detail-material-specs{flex-direction:column;gap:.3rem;min-width:0;margin:0;padding:0;list-style:none;display:flex}.activity-detail-material-row{align-items:center;gap:.5rem;min-width:0;display:flex}.activity-detail-material-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;box-shadow:inset 0 0 0 1px #0000001f}.activity-detail-material-label{letter-spacing:.03em;text-transform:uppercase;width:28px;color:var(--text-muted);flex-shrink:0;font-size:.62rem;font-weight:800}.activity-detail-material-val{min-width:0;color:var(--text-body);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.82rem;overflow:hidden}.ads-wrap{flex-direction:column;gap:0;display:flex}.ads-like-row{align-items:center;gap:.75rem;padding:.25rem 0 .5rem;display:flex}.ads-like-summary{text-align:left;min-width:0;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:none;flex:1;padding:0;font-size:.8rem;font-weight:600;overflow:hidden}.ads-like-summary:active{color:var(--primary-color)}.ads-like-summary-link{text-underline-offset:2px;text-decoration:underline}.ads-like-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:.375rem 0;font-size:.875rem;font-weight:600;transition:color .15s;display:flex}.ads-like-btn:hover{color:var(--text-main)}.ads-like-btn.liked{color:#e11d48}.ads-comment-count{color:var(--text-muted);align-items:center;gap:.4rem;font-size:.875rem;font-weight:600;display:flex}.comment-wrap{border-top:1px solid var(--border-subtle);padding:.75rem 0 .25rem}.card.comment-wrap{border-top:none;padding:.85rem 1rem}.comment-input-row{align-items:center;gap:.5rem;display:flex}.comment-input-avatar{width:36px;height:36px;font-size:.82rem}body.keyboard-open .comment-wrap{padding-bottom:var(--keyboard-height,0px)}body.keyboard-open .live-picker{padding-bottom:calc(var(--keyboard-height,0px) + 1.25rem)}.comment-list{flex-direction:column;gap:.875rem;margin-top:1rem;display:flex}.comment-item{align-items:flex-start;gap:.625rem;display:flex}.comment-avatar{background:var(--brand-gradient);color:#fff;width:32px;height:32px;font-size:.78rem;font-weight:700;text-decoration:none;display:flex}.comment-main{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.comment-body{flex-direction:column;flex:1;gap:1px;min-width:0;font-size:.85rem;line-height:1.4;display:flex}.comment-name{color:var(--text-main);font-weight:700;text-decoration:none}.comment-name:hover{color:var(--primary-color)}.comment-reason-badge{letter-spacing:.03em;text-transform:uppercase;color:#e11d48;vertical-align:middle;background:#e11d481a;border-radius:999px;margin-left:.4rem;padding:.1rem .45rem;font-size:.65rem;font-weight:800;display:inline-block}.comment-text{color:var(--text-body);word-break:break-word;white-space:pre-wrap}.comment-text-row{flex-wrap:wrap;align-items:baseline;gap:0 .5rem;margin:0;display:flex}.comment-text-row .comment-text{flex:1;min-width:60%}.comment-text-row .comment-time{margin-left:auto}.comment-mention{color:var(--primary-color);font-weight:600}.comment-mention-input{padding:.5rem .75rem;font-size:.85rem}.comment-input-row-grow{align-items:flex-end}textarea.comment-mention-input{resize:none;min-height:0;max-height:120px;line-height:1.4;overflow-y:auto}.comment-replies-more{cursor:pointer;color:var(--text-muted);background:0 0;border:none;margin-bottom:.15rem;padding:.1rem 0;font-family:inherit;font-size:.75rem;display:block}.comment-time{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:.68rem}.comment-actions{align-items:center;gap:.9rem;margin-top:.1rem;display:flex}.comment-action{cursor:pointer;color:var(--text-muted);background:0 0;border:none;align-items:center;gap:.25rem;padding:0;font-family:inherit;font-size:.72rem;font-weight:600;transition:color .15s;display:inline-flex}@media (hover:hover){.comment-action:hover:not(:disabled):not(.liked){color:var(--text-body)}}.comment-action.liked{color:#e11d48}.comment-action:disabled{cursor:default;opacity:.6}.comment-thread{flex-direction:column;display:flex}.comment-replies{flex-direction:column;gap:.75rem;margin:.75rem 0 0 2.4rem;display:flex}.comment-item-reply .comment-avatar,.comment-item-reply-avatar{width:26px;height:26px;font-size:.68rem}.comment-reply-form{align-items:center;gap:.5rem;margin:.6rem 0 0 2.4rem;display:flex}.log-page{max-width:var(--max-content-width);padding-bottom:calc(var(--bottom-nav-height) + 2rem);margin:0 auto}.log-form{flex-direction:column;gap:0;padding:.5rem 1rem 1.25rem;display:flex}.log-form-tournament-order .log-section-fotos{order:2}.log-form-tournament-order .log-section-matches,.log-form-tournament-order .log-section-club,.log-form-tournament-order .log-section-team-score{order:3}.log-form-tournament-order .log-section-placement{order:4}.log-form-tournament-order .log-section-details{order:5}.log-form-tournament-order .log-section-persons{order:6}.log-form-tournament-order .log-section-material{order:7}.log-form-tournament-order .log-form-tail{order:10}.log-section{margin-bottom:1.5rem}.log-head-section{flex-direction:column;gap:.875rem;display:flex}.log-section-label{color:var(--text-main);letter-spacing:-.01em;align-items:center;gap:.5rem;margin-bottom:.6rem;font-size:.8rem;font-weight:800;display:flex}.log-section-label:before{content:"";background:var(--brand-gradient);border-radius:2px;flex-shrink:0;width:3px;height:1rem}.log-card{background:var(--surface-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-card);overflow:hidden}.log-card-notes{overflow:visible}.log-field{flex-direction:column;gap:.375rem;padding:.875rem 1rem;display:flex}.log-field-row{grid-template-columns:1fr 1fr;display:grid}.log-field-row .log-field{border-right:1px solid var(--border-subtle)}.log-field-row .log-field:last-child{border-right:none}.log-divider{background:var(--border-subtle);height:1px}.log-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:600}.log-label-row{justify-content:space-between;align-items:center;display:flex}.log-live-check{color:#e11d48;text-transform:none;letter-spacing:normal;align-items:center;gap:.3rem;font-size:.72rem;font-weight:700;display:inline-flex}.log-live-check input[type=checkbox]{accent-color:#e11d48;width:15px;height:15px}.log-card .form-input:disabled{opacity:.4}.log-venue-nearby{margin-top:.625rem;margin-bottom:0}.log-venue-hint{color:var(--text-muted);margin:.5rem 0 0;font-size:.72rem;line-height:1.4}.log-venue-hint-btn{font-size:inherit;color:var(--primary-color);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline;display:inline}.log-venue-hint-btn:disabled{opacity:.6;cursor:wait}.log-card .form-input{box-shadow:none;background:0 0;border:none;border-radius:0;padding:0;font-size:.95rem;font-weight:500}.log-card .form-input:focus{box-shadow:none;outline:none}.log-card textarea.form-input{resize:none;min-height:unset}.log-card input.log-headline-input{font-size:1.05rem;font-weight:700}.log-card input.log-headline-input::placeholder{font-weight:600}.log-device-row{grid-template-columns:1fr 1fr;gap:.625rem;display:grid}.log-device-btn{border-radius:var(--radius-md);border:1.5px solid var(--border-color);background:var(--surface-card);color:var(--text-muted);cursor:pointer;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:.5rem;padding:.875rem 1rem;font-size:.875rem;font-weight:600;transition:all .15s;display:flex}.log-device-btn.active{border-color:var(--primary-color);background:var(--primary-light);color:var(--primary-color);box-shadow:0 0 0 3px #0596691f}.log-device-btn:hover:not(.active){background:var(--border-subtle)}.log-visibility-row{grid-template-columns:1fr 1fr;gap:.625rem;display:grid}.log-visibility-btn{border-radius:var(--radius-md);border:1.5px solid var(--border-color);background:var(--surface-card);color:var(--text-muted);cursor:pointer;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:.5rem;padding:.875rem 1rem;font-size:.875rem;font-weight:600;transition:all .15s;display:flex}.log-visibility-btn.active{border-color:var(--primary-color);background:var(--primary-light);color:var(--primary-color);box-shadow:0 0 0 3px #0596691f}.log-visibility-btn:hover:not(.active){background:var(--border-subtle)}.log-visibility-groups{width:100%;margin-top:.625rem}.group-visibility-list{max-height:50vh;overflow-y:auto}@keyframes matSelectIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.log-racket-new-actions{border-top:1px solid var(--border-subtle);justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;display:flex}.racket-error{margin:.75rem 1rem 0}.racket-empty{color:var(--text-muted);text-align:left;padding:1rem;font-size:.9rem}.racket-error.is-embedded{margin:0 0 .75rem}.racket-empty.is-embedded{padding:.35rem 0}.racket-empty.is-loading{align-items:center;gap:.5rem;display:flex}.racket-list{flex-direction:column;gap:.6rem;display:flex}.racket-set-card{border-radius:var(--radius-lg);background:var(--surface-card);border:1px solid var(--border-color);width:100%;box-shadow:var(--shadow-sm);cursor:pointer;text-align:left;align-items:center;gap:.9rem;padding:.85rem 1rem;transition:border-color .15s,box-shadow .15s;display:flex}.racket-set-card:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}@media (hover:hover){.racket-set-card:hover{border-color:var(--text-muted);box-shadow:var(--shadow-card)}}.racket-set-card--static{cursor:default}@media (hover:hover){.racket-set-card--static:hover{border-color:var(--border-color);box-shadow:var(--shadow-sm)}}.racket-set-card.is-active{background:linear-gradient(var(--surface-card), var(--surface-card)) padding-box, var(--brand-gradient) border-box;border-color:#0000;box-shadow:0 8px 24px #05966929}.racket-set-trail{flex-shrink:0;align-items:center;display:flex}.badge-info-backdrop.is-sheet{align-items:flex-end;padding:0;transition:padding-bottom .2s}body.keyboard-open .badge-info-backdrop.is-sheet{padding-bottom:var(--keyboard-height,0px)}.racket-sheet{background:var(--surface-card);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-width:480px;max-height:100%;box-shadow:var(--shadow-hover);flex-direction:column;margin:0 auto;animation:.24s cubic-bezier(.22,1,.36,1) badge-info-pop;display:flex}.racket-sheet-head{flex-shrink:0;padding:1rem 1.15rem .75rem}.racket-sheet-body{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-direction:column;flex:auto;gap:.875rem;min-height:0;padding:.25rem 1.15rem 1rem;scroll-padding-bottom:1.25rem;display:flex;overflow-y:auto}.racket-sheet-body::-webkit-scrollbar{display:none}.racket-sheet-foot{padding:.75rem 1.15rem calc(.75rem + env(safe-area-inset-bottom));border-top:1px solid var(--border-subtle);background:var(--surface-card);flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem;display:flex}body.keyboard-open .racket-sheet-foot{padding-bottom:.75rem}.venue-suggest{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-subtle,#00000005);margin-bottom:.75rem;padding:.6rem;position:relative}.venue-suggest-dismiss{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:.35rem;right:.35rem}.venue-suggest-dismiss:hover{color:var(--text-main);background:#0000000d}.log-sticky-cta{left:0;right:0;bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));z-index:40;background:linear-gradient(to top, var(--bg-body) 70%, transparent);padding:.6rem 1rem;animation:.15s ease-out log-sticky-in;position:fixed}@keyframes log-sticky-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.venue-suggest-title{margin:0 0 .4rem;padding-right:1.75rem;font-size:.8rem;font-weight:700}.venue-suggest-row{border-radius:var(--radius-sm);cursor:pointer;text-align:left;width:100%;color:var(--text-main);background:0 0;border:none;align-items:center;gap:.45rem;padding:.45rem .4rem;display:flex}.venue-suggest-row:hover{background:#05966912}.venue-suggest-row:disabled{opacity:.6;cursor:default}.venue-suggest-row svg{color:var(--primary-color);flex:none}.venue-suggest-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.85rem;font-weight:600;overflow:hidden}.venue-suggest-meta{color:var(--text-muted);flex:none;font-size:.72rem}.venue-suggest-hint{color:var(--text-muted);margin:.35rem 0 0;font-size:.72rem}.venue-detail-head{flex-direction:column;gap:.75rem;padding:1rem;display:flex}.venue-detail-ident{align-items:flex-start;gap:.75rem;min-width:0;display:flex}.venue-detail-name-wrap{flex:1;min-width:0}.venue-detail-pin{background:var(--brand-gradient);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.venue-detail-name{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1.15rem;font-weight:800;line-height:1.2;overflow:hidden}.venue-detail-address{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin:.15rem 0 0;font-size:.82rem;overflow:hidden}.venue-detail-head-map{aspect-ratio:2;border-radius:var(--radius-md);background:var(--border-subtle);position:relative;overflow:hidden}.venue-detail-head-map .expandable-map{position:absolute;inset:0}.venue-detail-head-map .expandable-map-trigger{height:100%}.venue-detail-head-map img{object-fit:cover;width:100%;height:100%;display:block}.venue-detail-head-map.is-empty{aspect-ratio:auto;background:var(--bg-body);color:var(--text-muted);align-items:center;gap:.5rem;padding:.75rem;font-size:.8rem;display:flex}.venue-detail-head-map.is-empty svg{opacity:.6;flex-shrink:0}.venue-king-empty{color:var(--text-muted);margin:.25rem 0 0;font-size:.85rem}.venue-king-section{flex-direction:column;gap:.6rem;display:flex}.venue-king-section>.leaderboard-head{margin-bottom:0}.venue-add-card .racket-form{background:0 0;border-top:none}.search-field{border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-muted);background:#fff;align-items:center;gap:.5rem;margin-top:.6rem;margin-bottom:.6rem;padding:.5rem .75rem;transition:border-color .15s;display:flex}.search-field:focus-within{border-color:var(--primary-color)}.search-field-input{min-width:0;color:var(--text-main);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:.9rem}.search-field-spin{color:var(--primary-color);animation:.8s linear infinite spin}.search-field-flush{margin-top:0;margin-bottom:0}.dm-start-sheet{max-height:88dvh}.dm-start-head{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:.5rem;padding-bottom:.75rem;display:flex}.dm-start-search{flex-shrink:0;padding:.75rem 1.15rem}.dm-start-body{gap:.15rem;padding-top:0}.dm-start-body .discover-player-row{border-bottom:none;padding:.55rem 0}.dm-start-loading{min-height:48px;color:var(--primary-color);justify-content:center;align-items:center;display:flex}.venue-results-fill{min-height:calc(100dvh - var(--header-height) - var(--bottom-nav-height) - env(safe-area-inset-bottom))}.venue-list{flex-direction:column;gap:.5rem;display:flex}.venue-row{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-card);align-items:stretch;gap:.25rem;display:flex;overflow:hidden}.venue-row-main{min-width:0;color:inherit;flex:1;align-items:center;gap:.6rem;padding:.65rem .75rem;text-decoration:none;display:flex}.venue-row-main:hover{background:#0596690a}.venue-row-pin{width:32px;height:32px;color:var(--primary-color);background:#0596691a;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.venue-logo{border:1px solid var(--border-subtle);background:#fff;border-radius:50%;padding:2px;overflow:hidden}.venue-logo img{object-fit:contain;width:100%;height:100%}.venue-suggest-logo{width:22px;height:22px;color:var(--primary-color);flex:none;justify-content:center;align-items:center;display:flex}.venue-suggest-logo.venue-logo{padding:1px}.hall-rank-logo{flex:none;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.venue-row-text{flex-direction:column;flex:1;min-width:0;display:flex}.venue-row-name{color:var(--text-main);flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.88rem;font-weight:600;display:flex}.venue-row-address{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;overflow:hidden}.venue-row-chev{color:var(--text-muted);flex:none}.venue-row-sport-icon{color:var(--text-muted);flex-shrink:0}.coach-stats-koh{color:var(--medal-1);flex-shrink:0;align-items:center;gap:.25rem;font-size:.8rem;font-weight:800;display:flex}.venue-row-add{color:var(--primary-color);flex:none}.venue-row-star{border:none;border-left:1px solid var(--border-subtle);width:40px;color:var(--text-muted);cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;display:flex}.venue-row-star.on{color:#d4a017}.venue-row-star:hover{background:#0596690f}.venue-list.cards{gap:.6rem}.venue-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-card);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;overflow:hidden}.venue-card>.venue-row{background:0 0;border:none;border-radius:0}.venue-card.is-selected{border-color:var(--primary-color);box-shadow:0 0 0 1px var(--primary-color)}.venue-card-btn{border:1px solid var(--border-subtle);background:var(--surface-card);color:var(--text-muted);cursor:pointer;border-radius:999px;align-items:center;gap:.25rem;padding:.2rem .6rem;font-size:.72rem;font-weight:700;transition:color .15s,border-color .15s;display:inline-flex}.venue-card-btn:hover{color:var(--primary-color);border-color:var(--primary-color)}.venue-tabs{margin-bottom:1rem}.venue-row-badge{color:var(--primary-color);background:#0596691f;border-radius:999px;flex-shrink:0;align-items:center;gap:.2rem;padding:.1rem .4rem;font-size:.6rem;font-weight:700;display:inline-flex}.venue-row-badge-pending{background:var(--gold-tint);color:#a67c00}.venue-filter-row{align-items:center;gap:.5rem;margin:.6rem 0;display:flex}.venue-filter-row .live-picker-filter{flex:1;min-width:0}.venue-filter-row .venue-view-toggle{margin-left:auto}.venue-filter-row .venue-tab-toggle{margin-left:0}.venue-filter-icon-btn{border:1px solid var(--border-subtle);background:var(--surface-card);width:34px;height:34px;color:var(--text-muted);cursor:pointer;border-radius:999px;flex:none;justify-content:center;align-items:center;display:flex}.venue-filter-icon-btn:active{background:var(--primary-light);color:var(--primary-color)}.venue-search-input.search-field{flex:1;min-width:0;margin:0}.venue-view-toggle{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:999px;flex-shrink:0;padding:3px;display:flex}.venue-view-toggle-btn{width:34px;height:34px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.venue-view-toggle-btn.active{background:var(--primary-light);color:var(--primary-color)}.venue-tab-toggle-btn{width:auto;padding:0 .85rem;font-family:inherit;font-size:.82rem;font-weight:700}.venue-map-wrap{position:relative}.venue-map{border-radius:var(--radius-lg);background:var(--bg-body);height:360px;overflow:hidden}.venue-map-loading{z-index:1000;width:30px;height:30px;box-shadow:var(--shadow-card);color:var(--primary-color);background:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:10px;left:10px}.venue-map-search-here{z-index:1000;color:var(--primary-color);box-shadow:var(--shadow-card);cursor:pointer;background:#fff;border:none;border-radius:999px;align-items:center;gap:.4rem;padding:.5rem .95rem;font-family:inherit;font-size:.8rem;font-weight:700;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.venue-map-search-here:active{background:var(--primary-light)}.venue-map-pin,.venue-map-user-dot,.venue-map-cluster-wrap{background:0 0;border:none}.leaflet-tooltip.venue-map-label{color:var(--text-main,#1a1a1a);white-space:nowrap;pointer-events:none;background:#fffffff2;border:none;border-radius:999px;padding:2px 8px;font-size:.68rem;font-weight:700;box-shadow:0 1px 4px #00000040}.leaflet-tooltip.venue-map-label:before{display:none}.venue-map-user-dot-core{background:#0369a1;border:3px solid #fff;border-radius:50%;width:14px;height:14px;display:block;box-shadow:0 1px 4px #0369a180}.venue-map-cluster{background:var(--primary-color);width:100%;height:100%;box-shadow:var(--shadow-card);color:#fff;border:3px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-size:.8rem;font-weight:800;display:flex}.venue-map-popup-wrap .leaflet-popup-content-wrapper{border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:0}.venue-map-popup-wrap .leaflet-popup-content{margin:0;width:auto!important}.venue-map-popup-wrap .leaflet-popup-tip{box-shadow:var(--shadow-card)}.venue-map-popup{align-items:stretch;display:flex}.venue-map-popup-row{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;max-width:220px;padding:.6rem .75rem;display:flex}.venue-map-popup-text{flex-direction:column;min-width:0;display:flex}.venue-map-popup-name{color:var(--text-main);flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.85rem;font-weight:600;display:flex}.venue-map-popup-address{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.venue-map-popup-star{border-left:1px solid var(--border-subtle);flex:none;width:40px}.venue-map-popup-add{color:var(--primary-color);flex:none}.admin-venue-logo{width:40px;height:40px;color:var(--primary-color);background:#0596691a;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.admin-venue-logo-row{align-items:center;gap:.75rem;margin-top:.6rem;display:flex}.admin-venue-created{border-radius:var(--radius-md);background:var(--success-bg);color:var(--success-text);align-items:center;gap:.5rem;padding:.6rem .75rem;font-size:.875rem;font-weight:600;display:flex}.admin-venue-created-link{color:inherit;margin-left:auto;text-decoration:underline}.admin-exercise-list{flex-direction:column;gap:.875rem;margin-top:1.25rem;display:flex}.admin-exercise-card{flex-direction:column;gap:.75rem;padding:1rem;display:flex}.admin-exercise-head{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.admin-exercise-meta{flex-direction:column;min-width:0;display:flex}.admin-exercise-name{color:var(--text-main);font-size:.95rem;font-weight:700}.admin-exercise-author{color:var(--text-muted);font-size:.76rem}.admin-exercise-desc{color:var(--text-body);margin:0;font-size:.82rem;line-height:1.5}.admin-exercise-actions{flex-wrap:wrap;gap:.5rem;display:flex}.admin-list{flex-direction:column;gap:.875rem;display:flex}.admin-creator-row{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:.6rem;padding-top:.75rem;display:flex}.admin-creator-name{color:var(--text-main);font-size:.9rem;font-weight:600}.admin-creator-figures{flex-direction:column;align-items:flex-end;display:flex}.admin-creator-count{color:var(--text-main);font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:700}.admin-creator-card{padding:1rem}.admin-creator-card>summary{cursor:pointer;list-style:none}.admin-creator-months{flex-direction:column;gap:.75rem;margin-top:.75rem;display:flex}.admin-creator-title-row{align-items:center;gap:.4rem;min-width:0;display:flex}.admin-creator-card .admin-exercise-meta{flex:1}.admin-creator-card .admin-exercise-name,.admin-creator-card .admin-exercise-meta>.admin-exercise-author{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.creator-link-row{border:1px solid var(--border-subtle);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:.6rem;padding:.4rem .4rem .4rem .75rem;display:flex}.creator-link-url{min-width:0;color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.85rem;font-weight:600;overflow:hidden}.creator-pick{text-align:left;cursor:pointer;width:100%;color:var(--text-main);font-family:inherit}.creator-date{appearance:none;min-height:44px}.creator-form-error{flex:1;min-width:0;padding:.4rem .6rem;font-size:.8rem}.page-container.admin-wide{max-width:1200px}.admin-pay-warning{margin-bottom:1rem}.admin-pay-filters{flex-wrap:wrap;align-items:flex-end;gap:.6rem;margin-bottom:1.25rem;display:flex}.admin-pay-search{max-width:28rem;margin-bottom:.75rem}.admin-pay-filter{flex-direction:column;flex:9.5rem;gap:.3rem;max-width:12rem;display:flex}.admin-pay-filter-wide{max-width:18rem}.admin-pay-filter .form-label{margin:0}.admin-pay-filters .form-input,.admin-pay-export{height:2.75rem;padding-block:0}.admin-pay-export{margin-left:auto;padding-inline:1rem}.admin-pay-kpis{margin-bottom:1.25rem}@media (min-width:900px){.admin-pay-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:58rem;font-size:.85rem}.admin-table th{text-align:left;white-space:nowrap;letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-subtle);padding:.7rem 1rem;font-size:.7rem;font-weight:600}.admin-table td{vertical-align:top;color:var(--text-main);border-bottom:1px solid var(--border-subtle);padding:.7rem 1rem}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover td{background:var(--bg-body)}.admin-table tfoot td{border-top:1px solid var(--border-color);border-bottom:none;font-weight:700}.admin-table .is-wrap{overflow-wrap:anywhere;max-width:16rem}.admin-table .is-strong{font-weight:600}.admin-table .is-muted{color:var(--text-body)}.admin-table .admin-table-sub{font-weight:400}.admin-table .admin-status-pill{white-space:nowrap;padding:.15rem .55rem;font-size:.68rem;line-height:1.4;display:inline-block}.admin-table .is-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.admin-table .is-nowrap{white-space:nowrap}.admin-table-sub{color:var(--text-muted);font-size:.75rem;display:block}.admin-table-link{color:var(--primary-color);align-items:center;gap:.25rem;font-weight:600;display:inline-flex}.creator-pick.is-empty{color:var(--text-muted)}.admin-creator-card>summary::-webkit-details-marker{display:none}.admin-creator-head-right{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.admin-creator-chev{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.admin-creator-card[open] .admin-creator-chev{transform:rotate(180deg)}.admin-status-pill{letter-spacing:.03em;text-transform:uppercase;border-radius:999px;flex-shrink:0;padding:.12rem .45rem;font-size:.58rem;font-weight:700}.admin-status-pill.active{background:var(--primary-light);color:var(--primary-color)}.admin-status-pill.hidden{background:var(--border-subtle);color:var(--text-muted)}.admin-status-pill.merged{background:var(--error-bg);color:var(--error-text)}.admin-status-pill.open{background:var(--primary-light);color:var(--primary-color)}.admin-status-pill.neutral{background:var(--border-subtle);color:var(--text-muted)}.venue-edit-panel{background:var(--bg-body);flex-direction:column;gap:.7rem;padding:1rem;display:flex}.venue-edit-row{gap:.6rem;display:flex}.venue-edit-row>.form-group{flex:1}.venue-edit-row>.venue-edit-col-wide{flex:2}.address-ac{position:relative}.equipment-dropdown .venue-suggest-row{align-items:flex-start}.equipment-dropdown .venue-suggest-name{white-space:normal;line-height:1.35;overflow:visible}.equipment-dropdown .venue-suggest-meta{padding-top:.1rem}.address-ac-field{position:relative}.address-ac-field .form-input{padding-right:2.2rem}.address-ac-field.has-locate .form-input.has-left-icon{padding-left:2.2rem}.address-ac-locate{width:18px;height:18px;color:var(--primary-color);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:50%;left:.65rem;transform:translateY(-50%)}.address-ac-locate:disabled{opacity:.6;cursor:default}.address-ac-spinner{width:15px;height:15px;position:absolute;top:50%;right:.7rem;transform:translateY(-50%)}.address-ac-check{color:var(--primary-color);position:absolute;top:50%;right:.7rem;transform:translateY(-50%)}.address-ac-dropdown{z-index:20;background:var(--surface-card);box-shadow:var(--shadow-card);max-height:15rem;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow-y:auto}.address-ac-dropdown.is-up{top:auto;bottom:calc(100% + .25rem)}.address-ac-dropdown.is-portal{z-index:1100;position:fixed}.admin-filter-row{gap:.5rem;margin-bottom:1.25rem;display:flex}.admin-report{padding:1rem}.admin-report.resolved{opacity:.6}.admin-report-badges{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.6rem;display:flex}.admin-status-pill svg{vertical-align:-1px;margin-right:2px}.admin-report-status{color:var(--text-muted);margin-left:auto;font-size:.72rem}.admin-report-preview{color:var(--text-main);white-space:pre-wrap;margin:0 0 .6rem;font-size:.9rem}.admin-report-preview.deleted{color:var(--text-muted);font-size:.85rem;font-style:italic}.admin-report-detail{color:var(--text-muted);margin:0 0 .6rem;font-size:.78rem}.admin-report-meta{color:var(--text-muted);margin-bottom:.75rem;font-size:.72rem}.admin-report-actions{flex-wrap:wrap;gap:.4rem;display:flex}.admin-btn-danger{color:var(--error-text)}.admin-report-note{border-top:1px solid var(--border-subtle);margin-top:.75rem;padding-top:.75rem}.admin-report-note-label{color:var(--text-muted);font-size:.72rem;font-weight:600}.admin-report-note-saved{color:var(--success-text)}.admin-report-textarea{resize:vertical;margin-top:.35rem;font-size:.82rem}.location-row{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:.6rem;width:100%;padding:.55rem 0;font-family:inherit;display:flex}.location-row-left{align-items:center;gap:.5rem;min-width:0;display:flex}.location-row-icon{color:var(--primary-color);flex-shrink:0}.location-row-spin{color:var(--primary-color);flex-shrink:0;animation:.9s linear infinite location-spin}@keyframes location-spin{to{transform:rotate(360deg)}}.location-row-text{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;overflow:hidden}.location-row-chev{color:var(--text-muted);flex-shrink:0}.location-row-input{align-items:center;gap:.5rem;display:flex}.location-row-input .location-row-icon{flex-shrink:0}.location-row-input .form-input{flex:1}.location-row-change{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.location-row-change:hover{color:var(--primary-color);background:#0596690f}.location-panel{flex-direction:column;gap:.6rem;display:flex}.location-opt{text-align:left;min-height:3.5rem;font:inherit;cursor:pointer;box-shadow:var(--shadow-sm);align-items:center;gap:.65rem;padding:.85rem .9rem}.location-opt.active{border-color:var(--primary-color);background:var(--primary-light)}.location-opt-check{color:var(--primary-color);flex-shrink:0}.location-opt.is-chosen{cursor:default}.location-opt.is-clear .venue-row-name{color:var(--text-muted)}.venue-tabs{margin:.2rem 0 0}.location-card-btn{width:100%}.location-sheet{gap:.75rem}.log-catalog-sheet.location-sheet{height:min(88vh,760px)}.location-top-row{align-items:stretch;gap:.5rem;display:flex}.location-top-current{min-width:0;min-height:3.5rem;box-shadow:var(--shadow-sm);flex:1}.location-top-current.is-empty{box-shadow:none;border:1.5px dashed var(--border-color);background:0 0}.location-top-current.is-empty .venue-row-name{color:var(--text-muted)}.location-nearby-label{margin:.25rem 0 -.25rem;display:block}.location-top-current.is-editing{align-items:center;display:flex}.location-top-current.is-editing .form-group{width:100%}.location-top-current .venue-row-text{text-align:left}.location-top-current .venue-row-name{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.venue-row-name.venue-row-name-with-badge{align-items:center;gap:.4rem;min-width:0;display:flex}.venue-row-name-with-badge .venue-row-name-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.venue-row-name-with-badge .venue-row-badge{flex-shrink:0}.location-top-clear{border:none;border-left:1px solid var(--border-subtle);width:40px;color:var(--text-muted);cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;display:flex}.location-top-clear:active{background:var(--error-bg);color:var(--error-text)}.location-locate-btn{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-card);width:3.5rem;color:var(--primary-color);box-shadow:var(--shadow-sm);cursor:pointer;flex:none;justify-content:center;align-items:center;display:flex}.location-locate-btn:disabled{opacity:.6;cursor:default}.location-locate-btn:not(:disabled):active{background:var(--primary-light)}.location-suggest-row{cursor:default}.venue-create-here{border:1.5px solid var(--primary-color);background:var(--primary-light);width:100%;box-shadow:var(--shadow-sm);align-items:center;gap:.65rem;transition:background .15s}.venue-create-here:active{background:#05966924}.venue-create-here .venue-row-pin{background:var(--primary-color);color:#fff}.venue-create-here .venue-row-name{color:var(--primary-hover);font-weight:700}.venue-create-here .venue-row-address{color:var(--text-body)}.venue-create-here .venue-row-chev{color:var(--primary-color)}.venue-duplicate-row{cursor:default}.venue-duplicate-row .btn{white-space:nowrap;flex-shrink:0}.venue-duplicate .form-label{color:#a67c00}.venue-duplicate-row{border-color:var(--gold);background:linear-gradient(var(--gold-tint), var(--gold-tint)), var(--surface-card);min-width:0}.venue-duplicate-row .venue-row-address{color:var(--text-body)}.venue-duplicate-row .venue-logo{flex:none}.live-venue-prompt .btn-link{min-height:2.75rem;color:var(--text-body);justify-content:center;align-self:center;align-items:center;padding:0 1rem;font-size:.9rem;font-weight:700;display:inline-flex}.live-venue-prompt .btn-link:active{color:var(--text-main)}.location-suggest-actions{flex-shrink:0;gap:.4rem;display:flex}.location-suggest-yes,.location-suggest-no{border:1px solid var(--border-subtle);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:2.1rem;height:2.1rem;display:flex}.location-suggest-yes{color:var(--primary-color)}.location-suggest-yes:active{background:var(--primary-light);border-color:var(--primary-color)}.location-suggest-no{color:var(--text-muted)}.location-suggest-no:active{background:var(--error-bg);border-color:var(--error-text);color:var(--error-text)}.location-nearest-list{margin:0}.gear-carousel{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.75rem;padding:1rem;display:flex;overflow-x:auto}.gear-carousel::-webkit-scrollbar{display:none}.gear-card{scroll-snap-align:start;border-radius:var(--radius-lg);background:var(--surface-card);border:1.5px solid var(--border-subtle);width:176px;box-shadow:var(--shadow-sm);cursor:pointer;flex-direction:column;flex:none;align-items:center;gap:.5rem;padding:1.1rem .85rem .9rem;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative}.gear-card:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}.gear-card:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.gear-card.active{background:linear-gradient(var(--surface-card), var(--surface-card)) padding-box, var(--brand-gradient) border-box;border-color:#0000;transform:translateY(-3px);box-shadow:0 8px 24px #05966933}.gear-bat{width:44px;height:58px}.gear-body{text-align:left;width:100%}.gear-name{color:var(--text-main);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.5rem;font-size:.9rem;font-weight:700;line-height:1.2;display:-webkit-box;overflow:hidden}.gear-specs{border-top:1px solid var(--border-subtle);flex-direction:column;gap:.3rem;margin:0;padding:.5rem 0 0;list-style:none;display:flex}.gear-spec-row{align-items:center;gap:.4rem;min-width:0;display:flex}.gear-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px;box-shadow:inset 0 0 0 1px #0000001f}.gear-spec-label{letter-spacing:.03em;text-transform:uppercase;width:24px;color:var(--text-muted);flex-shrink:0;font-size:.6rem;font-weight:800}.gear-spec-val{min-width:0;color:var(--text-body);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.74rem;overflow:hidden}.gear-active-badge{letter-spacing:.06em;text-transform:uppercase;color:var(--primary-color);margin-top:.1rem;font-size:.64rem;font-weight:800}.gear-tap-hint{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);opacity:.7;margin-top:.1rem;font-size:.64rem;font-weight:600;transition:opacity .18s,color .18s}.gear-card:hover .gear-tap-hint,.gear-card:focus-visible .gear-tap-hint{opacity:1;color:var(--primary-color)}.gear-edit{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);cursor:pointer;z-index:2;background:0 0;border:none;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex;position:absolute;top:.4rem;right:.4rem}.gear-edit:hover{background:var(--bg-body);color:var(--primary-color)}.gear-card-add{text-align:center;border-style:dashed;border-width:1.5px;border-color:var(--border-color);box-shadow:none;color:var(--text-muted);background:0 0;justify-content:center;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600}.gear-card-add:hover{color:var(--primary-color);border-color:var(--primary-color);box-shadow:none}.gear-card-none{justify-content:center;font-family:inherit}.gear-card-none .gear-body{text-align:center}.gear-card-none .gear-name{margin-bottom:0}.gear-none-icon{width:44px;height:58px;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.gear-card-none.active .gear-none-icon{color:var(--primary-color)}.gear-carousel-log{padding:.5rem 0 .25rem}.log-sport-select{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-card);color:var(--text-main);cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;padding:.85rem 1rem;font-family:inherit;font-size:.95rem;font-weight:600;display:flex}.log-sport-select.is-empty{color:var(--text-muted);font-weight:500}.log-sport-select-value{align-items:center;gap:.5rem;min-width:0;display:inline-flex}.log-sport-select>svg{color:var(--text-muted);flex-shrink:0}.log-sport-select-value svg{color:var(--primary-color);flex-shrink:0}.log-sheet-group-title{color:var(--text-main);letter-spacing:-.01em;align-items:center;gap:.5rem;margin:.9rem 0 .5rem;font-size:.8rem;font-weight:800;display:flex}.log-sheet-group-title:first-child{margin-top:0}.log-sheet-group-title:before{content:"";background:var(--brand-gradient);border-radius:2px;flex-shrink:0;width:3px;height:1rem}.hrz-scroll-row{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:.5rem;padding:.15rem 0;display:flex;overflow-x:auto}.hrz-scroll-row::-webkit-scrollbar{display:none}.hrz-scroll-row>*{flex-shrink:0}.log-material-current{position:relative}.log-material-current .activity-detail-material{margin-bottom:0}.log-material-none{color:var(--text-muted)}.log-material-none-icon{width:38px;height:50px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.log-material-edit{border:1px solid var(--border-color);background:var(--surface-card);width:30px;height:30px;color:var(--text-muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:.5rem;right:.5rem}.log-material-edit:active{color:var(--primary-color);border-color:var(--primary-color)}.log-material-picker{flex-direction:column;gap:.5rem;max-height:60vh;margin-bottom:.25rem;display:flex;overflow-y:auto}.log-material-opt{align-items:center;font-family:inherit;position:relative}.log-material-opt .activity-detail-material{background:0 0;border:none;flex:1;min-width:0;margin:0;padding:0}.log-material-opt-check{color:var(--primary-color);flex-shrink:0}.log-material-new{border:1.5px dashed var(--border-color);border-radius:var(--radius-md);color:var(--primary-color);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.4rem;padding:.7rem;font-family:inherit;font-size:.85rem;font-weight:700;display:flex}.log-material-new:active{background:var(--primary-light)}.color-toggle{gap:.5rem;display:flex}.color-swatch{border-radius:var(--radius-sm);border:1.5px solid var(--border-color);background:var(--surface-card);color:var(--text-body);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:.45rem;padding:.55rem .5rem;font-size:.82rem;font-weight:600;transition:border-color .15s,background .15s;display:flex}.color-swatch:hover{border-color:var(--text-muted)}.color-swatch.selected{border-color:var(--primary-color);background:var(--primary-light);color:var(--text-main)}.color-dot{border-radius:50%;width:14px;height:14px;box-shadow:inset 0 0 0 1px #00000026}.color-toggle-hint{color:var(--text-muted);margin:.4rem 0 0;font-size:.74rem}@media (prefers-reduced-motion:reduce){.gear-card{transition:none}.gear-card:hover,.gear-card.active{transform:none}}.racket-active-check{color:var(--text-body);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.55rem;font-size:.875rem;font-weight:500;display:flex}.racket-active-check input{width:18px;height:18px;accent-color:var(--primary-color);cursor:pointer;flex-shrink:0}.racket-form{border-top:1px solid var(--border-subtle);background:var(--bg-body);flex-direction:column;gap:.875rem;padding:1rem;display:flex}.form-row-2,.racket-form-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.form-row-2>*,.racket-form-grid>*{min-width:0}.auth-submit{margin-top:.5rem;padding:.75rem}.racket-form-actions{justify-content:space-between;align-items:center;margin-top:.15rem;display:flex}.racket-form-actions-right{gap:.5rem;display:flex}.racket-delete-btn{color:var(--error-text);cursor:pointer;background:0 0;border:none;padding:.4rem .25rem;font-size:.82rem;font-weight:600}.racket-delete-btn:hover{text-decoration:underline}.racket-delete-btn:disabled{opacity:.5;cursor:not-allowed}.log-drills-container{flex-direction:column;gap:.5rem;display:flex}.log-drills-add{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-card);color:var(--primary-color);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:1rem;font-family:inherit;font-size:.9rem;font-weight:700;display:flex}.log-drills-add:active{background:var(--primary-light)}.log-catalog{margin-top:.5rem}.log-catalog-search-wrap{padding:0 .75rem .5rem}.log-catalog-filter{width:auto;margin:0 .75rem .5rem}.log-catalog-filter .drill-type-btn{flex:1;justify-content:center}.log-catalog-item{padding:.5rem .75rem}.log-catalog-row-head{cursor:pointer;align-items:center;gap:.5rem;width:100%;display:flex}.log-catalog-row-viz{flex:none;justify-content:center;align-items:center;width:30px;height:45px;display:flex}.log-catalog-row-viz-empty{background:#0f51321f;border-radius:4px;width:22px;height:33px}.log-catalog-row-text{flex-direction:column;flex:1;min-width:0;display:flex}.log-catalog-row-name{color:var(--text-main);flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.88rem;font-weight:600;display:flex}.log-catalog-row-summary{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;overflow:hidden}.log-catalog-row-count{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:.72rem}.log-catalog-add-btn{border-radius:var(--radius-sm);background:var(--primary-color);color:#fff;white-space:nowrap;cursor:pointer;border:none;flex-shrink:0;align-items:center;gap:.2rem;padding:.3rem .55rem;font-size:.72rem;font-weight:600;display:inline-flex}.log-catalog-add-btn:disabled{background:var(--border-color);color:var(--text-muted);cursor:not-allowed}.drill-chevron{color:var(--text-muted);flex-shrink:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.log-photo-wrap{flex-wrap:wrap;gap:.5rem;display:flex}.log-photo-thumb{border:1px solid var(--border-light);border-radius:8px;width:72px;height:72px;position:relative;overflow:hidden}.log-photo-thumb img{object-fit:cover;width:100%;height:100%}.log-photo-uploading img{opacity:.55}.log-photo-error img{opacity:.45}.log-photo-spinner{border:2px solid #ffffff80;border-top-color:#fff;border-radius:50%;width:20px;height:20px;margin:-10px 0 0 -10px;animation:.7s linear infinite spin;position:absolute;top:50%;left:50%}.log-photo-badge-error{color:#fff;background:#dc2626;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.9rem;font-weight:800;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.log-photo-remove{cursor:pointer;color:#fff;background:#0000008c;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;padding:0;display:flex;position:absolute;top:3px;right:3px}.log-photo-add{border:1.5px dashed var(--border-light);cursor:pointer;width:72px;height:72px;color:var(--text-muted);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:.7rem;font-weight:500;transition:border-color .15s,color .15s;display:flex}.log-photo-add:hover{border-color:var(--primary-color);color:var(--primary-color)}.log-photo-hint{color:var(--text-muted);letter-spacing:.01em;margin:.5rem 0 0;font-size:.74rem}.log-media-dropzone{border:1.5px dashed var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);width:100%;color:var(--text-muted);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;padding:1.75rem 1rem;font-size:.85rem;font-weight:600;display:flex}.log-media-dropzone:active{border-color:var(--primary-color);color:var(--primary-color)}.log-media{flex-direction:column;gap:.6rem;display:flex}.log-media-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.log-media-head .log-section-label{flex-shrink:0;margin:0}.log-media-title{align-items:center;gap:.6rem;min-width:0;display:flex}.log-media-error{color:var(--error-text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.78rem;font-weight:600;overflow:hidden}.log-media-edit-toggle{border:1px solid var(--border-color);background:var(--surface-card);width:30px;height:30px;color:var(--text-muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.log-media-edit-toggle.is-on{color:var(--primary-color);border-color:var(--primary-color)}.log-media-edit-toggle:active{background:var(--primary-light)}.log-media-carousel{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;padding:4px 2px 8px;display:flex;overflow-x:auto}.log-media-carousel::-webkit-scrollbar{display:none}.log-media-item{border-radius:var(--radius-md);border:1px solid var(--border-color);width:94px;height:120px;box-shadow:var(--shadow-card);background:var(--bg-body);-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;flex:none;transition:transform .16s;position:relative;overflow:hidden}.log-media-item img,.log-media-item video{object-fit:cover;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.log-media-item.is-uploading img,.log-media-item.is-uploading video{opacity:.5}.log-media-item.is-error img,.log-media-item.is-error video{opacity:.4}.log-media-video-badge{color:#fff;pointer-events:none;background:#0000008c;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:absolute;bottom:6px;left:6px}.log-media-item.is-dragging{transition:none;box-shadow:0 10px 28px #00000038}.log-media-carousel.is-editing:not(.is-sorting) .log-media-item{animation:.24s ease-in-out infinite log-media-wiggle}.log-media-carousel.is-editing:not(.is-sorting) .log-media-item:nth-child(2n){animation-delay:-.12s}@keyframes log-media-wiggle{0%{transform:rotate(-1.1deg)}50%{transform:rotate(1.1deg)}to{transform:rotate(-1.1deg)}}@media (prefers-reduced-motion:reduce){.log-media-carousel.is-editing .log-media-item{animation:none}}.log-media-remove{color:#fff;cursor:pointer;z-index:2;background:#0000009e;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:flex;position:absolute;top:4px;right:4px}.log-media-spinner{border:2px solid #ffffff80;border-top-color:#fff;border-radius:50%;width:20px;height:20px;margin:-10px 0 0 -10px;animation:.7s linear infinite spin;position:absolute;top:50%;left:50%}.log-media-progress{-webkit-backdrop-filter:blur(3px);color:#fff;background:#00000040;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex;position:absolute;inset:0}.log-media-badge-error{color:#fff;background:#dc2626;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.9rem;font-weight:800;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.log-media-add{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-card);width:94px;height:120px;box-shadow:var(--shadow-card);color:var(--primary-color);cursor:pointer;flex:none;justify-content:center;align-items:center;display:flex}.log-media-add:active{background:var(--primary-light)}button.log-media-dropzone,button.log-media-add{appearance:none;font-family:inherit}button.log-media-add{padding:0}label.log-media-dropzone,label.log-media-add{position:relative}.log-media-file-input{opacity:0;cursor:pointer;width:100%;height:100%;font-size:0;position:absolute;inset:0}.log-submit-btn{margin-top:.5rem;padding:.9rem;font-size:1rem;font-weight:700}.log-delete-btn{border-radius:var(--radius-sm);border:1.5px solid var(--error-border);width:100%;color:var(--error-text);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.5rem;margin-top:.75rem;padding:.8rem;font-size:.9rem;font-weight:600;transition:background .15s;display:flex}.log-delete-btn:hover:not(:disabled){background:var(--error-bg)}.log-delete-btn:disabled{opacity:.55;cursor:not-allowed}.drill-card{background:var(--bg-body);border-radius:var(--radius-md);border:1px solid var(--border-color);overflow:hidden}.drill-card-header{background:var(--surface-card);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:.625rem .75rem;display:flex}.drill-type-toggle{background:var(--bg-body);border-radius:var(--radius-sm);border:1px solid var(--border-color);gap:2px;padding:2px;display:flex}.drill-type-btn{border-radius:calc(var(--radius-sm) - 2px);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:4px;padding:.3rem .625rem;font-size:.75rem;font-weight:600;transition:all .15s;display:flex}.drill-type-btn.active{background:var(--surface-card);color:var(--primary-color);box-shadow:0 1px 4px #0000001a}.drill-card-remove{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .1s,color .1s;display:flex}.drill-card-remove:hover{color:#dc2626;background:#fee2e2}.drill-shot-table{padding:0 .5rem .5rem}.drill-shot-col-labels{border-bottom:none;border-radius:6px 6px 0 0;align-items:center;margin-bottom:.375rem;padding:.5rem .25rem .375rem;display:flex}.drill-shot-col-label{text-transform:uppercase;letter-spacing:.09em;flex:1;font-size:.72rem;font-weight:800}.drill-shot-col-label.me{color:var(--text-muted);text-align:left}.drill-shot-col-label.partner{color:var(--text-muted);text-align:right}.drill-shot-col-label-spacer{flex-shrink:0;width:36px}.drill-shot-col-label-field{text-transform:uppercase;letter-spacing:.09em;width:88px;color:var(--text-muted);flex-shrink:0;font-size:.65rem;font-weight:800}.drill-shot-col-label-field.right{color:var(--text-muted);text-align:right}.drill-shot-col-label-flow{text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted);text-align:center;flex:1;font-size:.65rem;font-weight:700}.drill-shot-empty{text-align:center;flex-direction:column;align-items:center;gap:.375rem;padding:1.75rem 1rem;display:flex}.drill-shot-empty span{color:var(--text-muted);font-size:.8rem;font-weight:500;line-height:1.5}.drill-shot-empty-icon{color:var(--border-color);font-size:1.1rem;animation:1.8s ease-in-out infinite dshotBounce}@keyframes dshotBounce{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.drill-shot-wrap{flex-direction:column;margin-bottom:2px;display:flex}.drill-shot-row{border-radius:6px;align-items:center;gap:0;min-height:48px;padding:5px 4px;display:flex}.drill-shot-row.me,.drill-shot-row.partner{background:0 0}.drill-shot-step-num{color:var(--text-muted);opacity:.6;font-size:.52rem;font-weight:700;line-height:1;display:block}.drill-shot-ph{color:var(--text-muted);font-weight:400}.drill-shot-remove{border:1px solid var(--border-subtle);background:var(--bg-body);width:32px;height:32px;color:var(--text-muted);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:4px;transition:background .1s,color .1s,border-color .1s;display:flex}.drill-shot-remove:hover,.drill-shot-remove:active{color:#dc2626;background:#fee2e2;border-color:#fecaca}.drill-shot-stroke-box{border-radius:var(--radius-sm);border:1.5px dashed var(--border-color);width:88px;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;text-align:center;cursor:default;background:#f3f4f6;flex-shrink:0;justify-content:center;align-items:center;padding:.35rem .5rem;font-size:.75rem;font-weight:600;transition:all .12s;display:flex;overflow:hidden}.drill-shot-stroke-box.set{background:var(--surface-card);color:var(--text-main);box-shadow:var(--shadow-sm);border-style:solid;font-weight:700}.drill-shot-row.me .drill-shot-stroke-box:not(.response).set,.drill-shot-row.partner .drill-shot-stroke-box:not(.response).set{color:var(--text-main);background:#f9fafb;border-style:solid;border-color:#d1d5db}.drill-shot-stroke-box.open:not(.response){border-style:solid;border-color:var(--primary-color);box-shadow:0 0 0 2px #05966926}.drill-shot-row.partner .drill-shot-stroke-box.open:not(.response){border-color:#4338ca;box-shadow:0 0 0 2px #4338ca1f}.drill-shot-stroke-box.partner-side.set{color:var(--text-main);background:#f9fafb;border-style:solid;border-color:#d1d5db}.drill-shot-stroke-box.partner-side.open{border-style:solid;border-color:#4338ca;box-shadow:0 0 0 2px #4338ca1f}.drill-shot-stroke-box.partner-side{cursor:pointer}.drill-shot-stroke-box.partner-side:hover{border-style:solid}.drill-shot-stroke-box.response{background:var(--bg-body);cursor:pointer}.drill-shot-stroke-box.response:hover{border-style:solid}.drill-shot-stroke-box.response.open{border-style:solid;border-color:#4338ca;box-shadow:0 0 0 2px #4338ca1f}.drill-shot-row.partner .drill-shot-stroke-box.response.open{border-color:var(--primary-color);box-shadow:0 0 0 2px #05966926}.drill-shot-row.me .drill-shot-stroke-box.response.set{color:#4338ca;background:#eef2ff;border-style:solid;border-color:#4338ca80}.drill-shot-row.partner .drill-shot-stroke-box.response.set{color:var(--primary-color);background:var(--primary-light);border-style:solid;border-color:#05966980}.drill-shot-flow{flex:1;justify-content:center;align-items:center;gap:.3rem;min-width:0;padding:0 .375rem;display:flex}.drill-shot-flow-badge{color:var(--text-muted);background:var(--bg-body);border:1px solid var(--border-subtle);white-space:nowrap;text-align:center;border-radius:100px;min-width:24px;padding:.175rem .45rem;font-size:.7rem;font-weight:600;transition:all .1s}.drill-shot-flow-badge.empty{color:var(--border-color);background:0 0;border-color:#0000}.drill-shot-flow-badge.target{cursor:pointer;border-style:dashed;border-color:var(--border-color);color:var(--text-muted);background:var(--bg-body)}.drill-shot-flow-badge.target:disabled{cursor:default;opacity:.4}.drill-shot-flow-badge.target.set{color:var(--text-main);background:var(--surface-card);border-style:solid;border-color:var(--border-color);font-weight:700}.drill-shot-flow-badge.target.open{border-color:var(--primary-color);color:var(--primary-color);box-shadow:0 0 0 2px #0596692e}.drill-shot-flow-badge.spin{cursor:pointer;color:#6d28d9;background:#6d28d90d;border-style:dashed;border-color:#c4b5fd}.drill-shot-flow-badge.spin.set{color:#6d28d9;background:#6d28d91a;border-style:solid;border-color:#a78bfa;font-weight:700}.drill-shot-flow-badge.spin.open{color:#6d28d9;border-color:#6d28d9;box-shadow:0 0 0 2px #6d28d92e}.drill-shot-row.partner .drill-shot-flow-badge.target.open{color:#4338ca;border-color:#4338ca;box-shadow:0 0 0 2px #4338ca26}.drill-shot-flow-mid{flex-direction:column;flex-shrink:0;align-items:center;gap:0;font-size:.9rem;font-weight:700;display:flex}.drill-shot-row.me .drill-shot-flow-mid,.drill-shot-row.partner .drill-shot-flow-mid{color:var(--text-muted)}.drill-shot-picker{background:var(--surface-card);border-radius:var(--radius-md);border:1.5px solid var(--primary-color);flex-direction:column;gap:.5rem;margin:2px 0 6px;padding:.625rem .75rem;animation:.12s slideDown;display:flex;box-shadow:0 4px 20px #0596691a}.drill-shot-picker.partner{border-color:#4338ca;box-shadow:0 4px 20px #4338ca1a}.drill-shot-picker-group{flex-direction:column;gap:.3rem;display:flex}.drill-shot-picker-cat{color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;font-size:.65rem;font-weight:700}.drill-shot-chips{flex-wrap:wrap;gap:.3rem;display:flex}.drill-shot-chip{border:1.5px solid var(--border-color);background:var(--bg-body);min-height:36px;color:var(--text-body);cursor:pointer;white-space:nowrap;border-radius:100px;align-items:center;padding:.45rem .875rem;font-size:.8rem;font-weight:600;transition:all .1s;display:inline-flex}.drill-shot-chip:hover{border-color:var(--primary-color);color:var(--primary-color);background:var(--primary-light)}.drill-shot-chip.active{background:var(--primary-light);border-color:var(--primary-color);color:var(--primary-color)}.drill-shot-picker.partner .drill-shot-chip:hover,.drill-shot-picker.partner .drill-shot-chip.active{color:#4338ca;background:#eef2ff;border-color:#4338ca}.drill-ending-badge{border-radius:100px;align-self:flex-start;margin:.5rem .75rem;padding:.3rem .75rem;font-size:.78rem;font-weight:700}.drill-ending-badge.loop{color:#4338ca;background:#eef2ff}.drill-ending-badge.freespiel{background:var(--primary-light);color:var(--primary-color)}.drill-card-footer{border-top:1px solid var(--border-subtle);background:var(--surface-card);align-items:stretch;display:flex}.drill-footer-btn{min-height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:4px;padding:0;font-size:.78rem;font-weight:600;transition:color .12s,background .12s;display:flex}.drill-footer-btn:first-child{color:var(--primary-color);font-weight:700}.drill-footer-btn:first-child:hover:not(:disabled){background:var(--primary-light)}.drill-footer-btn:not(:first-child):hover:not(:disabled){color:var(--text-main);background:var(--bg-body)}.drill-footer-btn.active{color:#4338ca;background:#eef2ff}.drill-footer-btn:disabled{opacity:.38;cursor:not-allowed}.drill-footer-sep{background:var(--border-subtle);flex-shrink:0;align-self:stretch;width:1px}.log-partner-search-wrap,.log-partner-search{position:relative}.log-partner-dropdown{background:var(--surface-card);border:1px solid var(--border-light);z-index:50;border-radius:10px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 4px 16px #00000014}.log-partner-result{cursor:pointer;width:100%;color:var(--text-main);text-align:left;background:0 0;border:none;align-items:center;gap:.625rem;padding:.625rem .875rem;font-size:.875rem;transition:background .1s;display:flex}.log-partner-result:hover{background:var(--bg-body)}.log-partner-result+.log-partner-result{border-top:1px solid var(--border-light)}.log-partner-chips{flex-direction:column;gap:.5rem;margin-bottom:.5rem;display:flex}.log-partner-selected{background:var(--bg-body);border:1px solid var(--border-light);color:var(--text-main);border-radius:10px;align-items:center;gap:.625rem;padding:.5rem .75rem;font-size:.875rem;display:flex}.log-partner-clear{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:4px;align-items:center;margin-left:auto;padding:2px;transition:color .1s;display:flex}.log-partner-clear:hover{color:var(--text-main)}.log-partner-avatar{background:var(--bg-body);border:1px solid var(--border-light);width:26px;height:26px;font-size:.7rem;font-weight:700;display:flex}.log-partner-name{font-weight:600}.log-partner-note{margin-top:.75rem}.log-partner-note-label{color:var(--text-muted);margin-bottom:.35rem;font-size:.75rem;font-weight:600;display:block}.log-partner-note-input{resize:none;width:100%;font-size:.875rem}.mention-dropdown{background:var(--surface-card);border:1px solid var(--border-light);z-index:400;border-radius:10px;min-width:200px;position:absolute;bottom:calc(100% + 4px);left:0;overflow:hidden;box-shadow:0 4px 16px #00000014}.mention-dropdown-down{top:calc(100% + 4px);bottom:auto}.mention-suggestion{cursor:pointer;width:100%;color:var(--text-main);text-align:left;background:0 0;border:none;align-items:center;gap:.625rem;padding:.625rem .875rem;font-size:.875rem;transition:background .1s;display:flex}.mention-suggestion:hover{background:var(--bg-body)}.mention-suggestion+.mention-suggestion{border-top:1px solid var(--border-light)}.mention-suggestion-name{font-weight:600}.mention-suggestion-avatar{background:var(--bg-body);border:1px solid var(--border-light);width:26px;height:26px;color:var(--text-muted);font-size:.7rem;font-weight:700;display:flex}.drill-active-toggle{background:var(--border-subtle);border-radius:8px;flex-shrink:0;gap:1px;padding:2px;display:flex}.drill-active-btn{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;padding:.2rem .5rem;font-size:.7rem;font-weight:600;transition:all .1s}.drill-active-btn.active{color:var(--text-main);background:#fff;box-shadow:0 1px 3px #0000001a}.activity-detail-partner-avatar{background:var(--bg-body);border:1.5px solid var(--border-light);width:36px;height:36px;font-size:.8rem;font-weight:700;display:flex}.activity-detail-partners{flex-direction:column;gap:.5rem;margin-bottom:.875rem;padding:.25rem 0;display:flex}.activity-detail-partners-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.7rem;font-weight:700}.activity-detail-partners-list{flex-wrap:wrap;gap:.5rem .75rem;display:flex}.activity-detail-partner-chip{align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}.activity-detail-partner-chip-name{color:var(--text-main);font-size:.9rem;font-weight:600}.activity-detail-partner-chip:active .activity-detail-partner-chip-name{color:var(--primary-color)}.drill-footer-btn.drill-footer-save{color:var(--primary-color);font-weight:700}.drill-footer-btn.drill-footer-save:hover:not(:disabled){background:var(--primary-light)}.drill-shot-flow-badge.ro-set{border-style:solid;border-color:var(--border-color);color:var(--text-main);background:var(--surface-card);font-weight:700}.drill-shot-empty-ro{color:var(--text-muted);text-align:center;padding:.75rem;font-size:.8rem}.drill-saved-list,.drill-saved-branch{flex-direction:column;gap:.4rem;display:flex}.drill-saved-branch-track{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -.15rem;display:flex;overflow-x:auto}.drill-saved-branch-track::-webkit-scrollbar{display:none}.drill-saved-branch-panel{scroll-snap-align:center;box-sizing:border-box;flex:0 0 100%;width:100%;padding:0 .15rem}.drill-loop.drill-saved-loop{--loop-mid:1.2rem;--loop-gutter:2.6rem;--loop-gap:9px}.drill-saved-row{border-radius:var(--radius-md);background:var(--surface-card);border:1px solid var(--border-subtle);align-items:center;gap:.5rem;padding:.5rem .6rem;transition:background .15s,border-color .15s;display:flex}.drill-saved-row.clickable{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.drill-saved-row.clickable:not(.current):hover{border-color:var(--border-color)}.drill-saved-row.current{background:var(--primary-light);border-color:var(--primary-color)}.drill-saved-who{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;flex-shrink:0;padding:.15rem .4rem;font-size:.6rem;font-weight:800}.drill-saved-who.me{background:var(--primary-light);color:var(--primary-color)}.drill-saved-who.partner{color:#64748b;background:#f1f5f9}.drill-saved-sentence{min-width:0;color:var(--text-main);flex:1;font-size:.85rem;font-weight:600}.drill-saved-num{background:var(--bg-body);width:20px;height:20px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.68rem;font-weight:800;display:inline-flex}.drill-saved-card{border:1.5px solid var(--border-light);border-radius:var(--radius-md);background:var(--surface-card);box-shadow:var(--shadow-sm);overflow:hidden}.drill-saved-header{border-bottom:1px solid var(--border-subtle);cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#0596690a 0%,#0369a108 100%);align-items:center;gap:.5rem;padding:.625rem .75rem;display:flex}.drill-saved-header:hover{background:linear-gradient(135deg,#05966912 0%,#0369a10d 100%)}.drill-saved-meta{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:.7rem;font-weight:500}.drill-saved-name-input{color:var(--text-main);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:0;font-size:.875rem;font-weight:700}.drill-saved-name-input::placeholder{color:var(--text-muted);font-weight:400}.drill-saved-timing{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem;display:flex}.drill-saved-timing-label{color:var(--text-muted);font-size:.75rem}.drill-saved-timing-input{color:var(--text-muted);align-items:center;gap:.35rem;font-size:.75rem;display:inline-flex}.drill-saved-timing-input input{border:1px solid var(--border-color);text-align:right;width:3.5rem;color:var(--text-main);background:var(--surface-card);border-radius:6px;padding:.3rem .5rem;font-size:.8rem}.drill-saved-timing-input input:focus{border-color:var(--primary-color);outline:none}.drill-saved-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:.25rem .5rem;display:flex}.drill-saved-catalog-label{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.35rem;font-size:.75rem;display:flex}.drill-saved-catalog-label input{cursor:pointer}.drill-saved-catalog-done{color:var(--text-muted);font-size:.7rem}.drill-saved-edit-btn{color:var(--primary-color);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.35rem .5rem;font-size:.75rem;font-weight:600;transition:background .1s}.drill-saved-edit-btn:hover{background:var(--primary-light)}.drill-saved-edit-btn:disabled{color:var(--text-muted);background:var(--border-color);cursor:not-allowed}.activity-detail-section,.activity-detail-recording-row{margin-top:1.5rem}.hr-chart-plot{align-items:stretch;gap:.4rem;display:flex}.hr-chart-yaxis{color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;flex-direction:column;flex-shrink:0;justify-content:space-between;min-width:1.6rem;padding:6px 0;font-size:.62rem;display:flex}.hr-chart-plot>svg{flex:1;min-width:0}.hr-chart-xaxis{height:1rem;color:var(--text-muted);font-variant-numeric:tabular-nums;margin:.25rem 0 0 2rem;font-size:.62rem;position:relative}.hr-chart-xaxis span{white-space:nowrap;position:absolute;transform:translate(-50%)}.hr-chart-xaxis span:first-child{transform:translate(0)}.hr-chart-xaxis span:last-child{transform:translate(-100%)}.activity-detail-drills{flex-direction:column;gap:.6rem;display:flex}.activity-detail-section-title{color:var(--text-main);letter-spacing:-.01em;text-transform:none;align-items:center;gap:.5rem;margin:0 0 .625rem;font-size:.8rem;font-weight:800;display:flex}.activity-detail-section-title:before{content:"";background:var(--brand-gradient);border-radius:2px;flex-shrink:0;width:3px;height:1rem}.activity-detail-drills-toggle-card{padding:0;overflow:hidden}.activity-detail-drills-toggle{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.75rem;width:100%;padding:.9rem 1rem;transition:background .12s;display:flex}.activity-detail-drills-toggle:active{background:var(--bg-body)}.activity-detail-drills-toggle-icon{background:var(--primary-light);width:40px;height:40px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.activity-detail-drills-toggle-label{min-width:0;color:var(--text-main);flex:1;font-size:.9rem;font-weight:700}.activity-detail-drills-toggle-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .15s}.activity-detail-drills-toggle-chevron.is-open{transform:rotate(180deg)}.activity-detail-drills-toggle-card .activity-detail-drills{border-top:1px solid var(--border-subtle);padding:.75rem}.edit-request-actions{gap:.5rem;margin-top:.6rem;display:flex}.edit-request-actions .btn{flex:1}.activity-detail-drill-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-card);box-shadow:var(--shadow-card);overflow:hidden}.activity-detail-drill-card--link,.activity-detail-drill-card--btn{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:.625rem;padding:.7rem .75rem;text-decoration:none;transition:background .12s;display:flex}.activity-detail-drill-card--link:active,.activity-detail-drill-card--btn:hover{background:var(--bg-body)}.activity-detail-drill-card--static{cursor:default}.activity-detail-drill-card--static:hover{background:0 0}.activity-detail-drill-card--placeholder{border:1px dashed var(--border-color)}.activity-detail-drill-card--placeholder .activity-detail-drill-name{color:var(--text-muted)}.log-drill-row-main>.activity-detail-drill-card{flex:1;min-width:0}.activity-detail-drill-viz{flex:none;justify-content:center;align-items:center;width:30px;height:45px;display:flex}.activity-detail-drill-viz-empty{background:#0f51321f;border-radius:4px;width:22px;height:33px}.activity-detail-drill-phase-icon{justify-content:center;align-items:center;width:24px;height:36px;display:inline-flex}.activity-detail-drill-phase-icon.is-warmup{color:#d4a017}.activity-detail-drill-phase-icon.is-free{color:var(--primary-color)}.activity-detail-drill-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.activity-detail-drill-name{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:700;overflow:hidden}.activity-detail-drill-summary{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;overflow:hidden}.activity-detail-drill-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .15s}.activity-detail-drill-chevron.is-open{transform:rotate(180deg)}.activity-detail-drill-expand{border-top:1px solid var(--border-subtle);padding:.75rem}.activity-detail-drill-list{flex-direction:column;gap:.5rem;display:flex}.activity-detail-drill-list .activity-detail-drill-row{border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:.85rem 1rem}.activity-detail-drill-locked{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block;position:relative}.activity-detail-drill-locked-ghosts{pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;gap:.5rem;display:flex}.activity-detail-drill-locked-ghosts .live-plan-edit-text,.activity-detail-drill-locked-ghosts .live-picker-row-viz{filter:blur(3px)}.activity-detail-drill-ghost-line{background:var(--text-muted);opacity:.45;border-radius:999px;height:10px;display:block}.activity-detail-drill-ghost-line.is-sub{opacity:.3;height:8px;margin-top:.45rem}.activity-detail-drill-locked-cta{background:var(--surface-card);border:1px solid var(--border-color);width:fit-content;max-width:calc(100% - 2rem);height:fit-content;box-shadow:var(--shadow-hover);border-radius:999px;align-items:center;gap:.5rem;margin:auto;padding:.55rem .6rem .55rem .9rem;display:flex;position:absolute;inset:0}.activity-detail-drill-locked-cta .btn{white-space:nowrap;flex:none}.activity-detail-drill-locked-text{min-width:0;color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:700;overflow:hidden}.activity-detail-drill-locked:active .activity-detail-drill-locked-cta{opacity:.7}.activity-detail-drill-row{color:inherit;gap:.75rem;text-decoration:none}.activity-detail-drill-row .live-picker-row-viz{width:38px;height:38px}.activity-detail-drill-row .live-plan-edit-name{font-size:.95rem;font-weight:700}.activity-detail-drill-info{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:-4px -6px -4px 0;display:inline-flex}.activity-detail-drill-head{gap:.75rem}.activity-detail-drill-title{align-items:center;gap:.2rem;min-width:0;display:flex}.activity-detail-drill-head .activity-detail-drill-title .live-plan-edit-name{flex:0 auto}.activity-detail-drill-info.is-inline{width:24px;height:24px;margin:-4px 0}.activity-detail-drill-row .activity-detail-drill-body{padding:.6rem 0 0}.exercise-info-fav{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;margin-left:auto;display:inline-flex}.exercise-info-fav.is-on{color:#d4a017}.exercise-info-fav.is-locked{color:var(--gold)}.exercise-info-meta{color:var(--text-muted);text-align:left;margin:-.25rem 0 .5rem;font-size:.8rem}.exercise-info-skeleton{border-radius:var(--radius-md);height:180px}.activity-detail-drill-timing{border-top:1px solid var(--border-subtle);background:var(--bg-body);flex-wrap:wrap;padding:.5rem .75rem .6rem;display:flex}.activity-detail-venue-card{color:inherit;align-items:center;gap:.75rem;padding:.9rem 1rem;text-decoration:none;transition:background .12s;display:flex}.activity-detail-venue-card:active{background:var(--bg-body)}.activity-detail-venue-icon{background:var(--primary-light);width:40px;height:40px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.activity-detail-venue-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.activity-detail-venue-name{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:700;overflow:hidden}.activity-detail-venue-sub{color:var(--text-muted);align-items:center;gap:.3rem;font-size:.74rem;display:inline-flex}.activity-detail-venue-chevron{color:var(--text-muted);flex-shrink:0}.header-icon-badge{display:inline-flex;position:relative}.dm-badge{color:#fff;border:2px solid var(--glass-bg-strong);pointer-events:none;background:#e11d48;border-radius:100px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.625rem;font-weight:700;line-height:1;display:flex;position:absolute;top:-5px;right:-8px}.dm-conv-list{flex-direction:column;gap:.5rem;display:flex}.dm-conv-row{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:inherit;align-items:center;gap:.875rem;padding:.875rem 1rem;text-decoration:none;transition:box-shadow .15s,transform .15s;display:flex}.dm-conv-row:hover{box-shadow:var(--shadow-card);transform:translateY(-1px)}.dm-conv-info{flex:1;min-width:0}.dm-conv-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.9375rem;font-weight:700;overflow:hidden}.dm-conv-name.unread{color:var(--text-main)}.dm-conv-preview{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.8rem;overflow:hidden}.dm-conv-preview.unread{color:var(--text-body);font-weight:600}.dm-conv-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.dm-conv-time{color:var(--text-muted);white-space:nowrap;font-size:.72rem}.dm-unread-bubble{color:#fff;background:#e11d48;border-radius:100px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.68rem;font-weight:700;line-height:1;display:flex}.dm-search-avatar{background:var(--brand-gradient);color:#fff;width:40px;height:40px;font-size:.95rem;font-weight:700;display:flex}.dm-avatar{background:var(--brand-gradient);color:#fff;width:46px;height:46px;font-size:1.05rem;font-weight:700;display:flex}.chat-header-back{width:34px;height:34px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;transition:background .12s,color .12s;display:flex}.chat-header-back:hover{background:var(--border-subtle);color:var(--text-main)}.chat-header-name{color:var(--text-main);font-size:.9375rem;font-weight:700;transition:-webkit-text-decoration .15s,text-decoration .15s}a:hover .chat-header-name{text-decoration:underline}.chat-date-sep{text-align:center;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;margin:.5rem 0;font-size:.7rem;font-weight:600}.chat-bubble-row{align-items:flex-end;gap:.4rem;margin-top:.5rem;display:flex}.chat-bubble-row.mine{justify-content:flex-end}.chat-bubble-row.theirs{justify-content:flex-start}.chat-bubble{word-break:break-word;border-radius:18px;max-width:72%;padding:.625rem .875rem;font-size:.9rem;line-height:1.45;position:relative}.chat-bubble.mine{background:var(--brand-gradient);color:#fff;border-bottom-right-radius:4px}.chat-bubble.theirs{color:var(--text-main);background:#f3f4f6;border-bottom-left-radius:4px}.chat-bubble-time{opacity:.65;white-space:nowrap;margin-left:4px;font-size:.65rem;display:inline}.chat-bubble.theirs .chat-bubble-time{color:var(--text-muted);opacity:.7}.chat-quote-row{margin-top:.5rem}.chat-quote-row.theirs{padding-left:calc(28px + .4rem)}.chat-bubble-row.has-quote{margin-top:.2rem}.chat-quote-bubble{border-radius:18px;flex-direction:column;gap:.2rem;max-width:72%;padding:.55rem .875rem;text-decoration:none;display:flex}.chat-quote-row.mine .chat-quote-bubble{background:var(--brand-gradient);color:#fff}.chat-quote-row.theirs .chat-quote-bubble{color:var(--text-main);background:#f3f4f6}.chat-reply-title{letter-spacing:.01em;align-items:center;gap:.4rem;font-size:.72rem;font-weight:700;display:flex}.chat-reply-title:before{content:"";background:var(--brand-gradient);border-radius:2px;flex-shrink:0;width:3px;height:.85rem}.chat-quote-row.mine .chat-reply-title{color:#ffffffe6}.chat-quote-row.mine .chat-reply-title:before{background:#fff}.chat-quote-row.theirs .chat-reply-title{color:var(--text-muted)}.chat-reply-quote{word-break:break-word;font-size:.85rem;font-style:italic;line-height:1.4}.chat-reply-preview{background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--border-color);flex-shrink:0;align-items:flex-start;gap:.6rem;padding:.6rem 1rem;display:flex}.chat-reply-preview-text{min-width:0;color:var(--text-main);flex-direction:column;flex:1;gap:.15rem;display:flex}.chat-reply-preview .chat-reply-title{color:var(--text-muted)}.chat-reply-preview .chat-reply-quote{color:var(--text-body);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.chat-reply-preview-close{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.chat-composer{max-width:var(--max-content-width);align-items:flex-end;gap:.625rem;margin:0 auto;display:flex}.chat-composer-input{border:1.5px solid var(--border-color);color:var(--text-main);resize:none;background:#fff;border-radius:22px;outline:none;flex:1;max-height:120px;padding:.6rem .9rem;font-family:inherit;font-size:.9rem;line-height:1.45;transition:border-color .15s}.chat-composer-input:focus{border-color:var(--primary-color)}.chat-composer-input::placeholder{color:var(--text-muted)}.chat-composer-send{background:var(--brand-gradient);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:opacity .15s,transform .15s;display:flex}.chat-composer-send:hover{opacity:.9;transform:scale(1.05)}.chat-composer-send:disabled{opacity:.4;cursor:not-allowed;transform:none}.lightbox-overlay{z-index:1000;opacity:0;overscroll-behavior:none;-webkit-backdrop-filter:blur(16px);justify-content:center;align-items:center;padding:1rem;transition:opacity .2s;display:flex;position:fixed;inset:0;overflow:hidden}.lightbox-overlay.lightbox-visible{opacity:1}.video-lightbox-overlay{z-index:1000;background:#000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.video-lightbox-host,.video-lightbox-host video,.video-lightbox-still{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.video-lightbox-host video{opacity:1;background:0 0;display:block}.video-lightbox-still{z-index:1}.video-lightbox-spinner{z-index:2;pointer-events:none;border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:40px;height:40px;margin:-20px 0 0 -20px;animation:.7s linear infinite spin;position:absolute;top:50%;left:50%}.video-lightbox-close{top:calc(env(safe-area-inset-top,0px) + .75rem);-webkit-backdrop-filter:blur(8px);color:#fff;cursor:pointer;z-index:3;background:#ffffff24;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:absolute;left:.75rem}.video-lightbox-controls{z-index:3;padding:2rem .75rem calc(env(safe-area-inset-bottom,0px) + .75rem);color:#fff;background:linear-gradient(#0000,#000000a6);align-items:center;gap:.6rem;display:flex;position:absolute;bottom:0;left:0;right:0}.video-lightbox-btn{color:#fff;cursor:pointer;appearance:none;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.video-lightbox-time{font-variant-numeric:tabular-nums;text-align:center;color:#ffffffe6;flex:none;min-width:2.6rem;font-size:.75rem;font-weight:600}.video-lightbox-scrubber{appearance:none;cursor:pointer;background:0 0;flex:auto;min-width:0;height:28px;margin:0}.video-lightbox-scrubber::-webkit-slider-runnable-track{background:linear-gradient(to right, #fff 0 var(--progress,0%), #ffffff4d var(--progress,0%) 100%);border-radius:2px;height:4px}.video-lightbox-scrubber::-moz-range-track{background:linear-gradient(to right, #fff 0 var(--progress,0%), #ffffff4d var(--progress,0%) 100%);border-radius:2px;height:4px}.video-lightbox-scrubber::-webkit-slider-thumb{appearance:none;background:#fff;border:none;border-radius:50%;width:14px;height:14px;margin-top:-5px;box-shadow:0 1px 4px #0006}.video-lightbox-scrubber::-moz-range-thumb{background:#fff;border:none;border-radius:50%;width:14px;height:14px}.lightbox-stage{background:0 0;border-radius:18px;width:min(92vw,560px);height:min(76vh,780px);position:relative}.lightbox-track{scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;touch-action:pan-x;scrollbar-width:none;width:100%;height:100%;display:flex;overflow:auto hidden}.lightbox-track::-webkit-scrollbar{display:none}.lightbox-slide{scroll-snap-align:center;scroll-snap-stop:always;flex:0 0 100%;justify-content:center;align-items:center;min-width:0;height:100%;display:flex}.lightbox-slide img{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:14px;width:auto;max-width:100%;height:auto;max-height:100%;display:block;box-shadow:0 24px 70px #0000008c}.lightbox-close{top:calc(env(safe-area-inset-top,0px) + .75rem);-webkit-backdrop-filter:blur(8px);color:#fff;cursor:pointer;z-index:3;background:#ffffff24;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background .15s;display:flex;position:absolute;right:.75rem}.lightbox-close:hover,.lightbox-close:focus-visible{background:#ffffff3d}.lightbox-counter{top:calc(env(safe-area-inset-top,0px) + .9rem);color:#ffffffe6;letter-spacing:.02em;z-index:2;pointer-events:none;font-size:.8rem;font-weight:600;position:absolute;left:50%;transform:translate(-50%)}.lightbox-arrow{-webkit-backdrop-filter:blur(8px);color:#fff;cursor:pointer;z-index:3;background:#ffffff24;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-arrow:hover,.lightbox-arrow:focus-visible{background:#ffffff3d}.lightbox-arrow-left{left:.5rem}.lightbox-arrow-right{right:.5rem}.share-page{background:var(--bg-body);flex-direction:column;min-height:100dvh;display:flex}.share-main{flex-direction:column;flex:1;align-items:center;width:100%;max-width:480px;margin:0 auto;padding:1.5rem 1rem 2.5rem;display:flex}.share-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:100%;box-shadow:var(--shadow-card);overflow:hidden}.share-hero{aspect-ratio:16/10;background:var(--brand-gradient-soft);position:relative}.share-hero-img{object-fit:cover;width:100%;height:100%;display:block}.share-hero-badge{color:#fff;-webkit-backdrop-filter:blur(8px);background:#1118279e;border-radius:999px;align-items:center;gap:.3rem;padding:.3rem .6rem;font-size:.72rem;font-weight:600;display:inline-flex;position:absolute}.share-hero-loc{bottom:.75rem;left:.75rem}.share-hero-more{top:.75rem;right:.75rem}.share-body{padding:1.25rem}.share-author{align-items:center;gap:.7rem;margin-bottom:.9rem;display:flex}.share-avatar{background:var(--brand-gradient);color:#fff;width:44px;height:44px;font-size:1.05rem;font-weight:700;display:flex}.share-author-meta{flex-direction:column;min-width:0;display:flex}.share-author-name{color:var(--text-main);font-size:.98rem;font-weight:700}.share-author-sub{color:var(--text-muted);text-transform:capitalize;font-size:.8rem}.share-headline{letter-spacing:-.02em;color:var(--text-main);margin:0 0 1rem;font-size:1.4rem;font-weight:800;line-height:1.2}.share-stats{grid-template-columns:repeat(2,1fr);gap:.6rem;margin-bottom:1.25rem;display:grid}.share-stat{background:var(--bg-body);border-radius:var(--radius-md);color:var(--primary-color);flex-direction:column;align-items:flex-start;gap:.15rem;padding:.75rem .85rem;display:flex}.share-stat-val{color:var(--text-main);margin-top:.35rem;font-size:1.15rem;font-weight:700;line-height:1}.share-stat-val em{color:var(--text-muted);margin-left:1px;font-size:.7rem;font-style:normal;font-weight:600}.share-stat-lbl{color:var(--text-muted);font-size:.72rem;font-weight:500}.share-gate{text-align:center;background:var(--brand-gradient-soft);border-radius:var(--radius-lg);padding:1.35rem 1.15rem}.share-gate-lock{background:var(--surface-card);width:40px;height:40px;color:var(--primary-color);box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;margin:0 auto .6rem;display:flex}.share-gate-title{color:var(--text-main);margin:0 0 .3rem;font-size:1.05rem;font-weight:700}.share-gate-text{color:var(--text-body);margin:0 0 1rem;font-size:.86rem;line-height:1.5}.share-gate-cta{justify-content:center;width:100%;padding:.8rem;font-size:.95rem}.share-gate-alt{color:var(--text-muted);margin:.75rem 0 0;font-size:.82rem}.share-gate-alt a{color:var(--primary-color);font-weight:600;text-decoration:none}.share-gate-alt a:hover{text-decoration:underline}.share-tagline{text-align:center;max-width:380px;color:var(--text-muted);margin:1.5rem auto 0;font-size:.82rem;line-height:1.6}.share-tagline strong{color:var(--text-body);font-weight:700}.share-footer{color:var(--text-muted);align-items:center;gap:.5rem;margin-top:1.25rem;font-size:.8rem;display:flex}.share-footer a{color:var(--text-muted);text-decoration:none}.share-footer a:hover{color:var(--primary-color)}.share-btn-wrap{display:inline-flex;position:relative}.share-toast{white-space:nowrap;color:#fff;background:var(--text-main);box-shadow:var(--shadow-sm);z-index:20;border-radius:999px;padding:.3rem .6rem;font-size:.72rem;font-weight:600;animation:.15s fadeIn;position:absolute;top:calc(100% + 8px);right:0}.share-sheet-overlay{z-index:1000;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom));background:#00000073;justify-content:center;align-items:flex-end;animation:.15s fadeIn;display:flex;position:fixed;inset:0}@media (min-width:480px){.share-sheet-overlay{align-items:center}}.share-sheet{border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-hover);background:#fff;padding:.4rem}.share-sheet-item{text-align:left;width:100%;color:var(--text-main);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;align-items:center;gap:.85rem;padding:.9rem 1rem;font-size:.95rem;font-weight:600;display:flex}.share-sheet-item:hover{background:var(--border-subtle)}.share-sheet-item:disabled{opacity:.5;cursor:default}.share-sheet-item svg{color:var(--text-muted);flex-shrink:0}.share-sheet-lg{padding:.75rem .75rem 1rem}.share-sheet-head{color:var(--text-main);justify-content:space-between;align-items:center;padding:.35rem .5rem .7rem;font-size:.95rem;font-weight:700;display:flex}.share-sheet-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.25rem;display:inline-flex}.share-carousel{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:14px;padding:5px 0;display:flex;overflow-x:auto}.share-carousel::-webkit-scrollbar{display:none}.share-carousel:before,.share-carousel:after{content:"";flex:0 0 calc(18% - 14px)}.share-slide{scroll-snap-align:center;aspect-ratio:1080/1920;background:var(--border-subtle);box-shadow:var(--shadow-sm);border-radius:20px;flex:0 0 64%;transition:box-shadow .15s;overflow:hidden}.share-slide.is-active{box-shadow:0 0 0 3px var(--primary-color), var(--shadow-sm)}.share-slide img{object-fit:cover;width:100%;height:100%;display:block}.share-slide{justify-content:center;align-items:center;display:flex}.share-slide-spinner{color:var(--text-muted)}.share-slide.is-sticker .share-slide-spinner{color:#ffffffb3}.share-slide.is-sticker{background:linear-gradient(#0e2f2a 0%,#0b1220 100%);justify-content:center;align-items:center;display:flex}.share-slide.is-sticker img{object-fit:contain;width:78%;height:auto}.share-photo-picker{scrollbar-width:none;gap:8px;margin:-.3rem 0 1rem;padding:2px .5rem;display:flex;overflow-x:auto}.share-photo-picker::-webkit-scrollbar{display:none}.share-photo-thumb{cursor:pointer;background:var(--border-subtle);opacity:.6;border:2px solid #0000;border-radius:10px;flex:none;width:48px;height:48px;padding:0;transition:opacity .15s,border-color .15s;overflow:hidden}.share-photo-thumb:first-child{margin-left:auto}.share-photo-thumb:last-child{margin-right:auto}.share-photo-thumb.active{border-color:var(--primary-color);opacity:1}.share-photo-thumb img{object-fit:cover;width:100%;height:100%;display:block}.share-dots{justify-content:center;align-items:center;gap:6px;margin:.7rem 0 1rem;display:flex}.share-dot{background:var(--border-color);cursor:pointer;border:none;border-radius:999px;width:6px;height:6px;padding:0;transition:width .15s,background .15s}.share-dot.active{background:var(--primary-color);width:16px}.share-targets{flex-direction:column;gap:.15rem;display:flex}.share-sheet-item.is-primary{background:var(--brand-gradient);color:#fff}.share-sheet-item.is-primary svg{color:#fff}.share-sheet-item.is-primary:hover{background:var(--brand-gradient);filter:brightness(1.05)}.status-page{background:var(--bg-body);text-align:center;justify-content:center;align-items:center;min-height:100dvh;padding:2rem 1.5rem;display:flex}.status-inner{max-width:380px}.status-emoji{margin-bottom:1rem;font-size:2.75rem;line-height:1}.status-code{letter-spacing:.15em;color:var(--primary-color);margin:0 0 .35rem;font-size:.85rem;font-weight:700}.status-title{letter-spacing:-.02em;color:var(--text-main);margin:0 0 .6rem;font-size:1.5rem;font-weight:800}.status-text{color:var(--text-body);margin:0 0 1.75rem;font-size:.95rem;line-height:1.6}.status-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.status-actions .btn{padding:.75rem 1.5rem}.legal-page{background:var(--bg-body);min-height:100dvh}.legal-main{max-width:680px;margin:0 auto;padding:2rem 1.25rem 3rem}.legal-devnote{color:#92400e;border-radius:var(--radius-md);background:#fef3c7;border:1px solid #fde68a;margin-bottom:2rem;padding:.9rem 1rem;font-size:.85rem;line-height:1.55}.legal-content{color:var(--text-body)}.legal-content h1{letter-spacing:-.02em;color:var(--text-main);margin:0 0 1.25rem;font-size:1.9rem;font-weight:800}.legal-content h2{color:var(--text-main);margin:1.75rem 0 .5rem;font-size:1.05rem;font-weight:700}.legal-content p{margin:0 0 .85rem;font-size:.95rem;line-height:1.7}.legal-content ul{margin:0 0 .85rem;padding-left:1.25rem}.legal-content li{margin-bottom:.3rem;font-size:.95rem;line-height:1.7}.legal-content a{color:var(--primary-color);word-break:break-word;text-decoration:underline}.legal-lead{color:var(--text-muted);font-size:1rem!important}.legal-updated{color:var(--text-muted);margin-top:2rem!important;font-size:.85rem!important}.legal-footer{border-top:1px solid var(--border-color);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:3rem;padding-top:1.25rem;font-size:.85rem;display:flex}.legal-footer a{color:var(--text-muted);text-decoration:none}.legal-footer a:hover{color:var(--primary-color)}.settings-legal{color:var(--text-muted);justify-content:center;align-items:center;gap:.5rem;margin-top:2rem;font-size:.82rem;display:flex}.settings-legal a{color:var(--text-muted);text-underline-offset:2px;text-decoration:underline}.settings-legal a:hover{color:var(--primary-color)}.plan-card{box-shadow:var(--shadow-hover);position:relative}.plan-cards-stack{flex-direction:column;gap:1rem;width:100%;display:flex}.premium-pitch-icon.is-free{background:var(--brand-gradient);color:#fff;box-shadow:0 4px 14px #05966940}.plan-active-badge{color:var(--primary-color);background:var(--primary-light);border-radius:999px;padding:.2rem .55rem;font-size:.68rem;font-weight:700;position:absolute;top:.9rem;right:.9rem}.btn-link{color:var(--text-muted);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;padding:0;font-size:.78rem;font-weight:600;text-decoration:underline}.btn-link:hover{color:var(--text-main)}.plan-outlook{color:var(--text-muted);text-align:left;width:100%;margin:-.75rem 0 1rem;font-size:.78rem}.plan-lead{color:var(--text-main);text-align:left;width:100%;margin:.25rem 0 -.15rem;font-size:.78rem;font-weight:700}.push-permission-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.push-permission-sheet{background:var(--surface-card);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-width:480px;box-shadow:var(--shadow-hover);padding:1.75rem 1.5rem calc(1.75rem + env(safe-area-inset-bottom));text-align:center;animation:.25s ease-out fadeIn}.push-permission-icon{background:var(--brand-gradient);width:56px;height:56px;box-shadow:var(--shadow-card);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1rem;display:flex}.push-permission-title{margin-bottom:.5rem;font-size:1.15rem;font-weight:700}.push-permission-body{color:var(--text-muted);margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.push-permission-actions{flex-direction:column;gap:.625rem;display:flex}.stats-page-stack.detail-stack{gap:.5rem}.stats-page-stack>.stats-topbar{margin-top:.5rem;margin-bottom:.5rem}.stats-topbar{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.section-more-link{color:var(--primary-color);flex-shrink:0;align-items:center;gap:.1rem;font-size:.8rem;font-weight:700;display:inline-flex}.section-more-link svg{flex-shrink:0}.year-scope-menu{flex-shrink:0;position:relative}.year-scope-trigger{color:var(--primary-color);cursor:pointer;background:0 0;border:none;align-items:center;gap:.2rem;padding:0;font-size:.8rem;font-weight:700;display:inline-flex}.year-scope-trigger svg{flex-shrink:0;transition:transform .15s}.year-scope-trigger.open svg{transform:rotate(180deg)}.year-scope-list{z-index:50;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-hover);min-width:7rem;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden}.year-scope-item{text-align:left;width:100%;color:var(--text-body);cursor:pointer;background:0 0;border:none;padding:.6rem 1rem;font-size:.85rem;font-weight:600;display:block}.year-scope-item:hover{background:var(--border-subtle)}.year-scope-item.active{color:var(--primary-color);font-weight:800}.scope-chip-trigger{align-items:center;gap:.2rem;font-family:inherit;display:inline-flex}.scope-chip-trigger svg{flex-shrink:0;transition:transform .15s}.scope-chip-trigger.open svg{transform:rotate(180deg)}.stats-sticky-bar{--stats-sticky-top:calc(var(--header-height) + env(safe-area-inset-top));z-index:90;left:0;right:0;top:var(--stats-sticky-top);background:var(--brand-gradient-soft);background-size:100vw 100vh;background-position:0 calc(-1 * var(--stats-sticky-top));position:fixed}.stats-sticky-inner{align-items:center;gap:.75rem;height:2.75rem;display:flex}.stats-sticky-titles{flex:1;align-self:stretch;min-width:0;position:relative;overflow:hidden}.stats-sticky-titles .stats-section-title{white-space:nowrap;position:absolute;left:0;right:0}.stats-sticky-controls{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.stats-topbar>.stats-sticky-controls{flex-shrink:1;gap:.5rem;min-width:0}.profile-activities-more{align-self:center;margin-top:.25rem;padding:.4rem}.venue-activities-section{flex-direction:column;gap:.875rem;display:flex}.streak-week-card{align-items:center;gap:.7rem;padding:.875rem 1rem;display:flex}.streak-week-icon{width:40px;height:40px;color:var(--text-muted);background:var(--border-subtle);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.streak-week-icon.on{color:#f97316;background:#f973161f}.streak-week-body{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.streak-week-main{align-items:baseline;gap:.35rem;display:flex}.streak-week-value{color:var(--text-main);font-size:1.4rem;font-weight:800;line-height:1.1}.streak-week-value.muted{color:var(--text-muted)}.streak-week-label{color:var(--text-body);font-size:.82rem;font-weight:600}.stats-dual-row .streak-week-card{gap:.55rem}.stats-dual-row .streak-week-icon{width:36px;height:36px}.stats-dual-row .streak-week-main{flex-wrap:wrap;row-gap:.05rem}.diary-weeks{flex-direction:column;display:flex}.diary-week-row{flex-direction:column;gap:.3rem;padding:1rem 0;display:flex}.diary-week-row+.diary-week-row,.diary-day-feed+.diary-week-row{border-top:1px solid var(--border-subtle)}.diary-weekday-row{padding:0 0 .35rem}.diary-week-head{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.diary-week-range{color:var(--text-muted);padding-left:calc(48px + .5rem);font-size:.68rem;font-weight:600}.diary-week-main{align-items:center;gap:.5rem;display:flex}.diary-week-streak{flex:0 0 48px;justify-content:center;align-items:center;display:flex}.diary-week-streak-value{color:var(--primary-color);justify-content:center;align-items:center;display:inline-flex;position:relative}.diary-week-streak-number{color:#fff;justify-content:center;align-items:center;padding-top:7px;font-size:.85rem;font-weight:800;line-height:1;display:flex;position:absolute;inset:0}.diary-weekday-label{color:var(--text-muted);text-align:center;font-size:.62rem;font-weight:700}.diary-week-dots{flex:1;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.diary-day-slot{aspect-ratio:1;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.diary-day-slot:disabled{cursor:default}.diary-day-slot:not(:disabled):active .diary-day-dot{transform:scale(.85)}.diary-day-dot{background:var(--border-subtle);border-radius:50%;width:8px;height:8px;transition:transform .1s,width .1s,height .1s,box-shadow .15s,background .15s}.diary-day-dot.trained{background:var(--primary-color)}.diary-day-dot.size-sm{width:14px;height:14px}.diary-day-dot.size-md{width:20px;height:20px}.diary-day-dot.size-lg{width:26px;height:26px}.diary-day-dot.is-today{box-shadow:0 0 0 2px var(--primary-color)}.diary-day-dot.is-today.trained{box-shadow:inset 0 0 0 1.5px #fff}.diary-week-total{text-align:right;color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.68rem;font-weight:600}.diary-day-slot.is-open .diary-day-dot{box-shadow:0 0 0 4px #0596692e}.diary-day-slot.is-open .diary-day-dot.is-today{box-shadow:0 0 0 4px #0596692e, 0 0 0 2px var(--primary-color)}.diary-day-slot.is-open .diary-day-dot.is-today.trained{box-shadow:0 0 0 4px #0596692e,inset 0 0 0 1.5px #fff}.diary-teaser-card{color:inherit;flex-direction:column;gap:.6rem;padding:.875rem 1rem;text-decoration:none;display:flex}.diary-teaser-head{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.diary-teaser-titles{flex-direction:column;gap:.1rem;min-width:0;display:flex}.diary-teaser-title{color:var(--text-main);font-size:.85rem;font-weight:800}.diary-teaser-sub{color:var(--text-muted);font-size:.7rem;font-weight:600}.diary-teaser-chevron{color:var(--text-muted);flex-shrink:0;margin-top:.1rem}.diary-teaser-dot-slot{justify-content:center;align-items:center;padding:.1rem 0;display:flex}.diary-teaser-dot-slot .diary-day-dot{aspect-ratio:1;width:28%;height:auto}.diary-teaser-dot-slot .diary-day-dot.size-sm{width:60%}.diary-teaser-dot-slot .diary-day-dot.size-md{width:80%}.diary-teaser-dot-slot .diary-day-dot.size-lg{width:100%}.diary-day-feed{padding:.5rem 0 .25rem}.diary-day-feed .feed-list{max-width:none;margin:0;padding:0}.diary-day-feed-loading{justify-content:center;align-items:center;padding:2.5rem 0;display:flex}.calendar-page-shell{height:100dvh;padding-top:calc(var(--header-height) + env(safe-area-inset-top));flex-direction:column;display:flex;overflow:hidden}.calendar-page-shell .detail-header{position:fixed;left:0;right:0}.calendar-header-nav{white-space:nowrap;align-items:center;gap:.2rem;font-size:.92rem;display:flex}.calendar-header-nav .detail-header-btn{width:34px;height:34px}.calendar-header-nav .detail-header-btn:disabled{opacity:.4}.calendar-today-btn{border:1.5px solid var(--border-color);border-radius:999px;width:auto;height:32px;padding:0 .7rem;font-size:.78rem;font-weight:700}.calendar-week-grid{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scrollbar-width:none;flex:1;min-height:0;overflow:auto}.calendar-week-grid::-webkit-scrollbar{display:none}.calendar-week-columns{width:max-content;padding:.25rem 1rem calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + .75rem);align-items:flex-start;gap:.6rem;display:flex}.calendar-day-column{scroll-snap-align:center;flex:0 0 190px;width:190px;position:relative}.calendar-day-column-head{border-radius:var(--radius-md);z-index:2;background:var(--bg-body);justify-content:center;align-items:baseline;gap:.35rem;margin-bottom:.5rem;padding:.4rem .6rem;display:flex;position:sticky;top:0}.calendar-day-column-head-weekday{color:var(--text-main);font-size:.8rem;font-weight:700}.calendar-day-column-head-num{color:var(--text-muted);font-size:.78rem}.calendar-day-column.is-today .calendar-day-column-head{background:var(--primary-light)}.calendar-day-column.is-today .calendar-day-column-head-weekday,.calendar-day-column.is-today .calendar-day-column-head-num{color:var(--primary-color)}.calendar-day-column-cards{flex-direction:column;gap:.5rem;display:flex}.calendar-day-plus{border:1.5px dashed var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-card);width:36px;height:36px;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.calendar-day-plus:active{background:var(--bg-body)}.calendar-day-plus-overlay{bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + .75rem);margin:.5rem auto 0;position:sticky}.training-card.calendar-col-card{flex:none;align-self:stretch;width:100%}.training-card{text-align:left;min-width:0;color:inherit;font:inherit;flex-direction:column;flex:0 0 190px;align-self:stretch;gap:.4rem;padding:.65rem .7rem;text-decoration:none;display:flex}.training-card.is-planned{box-shadow:none;border-style:dashed}.training-card.is-draft{box-shadow:none;border-style:dotted;position:relative}.training-card-draft-badge{letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);font-size:.6rem;font-weight:800;position:absolute;top:.55rem;right:.65rem}.training-card.is-rejected{box-shadow:none;opacity:.75;border-style:dotted;border-color:#e11d48;position:relative}.training-card-draft-badge.is-rejected{color:#fff;background:#e11d48;border-radius:999px;padding:.15rem .45rem;top:.4rem;right:.55rem;box-shadow:0 1px 3px #00000026}.training-card.is-coach-origin{position:relative}.training-card-draft-badge.is-coach-origin{color:#fff;background:#0369a1;border-radius:999px;padding:.15rem .45rem;top:.4rem;right:.55rem;box-shadow:0 1px 3px #00000026}.training-card:active{background:var(--bg-body)}.training-card-who{align-items:center;gap:.4rem;min-width:0;display:flex}.training-card-who-avatar{border-radius:50%;flex-shrink:0;width:20px;height:20px;overflow:hidden}.training-card-who-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.training-card-line{align-items:center;gap:.4rem;min-width:0;line-height:1.2;display:flex}.training-card-round-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex;overflow:hidden}.training-card-round-icon.is-sport{color:var(--primary-color);background:#0596691a}.training-card-line-text{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.training-card-time{color:var(--text-main);font-variant-numeric:tabular-nums;font-size:.9rem;font-weight:700}.calendar-repeat-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.calendar-repeat-label{color:var(--text-main);font-size:.85rem}.calendar-delete-rule-btn{border-top:1px solid var(--border-subtle);margin-top:.3rem;padding-top:.6rem}.calendar-day-sheet{background:var(--surface-card);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-width:480px;max-height:100%;box-shadow:var(--shadow-hover);flex-direction:column;margin:0 auto;animation:.24s cubic-bezier(.22,1,.36,1) badge-info-pop;display:flex}.calendar-day-sheet-head{flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.15rem .75rem;display:flex}.calendar-day-sheet-for{color:var(--primary-color);background:var(--primary-light);border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:700}button.calendar-day-sheet-for{cursor:pointer;border:none;align-items:center;gap:.3rem;display:inline-flex}.calendar-day-sheet-for-avatar{border-radius:50%;flex-shrink:0;width:16px;height:16px;overflow:hidden}.calendar-day-sheet-for-wrap{display:inline-flex;position:relative}.calendar-day-sheet-for-dropdown{min-width:180px}.calendar-day-sheet-for-picker{border:1px solid var(--border-light);border-radius:10px;margin-top:1rem;overflow:hidden}.calendar-day-sheet-body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;gap:.85rem;min-height:0;padding:.25rem 1.15rem 1rem;scroll-padding-bottom:1.25rem;display:flex;overflow-y:auto}.calendar-day-sheet-foot{padding:.75rem 1.15rem calc(.75rem + env(safe-area-inset-bottom));border-top:1px solid var(--border-subtle);background:var(--surface-card);flex-direction:column;flex-shrink:0;gap:.3rem;display:flex}body.keyboard-open .calendar-day-sheet-foot{padding-bottom:.75rem}.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.kpi-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid-2 .kpi-tile{flex-direction:column;justify-content:center;min-height:5.5rem;display:flex}.kpi-tile{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-sm);min-width:0;padding:.75rem .5rem}.kpi-value{color:var(--text-main);overflow-wrap:anywhere;font-size:1.1rem;font-weight:800;line-height:1.15}.kpi-label{color:var(--text-muted);margin-top:.15rem;font-size:.72rem}.kpi-value .profile-bilanz-won,.kpi-value .profile-bilanz-loss{font-size:inherit;font-weight:inherit}.kpi-bilanz-sep{color:var(--text-muted)}.stats-page-stack .kpi-grid-2 .kpi-tile{justify-content:flex-start;padding-top:1.1rem}.stats-page-stack .kpi-grid .kpi-label{text-wrap:balance}.stats-page-stack .kpi-grid{grid-auto-rows:1fr}.stats-page-stack .kpi-grid .kpi-tile{flex-direction:column;justify-content:flex-start;display:flex}html:not(.floss-web) .stats-page-stack .kpi-grid .kpi-tile{justify-content:center}html:not(.floss-web) .stats-page-stack .kpi-grid-2 .kpi-tile{padding-top:.75rem}.stats-page-stack .kpi-grid:not(.kpi-grid-2) .kpi-tile{padding-left:.35rem;padding-right:.35rem}.stats-page-stack .kpi-grid:not(.kpi-grid-2) .kpi-value{white-space:nowrap;overflow-wrap:normal;font-variant-numeric:tabular-nums;font-size:1rem}.stats-venue-sep{background:color-mix(in srgb, var(--text-muted) 55%, transparent);flex-shrink:0;width:1px;height:1.1rem}.stats-venue-count{text-align:right;min-width:4.6rem;color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:.82rem;font-weight:600}.stats-venue-row .hall-rank-num,.stats-venue-row .hall-rank-crown{text-align:center;flex-shrink:0;width:1.4rem;min-width:1.4rem}.stats-page-stack .kpi-grid-2>.kpi-tile:last-child:nth-child(odd){grid-column:1/-1}.kpi-hint{color:var(--text-muted);margin-top:.15rem;font-size:.65rem;font-weight:600}.kpi-grid-2 .kpi-value{font-size:1.35rem}.stats-block{padding:.875rem 1rem 1rem}.stats-section-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.stats-section-title{letter-spacing:-.01em;color:var(--text-main);align-items:center;gap:.5rem;font-size:.8rem;font-weight:800;display:flex}.stats-section-title:before{content:"";background:var(--brand-gradient);border-radius:2px;flex-shrink:0;width:3px;height:1rem}.stats-section-right{align-items:center;display:flex}.hall-kind-group+.hall-kind-group{margin-top:1.25rem}.month-cards{flex-direction:column;gap:.5rem;display:flex}.month-card{min-height:4rem;color:inherit;align-items:center;gap:.6rem;padding:.85rem 1rem;text-decoration:none;display:flex}.month-card.is-current .month-list-name{color:var(--primary-color)}.month-section{padding:1rem}.month-delta{margin-left:.3rem;font-size:.7rem;font-weight:700}.month-delta.is-up{color:var(--success-text)}.month-delta.is-down{color:var(--text-muted)}.month-plevel-card{flex-direction:column;align-items:flex-start;width:100%;padding:1rem;display:flex}.month-plevel-head{align-items:baseline;gap:.4rem;display:flex}.month-plevel-extra{flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.5rem;display:flex}.month-record{letter-spacing:.02em;color:#8a6508;background:#d4a01729;border-radius:999px;padding:.2rem .5rem;font-size:.68rem;font-weight:700}.month-low{color:var(--text-muted);font-size:.7rem;font-weight:600}.month-plevel-card .week-trend-chart{width:100%;margin-top:.85rem}.month-trend-scrub{touch-action:none;cursor:pointer}.month-highlight{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.month-highlight-value{color:var(--text-main);font-size:1.05rem;font-weight:800}.month-highlight-icon{vertical-align:-2px;color:var(--text-muted);margin-right:.1rem}.month-highlight-meta{color:var(--text-muted);font-size:.8rem;font-weight:700}.month-medal.medal-1{color:var(--medal-1)}.month-medal.medal-2{color:var(--medal-2)}.month-medal.medal-3{color:var(--medal-3)}.month-partner-row{color:inherit;align-items:center;gap:.6rem;text-decoration:none;display:flex}.month-partner-avatar{border-radius:50%;flex-shrink:0;width:34px;height:34px;overflow:hidden}.month-partner-name{min-width:0;color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.9rem;font-weight:700;overflow:hidden}.month-rank-stack{flex-direction:column;gap:.5rem;display:flex}.month-section .hall-rank-banner{margin:0}.month-nav{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.month-list-name{color:var(--text-main);flex:1;font-size:.88rem;font-weight:600}.month-list-meta{color:var(--text-muted);font-size:.76rem}.month-list-chev{opacity:.5;flex-shrink:0}.trend-chart{touch-action:none;width:100%;height:110px;display:block}.trend-xaxis{height:1rem;color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:.25rem;font-size:.62rem;position:relative}.trend-xaxis span{white-space:nowrap;position:absolute;transform:translate(-50%)}.trend-xaxis span:first-child{transform:translate(0)}.trend-xaxis span:last-child{transform:translate(-100%)}.hr-progress-curve{width:100%;height:70px;margin-top:.5rem;display:block}.heatmap-grid-wrap{gap:.35rem;display:flex}.heatmap-weekdays{flex-direction:column;flex-shrink:0;gap:3px;padding-top:0;display:flex}.heatmap-weekday{height:14px;color:var(--text-muted);align-items:center;font-size:.6rem;line-height:1;display:flex}.heatmap-grid{flex:1;gap:3px;display:flex;overflow-x:auto}.heatmap-col{flex-direction:column;flex:1;gap:3px;min-width:12px;display:flex}.heatmap-cell{aspect-ratio:1;background:var(--border-subtle);border-radius:3px;width:100%}.heatmap-cell.lvl-0{background:var(--border-subtle)}.heatmap-cell.lvl-1{background:#a7f3d0}.heatmap-cell.lvl-2{background:#6ee7b7}.heatmap-cell.lvl-3{background:#10b981}.heatmap-cell.lvl-4{background:#047857}.heatmap-legend{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:3px;margin-top:.6rem;font-size:.62rem;display:flex}.heatmap-legend .heatmap-cell{aspect-ratio:auto;width:11px;height:11px}.heatmap-legend span:first-child{margin-right:.15rem}.heatmap-legend span:last-child{margin-left:.15rem}.stats-rank-card{padding:.875rem 1rem}.leaderboard-head{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.leaderboard-title{color:var(--text-main);align-items:center;gap:.35rem;font-size:.82rem;font-weight:700;display:inline-flex}.leaderboard-title svg{color:var(--primary-color)}.leaderboard-myrank{color:var(--text-muted);font-size:.72rem;font-weight:600}.leaderboard-list{flex-direction:column;display:flex}.leaderboard-row{color:inherit;border-radius:.5rem;align-items:center;gap:.6rem;padding:.4rem .35rem;text-decoration:none;display:flex}.leaderboard-row.me{background:#05966917}.leaderboard-rank{text-align:center;color:var(--text-muted);flex:0 0 1.5rem;font-size:.85rem;font-weight:700}.leaderboard-rank.medal-1{color:var(--medal-1)}.leaderboard-rank.medal-2{color:var(--medal-2)}.leaderboard-rank.medal-3{color:var(--medal-3)}.leaderboard-avatar{flex:none;width:30px;height:30px;position:relative;overflow:visible}.leaderboard-avatar img{object-fit:cover;border-radius:50%;width:30px;height:30px}.leaderboard-avatar-fallback{background:var(--brand-gradient);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:.8rem;font-weight:700;display:flex}.leaderboard-crown{color:#d4a017;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;display:flex;position:absolute;top:-3px;right:-3px;box-shadow:0 1px 3px #0003}.leaderboard-name{min-width:0;color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;flex:auto;font-size:.85rem;font-weight:600;overflow:hidden}.leaderboard-you{color:var(--primary-color);font-weight:700}.leaderboard-plevel{color:var(--primary-hover);flex:none;font-size:.9rem;font-weight:800}.stats-rank-row{color:inherit;align-items:center;gap:.5rem;width:100%;padding:.35rem 0;text-decoration:none;display:flex}.stats-rank-btn{cursor:pointer;text-align:left;font:inherit;background:0 0;border:none}.stats-rank-num{color:var(--text-muted);flex-shrink:0;width:18px;font-size:.8rem;font-weight:700}.stats-rank-avatar{background:var(--brand-gradient);color:#fff;width:28px;height:28px;font-size:.7rem;font-weight:700;display:flex}.stats-rank-name{white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:600;overflow:hidden}.stats-rank-exercise{flex-direction:column;flex:1;min-width:0;display:flex}.stats-rank-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;overflow:hidden}.stats-rank-count{color:var(--text-muted);white-space:nowrap;flex-shrink:0;margin-left:.4rem;font-size:.72rem}.stats-rank-chevron{color:var(--text-muted);flex-shrink:0}.stats-venue-row{min-height:4rem;color:inherit;align-items:center;gap:.6rem;padding:.6rem .7rem;text-decoration:none}.stats-venue-row .hall-rank-num{color:var(--text-muted);flex-shrink:0;font-size:.85rem;font-weight:800}.location-opt:disabled{opacity:.5;cursor:default}.podium{background:linear-gradient(180deg, var(--primary-light), #ecfdf500);border-radius:1rem;justify-content:center;align-items:flex-end;gap:.6rem;padding:1.5rem .75rem 0;display:flex}.podium-slot{min-width:0;max-width:8.5rem;color:inherit;flex-direction:column;flex:1 1 0;align-items:center;text-decoration:none;display:flex}.podium-slot.me .podium-name{color:var(--primary-color)}.podium-avatar{display:flex;position:relative}.podium-avatar img,.podium-avatar-fallback{object-fit:cover;border-radius:50%;box-shadow:0 2px 8px #00000024}.podium-place-1 .podium-avatar img,.podium-place-1 .podium-avatar-fallback{width:84px;height:84px}.podium-place-2 .podium-avatar img,.podium-place-2 .podium-avatar-fallback,.podium-place-3 .podium-avatar img,.podium-place-3 .podium-avatar-fallback{width:60px;height:60px}.podium-avatar-fallback{background:var(--brand-gradient);color:#fff;justify-content:center;align-items:center;font-weight:700;display:flex}.podium-place-1 .podium-avatar-fallback{font-size:1.7rem}.podium-place-2 .podium-avatar-fallback,.podium-place-3 .podium-avatar-fallback{font-size:1.2rem}.podium-crown{width:26px;height:26px;color:var(--medal-1);background:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-6px;right:-4px;box-shadow:0 1px 4px #00000038}.podium-name{color:var(--text-main);flex-direction:column;align-items:center;max-width:100%;margin-top:.5rem;font-size:.82rem;font-weight:700;line-height:1.15;display:flex}.podium-name-line{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.podium-place-1 .podium-name{font-size:.95rem}.podium-plevel{color:var(--primary-hover);font-size:.78rem;font-weight:800}.podium-stand{background:var(--surface-card);border:1px solid var(--border-color);border-bottom:none;border-radius:.6rem .6rem 0 0;justify-content:center;align-items:center;width:100%;margin-top:.6rem;display:flex}.podium-stand-num{font-size:1.5rem;font-weight:800}.podium-place-1 .podium-stand{height:7.5rem}.podium-place-1 .podium-stand-num{color:var(--medal-1);font-size:2rem}.podium-place-2 .podium-stand{height:5.5rem}.podium-place-2 .podium-stand-num{color:var(--medal-2)}.podium-place-3 .podium-stand{height:4.25rem}.podium-place-3 .podium-stand-num{color:var(--medal-3)}.podium-slot.is-empty{opacity:.4;cursor:default}.podium-slot.is-empty .podium-avatar-fallback{background:var(--border-color)}.medal-disc{width:60px;height:60px;font-size:1rem;font-weight:800}.stats-tournament-count{color:var(--text-main);font-size:1rem;font-weight:800}.stats-comp-grid{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:.75rem;display:grid}.stats-comp-card{flex-direction:column;min-width:0;padding:0 .85rem .2rem;display:flex}.stats-comp-head{gap:.45rem;padding:.85rem 0 .3rem}.stats-comp-head .profile-nav-title{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.stats-comp-hero{flex-direction:column;justify-content:center;gap:.55rem;height:6rem;padding-bottom:.75rem;display:flex}.stats-comp-hero-row{align-items:center;gap:.5rem;display:flex}.stats-comp-hero-row .badge{margin-left:auto}.stats-comp-num{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--text-main);align-items:baseline;font-size:2rem;font-weight:800;line-height:1;display:inline-flex}.stats-comp-num .profile-bilanz-won,.stats-comp-num .profile-bilanz-loss{font-size:inherit;font-weight:inherit}.stats-comp-num .kpi-bilanz-sep{white-space:pre}.stats-comp-bar{background:var(--border-subtle);border-radius:999px;height:6px;display:flex;overflow:hidden}.stats-comp-bar>.is-win{background:var(--primary-color)}.stats-comp-bar>.is-loss{background:var(--error-text);opacity:.55}.stats-comp-bar>.is-draw{background:var(--border-color)}.stats-comp-medals{flex-direction:row;justify-content:space-around;align-items:flex-end}.stats-comp-medal{flex-direction:column;align-items:center;gap:.35rem;display:flex}.stats-comp-medal .medal-disc{width:40px;height:40px;font-size:.8rem}.stats-comp-medal.is-gold{margin-bottom:.4rem}.stats-comp-medal.is-gold .medal-disc{width:48px;height:48px;font-size:.9rem}.stats-comp-medal.is-zero .medal-disc{opacity:.4}.stats-comp-medal.is-zero .stats-comp-medal-label{color:var(--text-muted)}.stats-comp-medal-label{font-size:.72rem;font-weight:700}.stats-comp-medal-label.rank-1{color:color-mix(in srgb, var(--medal-1) 65%, var(--text-main))}.stats-comp-medal-label.rank-2{color:var(--medal-2)}.stats-comp-medal-label.rank-3{color:var(--medal-3)}.stats-comp-list{border-top:1px solid var(--border-subtle);flex-direction:column;display:flex}.stats-comp-row{border-bottom:1px solid var(--border-subtle);min-height:3.1rem;color:inherit;align-items:center;gap:.5rem;text-decoration:none;display:flex}.stats-comp-row:last-child{border-bottom:none}.stats-comp-row-text{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.stats-comp-row .venue-row-pin{width:30px;height:30px}.stats-comp-row-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:700;overflow:hidden}.stats-comp-trophy{background:var(--primary-light);width:30px;height:30px;color:var(--primary-color);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.leaderboard-gap{text-align:center;color:var(--text-muted);letter-spacing:.15em;padding:.1rem 0 .25rem;font-size:.8rem;display:block}.leaderboard-all{border-top:1px solid var(--border-subtle);color:var(--primary-color);justify-content:center;align-items:center;gap:.2rem;margin-top:.6rem;padding-top:.6rem;font-size:.8rem;font-weight:700;text-decoration:none;display:flex}.leaderboard-sticky{left:0;right:0;bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + .5rem);z-index:99;width:100%;max-width:var(--max-content-width);pointer-events:none;margin:0 auto;padding:0 1rem;position:fixed}.leaderboard-sticky-card{border:1px solid var(--primary-color);box-shadow:0 -4px 18px #0f172a24}.zone-period-btn{border:1px solid var(--border-subtle);background:var(--surface-card);color:var(--text-muted);cursor:pointer;border-radius:999px;align-items:center;gap:.25rem;padding:.2rem .5rem;font-family:inherit;font-size:.72rem;font-weight:700;display:inline-flex}.zone-period-btn:active{border-color:var(--primary-color);color:var(--primary-color)}.zone-period-list{flex-direction:column;gap:.4rem;margin-bottom:.75rem;display:flex}.zone-period-range{gap:.5rem;margin-bottom:.75rem;display:flex}.zone-period-range .form-group{flex:1;min-width:0;margin:0}.plevel-delta{color:var(--text-muted);white-space:nowrap;margin-left:.4rem;font-size:.8rem;font-weight:700}.plevel-delta.up{color:var(--primary-color)}.plevel-delta.down{color:#dc2626}.stats-exercise-rank{flex-direction:column;gap:.5rem;display:flex}.stats-card-rank{width:18px;color:var(--text-muted);text-align:center;flex:none;font-size:.78rem;font-weight:800}.stats-partner-row{min-height:4rem;color:inherit;align-items:center;gap:.6rem;padding:.55rem .7rem;text-decoration:none}.stats-exercise-count{color:var(--text-muted);white-space:nowrap;flex-shrink:0;padding-right:.7rem;font-size:.75rem;font-weight:700}.stats-rank-empty{color:var(--text-muted);padding:.25rem 0;font-size:.8rem}.stats-match-list{flex-direction:column;gap:.5rem;display:flex}.stats-match-row{min-height:4rem;color:inherit;align-items:center;gap:.6rem;padding:.55rem .7rem;text-decoration:none}.stats-match-icon{background:var(--brand-gradient);color:#fff;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:.72rem;font-weight:700;display:inline-flex}.stats-match-row-sub{white-space:nowrap;align-items:center;gap:.4rem;display:inline-flex}.stats-match-kind-badge{flex-shrink:0;padding:.1rem .45rem;font-size:.62rem;font-weight:700}.stats-rank-detail{border-left:2px solid var(--border-color);margin-bottom:.35rem;margin-left:22px;padding-left:.5rem}.stats-rank-dates{flex-wrap:wrap;gap:.25rem;margin-top:.25rem;display:flex}.stats-rank-row>.stats-rank-name{flex:1}.plevel-card{background:linear-gradient(160deg, var(--primary-light) 0%, var(--surface-card) 55%);padding:1.1rem 1.125rem .5rem}.plevel-card-flat{padding-bottom:1.1rem}.plevel-head{align-items:center;gap:.35rem;display:flex}.plevel-head .plevel-trend{margin-left:auto}.plevel-label{text-transform:uppercase;letter-spacing:.06em;color:var(--primary-hover);font-size:.72rem;font-weight:700}.plevel-trend{color:var(--text-muted);align-items:center;gap:.15rem;font-size:.75rem;font-weight:700;display:inline-flex}.plevel-trend.up{color:var(--primary-color)}.plevel-trend.down{color:var(--error-text)}.plevel-value{color:var(--text-main);margin-top:.15rem;font-size:2.6rem;font-weight:800;line-height:1.05}.week-trend-head{align-items:baseline;gap:.5rem;padding:1rem 1rem 0;display:flex}.week-trend-week{color:var(--text-main);margin:0;font-size:1.05rem;font-weight:800}.week-trend-stats{grid-template-columns:repeat(4,1fr);gap:.5rem;padding:.6rem 1rem .9rem;display:grid}.week-trend-stat{flex-direction:column;gap:.1rem;min-width:0;display:flex}.week-trend-stat-label{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.66rem;font-weight:600;overflow:hidden}.week-trend-stat-value{color:var(--text-main);font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:800;line-height:1.15}.week-trend-chart{gap:.25rem;padding-left:.4rem;display:flex}.week-trend-yaxis{text-align:right;height:132px;color:var(--text-muted);font-variant-numeric:tabular-nums;flex-direction:column;flex:none;justify-content:space-between;padding-top:12px;font-size:.62rem;font-weight:600;display:flex;transform:translateY(-.35rem)}.week-trend-track{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex:1;min-width:0;overflow-x:auto}.week-trend-track::-webkit-scrollbar{display:none}.week-trend-scroll{min-width:100%}.week-trend-plot{height:132px;position:relative}.week-trend-grid{display:flex;position:absolute;inset:0}.week-trend-gridline{flex:1 1 0;position:relative}.week-trend-gridline:before{content:"";background:var(--border-subtle);width:1px;position:absolute;top:0;bottom:0;left:50%}.week-trend-area{position:absolute;inset:12px 0 0}.week-trend-plot.has-bubble{height:150px}.week-trend-plot.has-bubble .week-trend-area{top:30px}.week-trend-line{width:100%;height:100%;position:absolute;inset:0}.week-trend-dot{background:var(--primary-color);border-radius:50%;width:7px;height:7px;margin-bottom:-3.5px;margin-left:-3.5px;position:absolute}.week-trend-dot.empty{background:var(--border-color)}.week-trend-dot.active{width:12px;height:12px;box-shadow:0 0 0 3px var(--primary-light);margin-bottom:-6px;margin-left:-6px}.week-trend-cols{display:flex;position:absolute;inset:0}.week-trend-col{cursor:pointer;background:0 0;border:none;flex:1 1 0;min-width:0;padding:0}.week-trend-bubble{background:var(--primary-color);color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-sm);border-radius:999px;padding:.15rem .45rem;font-size:.7rem;font-weight:800;position:absolute;transform:translate(-50%,-.6rem)}.week-trend-xaxis{margin-top:.3rem;display:flex}.week-trend-xlabel{min-width:0;color:var(--text-muted);text-align:center;white-space:nowrap;flex:1 1 0;font-size:.6rem;font-weight:600}.week-trend-xlabel.active{color:var(--primary-color);font-weight:800}.follow-overlay{z-index:1000;-webkit-backdrop-filter:blur(3px);background:#11182773;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.follow-modal{background:var(--surface-card);border-radius:var(--radius-lg);flex-direction:column;width:min(100%,420px);max-height:min(72vh,620px);display:flex;overflow:hidden;box-shadow:0 24px 70px #00000047}.follow-modal-head{border-bottom:1px solid var(--border-subtle);flex:none;justify-content:space-between;align-items:center;gap:.5rem;padding:.875rem 1rem;display:flex}.follow-modal-title{color:var(--text-main);margin:0;font-size:1.05rem;font-weight:800}.follow-modal-close{width:32px;height:32px;color:var(--text-main);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.follow-modal-close:hover{background:var(--border-subtle)}.follow-modal-body{flex-direction:column;flex:auto;gap:.25rem;min-height:0;padding:.5rem;display:flex;overflow-y:auto}.follow-modal-empty{color:var(--text-muted);text-align:center;margin:0;padding:1.5rem .5rem;font-size:.875rem}.photo-strip{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:.5rem;margin:1rem -1rem 0;padding:0 1rem;scroll-padding-left:1rem;display:flex;overflow-x:auto}.photo-strip::-webkit-scrollbar{display:none}.photo-strip-item{cursor:pointer;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--border-subtle);width:124px;height:124px;box-shadow:var(--shadow-sm);scroll-snap-align:start;flex:none;padding:0;overflow:hidden}.photo-strip-item img{object-fit:cover;width:100%;height:100%;display:block}.photo-strip-all{background:var(--surface-card);color:var(--primary-color);flex-direction:column;justify-content:center;align-items:center;gap:.3rem;font-size:.76rem;font-weight:700;text-decoration:none;display:flex}.plevel-info-btn{width:22px;height:22px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.plevel-info-btn:hover{background:var(--border-subtle);color:var(--text-main)}.plevel-open{color:var(--text-muted);justify-content:center;align-items:center;margin-left:auto;display:inline-flex}.plevel-info-body{color:var(--text-main);gap:.6rem;padding:1rem;font-size:.86rem;line-height:1.5}.plevel-info-body p{margin:0}.plevel-info-head{color:var(--text-main);margin:.4rem 0 0;font-size:.8rem;font-weight:800}.plevel-info-list{flex-direction:column;gap:.3rem;margin:0;padding-left:1.1rem;display:flex}.plevel-info-foot{color:var(--text-muted)}.plevel-day-row.linked{color:inherit;cursor:pointer;text-decoration:none}.plevel-day-row.linked:hover{background:#0596690d}.plevel-day-chev{color:var(--text-muted);flex-shrink:0}.media-grid{grid-template-columns:repeat(3,1fr);gap:.35rem;display:grid}.media-grid-item{aspect-ratio:1;cursor:pointer;border-radius:var(--radius-sm);background:var(--border-subtle);border:none;padding:0;position:relative;overflow:hidden}.media-grid-item img{object-fit:cover;width:100%;height:100%;display:block}.lightbox-source{left:0;right:0;bottom:calc(env(safe-area-inset-bottom,0px) + 1.25rem);z-index:2;justify-content:center;align-items:center;gap:.75rem;padding:0 1rem;display:flex;position:absolute}.lightbox-source-date{color:#fff;-webkit-backdrop-filter:blur(8px);background:#ffffff29;border-radius:999px;padding:.4rem .7rem;font-size:.85rem;font-weight:700}.profile-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.35rem;margin:.2rem 0 0;font-size:.78rem;font-weight:600;display:flex}.profile-meta-dot{color:var(--border-color)}.profile-meta-premium{color:#d4a017;font-weight:700}.activity-load-more{justify-content:center;padding:.875rem 0 .25rem;display:flex}.plevel-sub{color:var(--text-muted);margin-bottom:.35rem;font-size:.78rem}.tier-medal{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative;box-shadow:0 2px 6px #0003,inset 0 1px 1px #fff6}.tier-ring{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.tier-ring.locked{filter:grayscale(.5)opacity(.7)}.tier-ring-svg{pointer-events:none;position:absolute;inset:0}.tier-ring-line{stroke:var(--border-strong,#cbd5e1)}.tier-ring-text{fill:var(--text-main);paint-order:stroke;stroke:var(--surface-card,#fff);stroke-linejoin:round;stroke-linecap:round;font-weight:800}.tier-ring-center{z-index:1;display:inline-flex;position:relative}.tier-progress-ring-track{stroke:var(--border-subtle)}.tier-progress-ring-fill{stroke:var(--primary-color);transition:stroke-dashoffset .5s}.tier-progress-ring-fill.maxed{stroke:#d4a017}@media (prefers-color-scheme:dark){.tier-ring-line,.tier-progress-ring-track{stroke:var(--border-color)}}.tier-medal:before{content:"";pointer-events:none;background:linear-gradient(160deg,#ffffff8c 0%,#fff0 42%);border-radius:50%;position:absolute;inset:0}.tier-medal-inner{z-index:1;filter:drop-shadow(0 1px 1px #00000040);justify-content:center;align-items:center;display:inline-flex;position:relative}.tier-medal.locked{filter:grayscale(.85)opacity(.55);box-shadow:inset 0 0 0 1px var(--border-color)}.tier-bronze{background:linear-gradient(145deg,#e8a46b 0%,#b87333 45%,#8c4a1e 100%)}.tier-silver{color:#3a3f45;background:linear-gradient(145deg,#f5f7fa 0%,#c7ced6 45%,#8a929c 100%)}.tier-silver .tier-medal-inner{filter:drop-shadow(0 1px 1px #ffffff80)}.tier-gold{color:#5a4300;background:linear-gradient(145deg,#fce79a 0%,#e8b923 45%,#b8860b 100%)}.tier-platinum{color:#37424d;background:linear-gradient(145deg,#f4fbff 0%,#cbd9e4 45%,#9aaab8 100%)}.tier-diamond{color:#10465e;background:linear-gradient(145deg,#e6fbff 0%,#7de3f0 40%,#3aa8d8 75%,#5b7be0 100%);box-shadow:0 2px 8px #3aa8d866,inset 0 1px 1px #fff9}.tier-obsidian{color:#fff;background:linear-gradient(145deg,#4a4a52 0%,#1c1c22 45%,#050506 100%);box-shadow:0 2px 10px #00000080,inset 0 1px 2px #ffffff40}.tier-diamond:after,.tier-obsidian:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 30%,#ffffff8c 48%,#0000 62%) 0 0/250% 250%;border-radius:50%;animation:3.2s ease-in-out infinite tier-shimmer;position:absolute;inset:0}@keyframes tier-shimmer{0%,to{background-position:150% 150%}50%{background-position:-50% -50%}}.tier-fill-bronze{background:linear-gradient(90deg,#b87333,#e8a46b)}.tier-fill-silver{background:linear-gradient(90deg,#8a929c,#e0e5ea)}.tier-fill-gold{background:linear-gradient(90deg,#b8860b,#f0c929)}.tier-fill-platinum{background:linear-gradient(90deg,#9aaab8,#e4eef5)}.tier-fill-diamond{background:linear-gradient(90deg,#3aa8d8,#7de3f0)}.tier-fill-obsidian{background:linear-gradient(90deg,#1c1c22,#6a6a75)}.challenge-detail-hero{text-align:center;flex-direction:column;align-items:center;gap:.35rem;padding:1.5rem 1.25rem;display:flex}.challenge-detail-rank{color:var(--text-main);margin-top:.3rem;font-size:1.35rem;font-weight:800}.challenge-detail-metric{color:var(--text-muted);font-size:.82rem}.challenge-detail-current{color:var(--text-body);margin-top:.15rem;font-size:.85rem}.challenge-detail-explainer{color:var(--text-body);margin:.7rem 0 0;font-size:.85rem;line-height:1.55}.rank-list{flex-direction:column;gap:.5rem;display:flex}.rank-row{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-card);opacity:.7;align-items:center;gap:.75rem;padding:.6rem;transition:opacity .15s;display:flex}.rank-row.earned{opacity:1}.rank-row.current{border-color:color-mix(in srgb, var(--primary-color) 45%, transparent);background:color-mix(in srgb, var(--primary-color) 6%, var(--surface-card))}.rank-row-body{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.rank-row-top{align-items:center;gap:.5rem;display:flex}.rank-row-tier{color:var(--text-main);font-size:.9rem;font-weight:800}.rank-row-you{text-transform:uppercase;letter-spacing:.05em;color:var(--primary-color);background:color-mix(in srgb, var(--primary-color) 14%, transparent);border-radius:999px;padding:.1rem .4rem;font-size:.6rem;font-weight:800}.rank-row-check{color:var(--primary-color);margin-left:auto;display:inline-flex}.rank-row-lock{color:var(--text-muted);margin-left:auto}.rank-row-goal{color:var(--text-body);font-size:.8rem}.rank-row-remaining{color:var(--text-muted);font-size:.72rem}.badge-period-section{flex-direction:column;gap:.6rem;display:flex}.badge-period-heading{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0 .15rem;font-size:.72rem;font-weight:800}.badge-period-toggle{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;width:100%;padding:.35rem .15rem;display:flex}.badge-period-toggle>span:first-child{flex:1}.badge-period-count{color:var(--primary-color);letter-spacing:0;font-size:.72rem;font-weight:800}.badge-period-chevron{color:var(--text-muted);transition:transform .18s}.badge-period-toggle.open .badge-period-chevron{transform:rotate(180deg)}.badge-tile-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.badge-tile{cursor:pointer;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;gap:.45rem;padding:.8rem .7rem .9rem;text-decoration:none;transition:transform .1s;display:flex}.badge-tile:active{transform:scale(.98)}.badge-tile-title{color:var(--text-main);text-align:center;font-size:.82rem;font-weight:700;line-height:1.2}.badge-tile-rank{color:var(--primary-color);font-size:.78rem;font-weight:800}.badge-tile-next{color:var(--text-muted);text-align:center;font-size:.68rem;font-weight:600;line-height:1.15}.challenge-card{flex-direction:column;gap:.9rem;padding:1rem;display:flex}.challenge-main{border:1.5px solid color-mix(in srgb, var(--primary-color) 45%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--primary-color) 7%, transparent), transparent 55%), var(--surface-card);position:relative}.challenge-main-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--primary-color);background:color-mix(in srgb, var(--primary-color) 14%, transparent);border-radius:999px;padding:.15rem .5rem;font-size:.6rem;font-weight:800;position:absolute;top:.75rem;right:.85rem}.challenge-head{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.85rem;width:100%;padding:0;display:flex}.challenge-head:active{opacity:.85}.challenge-head-text{flex-direction:column;min-width:0;display:flex}.challenge-title{color:var(--text-main);font-size:1rem;font-weight:800}.challenge-rank{color:var(--primary-color);font-size:.82rem;font-weight:700}.challenge-metric{color:var(--text-muted);margin-top:.1rem;font-size:.72rem}.challenge-next{flex-direction:column;gap:.4rem;display:flex}.challenge-next-bar{background:var(--surface-muted,#0000000f);border-radius:999px;height:8px;overflow:hidden}.challenge-next-fill{border-radius:999px;height:100%;transition:width .4s}.challenge-next-label{color:var(--text-body);justify-content:space-between;font-size:.72rem;display:flex}.challenge-next-goal{color:var(--text-muted);font-weight:600}.challenge-maxed{color:var(--text-main);text-align:center;padding:.35rem 0;font-size:.8rem;font-weight:700}.tier-track{border-top:1px solid var(--border-color);justify-content:space-between;gap:.35rem;padding-top:.5rem;display:flex}.tier-track-step{cursor:pointer;border-radius:var(--radius-sm,8px);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:.2rem;min-width:0;padding:.1rem 0;transition:transform .1s;display:flex}.tier-track-step:active{transform:scale(.92)}.tier-track-target{color:var(--text-muted);font-size:.65rem;font-weight:700}.tier-track-step.earned .tier-track-target{color:var(--text-main)}.feed-challenge{border:1px solid color-mix(in srgb, var(--primary-color) 22%, var(--border-color));padding:.9rem 1rem;text-decoration:none;display:block}.feed-challenge-top{align-items:center;margin-bottom:.7rem;display:flex}.feed-challenge-kicker{text-transform:uppercase;letter-spacing:.06em;color:var(--primary-color);font-size:.68rem;font-weight:800}.feed-challenge-chevron{color:var(--text-muted);margin-left:auto}.feed-challenge-bar{background:var(--surface-muted,#0000000f);border-radius:999px;height:8px;overflow:hidden}.feed-challenge-fill{border-radius:999px;height:100%;transition:width .4s}.feed-challenge-scale{color:var(--text-muted);justify-content:space-between;margin-top:.3rem;font-size:.68rem;display:flex}.feed-challenge-milestone{align-items:center;gap:.7rem;display:flex}.feed-challenge-tier{flex-direction:column;flex-shrink:0;align-items:center;gap:.2rem;width:46px;display:flex}.feed-challenge-tier-label{color:var(--text-muted);text-align:center;font-size:.6rem;font-weight:700;line-height:1.1}.feed-challenge-start{background:var(--bg-body);border:1.5px dashed var(--border-color);width:34px;height:34px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:.58rem;font-weight:700;display:flex}.feed-challenge-track{flex:1;min-width:0}.badge-info-backdrop{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:1.25rem;animation:.2s badge-info-fade;display:flex;position:fixed;inset:0}@keyframes badge-info-fade{0%{opacity:0}to{opacity:1}}.badge-info-backdrop.above-keyboard{align-items:flex-end}.badge-info-backdrop.above-keyboard .badge-info-sheet{flex-direction:column;height:min(25rem,60dvh - 1rem);max-height:none;margin:0 0 38dvh;display:flex;overflow:hidden}.badge-info-backdrop.above-keyboard .live-preview-head,.badge-info-backdrop.above-keyboard .search-field{flex:none}.badge-info-backdrop.above-keyboard .live-partner-list{flex:auto;min-height:0;max-height:none}.live-partner-row-free .live-partner-row-name{color:var(--primary-hover);font-weight:700}.badge-info-sheet{overscroll-behavior:contain;background:var(--surface-card,#fff);border-radius:20px;width:100%;max-width:380px;max-height:calc(100vh - 7rem);margin-top:2.5rem;padding:1.75rem 1.35rem 1.5rem;animation:.24s cubic-bezier(.22,1,.36,1) badge-info-pop;position:relative;overflow-y:auto;box-shadow:0 12px 40px #0000004d}@keyframes badge-info-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.badge-info-close{background:var(--surface-muted,#0000000d);width:32px;height:32px;color:var(--text-muted);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:.9rem;right:.9rem}.badge-info-hero{flex-direction:column;align-items:center;gap:.35rem;margin-bottom:1rem;display:flex}.badge-info-tier{color:var(--text-main);margin-top:.3rem;font-size:1.35rem;font-weight:800}.badge-info-challenge{color:var(--text-muted);font-size:.85rem}.badge-info-status{text-align:center;color:var(--text-body);border-radius:var(--radius-md);background:var(--surface-muted,#0000000a);margin-bottom:.85rem;padding:.5rem;font-size:.82rem}.badge-info-status.earned{color:var(--primary-color);background:color-mix(in srgb, var(--primary-color) 10%, transparent);justify-content:center;align-items:center;gap:.4rem;font-weight:700;display:flex}.badge-info-goal{border:1px solid var(--border-color);border-radius:var(--radius-md);justify-content:space-between;align-items:center;margin-bottom:.85rem;padding:.7rem .85rem;display:flex}.badge-info-goal-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.7rem;font-weight:700}.badge-info-goal-value{color:var(--text-main);font-size:.9rem;font-weight:800}.badge-info-progress{margin-bottom:.85rem}.badge-info-bar{background:var(--surface-muted,#0000000f);border-radius:999px;height:8px;overflow:hidden}.badge-info-fill{border-radius:999px;height:100%;transition:width .4s}.badge-info-progress-label{color:var(--text-muted);justify-content:space-between;margin-top:.3rem;font-size:.72rem;display:flex}.badge-info-explainer{color:var(--text-body);margin:0;font-size:.85rem;line-height:1.55}.badge-toast-wrap{top:calc(env(safe-area-inset-top,0px) + .75rem);z-index:1000;pointer-events:none;width:min(420px,100vw - 1.5rem);position:fixed;left:50%;transform:translate(-50%)}.badge-toast{border-radius:var(--radius-md);background:var(--brand-gradient);color:#fff;pointer-events:auto;align-items:center;gap:.75rem;padding:.75rem .85rem;animation:.35s cubic-bezier(.22,1,.36,1) badge-toast-in;display:flex;box-shadow:0 10px 30px #00000038}.badge-toast.leaving{animation:.3s forwards badge-toast-out}.badge-toast-icon{background:#ffffff38;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.badge-toast-body{flex-direction:column;flex:1;min-width:0;display:flex}.badge-toast-kicker{text-transform:uppercase;letter-spacing:.05em;opacity:.85;font-size:.65rem;font-weight:700}.badge-toast-title{font-size:.95rem;font-weight:800;line-height:1.2}.badge-toast-close{color:#fff;opacity:.8;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:.15rem;display:inline-flex}.badge-toast-close:hover{opacity:1}@keyframes badge-toast-in{0%{opacity:0;transform:translateY(-14px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes badge-toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-14px)}}.premium-avatar{box-shadow:0 0 0 2px #fff,0 0 0 5px #d4a017,0 0 14px #d4a017b3}.profile-avatar.premium-avatar{box-shadow:0 0 0 3px #d4a017,0 0 16px #d4a017b3}.premium-badge{z-index:6;color:#7a4e00;background:linear-gradient(135deg,#ffe08a 0%,#e8b44a 55%,#c98f2a 100%);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;box-shadow:0 1px 3px #0000004d,inset 0 1px 1px #fff9}.premium-crown{top:-4px;left:-4px}.premium-pitch{text-align:center;flex-direction:column;align-items:center;gap:.35rem;padding:1.75rem 1.25rem;display:flex}.premium-pitch-icon{color:#7a4e00;background:linear-gradient(135deg,#ffe08a 0%,#e8b44a 55%,#c98f2a 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:.35rem;display:flex;box-shadow:0 1px 3px #0000004d,inset 0 1px 1px #fff9}.premium-pitch-title{color:var(--text-main);margin:0;font-size:1.15rem;font-weight:700}.premium-pitch-price{color:var(--text-main);margin:.15rem 0 .5rem;font-size:1.5rem;font-weight:800}.premium-pitch-price span{color:var(--text-muted);font-size:.85rem;font-weight:500}.premium-pitch-price-sub{color:var(--text-muted);margin:-.35rem 0 .5rem;font-size:.78rem}.premium-feature-list{text-align:left;flex-direction:column;gap:.6rem;width:100%;margin:.25rem 0 1.25rem;padding:0;list-style:none;display:flex}.premium-feature-list li{color:var(--text-main);align-items:center;gap:.6rem;font-size:.88rem;display:flex}.premium-feature-list li svg{color:var(--primary-color);flex-shrink:0}.plan-section-head{text-align:left;width:100%;color:var(--primary-color);text-transform:uppercase;letter-spacing:.03em;border-top:1px solid var(--border-subtle);margin:-.25rem 0 .35rem;padding-top:1rem;font-size:.7rem;font-weight:800}.plan-section-head.is-first{border-top:none;margin-top:.9rem;padding-top:0}.plan-section-head.is-first+.plan-list-peek{margin-top:0}.coach-players-upsell-row{justify-content:flex-end;display:flex}.plan-list-stack{flex-direction:column;gap:.75rem;display:flex}.plan-list-card{flex-direction:column;padding:1rem;scroll-margin-top:5rem;display:flex}.plan-list-card.is-featured{border-color:var(--gold);box-shadow:var(--shadow-card), 0 0 0 .5px var(--gold)}.plan-list-card.is-active{border-color:var(--primary-color);box-shadow:var(--shadow-card), 0 0 0 .5px var(--primary-color)}.plan-list-head{align-items:flex-start;gap:.75rem;display:flex}.premium-pitch-icon.plan-list-icon{width:44px;height:44px;margin:0}.plan-list-titles{flex:1;min-width:0}.plan-list-title{color:var(--text-main);flex-wrap:wrap;align-items:center;gap:.4rem;margin:0;font-size:1rem;font-weight:800;line-height:1.25;display:flex}.plan-list-badge{letter-spacing:.02em;color:#a67c00;background:var(--gold-tint);border-radius:999px;padding:.12rem .5rem;font-size:.7rem;font-weight:700}.premium-pitch-price.plan-list-price{margin:.1rem 0 0;font-size:1rem;font-weight:700}.plan-list-price-sub{color:var(--text-body);margin:.05rem 0 0;font-size:.75rem}.plan-list-status{white-space:nowrap;min-height:20px;color:var(--primary-color);flex-shrink:0;align-items:center;gap:.4rem;font-size:.72rem;font-weight:700;display:flex}.plan-list-check{border:1.5px solid var(--border-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.plan-list-card.is-active .plan-list-check{border-color:var(--primary-color);background:var(--primary-color);color:#fff}.plan-list-status.is-included{color:var(--text-muted)}.plan-list-status.is-included .plan-list-check{color:var(--primary-color)}.plan-list-card .premium-feature-list{gap:.5rem}.plan-list-card .premium-feature-list li{font-size:.85rem}.premium-feature-list.plan-list-peek{margin:.9rem 0 0}.plan-list-toggle{border:none;border-top:1px solid var(--border-subtle);width:100%;min-height:44px;color:var(--text-body);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;margin-top:.75rem;padding:0;font-size:.82rem;font-weight:600;display:flex}.plan-list-toggle svg{color:var(--text-muted);transition:transform .25s}.plan-list-toggle.open svg{transform:rotate(180deg)}.plan-list-collapse{grid-template-rows:0fr;transition:grid-template-rows .25s;display:grid}.plan-list-collapse.open{grid-template-rows:1fr}.plan-list-collapse>.plan-list-features{min-height:0;overflow:hidden}.plan-list-features>:first-child{margin-top:.75rem}.plan-list-features>:last-child{margin-bottom:0}.plan-list-features.is-rest>:first-child{margin-top:.5rem}.plan-list-action{margin-top:1rem}.plan-list-action .btn-gold{background:var(--primary-color);color:#fff;box-shadow:none}.plan-list-action .btn-gold:hover{background:var(--primary-hover);filter:none}.plan-list-action .btn-link{align-items:center;min-height:44px;padding:0 .75rem;display:inline-flex}@media (prefers-reduced-motion:reduce){.plan-list-collapse,.plan-list-toggle svg{transition:none}}.premium-gate-sheet{text-align:center;flex-direction:column;align-items:center;gap:.4rem;max-width:340px;display:flex}.premium-gate-icon{width:52px;height:52px;color:var(--gold);background:var(--gold-tint);border-radius:50%;justify-content:center;align-items:center;margin-bottom:.35rem;display:inline-flex}.premium-gate-title{color:var(--text-main);margin:0;font-size:1.15rem;font-weight:800}.premium-gate-feature{color:var(--text-muted);margin:0;font-size:.9rem}.premium-gate-btn{margin-top:1rem}.featured-badge-empty,.featured-badge-lockicon{width:44px;height:44px;color:var(--text-muted);background:var(--surface-muted,#0000000d);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.featured-badge-sheet-title{text-align:center;margin:0 0 1rem;font-size:1.1rem;font-weight:800}.featured-badge-grid{grid-template-columns:repeat(3,1fr);gap:.85rem .5rem;display:grid}.featured-badge-option{cursor:pointer;font:inherit;background:0 0;border:2px solid #0000;border-radius:14px;flex-direction:column;align-items:center;gap:.4rem;padding:.5rem .25rem;display:flex}.featured-badge-option:active{transform:scale(.97)}.featured-badge-option.active{background:#e8b44a1a;border-color:#e8b44a}.featured-badge-optmedal{position:relative}.featured-badge-check{color:#fff;border:2px solid var(--surface-card,#fff);background:#059669;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:absolute;bottom:-2px;right:-2px}.featured-badge-optlabel{color:var(--text-body);text-align:center;font-size:.7rem;font-weight:600;line-height:1.2}.featured-badge-clear .featured-badge-optlabel{color:var(--text-muted)}.stroke-bar-row{align-items:center;gap:.5rem;padding:.3rem 0;display:flex}.stroke-bar-label{width:92px;color:var(--text-body);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;font-size:.78rem;font-weight:600;overflow:hidden}.stroke-bar-track{background:var(--border-subtle);border-radius:999px;flex:1;height:10px;overflow:hidden}.stroke-bar-fill{background:var(--brand-gradient);border-radius:999px;height:100%;transition:width .4s}.stroke-bar-count{text-align:right;width:34px;color:var(--text-muted);flex-shrink:0;font-size:.72rem}.stats-gate{flex-direction:column;padding:1rem;display:flex}.stats-gate-rows{flex-direction:column;gap:.5rem;margin:.25rem 0 .75rem;display:flex}.stats-gate-row{height:10px}.stats-gate-bar{background:var(--border-subtle);border-radius:999px;height:100%;display:block}.stats-gate-cta{border-top:1px solid var(--border-subtle);align-items:center;gap:.5rem;padding-top:.5rem;display:flex}.stats-gate-lock{color:var(--gold);flex:none;justify-content:center;align-items:center;display:flex}.stats-gate-text{min-width:0;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:auto;font-size:.82rem;font-weight:700;overflow:hidden}.stats-locked-section{flex-direction:column;gap:.5rem;display:flex}.stats-locked{color:inherit;flex-direction:column;gap:.75rem;text-decoration:none;display:flex}.stats-locked.card{padding:.9rem 1rem}.stats-locked-blur{filter:blur(6px);-webkit-user-select:none;user-select:none}.stats-locked-rows{flex-direction:column;gap:.7rem;display:flex}.stats-locked-row{align-items:center;gap:.75rem;display:flex}.stats-locked-name{min-width:0;color:var(--text-main);flex:1;font-size:.9rem;font-weight:600}.stats-locked-metric{color:var(--text-muted);flex-shrink:0;font-size:.78rem}.stats-locked-cta{color:#a67c00;justify-content:center;align-items:center;gap:.4rem;font-size:.82rem;font-weight:700;display:inline-flex}.stats-locked.card .stats-locked-cta{border-top:1px solid var(--border-subtle);padding-top:.75rem}.stats-locked:hover .stats-locked-cta{text-decoration:underline}.ranking-gate{border-top:1px solid var(--border-subtle);color:inherit;align-items:center;gap:.6rem;margin-top:.4rem;padding:.6rem .35rem .1rem;text-decoration:none;display:flex}.ranking-gate-star{color:var(--gold);flex:0 0 1.5rem;justify-content:center;align-items:center;display:flex}.ranking-gate-label{min-width:0;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:auto;font-size:.82rem;font-weight:700;overflow:hidden}.ranking-gate-btn{flex:none}.ranking-gate:only-child{border-top:none;margin-top:0;padding-top:.6rem}.challenge-streak-compact{text-decoration:none;display:block}.challenge-streak-compact .challenge-head{width:100%}.challenge-streak-chevron{color:var(--text-muted);flex-shrink:0;margin-left:auto}.feed-stat-block-btn{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none}.feed-stat-unit-info{align-items:center;gap:3px;display:inline-flex}.plevel-calc{gap:0;padding:.25rem 1rem 1rem}.plevel-calc-row{align-items:baseline;gap:.6rem;padding:.65rem 0;font-size:.9rem;display:flex}.plevel-calc-row+.plevel-calc-row{border-top:1px solid var(--border-subtle)}.plevel-calc-label{color:var(--text-main);font-weight:600}.plevel-calc-val{color:var(--primary-color);font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:auto;font-weight:800}.plevel-calc-val.neg{color:var(--text-muted)}.plevel-calc-row.plevel-calc-total{border-top-color:var(--border-color)}.plevel-calc-total .plevel-calc-label{font-weight:800}.plevel-calc-total .plevel-calc-val{font-size:1.05rem}.plevel-day-list{flex-direction:column;gap:.4rem;display:flex}.plevel-day-row{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-card);align-items:center;gap:.6rem;padding:.55rem .7rem;display:flex}.plevel-day-row.trained{border-color:color-mix(in srgb, var(--primary-color) 30%, var(--border-color));background:color-mix(in srgb, var(--primary-color) 5%, var(--surface-card))}.plevel-day-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.plevel-day-icon.trained{background:var(--primary-light);color:var(--primary-color)}.plevel-day-icon.rest{background:var(--border-subtle);color:var(--text-muted)}.plevel-day-body{flex-direction:column;min-width:0;display:flex}.plevel-day-date{color:var(--text-main);font-size:.82rem;font-weight:700}.plevel-day-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.35rem .5rem;font-size:.72rem;display:flex}.plevel-day-peak{color:var(--primary-color);align-items:center;gap:.2rem;font-weight:600;display:inline-flex}.plevel-day-delta{flex-shrink:0;margin-left:auto;font-size:.9rem;font-weight:800}.plevel-day-delta.pos{color:var(--primary-color)}.plevel-day-delta.neg{color:var(--text-muted)}.plevel-day-value{text-align:right;width:44px;color:var(--text-body);flex-shrink:0;font-size:.8rem;font-weight:700}.plevel-load-more{cursor:pointer;color:var(--primary-color);background:0 0;border:none;margin:.5rem auto 0;font-size:.82rem;font-weight:600;display:block}.exercise-status-badge{border-radius:999px;flex-shrink:0;align-items:center;gap:.2rem;padding:.1rem .4rem;font-size:.6rem;font-weight:700;display:inline-flex}.exercise-status-badge.pending{color:#b45309;background:#d9770624}.exercise-status-badge.public{background:var(--primary-light);color:var(--primary-color)}.exercise-status-badge.private{background:var(--border-subtle);color:var(--text-muted)}.exercise-status-menu{vertical-align:middle;display:inline-flex;position:relative}.exercise-status-trigger{cursor:pointer;font-family:inherit;line-height:inherit;border:none}.exercise-status-trigger:disabled{opacity:.6;cursor:default}.exercise-status-trigger svg:last-child{transition:transform .15s}.exercise-status-trigger.open svg:last-child{transform:rotate(180deg)}.exercise-status-list{min-width:9rem;left:0;right:auto}.exercise-status-item{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.exercise-cert-badge{color:#d4a017;background:#d4a01724;border-radius:999px;flex-shrink:0;align-items:center;gap:.2rem;padding:.1rem .4rem;font-size:.6rem;font-weight:700;display:inline-flex}.new-exercise-form{flex-direction:column;gap:1rem;display:flex}.exercise-form-card{flex-direction:column;gap:.875rem;padding:1rem;display:flex}.exercise-save-cta{margin-top:.25rem}.exercise-save-hint{color:var(--text-muted);text-align:center;margin-top:.5rem;font-size:.78rem}.exercise-detail-card{padding:1rem}.exercise-detail-card .exercise-detail-meta{margin-bottom:.875rem}.exercise-detail-desc{color:var(--text-body);margin:-.25rem 0 .875rem;font-size:.9rem;line-height:1.55}.expandable-text{--clamp-lines:4}.expandable-text-body{white-space:pre-line;overflow-wrap:anywhere;-webkit-line-clamp:var(--clamp-lines);line-clamp:var(--clamp-lines);-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.expandable-text.is-clamped:not(.is-open) .expandable-text-body{cursor:pointer;-webkit-mask-image:linear-gradient(#000 calc(100% - 1.5em),#0000);mask-image:linear-gradient(#000 calc(100% - 1.5em),#0000)}.expandable-text.is-open .expandable-text-body{-webkit-line-clamp:unset;line-clamp:unset;display:block}.expandable-text-toggle{cursor:pointer;width:auto;height:auto;color:var(--primary-color);background:0 0;border:0;align-items:center;gap:.25rem;margin:.125rem 0 -.75rem;padding:.75rem 0;font-size:.875rem;font-weight:600;display:inline-flex}.expandable-text-toggle:before{content:"Mehr anzeigen"}.expandable-text.is-open .expandable-text-toggle:before{content:"Weniger"}.expandable-text-toggle .activity-detail-drill-chevron{width:14px;height:14px;color:inherit}.expandable-text-toggle:active{color:var(--primary-hover)}textarea.form-input.exercise-desc-input{resize:none;min-height:9rem;max-height:40dvh;font-size:1rem;line-height:1.5;overflow-y:auto}.exercise-certify-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.exercise-runs-badge{background:var(--primary-light);color:var(--primary-color);border-radius:999px;align-items:center;gap:.4rem;margin-top:.75rem;padding:.35rem .7rem;font-size:.78rem;font-weight:700;display:inline-flex}.exercise-runs-dot{opacity:.5}.exercise-detail-photo{cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block}.exercise-detail-photo img{object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--border-subtle);width:100%;max-height:320px;display:block}.exercise-photos-empty{border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);align-self:flex-start;align-items:center;gap:.4rem;padding:.5rem .8rem;font-size:.82rem;font-weight:600;text-decoration:none;display:inline-flex}.exercise-photos-empty:active{color:var(--primary-color);border-color:var(--primary-color)}.exercise-detail-name{color:var(--text-main);letter-spacing:-.02em;flex-wrap:wrap;align-items:center;gap:.4rem;margin:0 0 .35rem;font-size:1.45rem;font-weight:800;line-height:1.2;display:flex}.exercise-detail-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.25rem .6rem;font-size:.78rem;display:flex}.exercise-detail-creator{color:var(--text-muted);font-weight:600;text-decoration:none}.exercise-detail-creator:active{color:var(--primary-color)}.exercise-detail-metric{align-items:center;gap:.22rem;display:inline-flex}.exercise-detail-metric svg{color:#d4a017}.exercise-detail-badges{flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.5rem;display:flex}.exercise-admin-card{flex-direction:column;gap:.75rem;padding:1rem;display:flex}.exercise-admin-actions{flex-wrap:wrap;gap:.5rem;display:flex}.exercise-admin-unpublish{align-self:flex-start}.exercise-visibility-card{flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem;display:flex}.exercise-visibility-text{color:var(--text-body);flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;font-size:.82rem;line-height:1.5;display:flex}.exercise-visibility-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.plan-share-stat{color:var(--text-muted);font-size:.78rem;font-weight:600}.shot-viz-wrap{flex-direction:column;align-items:center;gap:.55rem;width:100%;margin-bottom:.875rem;display:flex}.shot-viz-wrap.live{gap:.4rem;margin-bottom:0}.shot-viz-svg{width:100%;max-width:240px;height:auto;display:block}.shot-viz-wrap.live .shot-viz-svg{max-width:210px}.shot-viz-table{fill:#0f5132;stroke:#0a3d26;stroke-width:1.5px}.shot-viz-midline{stroke:#ffffff47;stroke-width:1px;stroke-dasharray:3 3}.shot-viz-net{stroke:#ffffffeb;stroke-width:3px;filter:drop-shadow(0 1px 1px #00000040)}.shot-viz-num{fill:#fff;pointer-events:none;font-size:8px;font-weight:800}.shot-viz-numdot.active{stroke-width:2px}.shot-viz-shot,.shot-viz-ghost{cursor:default}.shot-viz-ghost.clickable{cursor:pointer}.shot-viz-head{justify-content:center;align-items:center;gap:.5rem;width:100%;max-width:240px;display:flex}.shot-viz-type-badge{font-size:.62rem}.shot-viz-sidelabel{paint-order:stroke;stroke:#fff;stroke-width:2px;stroke-linejoin:round;font-size:8px;font-weight:800}.shot-viz-area{pointer-events:none;animation:.18s shot-viz-area-in}.shot-viz-area-to{fill:#34d39929;stroke:#34d39980;stroke-width:1px}.shot-viz-area-from{fill:#ffffff0f}.shot-viz-area-label{fill:#ffffffc7;pointer-events:none;font-size:8.5px;font-weight:700}@keyframes shot-viz-area-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.shot-viz-area{animation:none}}.shot-viz-play{cursor:pointer;outline:none}.shot-viz-play-hit{fill:#0000}.shot-viz-play-btn{fill:#fffffff0;filter:drop-shadow(0 1px 2px #0000004d);transition:transform .15s}.shot-viz-play-icon{fill:#0f5132;pointer-events:none}.shot-viz-play:focus-visible .shot-viz-play-btn{stroke:var(--primary-color);stroke-width:2.5px}.shot-viz-ball{fill:#fff;stroke:#0a3d26;stroke-width:1px;filter:drop-shadow(0 1px 1.5px #00000059);pointer-events:none}.shot-viz-micro-svg{width:100%;height:100%;display:block}.zone-picker-svg{width:100%;max-width:240px;height:auto;margin:0 auto;display:block}.zone-picker-cell{cursor:pointer}.zone-picker-cell.is-locked{cursor:default;pointer-events:none}.zone-picker-ink{pointer-events:none}.zone-picker-zone{fill:#05966933;stroke:#34d399;stroke-width:1.2px;stroke-dasharray:4 3;transition:fill .12s}.zone-picker-cell:active .zone-picker-zone{fill:#05966961}.zone-picker-zone.is-on{fill-opacity:.9;stroke:#fff;stroke-width:2px;stroke-dasharray:none}.zone-picker-zone.is-picked{fill:#0000;stroke:none}.zone-picker-run{pointer-events:none}.zone-picker-zone.is-locked{fill:#00000047;stroke:none}.zone-picker-from{fill:#ffffff12;stroke:#ffffff57;stroke-width:1.2px;stroke-dasharray:4 3}.zone-picker-cell:active .zone-picker-from{fill:#0596694d}.zone-picker-from.is-on{fill:#05966957;stroke:#34d399;stroke-width:1.6px;stroke-dasharray:none}.zone-picker-label{fill:#ffffffc7;pointer-events:none;font-size:8.5px;font-weight:700}.zone-picker-label.is-on{fill:#fff;font-weight:800}.zone-picker-label.is-locked{fill:#ffffff4d}.zone-picker-rowlabel{fill:#ffffff6b;pointer-events:none;font-size:7px;font-weight:700}.zone-picker-path{fill:#fff;pointer-events:none;font-size:7.5px;font-weight:800}.zone-picker-plus{fill:#fff9;pointer-events:none;font-size:10px;font-weight:700}.dre{flex-direction:column;gap:.75rem;display:flex}.drill-row-viz{justify-content:center;padding:.25rem 0;display:flex}.drill-row-rows{flex-direction:column;gap:.5rem;display:flex}.drill-row-rows>.drill-row-row-wrap{position:relative}.drill-row-rows>.drill-row-row-wrap+.drill-row-row-wrap:before{content:"";background:var(--border-color);width:2px;height:.5rem;position:absolute;top:-.5rem;left:50%}.drill-row-type-toggle{background:var(--bg-body);border-radius:999px;gap:.25rem;padding:.25rem;display:flex}.drill-row-type-seg{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:999px;flex:1;padding:.5rem .6rem;font-size:.82rem;font-weight:700;transition:background .15s,color .15s}.drill-row-type-seg.active{background:var(--surface-card);color:var(--primary-color);box-shadow:var(--shadow-sm)}.drill-row-row-wrap{flex-direction:column;display:flex}.drill-row-row{border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-sm);align-items:stretch;gap:.25rem;transition:box-shadow .15s;display:flex;overflow:hidden}.drill-row-row.active{border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 0 0 2px #05966959}.drill-row-row-btn{cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:.55rem;min-width:0;padding:.7rem .8rem;display:flex}.drill-row-row-btn:active{background:#0596690a}.drill-row-who{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;flex-shrink:0;padding:.15rem .4rem;font-size:.6rem;font-weight:800}.drill-row-who.me{background:var(--primary-light);color:var(--primary-color)}.drill-row-who.partner{color:#64748b;background:#f1f5f9}.drill-row-row-text{min-width:0;color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.9rem;font-weight:700;overflow:hidden}.drill-row-row-text.incomplete{color:var(--text-muted);font-weight:600}.drill-row-row-step{background:var(--bg-body);width:20px;height:20px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.68rem;font-weight:800;display:inline-flex}.drill-row-remove{width:40px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;display:flex}.drill-row-remove:hover,.drill-row-remove:active{color:var(--error-text,#dc2626);background:#0000000d}.drill-row-actions{gap:.5rem;display:flex}.drill-row-add{border-radius:var(--radius-md);border:1.5px dashed var(--primary-color);background:var(--primary-light);color:var(--primary-color);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.75rem;font-size:.85rem;font-weight:700;display:flex}.drill-row-add:disabled{opacity:.5;cursor:default;border-style:solid}.drill-row-ending-free{color:var(--primary-color);align-self:center;align-items:center;gap:.35rem;padding:.4rem .6rem;font-size:.8rem;font-weight:600;display:inline-flex}.drill-row-runs{flex-direction:column;align-items:center;gap:.6rem;margin-top:.25rem;display:flex}.drill-row-runs-chip{border:1px solid var(--border-color);background:var(--surface-card);min-width:2rem;color:var(--text-body);cursor:pointer;font-variant-numeric:tabular-nums;border-radius:999px;padding:.3rem .55rem;font-size:.8rem;font-weight:700}.drill-row-runs-chip.active{border-color:var(--primary-color);background:var(--primary-light);color:var(--primary-color)}.drill-row-inline-form{background:var(--bg-body);border-radius:0 0 var(--radius-lg) var(--radius-lg);flex-direction:column;padding:.85rem .8rem .9rem;animation:.15s drill-row-form-open;display:flex;box-shadow:0 0 0 2px #05966959}@keyframes drill-row-form-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.drill-edit-strokes{flex-direction:column;gap:.45rem;display:flex}.drill-edit-strokes.is-top{margin-bottom:.85rem}.drill-edit-strokes.is-bottom{margin-top:.85rem}.drill-edit-strokes.is-waiting{opacity:.4}.drill-edit-strokes.is-waiting .drill-shot-chip{cursor:default}.drill-row-stroke-chips,.drill-row-spin-chips{justify-content:center}.drill-row-spin-chips .drill-shot-chip{min-height:32px;padding:.35rem .7rem;font-size:.76rem}.drill-row-branch{flex-direction:column;gap:.5rem;display:flex;position:relative}.drill-row-rows>.drill-row-branch:before,.drill-row-loop>.drill-row-branch:before{content:"";background:var(--primary-color);opacity:.4;z-index:1;width:2px;height:.5rem;position:absolute;top:-.5rem;left:50%}.drill-row-branch-track{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;display:flex;overflow-x:auto}.drill-row-branch-track::-webkit-scrollbar{display:none}.drill-row-branch-panel{scroll-snap-align:center;box-sizing:border-box;flex:0 0 100%;width:100%;padding:0 .15rem}.drill-row-branch-card,.drill-saved-branch-card{border-left:3px solid var(--path-color,var(--primary-color));flex-direction:column;margin-left:1.1rem;padding-left:.5rem;display:flex}.drill-row-branch-card{gap:.5rem;margin-left:1.3rem}.drill-saved-branch-card{gap:.4rem}.branch-path-pill{background:var(--path-color,var(--primary-color));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.35rem;height:1.35rem;font-size:.72rem;font-weight:800;display:inline-flex}.branch-tabs{flex-wrap:wrap;gap:.4rem;margin-left:1.1rem;display:flex}.branch-tab{border:1.5px solid var(--border-color);background:var(--surface-card);min-height:34px;color:var(--text-muted);cursor:pointer;border-radius:999px;align-items:center;gap:.3rem;padding:.2rem .75rem .2rem .3rem;font-size:.8rem;font-weight:700;transition:border-color .15s,background .15s,color .15s;display:inline-flex;position:relative}.branch-tab:after{content:"";position:absolute;inset:-5px -2px}.branch-tab:focus:not(:focus-visible){outline:none}.branch-tab:focus-visible{outline:2px solid var(--path-color);outline-offset:2px}.branch-tab .branch-path-pill{opacity:.45;transition:opacity .15s}.branch-tab.active{border-color:var(--path-color);color:var(--text-main);background:color-mix(in srgb, var(--path-color) 10%, var(--surface-card))}.branch-tab.active .branch-path-pill{opacity:1}.branch-tab-zone{white-space:nowrap}.fork-targets{vertical-align:middle;gap:.4rem;display:inline-flex}.fork-target{background:color-mix(in srgb, var(--path-color) 12%, transparent);color:var(--text-body);cursor:pointer;border-radius:999px;align-items:center;gap:.25rem;padding:.05rem .45rem .05rem .15rem;font-size:.85em;font-weight:700;line-height:1.35;transition:background .15s,box-shadow .15s,color .15s;display:inline-flex;position:relative}.fork-target:not(.active) b{opacity:.55}.fork-target:after{content:"";position:absolute;inset:-9px -3px}.fork-target.active{background:color-mix(in srgb, var(--path-color) 18%, transparent);box-shadow:inset 0 0 0 1.5px var(--path-color);color:var(--text-main)}.fork-target:focus:not(:focus-visible){outline:none}.fork-target:focus-visible{outline:2px solid var(--path-color);outline-offset:2px}.fork-target b{background:var(--path-color);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:1.1rem;height:1.1rem;font-size:.68rem;font-weight:800;display:inline-flex}.drill-row-branch-card .drill-row-row.active,.drill-row-branch-card .drill-row-inline-form,.drill-row-stage.has-path>.drill-row-inline-form{box-shadow:0 0 0 2px color-mix(in srgb, var(--path-color) 45%, transparent)}.drill-saved-branch-card.is-empty:before{content:"—";color:var(--text-muted);padding:.35rem .6rem;font-weight:700}.branch-merge{color:var(--text-muted);justify-content:center;align-items:center;gap:.4rem;padding:.15rem 0;display:flex}.branch-merge-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.drill-row-branch-card>.drill-row-row-wrap{position:relative}.drill-row-branch-card>.drill-row-row-wrap+.drill-row-row-wrap:before,.drill-row-branch-card>.drill-row-branch-add:before{content:"";background:var(--border-color);width:2px;height:.5rem;position:absolute;top:-.5rem;left:50%}.drill-row-branch-add{position:relative}.drill-row-fork .drill-row-row-text{white-space:normal;line-height:1.6}.drill-row-fork .fork-targets{flex-wrap:wrap}.drill-loop{--loop-mid:1.35rem;--loop-gutter:1.75rem;padding-left:var(--loop-gutter);flex-direction:column;gap:.4rem;display:flex;position:relative}.drill-loop-rail{left:.8rem;right:calc(100% - var(--loop-gutter) + var(--loop-gap,4px));top:var(--loop-mid);bottom:var(--loop-mid);border:2px solid var(--primary-color);pointer-events:none;border-right:none;border-radius:10px 0 0 10px;position:absolute}.drill-loop-rail:after{content:"";border-top:5px solid #0000;border-bottom:5px solid #0000;border-left:7px solid var(--primary-color);position:absolute;top:-6px;right:0}.drill-loop-count{background:var(--primary-color);color:#fff;min-width:24px;height:24px;box-shadow:0 0 0 3px var(--surface-card);font-variant-numeric:tabular-nums;border:none;border-radius:999px;justify-content:center;align-items:center;padding:0 .5rem;font-size:.75rem;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:50%;left:calc(.8rem + 1px);transform:translate(-50%,-50%)}.drill-loop-count.is-endless{font-size:1rem}button.drill-loop-count{cursor:pointer}button.drill-loop-count:after{content:"";position:absolute;inset:-10px}.drill-row-loop{gap:.5rem}.drill-row-loop.editing .drill-loop-count{box-shadow:0 0 0 3px var(--surface-card), 0 0 0 5px #05966959}.drill-row-loop>.drill-row-row-wrap{position:relative}.drill-row-loop>.drill-row-row-wrap+.drill-row-row-wrap:before{content:"";background:var(--border-color);width:2px;height:.5rem;position:absolute;top:-.5rem;left:50%}.drill-row-loop-bar{border-radius:var(--radius-md);background:var(--primary-light);flex-wrap:wrap;align-items:center;gap:.375rem .25rem;padding:.375rem .375rem .375rem calc(.8rem - 6px);display:flex;position:relative}.drill-row-loop-bar:before{content:"";height:var(--loop-link,0px);border-left:2px dotted var(--primary-color);pointer-events:none;transition:opacity .2s;position:absolute;bottom:100%;left:.8rem}.drill-row-loop-bar.is-moving:before{opacity:0;transition:none}.drill-loop>.drill-row-loop-bar:before{display:none}.drill-row-loop-range{align-items:center;gap:.25rem;display:flex}.drill-row-loop-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.25rem;margin-left:auto;display:flex}.drill-row-loop-icon{color:var(--primary-color);flex-shrink:0;margin-right:.125rem}.drill-row-loop-label{color:var(--primary-color);white-space:nowrap;font-size:.875rem;font-weight:700}.drill-row-loop-stepper{background:var(--surface-card);border-radius:999px;align-items:center;height:2rem;padding:0 .125rem;display:inline-flex}.drill-row-loop-stepper button{width:1.125rem;height:1.75rem;color:var(--primary-color);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.drill-row-loop-stepper button:disabled{color:var(--text-muted);opacity:.35;cursor:default}.drill-row-loop-stepper button:after,.drill-row-loop-remove:after,.drill-row-loop-done:after{content:"";position:absolute;inset:-8px -2px}.drill-row-loop-stepper span{text-align:center;min-width:1.1rem;color:var(--text-main);font-variant-numeric:tabular-nums;font-size:.875rem;font-weight:700}.drill-row-loop-inf,.drill-row-loop-remove,.drill-row-loop-done{cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;display:flex;position:relative}.drill-row-loop-inf{border:1px solid var(--border-color);background:var(--surface-card);color:var(--text-body);font-size:1rem;font-weight:800;line-height:1}.drill-row-loop-inf.active{border-color:var(--primary-color);color:var(--primary-color);box-shadow:inset 0 0 0 1px var(--primary-color)}.drill-row-loop-remove{color:var(--text-muted);background:0 0;border:none}.drill-row-loop-remove:hover{background:var(--surface-card);color:var(--text-main)}.drill-row-loop-remove:active{background:var(--surface-card);color:var(--error-text,#dc2626)}.drill-row-loop-done{background:var(--primary-color);color:#fff;border:none;margin-left:.375rem}.drill-row-loop-done:active{background:var(--primary-hover)}.drill-row-loop-add{border-radius:var(--radius-md);border:1.5px solid var(--border-color);background:var(--surface-card);color:var(--primary-color);cursor:pointer;flex-shrink:0;align-items:center;gap:.4rem;padding:.75rem 1rem;font-size:.85rem;font-weight:700;display:flex}.drill-row-loop-add:hover,.drill-row-loop-add:active{border-color:var(--primary-color)}.shot-viz-stepnav{align-items:center;gap:.75rem;display:flex}.shot-viz-stepnav button{border:1px solid var(--border-color);background:var(--surface-card);width:34px;height:34px;color:var(--text-main);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:flex}.shot-viz-stepnav button:disabled{opacity:.35;cursor:default}.shot-viz-stepnav-label{color:var(--text-main);text-align:center;min-width:78px;font-size:.78rem;font-weight:600}.template-row{align-items:center;gap:.6rem;padding:.85rem 1rem;display:flex}.template-row-body{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.template-row-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:700;overflow:hidden}.template-row-sub{color:var(--text-muted);font-size:.75rem}.template-row-body .focus-bar{margin-top:.4rem}.template-row-favicon{vertical-align:-1px;margin-right:1px}.template-row-btn{background:var(--bg-body);width:34px;height:34px;color:var(--text-muted);cursor:pointer;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;text-decoration:none;transition:background .12s,color .12s;display:flex}.template-row-btn:active{background:var(--primary-light);color:var(--primary-color)}.template-row-btn.is-locked{color:var(--text-muted);opacity:.6}.template-row .live-plan-draft-mark{margin-right:0}.plan-limit-gate{margin-top:.875rem}.add-to-plan-done{color:var(--primary-color);text-align:center;font-size:.82rem;font-weight:600}.add-to-plan-sheet .live-preview-head{margin-bottom:1rem}.add-to-plan-body{flex-direction:column;gap:1rem;display:flex}.tile-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.tile-grid .tile-card:last-child:nth-child(odd){grid-column:1/-1}.tile-card{min-height:92px;color:var(--text-main);flex-direction:column;align-items:flex-start;gap:.5rem;padding:.9rem 1rem;text-decoration:none;transition:transform .1s;display:flex}.tile-card:active{transform:scale(.99)}.tile-card-icon{color:var(--primary-color);flex-shrink:0}.tile-card-icon.koh{color:#d4a017}.tile-card-label{margin-top:auto;font-size:.95rem;font-weight:700;line-height:1.25}.page-container.training-hub-page{gap:.85rem;padding-left:.75rem;padding-right:.75rem}.hub-start-card{flex-direction:column;justify-content:center;gap:.85rem;padding:1rem;display:flex}.hub-start-row{align-items:center;gap:.75rem;display:flex}.hub-start-tapzone{min-width:0;font:inherit;color:inherit;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:.75rem;padding:0;text-decoration:none;display:flex}.hub-start-icon{background:var(--brand-gradient);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.hub-start-icon.is-muted{background:var(--primary-light);color:var(--primary-color)}.hub-start-body{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.hub-start-label{color:var(--primary-color);text-transform:uppercase;letter-spacing:.03em;font-size:.7rem;font-weight:700}.hub-start-label,.hub-start-title,.hub-start-meta{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hub-start-title{color:var(--text-main);font-size:.9rem;font-weight:700}.hub-start-meta{color:var(--text-muted);font-size:.78rem}.hub-start-btn{white-space:nowrap;flex-shrink:0;padding:.5rem .85rem;font-size:.82rem}.hub-start-track,.feed-upcoming-track{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.75rem;margin:-.5rem -.75rem;padding:.5rem .75rem;scroll-padding-inline:.75rem;display:flex;overflow:auto hidden}.hub-start-track::-webkit-scrollbar{display:none}.feed-upcoming-track::-webkit-scrollbar{display:none}.hub-start-card.hub-start-slide{scroll-snap-align:start;flex:0 0 100%}.hub-start-card .gev-tile,.feed-poll-card .gev-tile{width:44px}.hub-start-card .gev-tile-month,.feed-poll-card .gev-tile-month{padding:2px 0;font-size:.6rem}.hub-start-card .gev-tile-day,.feed-poll-card .gev-tile-day{padding-top:2px;font-size:1.1rem}.hub-start-card .gev-tile-weekday,.feed-poll-card .gev-tile-weekday{padding-bottom:3px;font-size:.6rem}.hub-start-btn.hub-start-view{color:var(--text-main)}.hub-start-dots{justify-content:center;gap:.375rem;margin-top:.75rem;display:flex}.hub-start-dot{background:var(--border-color);border-radius:50%;width:6px;height:6px;transition:background .2s}.hub-start-dot.is-active{background:var(--primary-color)}.focus-bar{border-radius:999px;gap:2px;height:5px;display:flex;overflow:hidden}.focus-bar-seg{flex:1 1 0;min-width:4px;display:block}.focus-bar-labeled{gap:3px;display:flex}.focus-bar-col{flex-direction:column;flex:1 1 0;gap:.35rem;min-width:max-content;display:flex}.focus-bar-labeled .focus-bar-seg{border-radius:2px;flex:none;height:8px}.focus-bar-labeled .focus-bar-col:first-child .focus-bar-seg{border-radius:4px 2px 2px 4px}.focus-bar-labeled .focus-bar-col:last-child .focus-bar-seg{border-radius:2px 4px 4px 2px}.focus-bar-label{text-align:center;white-space:nowrap;font-size:.69rem;font-weight:600}.focus-bar-seg.is-warmup{background:var(--focus-warmup)}.focus-bar-seg.is-open{background:var(--focus-open)}.focus-bar-seg.is-sr{background:var(--focus-sr)}.focus-bar-seg.is-strength{background:var(--focus-strength)}.focus-bar-seg.is-match{background:var(--focus-match)}.focus-bar-seg.is-freeplay{background:var(--focus-freeplay)}.focus-bar-label.is-warmup{color:#b45309}.focus-bar-label.is-open{color:#047857}.focus-bar-label.is-sr{color:var(--focus-sr)}.focus-bar-label.is-strength{color:#0369a1}.focus-bar-label.is-match{color:var(--focus-match)}.focus-bar-label.is-freeplay{color:#475569}.hub-tile{min-height:108px}.hub-tile-sub{color:var(--text-muted);margin-top:-.3rem;font-size:.75rem;font-weight:600;line-height:1.2rem}.hub-tile-kicker{color:var(--text-muted);margin-top:auto;font-size:.75rem;font-weight:600}.hub-tile-kicker+.tile-card-label{margin-top:-.3rem}.hub-week-dots{gap:5px;height:1.2rem;margin-top:-.3rem;display:flex}.hub-week-day{flex-direction:column;align-items:center;gap:3px;display:flex}.hub-week-day:after{content:"";border-bottom:4px solid #0000;border-left:3px solid #0000;border-right:3px solid #0000;width:0;height:0}.hub-week-day.is-today:after{border-bottom-color:var(--primary-color)}.hub-week-dot{background:var(--border-subtle);box-sizing:border-box;border-radius:50%;width:12px;height:12px}.hub-week-dot.is-done{background:var(--primary-color)}.hub-week-dot.is-planned{background:var(--surface-card);border:1.5px solid var(--primary-color)}.training-hub-page .tile-grid{grid-auto-rows:1fr}.hub-results-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.hub-result-tile{min-height:118px;color:var(--text-main);flex-direction:column;gap:.25rem;padding:.9rem .875rem;text-decoration:none;display:flex}.hub-result-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:.5rem;font-size:1.5rem;font-weight:800;line-height:1}.hub-result-title{margin-top:auto;font-size:.85rem;font-weight:700}.hub-result-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;font-weight:600;overflow:hidden}.hub-list{flex-direction:column;display:flex}.hub-row{min-height:56px;color:var(--text-main);align-items:center;gap:.75rem;padding:0 1rem;text-decoration:none;display:flex}.hub-row+.hub-row,.hub-player-row+.hub-player-row{border-top:1px solid var(--border-subtle)}.hub-row-icon{background:var(--primary-light);width:36px;height:36px;color:var(--primary-color);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.hub-row-title{flex:1;min-width:0;font-size:.92rem;font-weight:600}.hub-row-value{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;font-size:.8rem;font-weight:600}.hub-row-chevron{color:var(--text-muted);flex-shrink:0}.hub-player-row{color:var(--text-main);align-items:center;gap:.75rem;padding:.75rem 1rem;text-decoration:none;display:flex}.hub-player-avatar{background:var(--brand-gradient);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:.9rem;font-weight:700;display:flex;overflow:hidden}.hub-player-avatar img{object-fit:cover;width:100%;height:100%}.hub-player-body{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.hub-player-name{font-size:.92rem;font-weight:700}.hub-player-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.hub-player-body .focus-bar{margin-top:.3rem}.hub-player-done{background:var(--primary-color);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.hub-player-when{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:1px;min-width:2.75rem;display:flex}.hub-player-weekday{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.68rem;font-weight:700}.hub-player-time{font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:800}.training-day-card{padding:0}.training-day-head{align-items:center;gap:.75rem;padding:.95rem 1rem;display:flex}.training-day-summary{min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:.6rem;margin:0;padding:0;display:flex}.training-day-summary:disabled{cursor:default}.training-day-name{color:var(--text-main);font-size:.95rem;font-weight:600}.training-day-pill{color:var(--primary-color);background:var(--primary-light);white-space:nowrap;border-radius:999px;padding:.15rem .55rem;font-size:.8rem;font-weight:600}.training-day-chevron{color:var(--text-muted);flex-shrink:0;margin-left:auto}.training-day-edit{border-top:1px solid var(--border-subtle);flex-direction:column;gap:.85rem;padding:.9rem 1rem 1rem;display:flex}.training-day-times{align-items:center;gap:.75rem;display:flex}.training-day-dash{color:var(--text-muted);flex-shrink:0;padding:0 .15rem;font-size:1.1rem;font-weight:600}.training-day-field{flex-direction:column;flex:1;gap:.4rem;min-width:0;display:flex}.training-day-field>span{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-size:.7rem;font-weight:700}.training-day-time{border-radius:var(--radius-md);width:100%;color:var(--text-main);background:var(--bg-body);text-align:center;letter-spacing:.03em;border:1px solid #0000;flex:1;min-width:0;padding:.7rem .8rem;font-family:inherit;font-size:1rem;font-weight:500;transition:border-color .2s,background .2s,box-shadow .2s}.training-day-time:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-light);background:#fff;outline:none}.training-day-done{margin-top:.1rem}.training-day-field .log-partner-dropdown{box-shadow:none;margin-top:.4rem;position:static}.training-day-pick-btn{gap:.4rem}.training-day-pick-btn svg{flex-shrink:0}.training-day-field-slot{position:relative}.training-day-field-saving-overlay{border-radius:var(--radius-lg);z-index:2;background:#ffffffbf;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}@media (prefers-color-scheme:dark){.training-day-field-saving-overlay{background:#0000008c}}.training-day-detail-card{flex-direction:column;padding:1rem;display:flex;position:relative}.training-day-detail-rejected-badge{z-index:2;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:#e11d48;border-radius:999px;padding:.2rem .55rem;font-size:.65rem;font-weight:800;position:absolute;top:.85rem;right:.85rem;box-shadow:0 1px 3px #00000026}.training-day-detail-coach-origin-badge{z-index:2;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:#0369a1;border-radius:999px;padding:.2rem .55rem;font-size:.65rem;font-weight:800;position:absolute;top:.85rem;right:.85rem;box-shadow:0 1px 3px #00000026}.training-day-detail-who{align-items:center;gap:.4rem;margin-bottom:.5rem;text-decoration:none;display:flex}.training-day-detail-who-av{border-radius:50%;flex-shrink:0;width:22px;height:22px;overflow:hidden}.training-day-detail-who-name{color:var(--text-main);font-size:.85rem;font-weight:700}.training-day-detail-eyebrow{text-transform:uppercase;letter-spacing:.06em;color:var(--primary-hover);margin-bottom:.3rem;font-size:.7rem;font-weight:800}.training-day-detail-date{letter-spacing:-.02em;color:var(--text-main);margin:0;font-size:1.4rem;font-weight:800;line-height:1.2}.training-day-detail-time{color:var(--text-muted);align-items:center;gap:.4rem;margin-top:.35rem;font-size:.85rem;font-weight:600;display:flex}.training-day-detail-time svg{flex-shrink:0}.training-day-detail-start{margin-top:1rem}.training-day-detail-link{color:inherit;align-items:center;gap:.75rem;padding:.9rem 1rem;text-decoration:none;transition:background .12s;display:flex}.training-day-detail-link:active{background:var(--bg-body)}button.training-day-detail-link{text-align:left;width:100%;font:inherit;cursor:pointer;background:var(--surface-card)}.training-day-detail-link-tapzone{min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:.75rem;margin:0;padding:0;display:flex}.training-day-detail-link-tapzone:disabled{cursor:default}.training-day-field-decision-icons{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.training-day-field-decision-label{color:#d4a017;white-space:nowrap;flex-shrink:0;font-size:.78rem;font-weight:700}.training-day-decision-icon-btn{cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.training-day-decision-icon-btn.is-accept{background:var(--primary-color);color:#fff}.training-day-decision-icon-btn.is-reject{background:var(--bg-body);color:var(--text-muted);border:1.5px solid var(--border-color)}.training-day-decision-icon-btn:disabled{opacity:.55;cursor:default}.training-day-partners-card.is-editable-row{align-items:center;padding-right:1rem;display:flex}.training-day-partner-request{align-items:center;gap:.75rem;margin-top:.6rem;display:flex}.training-day-partner-request-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.training-day-partner-request-note{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.training-day-partners-tapzone{flex-direction:column;flex:1;min-width:0;display:flex}.training-day-partner-row-editzone{min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:.75rem;margin:0;padding:0;display:flex}.training-day-partner-row-editzone:disabled{cursor:default}.training-day-partner-row-profile-link{color:inherit;flex-shrink:0;align-items:center;margin:-.5rem 0;padding:.5rem 0;text-decoration:none;display:flex}.training-day-detail-link-icon{background:var(--primary-light);width:40px;height:40px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.training-day-detail-link-icon.is-empty{background:var(--border-subtle);color:var(--text-muted)}.training-day-detail-link-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.training-day-detail-link-title{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:700;overflow:hidden}.training-day-detail-link-title.is-empty{color:var(--text-muted);font-weight:600}.training-day-detail-link-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;overflow:hidden}.training-day-detail-link-chevron{color:var(--text-muted);flex-shrink:0}.training-day-plan-label{flex-direction:column;gap:1px;display:flex}.training-day-plan-sub{color:var(--text-muted);font-size:.72rem;font-weight:500}.training-day-plan-note{color:var(--text-body);margin:0 0 .25rem;font-size:.82rem;line-height:1.5}.training-day-proposal-pending-note{color:#d4a017;text-align:center;margin:0 0 .5rem;font-size:.85rem;font-weight:600}.training-day-proposal-pending-row{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.training-day-proposal-pending-row .training-day-proposal-pending-note{text-align:left;margin:0}.training-day-proposal-withdraw-btn{font:inherit;color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;margin:0;padding:0;font-size:.85rem;font-weight:600;text-decoration:underline}.training-day-proposal-withdraw-btn:disabled{opacity:.6;cursor:default}.training-day-plan-link{margin-top:.35rem}.training-day-partner-invite-text{color:var(--text-main);margin:0;font-size:.9rem;line-height:1.45}.training-day-partners-card{padding:.35rem 0}button.training-day-partners-card{text-align:left;width:100%;font:inherit;cursor:pointer;background:var(--surface-card);border:none}.training-day-partner-row{color:inherit;align-items:center;gap:.75rem;padding:.7rem 1rem;text-decoration:none;transition:background .12s;display:flex}.training-day-partner-row:active{background:var(--bg-body)}.training-day-partner-row-av{border-radius:50%;flex-shrink:0;width:36px;height:36px;overflow:hidden}.training-day-partner-row-name{min-width:0;color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.9rem;font-weight:600;overflow:hidden}.training-day-log-list{padding:.35rem 0}.training-day-log-row{justify-content:space-between;align-items:baseline;gap:.75rem;padding:.5rem 1rem;display:flex}.training-day-log-row+.training-day-log-row{border-top:1px solid var(--border-subtle)}.training-day-log-text{color:var(--text-main);font-size:.85rem}.training-day-log-time{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:.72rem}.detail-more-btn{border:none;border-top:1px solid var(--border-subtle);cursor:pointer;width:100%;color:var(--primary-color);text-align:center;background:0 0;margin-top:.5rem;padding:.6rem 1rem;font-family:inherit;font-size:.8rem;font-weight:600;display:block}.template-entries{flex-direction:column;gap:.5rem;display:flex}.template-entry{grid-template-columns:auto 1fr auto;grid-template-areas:"index main actions"".minutes minutes";align-items:center;gap:.5rem .6rem;padding:.7rem .85rem;display:grid}.template-entry-index{background:var(--primary-light);width:22px;height:22px;color:var(--primary-color);border-radius:50%;grid-area:index;justify-content:center;align-items:center;font-size:.72rem;font-weight:800;display:flex}.template-entry-main{grid-area:main;align-items:center;gap:.6rem;min-width:0;display:flex}.template-entry-actions{grid-area:actions;align-items:center;gap:.25rem;display:flex}.template-entry-move,.template-entry-remove{background:var(--bg-body);width:28px;height:28px;color:var(--text-muted);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.template-entry-move:disabled{opacity:.3;cursor:default}.template-entry-minutes{flex-direction:column;grid-area:minutes;gap:.3rem;display:flex}.template-entry-minutes-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.65rem;font-weight:700}.template-picker-list{gap:0;max-height:55vh;overflow-y:auto}.template-picker-list .live-picker-row{box-shadow:none;background:0 0;border-radius:0;padding:.75rem .25rem}.template-picker-list .live-picker-row:active{box-shadow:none;transform:none}.template-picker-list .live-picker-row+.live-picker-row{border-top:1px solid var(--border-subtle)}.live-layer{z-index:200;background:var(--bg-body);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.live-layer.is-hidden{display:none}body.live-layer-open{overflow:hidden}body.live-layer-open .live-session-bar{display:none}.live-layer-loading{justify-content:center;align-items:center}.live-layer-skeleton{border-radius:50%;width:64px;height:64px}.live-session-bar{left:0;right:0;bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));z-index:99;width:100%;max-width:var(--max-content-width);background:var(--brand-gradient);color:#fff;text-align:left;cursor:pointer;border:none;border-top:1px solid #ffffff2e;align-items:center;gap:.7rem;margin:0 auto;padding:.55rem 1rem;display:flex;position:fixed;box-shadow:0 -6px 20px #05966938}.live-session-bar:active{filter:brightness(.94)}.live-session-bar-dot{background:#fff;border-radius:50%;flex:none;width:9px;height:9px;animation:1.8s ease-in-out infinite live-bar-pulse}@keyframes live-bar-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.82)}}.live-session-bar-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.live-session-bar-title{white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:700;line-height:1.2;overflow:hidden}.live-session-bar-sub{opacity:.82;font-size:.68rem;font-weight:500;line-height:1.2}.live-session-bar-clock{font-variant-numeric:tabular-nums;flex:none;font-size:1rem;font-weight:800}.live-session-bar-chevron{opacity:.85;flex:none}body.has-live-bar .page-container{padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + 5rem)}.live-screen{height:100dvh;padding:env(safe-area-inset-top,1.25rem) 1.25rem env(safe-area-inset-bottom,1.25rem);background:var(--primary-light);flex-direction:column;display:flex;overflow:hidden}.live-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:.5rem 0 1rem;display:flex}.live-total-timer{color:var(--text-main);font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:800}.live-close-btn{background:var(--surface-card);width:36px;height:36px;color:var(--text-main);box-shadow:var(--shadow-sm);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.live-close-btn.is-ghost{visibility:hidden;pointer-events:none}.live-header-end{align-items:center;gap:.4rem;display:flex}.live-finish-btn{background:var(--brand-gradient);color:#fff;border:none;border-radius:999px;justify-content:center;align-items:center;min-width:68px;height:36px;padding:0 .9rem;font-size:.82rem;font-weight:700;display:flex}.live-finish-btn:disabled{opacity:.7}.live-error{margin-bottom:.75rem}.live-offline-banner{color:#8a6508;border-radius:var(--radius-sm);background:#d4a0171f;border:1px solid #d4a01757;margin-bottom:.75rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500}.live-pause-title{color:var(--text-main);text-align:center;margin:0 0 .25rem;font-size:1.15rem;font-weight:800}.live-pause-progress{color:var(--text-muted);text-align:center;margin:0 0 .25rem;font-size:.8rem}.live-partner-pick{border:1.5px dashed var(--border-color);background:var(--surface-card);color:var(--text-muted);border-radius:999px;justify-content:center;align-self:center;align-items:center;gap:.4rem;padding:.5rem .9rem;font-size:.85rem;font-weight:600;display:inline-flex}.live-partner-pick strong{color:var(--text-main);font-weight:700}.live-partner-pick svg{flex-shrink:0}.live-partner-pick-sm{padding:.4rem 1rem;font-size:.76rem}.live-partner-sheet{text-align:left}.live-partner-sheet .live-preview-head{margin-bottom:.75rem}.live-partner-list{flex-direction:column;gap:.15rem;max-height:46vh;margin-top:.25rem;display:flex;overflow-y:auto}.live-partner-row{border-radius:var(--radius-md);text-align:left;cursor:pointer;width:100%;color:var(--text-main);background:0 0;border:none;align-items:center;gap:.7rem;padding:.55rem .5rem;font-size:.9rem;display:flex}.live-partner-row:active{background:var(--bg-body)}.live-partner-row-avatar{background:var(--bg-body);width:32px;height:32px;color:var(--text-muted);font-size:.78rem;font-weight:700;display:inline-flex}.live-partner-row-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.live-partner-row-check{color:var(--primary-color);flex-shrink:0}.live-partner-row.is-clear .live-partner-row-name{color:var(--text-muted)}.live-summary-topbar{grid-template-columns:1fr auto 1fr;align-items:center;width:100%;margin-bottom:.5rem;display:grid}.live-summary-back{justify-self:start}.live-summary-trash{color:var(--text-muted);justify-self:end}.live-picker{flex-direction:column;flex:1;gap:.75rem;min-height:0;padding-bottom:1.25rem;display:flex;overflow-y:auto}.live-screen,.live-screen *{scrollbar-width:none;-ms-overflow-style:none}.live-screen::-webkit-scrollbar{width:0;height:0;display:none}.live-screen ::-webkit-scrollbar{width:0;height:0;display:none}.live-picker-tile-viz-empty{background:#0f51321f;border-radius:4px;width:24px;height:36px}.live-picker-tile-cert{color:#d4a017;flex-shrink:0}.live-preview-sheet{text-align:left}.log-drill-row{border:1px solid var(--border-color);box-shadow:var(--shadow-card);flex-direction:column;align-items:stretch}.log-drill-row-main{align-items:center;gap:.55rem;width:100%;display:flex}.log-drill-row.is-open{padding-bottom:.6rem}.log-drill-time-input{border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-muted);background:#fff;align-items:center;gap:.3rem;padding:.4rem .6rem;font-size:.85rem;display:flex}.log-drill-time-input input{width:100%;min-width:0;color:var(--text-main);background:0 0;border:none;outline:none;font-family:inherit;font-size:.95rem;font-weight:700}.log-drill-sets{flex-direction:column;gap:.4rem;padding:.1rem .7rem .6rem;display:flex}.log-drill-set{align-items:center;gap:.5rem;display:flex}.log-drill-set-label{width:3.5rem;color:var(--text-muted);flex-shrink:0;font-size:.72rem;font-weight:700}.log-drill-set .log-drill-time-input{flex:1}.log-drill-set-remove{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.log-drill-set-add{border:1px dashed var(--border-color);min-height:44px;color:var(--primary-color);cursor:pointer;background:0 0;border-radius:999px;align-self:flex-start;align-items:center;gap:.3rem;padding:.35rem .7rem;font-family:inherit;font-size:.76rem;font-weight:700;display:inline-flex}.log-drills-container .log-drill-card{border-color:var(--border-subtle);box-shadow:var(--shadow-sm)}.log-drills-container .log-drill-card.is-dragging{box-shadow:var(--shadow-card);border-color:var(--primary-color)}.log-drill-card .log-drill-sets{margin-top:.6rem}.log-drill-people{gap:.6rem}.log-drill-people-row{align-items:center;gap:.6rem;display:flex}.log-drill-people-row>.live-done-times{flex:1;min-width:0}.log-drill-card .log-drill-people{padding-left:calc(20px + .4rem);padding-right:0}.log-drill-edit{flex-direction:column;gap:.5rem;margin-left:calc(-.5rem - 1.5px);display:flex}.log-drill-edit-grid{grid-template-columns:max-content max-content;align-items:center;gap:.5rem .6rem;display:grid}.log-drill-edit-grid .live-partner-mini-name{color:var(--text-main);font-size:.78rem;font-weight:700}.log-drill-edit-grid .live-partner-pick{justify-self:start;font-size:.78rem}.log-drill-edit-me{min-width:0;padding-left:calc(.5rem + 1.5px)}.log-drill-edit-add{grid-column:1/-1;justify-self:start}.log-drill-edit-foot{align-items:center;gap:.6rem;display:flex}.log-drill-edit-foot>.log-drill-edit-btn{margin-left:auto}.log-min-pill{appearance:none;border:1.5px solid var(--border-color);background:var(--surface-card);width:4.6rem;height:30px;color:var(--text-main);text-align:center;text-align-last:center;cursor:pointer;border-radius:999px;padding:0 .4rem;font-family:inherit;font-size:.78rem;font-weight:700}.log-min-pill:focus{border-color:var(--primary-color);outline:none}.log-drill-edit-btn{background:var(--border-subtle);width:32px;height:32px;color:var(--text-muted);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.log-drill-edit-btn.is-done{background:var(--primary-color);color:#fff}.log-drill-check{min-height:40px;color:var(--text-body);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.6rem;font-size:.85rem;display:flex}.log-drill-check input{appearance:none;border:1.5px solid var(--border-color);background:var(--surface-card);cursor:pointer;border-radius:6px;flex-shrink:0;place-content:center;width:20px;height:20px;margin:0;display:inline-grid}.log-drill-check input:checked{background:var(--primary-color);border-color:var(--primary-color)}.log-drill-check input:checked:after{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:10px;height:6px;margin-top:-2px;transform:rotate(-45deg)}.match-list,.match-round-group{flex-direction:column;gap:.5rem;display:flex}.match-round-group-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;margin:.2rem 0 0;font-size:.72rem;font-weight:800}.match-list-head,.match-list-row{grid-template-columns:minmax(0,1fr) 2.9rem .5rem 2.9rem 1.75rem;align-items:center;gap:.3rem;display:grid}.match-list-head{padding:0 .75rem .1rem}.match-list-row{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:.55rem .75rem}.match-list-head-label{text-align:center;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);font-size:.6rem;font-weight:800}.match-list-row-opp{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;min-width:0;padding:0;font-family:inherit;display:flex}.match-list-row-avatar{background:var(--bg-body);width:30px;height:30px;color:var(--text-muted);font-size:.72rem;font-weight:700;display:inline-flex}.match-list-row-pair{flex-direction:column;flex:1;gap:.4rem;min-width:0;display:flex}.match-list-row-pair-line{align-items:center;gap:.5rem;min-width:0;display:flex}.match-list-row-name{min-width:0;color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.9rem;font-weight:600;overflow:hidden}.match-score-select{appearance:none;border:1.5px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-card);width:100%;height:38px;color:var(--text-main);font-variant-numeric:tabular-nums;text-align:center;text-align-last:center;cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:800}.match-score-select:focus{border-color:var(--primary-color);outline:none}.match-score-colon{text-align:center;color:var(--text-muted);font-weight:800}.match-list-remove{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;justify-self:center;align-items:center;display:flex}.match-add-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);width:100%;box-shadow:var(--shadow-card);color:var(--primary-color);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:1rem;font-family:inherit;font-size:.9rem;font-weight:700;display:flex}.match-add-card:active{background:var(--primary-light)}.placement-summary-row{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-card);justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem .75rem;display:flex}.match-detail-body{flex:1;min-height:0;padding:.25rem 2px .5rem;overflow-y:auto}.match-form-sheet{flex-direction:column;gap:.9rem;display:flex}.match-form-field{flex-direction:column;gap:.375rem;display:flex}.match-form-row{align-items:center;gap:.6rem;display:flex}.match-form-opponent{border:1.5px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-card);text-align:left;cursor:pointer;flex:1;align-items:center;gap:.5rem;min-width:0;padding:.5rem .6rem;font-family:inherit;display:flex}.match-form-score{flex-shrink:0;align-items:center;gap:.3rem;width:128px;display:flex}.match-form-score .match-score-select{width:52px}.match-form-actions{justify-content:flex-end;display:flex}.match-form-doubles-opps{flex-direction:column;gap:.5rem;display:flex}.match-list-row-name.is-placeholder{color:var(--text-muted);font-weight:500}.club-picker-list{max-height:46vh;margin-top:.5rem;overflow-y:auto}.log-sport-select-value .venue-row-badge{margin-left:.25rem}.log-team-score{align-items:flex-end;gap:.75rem;padding:.875rem 1rem;display:flex}.log-team-score-side{flex-direction:column;flex:1;gap:.375rem;min-width:0;display:flex}.log-team-score-side .log-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.log-team-score .match-score-colon{align-items:center;height:38px;display:flex}.match-result-pill{font-variant-numeric:tabular-nums;background:var(--bg-body);color:var(--text-muted);border-radius:999px;flex-shrink:0;align-items:center;padding:.1rem .5rem;font-size:.72rem;font-weight:800;display:inline-flex}.match-result-pill.is-win{background:var(--primary-light);color:var(--primary-color)}.match-result-pill.is-loss{background:var(--error-bg);color:var(--error-text)}.activity-detail-drill-plan-tag{background:var(--primary-light);width:20px;height:20px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.activity-detail-match-list{flex-direction:column;gap:.5rem;display:flex}.activity-detail-match-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-card);color:inherit;align-items:center;gap:.75rem;padding:.85rem 1rem;text-decoration:none;display:flex}.activity-detail-match-avatar{background:var(--brand-gradient);color:#fff;width:38px;height:38px;font-size:.9rem;font-weight:700;display:inline-flex}.activity-detail-match-name{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.activity-detail-match-name-main{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:700;overflow:hidden}.activity-detail-match-pair{flex-direction:column;flex:1;gap:.6rem;min-width:0;display:flex}.match-doubles-label{align-items:center;gap:.35rem;min-width:0;display:flex}.match-doubles-label-avatar{background:var(--brand-gradient);color:#fff;letter-spacing:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:.6rem;font-weight:700;display:inline-flex;overflow:hidden}.match-doubles-label-avatar img{object-fit:cover;width:100%;height:100%}.activity-detail-match-pair-row{min-width:0;color:inherit;align-items:center;gap:.75rem;text-decoration:none;display:flex}.activity-detail-match-score{font-variant-numeric:tabular-nums;color:var(--text-muted);flex-shrink:0;font-size:1.35rem;font-weight:800}.activity-detail-match-score.is-win{color:var(--primary-color)}.activity-detail-match-score.is-loss{color:var(--error-text)}.activity-detail-match-score.is-pending{font-size:1.05rem}.activity-detail-match-score-sep{opacity:.4;margin:0 .1rem;font-weight:700}.log-catalog-sheet{text-align:left;flex-direction:column;gap:.5rem;max-width:460px;height:min(72vh,620px);max-height:calc(100vh - 7rem);padding:1.1rem 1.1rem 1rem;display:flex;overflow:hidden}.avatar-crop-sheet{flex-direction:column;align-items:center;gap:.6rem;display:flex}.avatar-crop-hint{color:var(--text-muted);text-align:center;margin:0;font-size:.78rem}.avatar-crop-box{background:var(--brand-gradient-soft);touch-action:none;cursor:grab;border-radius:50%;width:260px;height:260px;position:relative;overflow:hidden}.avatar-crop-img{-webkit-user-select:none;user-select:none;max-width:none;position:absolute;top:50%;left:50%}.avatar-crop-ring{pointer-events:none;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #ffffffd9}.avatar-crop-zoom{width:100%;max-width:260px;accent-color:var(--primary-color)}.picker-create-btn{border:1px solid var(--border-subtle);background:var(--surface-card);color:var(--primary-color);cursor:pointer;border-radius:999px;flex-shrink:0;align-items:center;gap:.25rem;padding:.28rem .6rem;font-family:inherit;font-size:.75rem;font-weight:700;display:inline-flex}.picker-head-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.picker-add-btn{width:30px;height:30px;color:var(--primary-color);cursor:pointer;background:#0596691f;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.picker-done-btn{background:var(--primary-color);color:#fff;cursor:pointer;border:none;border-radius:999px;flex-shrink:0;align-items:center;gap:.3rem;padding:.34rem .75rem;font-family:inherit;font-size:.78rem;font-weight:700;display:inline-flex}.venue-not-found-cta{border:1.5px dashed var(--primary-color);border-radius:var(--radius-md);width:100%;color:var(--primary-color);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.4rem;margin-bottom:.6rem;padding:.7rem;font-family:inherit;font-size:.85rem;font-weight:700;display:flex}.venue-not-found-cta:active{background:var(--primary-light)}.venue-not-found-link{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:.82rem;font-weight:600;text-decoration:underline}.venue-picker-body{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.log-catalog-sheet>.live-preview-head,.log-catalog-sheet>.discover-tabs,.log-catalog-sheet>.live-picker-filter,.log-catalog-sheet>.search-field{flex-shrink:0}.log-catalog-sheet>.live-picker-quickbar{flex-shrink:0;margin-top:0;padding-top:.5rem}.log-catalog-sheet .live-picker-list{flex:1;min-height:0;margin:0;overflow-y:auto}.log-catalog-sheet>.live-picker-empty,.log-catalog-sheet>.live-picker-searching{flex:1;min-height:0}.log-catalog-sheet>.new-exercise-form{flex:1;gap:.85rem;min-height:0;padding-right:2px;overflow-y:auto}.log-catalog-sheet .exercise-form-card{flex-shrink:0}.log-catalog-sheet .live-preview-body{flex:1;min-height:0;padding-right:2px;overflow-y:auto}.live-preview-start{margin:.5rem 0 .75rem}.live-preview-head{align-items:flex-start;gap:.5rem;display:flex}.live-preview-name{color:var(--text-main);flex-wrap:wrap;flex:1;align-items:center;gap:.35rem;margin:0;font-size:1.05rem;font-weight:800;display:inline-flex}.live-preview-close{background:var(--bg-body);width:30px;height:30px;color:var(--text-muted);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.live-preview-close.is-confirm{background:var(--primary-color);color:#fff}.live-preview-desc{color:var(--text-muted);margin:.5rem 0 0;font-size:.85rem;line-height:1.45}.live-preview-viz{justify-content:center;margin:.75rem 0;display:flex}.live-picker-list{flex-direction:column;gap:.5rem;display:flex}.live-picker-row{border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-sm);text-align:left;cursor:pointer;border:none;align-items:center;gap:.5rem;width:100%;padding:.6rem .6rem .6rem .75rem;transition:transform .1s,box-shadow .15s;display:flex}.live-picker-row:active{box-shadow:var(--shadow-hover);transform:scale(.985)}.live-picker-row.is-just-added{animation:.65s ease-out picker-row-added}@keyframes picker-row-added{0%{background:var(--primary-light);box-shadow:0 0 0 2px var(--primary-color)}to{background:var(--surface-card);box-shadow:var(--shadow-sm)}}.live-picker-row-main{text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:.75rem;min-width:0;padding:0;display:flex}.live-picker-row.is-dashed{background:linear-gradient(180deg, var(--surface-card) 0%, #e9fbf3 100%);border:1.5px dashed #05966980}.live-picker-row.is-dashed .live-picker-row-name{color:var(--primary-hover)}.live-picker-row-viz{flex-shrink:0;justify-content:center;align-items:center;width:30px;height:45px;display:flex}.live-picker-row-viz-plus{border-radius:var(--radius-sm);background:var(--primary-light);color:var(--primary-color)}.live-picker-row-viz-strength{border-radius:var(--radius-sm);color:#0369a1;background:#e0f2fe;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.live-picker-row-text{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.live-picker-row-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.3rem;font-size:.9rem;font-weight:700;display:flex;overflow:hidden}.live-picker-row-name-text{text-overflow:ellipsis;min-width:0;overflow:hidden}.live-picker-row-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.live-picker-row-star,.live-picker-row-info{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;transition:color .12s,background .12s;display:flex}.live-picker-row-star.on{color:#d4a017}.live-picker-row-star.locked{color:var(--text-muted);opacity:.6}.live-picker-row-star.locked:active{background:var(--bg-body);color:var(--text-muted)}.live-picker-row-star:active,.live-picker-row-info:active{background:var(--bg-body);color:var(--primary-color)}.live-picker-row-favicon{vertical-align:-1px;margin-right:1px}.live-picker-row-group.is-open .live-picker-row{border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:none}.live-picker-row-expand{background:var(--surface-card);border-radius:0 0 var(--radius-lg) var(--radius-lg);box-shadow:var(--shadow-sm);padding:.2rem .75rem .7rem}.live-picker-row-expand-actions{align-items:center;gap:.5rem;margin-top:.3rem;display:flex}.live-picker-row-expand-actions .btn{flex:1;margin:0}.log-drill-time-input .log-drill-static-value{color:var(--text-main);font-size:.95rem;font-weight:700}.live-template-choose{color:var(--primary-hover);cursor:pointer;background:0 0;border:none;justify-content:center;align-self:center;align-items:center;gap:.4rem;margin-top:.25rem;padding:.4rem .85rem;font-size:.82rem;font-weight:700;display:inline-flex}.live-template-active{border:1px solid var(--primary-color);background:var(--primary-light);color:var(--primary-color);cursor:pointer;border-radius:999px;align-self:center;align-items:center;gap:.45rem;margin-top:.25rem;padding:.4rem .8rem;font-size:.8rem;display:inline-flex}.live-template-active-name{font-weight:700}.live-template-active-count{opacity:.75}.live-template-step-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.3rem;font-size:.68rem;font-weight:700;display:block}.live-plan-draft-mark{cursor:pointer;background:var(--border-subtle);width:30px;height:30px;color:var(--text-muted);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-right:.35rem;font-size:.82rem;font-weight:800;display:inline-flex}.live-plan-draft-mark.on{background:var(--primary-color);color:#fff}.live-plan-save-time{color:var(--text-muted);flex-shrink:0;font-size:.74rem;font-weight:600}.live-header-plan-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:700;overflow:hidden}.live-plan-all-time{justify-content:flex-end;align-items:center;gap:.5rem;padding:0 calc(1rem + 27px) 0 .6rem;display:flex}.live-plan-all-time .live-plan-time-select+.live-plan-all-time-label{text-align:left;width:calc(26px + .4rem);margin-left:-.1rem;margin-right:calc(-26px - .8rem)}.live-plan-all-time-label{color:var(--text-muted);font-size:.76rem;font-weight:600}.live-plan-clear-all{min-height:32px;color:var(--text-muted);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;margin-right:auto;padding:0;font-family:inherit;font-size:.76rem;font-weight:600;text-decoration:underline}.live-plan-time-select.is-empty{color:var(--text-muted);cursor:default;background:0 0;border-color:#0000;display:inline-block}.live-plan-time-select{appearance:none;border:1px solid var(--border-color);background:var(--surface-card);border-radius:var(--radius-md);color:var(--text-main);cursor:pointer;text-align:center;text-align-last:center;flex-shrink:0;width:3.4rem;padding:.22rem .2rem;font-family:inherit;font-size:.72rem;font-weight:600}.plan-picker-sheet{flex-direction:column;display:flex}.exercise-frozen-viz{justify-content:center;padding:1rem;display:flex}.plan-detail-bar{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.plan-detail-metrics{min-width:0;color:var(--text-muted);flex-wrap:wrap;flex:1;align-items:center;gap:.25rem .6rem;font-size:.78rem;font-weight:600;display:flex}.plan-detail-metric{align-items:center;gap:.22rem;display:inline-flex}.plan-detail-metric svg{color:#d4a017}.plan-detail-head{flex-wrap:wrap;align-items:center;gap:.5rem .6rem;padding:0 .25rem;display:flex}.plan-detail-name{color:var(--text-main);letter-spacing:-.02em;margin:0;font-size:1.45rem;font-weight:800;line-height:1.2}.plan-detail-head .plan-visibility{align-self:center}.plan-desc-input{resize:vertical;min-height:5.5rem}.plan-detail-foot{padding:.25rem .25rem 0}.plan-focus-card{padding:1rem}.plan-focus-total{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700}.plan-detail-author{color:var(--text-muted);margin:0;font-size:.78rem;font-weight:600}.live-plan-edit-main:disabled{cursor:default}.plan-visibility{align-self:flex-start;position:relative}.plan-visibility-toggle{border:1px solid var(--border-color);background:var(--surface-card);border-radius:var(--radius-md);color:var(--text-main);cursor:pointer;align-items:center;gap:.4rem;padding:.5rem .85rem;font-family:inherit;font-size:.82rem;font-weight:650;display:inline-flex}.plan-visibility-toggle:disabled{opacity:.5}.plan-visibility-menu{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-md);min-width:100%;box-shadow:var(--shadow-hover);z-index:50;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden}.plan-visibility-option{width:100%;color:var(--text-body);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;align-items:center;gap:.4rem;padding:.6rem .85rem;font-family:inherit;font-size:.82rem;font-weight:600;display:flex}.plan-visibility-option:active{background:var(--border-subtle)}.plan-note-card{padding:1rem}.plan-note-text{color:var(--text-body);white-space:pre-wrap;margin:0;font-size:.9rem;line-height:1.55}.plan-picker{height:60vh}.plan-editor .live-plan-edit-list{margin-top:.25rem}.plan-editor-save{width:auto;padding:0 .6rem;font-size:.85rem;font-weight:700}.plan-editor-save:disabled{opacity:.4}.template-row-open{text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:.75rem;min-width:0;padding:0;display:flex}.template-row-icon{background:var(--primary-light);width:36px;height:36px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.plan-empty-text{max-width:15rem}.live-plan-warmup-icon{width:24px;height:36px;color:var(--focus-warmup);justify-content:center;align-items:center;display:inline-flex}.live-plan-type-pill.is-warmup{color:#b45309;background:#fef3c7}.live-plan-match-icon{width:24px;height:36px;color:var(--focus-match);justify-content:center;align-items:center;display:inline-flex}.live-plan-type-pill.is-match{color:var(--focus-match);background:#0e74901f}.live-plan-freeplay-icon{width:24px;height:36px;color:var(--primary-color);justify-content:center;align-items:center;display:inline-flex}.live-plan-type-pill.is-freeplay{color:#475569;background:#f1f5f9}.live-plan-type-pill.is-missing{background:var(--error-bg);color:var(--error-text)}.live-plan-edit-list{flex-direction:column;gap:8px;display:flex}.live-plan-group-title{border-left:3px solid var(--primary-color);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;align-items:center;margin:.2rem 0 -.15rem;padding-left:.6rem;font-size:.78rem;font-weight:700;display:flex}.live-plan-edit-row{align-items:center;gap:.4rem;padding:.5rem .6rem;transition:transform .18s;display:flex}.live-plan-edit-row.is-dragging{z-index:2;box-shadow:var(--shadow-hover);touch-action:none;transition:none;position:relative}.live-picker.is-reordering{touch-action:none}.live-plan-edit-grip{width:16px;color:var(--text-muted);opacity:.5;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.live-plan-edit-main{text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:.5rem;min-width:0;padding:0;display:flex}.live-plan-edit-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.live-plan-edit-name{min-width:0;color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.live-plan-edit-sub{min-width:0;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.live-plan-type-pill{flex-shrink:0;padding:.15rem .45rem;font-size:.68rem}.live-plan-type-pill.is-open{color:#047857;background:#d1fae5}.live-plan-type-pill.is-sr{color:var(--focus-sr);background:#065f461f}.live-plan-type-pill.is-strength{color:#0369a1;background:#e0f2fe}.live-plan-status-pill{flex-shrink:0;align-items:center;gap:.2rem;padding:.15rem .5rem;font-size:.68rem;display:inline-flex}.live-plan-status-pill.is-done{background:var(--primary-light);color:var(--primary-color)}.live-plan-strength-group{flex-direction:column;align-items:stretch;gap:0}.live-plan-strength-head{align-items:center;gap:.5rem;display:flex}.live-plan-strength-toggle{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:0;font-family:inherit}.live-plan-strength-toggle .live-plan-status-pill,.live-plan-strength-toggle .activity-detail-drill-chevron{flex-shrink:0}.live-plan-strength-head .live-plan-edit-name{flex:1;min-width:0}.live-plan-strength-group .log-drill-sets{border-top:1px solid var(--border-subtle);margin-top:.6rem;padding-top:.6rem}.live-plan-strength-body{border-top:1px solid var(--border-subtle);flex-direction:column;margin-top:.5rem;padding-top:.15rem;display:flex}.live-plan-strength-sub{color:inherit;align-items:center;gap:.5rem;padding:.5rem 0;text-decoration:none;display:flex}.live-plan-strength-sub+.live-plan-strength-sub{border-top:1px solid var(--border-subtle)}.live-plan-strength-sub-name{min-width:0;color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.82rem;font-weight:600;overflow:hidden}.live-plan-strength-sub-unit{color:var(--text-muted);flex-shrink:0;font-size:.72rem}.live-plan-strength-add{border:1px dashed var(--border-color);min-height:44px;color:var(--primary-color);cursor:pointer;background:0 0;border-radius:999px;align-self:flex-start;align-items:center;gap:.3rem;margin-top:.35rem;padding:.35rem .7rem;font-family:inherit;font-size:.76rem;font-weight:700;display:inline-flex}.live-plan-edit-remove{background:var(--border-subtle);width:26px;height:26px;color:var(--text-muted);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.live-plan-edit-remove:after{content:"";border-radius:50%;position:absolute;inset:-5px}.live-plan-edit-remove:active{background:var(--error-bg);color:var(--error-text)}.live-done-times{color:var(--text-main);flex-wrap:wrap;align-items:center;gap:.4rem 1.25rem;font-size:.82rem;font-weight:600;display:flex}.live-done-set-val{color:var(--text-main);font-variant-numeric:tabular-nums;flex:1;font-size:.85rem;font-weight:700}.live-done-match{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.live-done-match-name{min-width:0;color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:600;overflow:hidden}.live-done-match-score{color:var(--text-main);font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:800}.live-done-match-score.is-won{color:var(--primary-color)}.live-done-match-score.is-lost{color:var(--error-text)}.live-done-more-match{min-height:36px;color:var(--text-muted);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;align-self:center;padding:0 .5rem;font-family:inherit;font-size:.78rem;font-weight:600;text-decoration:underline}.live-template-step-num{background:var(--primary-light);width:22px;height:22px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.72rem;font-weight:800;display:inline-flex}.live-picker-filter{flex-wrap:wrap;gap:.4rem;display:flex}.live-picker-filter.list-filter-row{align-items:center}.list-filter-row .year-scope-menu{margin-left:auto}.matches-filter-row{align-items:center;gap:.75rem;display:flex}.matches-filter-chips{flex:1;min-width:0}.matches-filter-row .year-scope-menu{margin-left:0}.opponent-filter-label{text-overflow:ellipsis;white-space:nowrap;max-width:6.5rem;overflow:hidden}.opponent-filter-list{min-width:13rem;max-width:calc(100vw - 2rem);max-height:min(60vh,22rem);overflow-y:auto}.opponent-filter-item{align-items:center;gap:.6rem;display:flex}.opponent-filter-avatar{background:var(--bg-body);border:1px solid var(--border-color);width:26px;height:26px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:flex;overflow:hidden}.opponent-filter-avatar img{object-fit:cover;width:100%;height:100%}.opponent-filter-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.opponent-filter-check{color:var(--primary-color);flex-shrink:0}.live-picker-filter-chip{border:1px solid var(--border-color);background:var(--surface-card);color:var(--text-muted);cursor:pointer;border-radius:999px;padding:.32rem .75rem;font-size:.76rem;font-weight:600;transition:background .12s,color .12s,border-color .12s}.live-picker-filter-chip.active{background:var(--primary-light);border-color:var(--primary-color);color:var(--primary-color)}.live-picker-filter-chip:disabled{opacity:.45;cursor:default}.live-picker-filter-scroll{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.live-picker-filter-scroll::-webkit-scrollbar{display:none}.live-picker-filter-scroll .live-picker-filter-chip{flex-shrink:0}.live-picker-quickbar{background:var(--surface-card);flex-wrap:nowrap;align-items:center;gap:.4rem;margin-top:auto;padding:.55rem 0 .3rem;display:flex;position:sticky;bottom:0}.live-screen .live-picker-quickbar{background:var(--primary-light)}.live-screen .live-picker>.live-picker-quickbar{z-index:1;box-shadow:0 1.25rem 0 0 var(--primary-light)}.live-screen .log-catalog-sheet .live-picker-quickbar{background:var(--surface-card);box-shadow:none}.live-picker-quick-btn{text-overflow:ellipsis;border:1px solid var(--border-color);background:var(--surface-card);min-width:0;min-height:32px;color:var(--text-muted);white-space:nowrap;cursor:pointer;border-radius:999px;flex:auto;justify-content:center;align-items:center;gap:.3rem;padding:.3rem .5rem;font-size:.76rem;font-weight:600;transition:color .12s,border-color .12s;display:inline-flex;overflow:hidden}.live-picker-quick-btn:active{border-color:var(--primary-color);color:var(--primary-color)}.live-picker-quick-btn.is-icon{background:var(--primary-light);border-color:var(--border-color);width:34px;color:var(--primary-hover);flex:none;padding:.3rem 0}.live-picker-quick-btn.is-action{background:var(--primary-light);border-color:var(--border-color);color:var(--primary-hover);padding-left:.3rem;padding-right:.3rem;font-size:.72rem}.live-picker-quick-btn.is-action:active,.live-picker-quick-btn.is-icon:active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.live-match-icon{color:var(--primary-color);opacity:.25;margin-top:1.5rem}.live-picker-searching{color:var(--text-muted);padding:.5rem 0;font-size:.78rem}.live-picker-tabs{margin:0}.live-picker-tabs .discover-tab{white-space:nowrap;padding:.5rem .25rem;font-size:.76rem}.discover-tabs.live-picker-tabs.is-page{margin-top:.85rem;margin-bottom:.9rem}.live-picker-filter.is-page{margin-bottom:.9rem}.discover-sticky>.search-field{margin-top:0;margin-bottom:0}.discover-sticky>.discover-tabs.live-picker-tabs.is-page:last-child{margin-bottom:0}.discover-tabs.live-picker-tabs.is-page.discover-role-filter{margin-top:0;margin-bottom:.5rem}.discover-role-filter .discover-tab{padding:.35rem .25rem;font-size:.74rem}.venue-tabs+.live-picker-filter{margin-top:.6rem}.live-picker-empty{color:var(--text-muted);text-align:center;padding:1.25rem .5rem;font-size:.82rem;line-height:1.4}.live-exercise{text-align:center;flex-direction:column;flex:1;justify-content:flex-start;align-items:center;gap:.4rem;width:100%;min-height:0;padding-top:.5rem;display:flex;overflow:hidden auto}.live-exercise>*{max-width:100%}.live-match-screen .live-exercise-timer{margin:.1rem 0 .3rem;font-size:1.8rem}.live-match-sets-wrap{text-align:left;width:100%;max-width:420px;margin:.4rem 0 0}.live-match-done-btn{width:100%;max-width:420px;margin:.5rem 0 0}.live-exercise-name{color:var(--text-main);font-size:1.3rem;font-weight:800}.live-exercise-timer{color:var(--primary-color);font-variant-numeric:tabular-nums;letter-spacing:-.03em;white-space:nowrap;width:100%;margin:.4rem 0;font-size:clamp(4rem,30vw,7rem);font-weight:800;line-height:1}.live-exercise-timer.overtime{color:var(--text-muted)}.live-overtime-hint{color:var(--text-muted);font-size:.78rem;font-weight:700}.live-exercise.has-viz{justify-content:flex-start;gap:.3rem;padding-top:.4rem}.live-exercise.has-viz .live-exercise-name{font-size:.95rem}.live-exercise.has-viz .live-exercise-timer{margin:.1rem 0;font-size:clamp(3.5rem,26vw,6rem)}.live-exercise.is-countup .live-exercise-timer{font-size:clamp(2.5rem,14vw,3.75rem)}.live-role-badge{color:var(--primary-color);background:#0596691f;border-radius:999px;align-items:center;padding:.3rem .8rem;font-size:.8rem;font-weight:700;display:inline-flex}.live-role-badge.partner{color:#0369a1;background:#0369a11f}.live-role-badge.free{color:var(--primary-hover);background:#0596691a}.live-setup-pill{appearance:none;border:1.5px solid var(--border-color);background-color:var(--surface-card);max-width:100%;height:32px;color:var(--text-main);text-align:center;text-align-last:center;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .55rem center;background-repeat:no-repeat;background-size:12px;border-radius:999px;padding:0 1.6rem 0 .95rem;font-family:inherit;font-size:.8rem;font-weight:700}.live-setup-pill:focus{border-color:var(--primary-color);outline:none}.live-end-exercise-btn{justify-content:center;align-items:center;gap:.5rem;max-width:360px;display:flex}.live-exercise-actions{width:100%;max-width:400px;margin:.4rem 0 .2rem;display:flex}.live-exercise-actions .live-pause-main-btn{flex:1;max-width:none;margin:0}.live-exercise-focus{justify-content:flex-start}.live-exercise-focus:not(.is-table-open){padding-bottom:max(0px, calc(env(safe-area-inset-top,1.25rem) + 60px + .5rem - env(safe-area-inset-bottom,1.25rem)))}.live-exercise-hero{flex-direction:column;align-items:center;gap:.4rem;width:100%;max-width:400px;margin-block:auto;display:flex}.live-exercise-focus.is-table-open .live-exercise-hero{margin-block:.5rem .75rem}.live-exercise.live-exercise-focus .live-exercise-timer{margin:.1rem 0;font-size:clamp(4rem,30vw,7rem)}.live-exercise-focus .live-exercise-actions{margin:.5rem 0 .4rem}.live-exercise-title-toggle{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:.35rem;max-width:100%;min-height:40px;padding:.25rem .5rem;font-family:inherit;display:inline-flex}.live-exercise-title-toggle .live-exercise-name{overflow-wrap:anywhere;min-width:0}.live-exercise.live-exercise-focus .live-exercise-name{font-size:1.15rem}.live-pause-center{flex-direction:column;align-items:center;gap:.15rem;margin-bottom:.6rem;display:flex}.live-pause-actions{flex-direction:column;gap:.55rem;width:100%;display:flex}.live-pause-actions .btn{justify-content:center;align-items:center;gap:.4rem;min-height:46px;margin:0;display:flex}.live-switch-sheet{position:relative}.live-pause-ask-back{position:absolute;top:.75rem;left:.75rem}.live-pause-ask-row{width:100%;margin-bottom:.5rem}.live-pause-ask-actions{grid-template-columns:1fr 1fr;gap:.5rem;width:100%;display:grid}.live-pause-ask-actions .btn{min-height:46px;margin:0}.live-pause-weight-row{background:var(--border-subtle);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:.4rem;width:100%;margin-bottom:.35rem;padding:.45rem .6rem;display:flex}.live-pause-weight-label{color:var(--text-main);white-space:nowrap;font-size:.78rem;font-weight:600}.live-pause-weight-input{background:var(--surface-card);border:1.5px solid var(--border-color);border-radius:var(--radius-sm);align-items:center;gap:.25rem;padding:.2rem .5rem;transition:border-color .12s;display:flex}.live-pause-weight-input:focus-within{border-color:var(--primary-color)}.live-pause-weight-input input{width:4rem;color:var(--text-main);text-align:right;-moz-appearance:textfield;background:0 0;border:none;outline:none;font-size:1rem;font-weight:700}.live-pause-weight-input input::-webkit-inner-spin-button{-webkit-appearance:none}.live-pause-weight-input input::-webkit-outer-spin-button{-webkit-appearance:none}.live-pause-weight-input span{color:var(--text-muted);font-size:.78rem;font-weight:600}.live-exercise-list{text-align:left;width:100%;max-width:420px;margin-top:.5rem}.live-duration-setup{text-align:center;flex-direction:column;flex:1;justify-content:flex-start;align-items:center;gap:.6rem;width:100%;min-height:0;padding:.5rem 0;display:flex;overflow:hidden auto}.live-duration-setup>*{max-width:100%}.live-setup-viz{justify-content:center;width:100%;margin:.25rem 0;display:flex}.live-setup-fields{flex-direction:column;flex-shrink:0;gap:.9rem;width:100%;max-width:400px;margin-top:.5rem;display:flex}.live-setup-field{text-align:center;flex-direction:column;align-items:center;gap:.4rem;min-width:0;display:flex}.live-setup-field-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:.6875rem;font-weight:700}.live-setup-pair{justify-content:center;gap:1.5rem;display:flex}.live-setup-row3{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.live-setup-row3 .live-partner-pick{align-self:center;max-width:100%}.live-setup-sub{border-top:1.5px solid var(--border-color);justify-content:center;gap:1.5rem;margin-top:.35rem;padding-top:.85rem;display:flex;position:relative}.live-setup-sub:before{content:"";border-left:1.5px solid var(--border-color);height:.9rem;position:absolute;top:calc(-.9rem - 1.5px);left:83.3333%}.live-pause-min-chip{appearance:none;color:#0369a1;text-align:center;text-align-last:center;cursor:pointer;background:#0369a11a;border:none;border-radius:999px;height:34px;padding:0 .9rem;font-family:inherit;font-size:.85rem;font-weight:700}.live-setup-row{justify-content:space-between;align-items:center;gap:.75rem;min-height:56px;padding:.5rem 0;display:flex}.live-setup-row-label{color:var(--text-main);white-space:nowrap;font-size:.9rem;font-weight:600}.live-setup-start{width:100%;max-width:400px;min-height:50px;margin:.9rem 0 0;font-size:1rem}.live-setup-name{text-align:center;overflow-wrap:anywhere;line-height:1.2}.duration-field{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#fff;align-items:center;width:100%;max-width:200px;height:44px;transition:border-color .15s;display:flex;overflow:hidden}.duration-field:focus-within{border-color:var(--primary-color)}.duration-field-arrow{width:38px;height:100%;color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;display:flex}.duration-field-arrow:active{background:var(--primary-light);color:var(--primary-color)}.duration-field-arrow:disabled{opacity:.3;cursor:default}.duration-field-input{text-align:center;font-variant-numeric:tabular-nums;min-width:0;color:var(--text-main);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:1rem;font-weight:700}.live-planning{flex-direction:column;flex:1;gap:1rem;min-height:0;display:flex;overflow:hidden}.live-planning>.live-prep-fields,.live-planning>.live-plan-seg{flex-shrink:0}.live-planning>.live-picker{padding-bottom:.25rem}.live-prep-fields{padding:0}.live-prep-row{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.6rem;width:100%;min-height:44px;padding:.65rem .85rem;font-family:inherit;display:flex}.live-prep-row-label{color:var(--text-body);flex-shrink:0;font-size:.85rem;font-weight:600}.live-prep-row-value{text-align:right;min-width:0;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.85rem;overflow:hidden}.live-prep-row-value.is-set{color:var(--text-main);font-weight:700}.live-prep-row-chevron{color:var(--text-muted);flex-shrink:0}.live-plan-seg{margin:0}.live-header-cart-btn{position:relative}.live-header-cart-count{border:2px solid var(--surface-card);background:var(--primary-color);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.66rem;font-weight:800;display:flex;position:absolute;top:-4px;right:-4px}@keyframes live-cart-count-pop{0%{transform:scale(1)}45%{transform:scale(1.35)}to{transform:scale(1)}}.live-header-cart-count.is-pop{animation:.3s ease-out live-cart-count-pop}@keyframes live-cart-fly{to{transform:translate(var(--fly-dx), var(--fly-dy)) scale(var(--fly-scale));opacity:0}}.live-cart-flight{z-index:300;pointer-events:none;border-radius:var(--radius-lg);box-shadow:var(--shadow-hover);animation:.46s cubic-bezier(.4,0,.4,1) forwards live-cart-fly;position:fixed;overflow:hidden}@media (prefers-reduced-motion:reduce){.live-cart-flight{display:none}.live-header-cart-count.is-pop{animation:none}}.live-cart-start-btn{flex-shrink:0;margin-top:.5rem}.live-pause-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.live-pause-head .live-pause-title{text-align:left;margin:0}.live-hub-title{align-items:center;gap:.4rem;min-width:0;display:flex}.live-hub-title .live-pause-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.live-hub-plan-icon{color:var(--primary-hover);flex-shrink:0}.live-hub-badge{margin-left:0}.live-header-clock{align-items:center;gap:.45rem;min-width:0;display:inline-flex}.live-header-dot{width:9px;height:9px}.live-partner-mini{align-items:center;gap:.35rem;min-width:0;display:inline-flex}.live-partner-mini-avatar{background:var(--primary-light);width:18px;height:18px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.6rem;font-weight:800;display:inline-flex;overflow:hidden}.live-partner-mini-avatar img{object-fit:cover;width:100%;height:100%;display:block}.live-partner-mini-prefix{flex-shrink:0}.live-partner-mini-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.live-partner-pick .live-partner-mini-name{color:var(--text-main);font-weight:700}.live-partner-pick.has-partner{background:var(--surface-card);border-style:solid;min-width:0;max-width:100%;min-height:32px;padding-left:.5rem;padding-right:.95rem}.live-plan-done-list{margin-top:.35rem}.live-plan-group-title.is-done{border-left-color:var(--border-color)}.live-plan-edit-row.is-done{background:var(--bg-body);box-shadow:none}.live-screen .live-plan-edit-row:not(.is-done),.live-screen .activity-detail-drill-card,.live-screen .match-list-row,.live-screen .match-add-card{box-shadow:var(--shadow-sm)}.live-done-own{color:var(--text-muted);font-weight:500}.live-plan-edit-row.is-done .live-plan-edit-name{color:var(--text-body)}.live-plan-edit-row.is-done .live-picker-row-viz,.live-plan-edit-row.is-done .live-template-step-num{opacity:.55}@keyframes live-plan-just-added{0%,35%{box-shadow:0 0 0 2px var(--primary-color);background:var(--primary-light)}to{box-shadow:0 0 #0000}}.live-plan-just-added{animation:1.6s ease-out live-plan-just-added}@media (prefers-reduced-motion:reduce){.live-plan-just-added{animation:none}}.live-plan-strength-headrow{align-items:center;gap:.4rem;display:flex}.live-plan-strength-headrow .live-plan-strength-toggle{flex:1;width:auto;min-width:0}.live-plan-strength-foot{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.live-plan-strength-delete{width:44px;height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin-right:-.4rem;display:inline-flex}.live-plan-strength-delete:active{background:var(--error-bg);color:var(--error-text)}.live-racket-row{flex-direction:column;align-items:stretch;gap:.15rem}.live-racket-row-top{align-items:center;gap:.7rem;display:flex}.live-racket-row-spec{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;padding-left:calc(32px + .7rem);font-size:.72rem;overflow:hidden}.live-racket-sheet-bat{width:20px;height:26px}@keyframes live-overtime-pulse{0%,to{color:var(--text-muted)}50%{color:#b45309}}.live-exercise-timer.overtime.alarming{animation:1s ease-in-out infinite live-overtime-pulse}@media (prefers-reduced-motion:reduce){.live-exercise-timer.overtime.alarming{color:#b45309;animation:none}}.live-viz-wrap{justify-content:center;width:100%;display:flex}.live-setup-pause{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);align-self:center;font-size:.72rem;font-weight:700}.live-viz-spin{animation:.4s live-viz-fade}@keyframes live-viz-fade{0%{opacity:.25}to{opacity:1}}.live-summary-title{color:var(--text-main);margin:0;font-size:1.05rem;font-weight:800}.live-summary-hero-stats{grid-template-columns:repeat(4,minmax(0,1fr));width:100%;margin-top:.5rem;display:grid}.live-summary-hero-stat{flex-direction:column;justify-content:flex-start;align-items:center;gap:3px;min-width:0;padding:0 .1rem;display:flex}.live-summary-hero-stat+.live-summary-hero-stat{border-left:1px solid var(--border-subtle)}.live-summary-hero-stats+.live-summary-hero-stats{margin-top:.75rem}.live-summary-hero-val{color:var(--text-main);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:clamp(1.05rem,5.4vw,1.35rem);font-weight:800;line-height:1}.live-summary-hero-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:0;text-align:center;font-size:.6rem;font-weight:700;line-height:1.15}.live-summary{flex-direction:column;flex:1;gap:1rem;min-height:0;padding-top:.5rem;display:flex}.live-summary-head{text-align:center;flex-direction:column;flex-shrink:0;align-items:center;gap:.1rem;display:flex}.live-summary-sub{color:var(--text-muted);font-size:.85rem}.live-summary-list{flex-direction:column;flex:1;gap:.5rem;min-height:0;display:flex;overflow-y:auto}.live-summary-list .activity-detail-drill-card{flex-shrink:0}.live-summary-list .activity-detail-section{margin-top:.35rem}.live-summary-save{flex-shrink:0;margin-top:0}.live-summary-actions{flex-direction:column;flex-shrink:0;gap:.5rem;display:flex}.live-confirm-actions{flex-direction:column;gap:.6rem;margin-top:.35rem;display:flex}.live-switch-sheet{text-align:center;flex-direction:column;align-items:center;gap:.35rem;display:flex}.live-pause-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-size:.72rem;font-weight:700}.live-pause-timer{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:2.6rem;font-weight:800;line-height:1}.live-abort-title{color:var(--text-main);text-align:center;margin:0 0 .4rem;font-size:1.1rem;font-weight:800}.live-abort-text{color:var(--text-muted);text-align:center;margin:0 0 1rem;font-size:.88rem}.live-venue-prompt{flex-direction:column;gap:.6rem;display:flex}.live-venue-prompt .live-abort-title{margin-bottom:.4rem}.live-abort-confirm-btn{width:100%;color:var(--error-text);background:0 0;border:none;margin-top:.6rem;padding:.7rem;font-size:.9rem;font-weight:700;display:block}.desktop-nav{display:none}@media (min-width:1024px){html.floss-web{--bottom-nav-height:0px;--desktop-shell-width:calc(264px + 600px + 1.5rem + 3rem)}html.floss-web .site-header,html.floss-web .bottom-nav{display:none}html.floss-web .desktop-nav{height:var(--header-height);background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-color);z-index:110;display:block;position:sticky;top:0}html.floss-web .desktop-nav-inner{height:100%;max-width:var(--desktop-shell-width);align-items:center;gap:2rem;margin:0 auto;padding:0 1.5rem;display:flex}html.floss-web .desktop-nav-tabs{align-items:stretch;gap:.25rem;height:100%;display:flex}html.floss-web .desktop-nav-tab{color:var(--text-muted);align-items:center;padding:0 1rem;font-size:.95rem;font-weight:600;transition:color .15s;display:flex;position:relative}html.floss-web .desktop-nav-tab:hover{color:var(--text-main)}html.floss-web .desktop-nav-tab.is-active{color:var(--primary-color)}html.floss-web .desktop-nav-tab.is-active:after{content:"";background:var(--primary-color);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:-1px;left:1rem;right:1rem}html.floss-web .desktop-nav-actions{align-items:center;gap:.25rem;margin-left:auto;display:flex}html.floss-web .desktop-nav .header-icon-btn:hover{background:var(--border-subtle);color:var(--text-main)}html.floss-web .desktop-nav .header-icon-btn.is-active:hover{background:var(--primary-light);color:var(--primary-color)}html.floss-web .desktop-nav .header-account-btn{margin-left:.35rem}html.floss-web .desktop-nav .header-account-btn:hover{border-color:var(--border-color)}html.floss-web .desktop-nav .header-account-btn.is-open{border-color:var(--primary-color)}html.floss-web .desktop-account-menu{min-width:220px}html.floss-web .desktop-nav .header-menu-item:hover{background:var(--bg-body)}html.floss-web .desktop-nav .notif-dd{top:calc(var(--header-height) + 6px);right:calc(max(0px, (100vw - var(--desktop-shell-width)) / 2) + 1.5rem)}html.floss-web .desktop-create{margin-left:-.75rem;position:relative}html.floss-web .desktop-create-btn svg{transition:transform .2s}html.floss-web .desktop-create-btn.is-open svg{transform:rotate(45deg)}html.floss-web .desktop-create-menu{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);z-index:200;width:290px;padding:.35rem 0;position:absolute;top:calc(100% + 8px);left:0;overflow:hidden;box-shadow:0 12px 40px #0000002e}html.floss-web .desktop-create-item{align-items:center;gap:.75rem;padding:.6rem 1rem;transition:background .15s;display:flex}html.floss-web .desktop-create-item:hover{background:var(--primary-light)}html.floss-web .desktop-create-item:hover .create-menu-title{color:var(--primary-hover)}html.floss-web .hub-start-btn,html.floss-web .hub-start-card.is-free,html.floss-web .feed-poll-start,html.floss-web .training-day-detail-start,html.floss-web .plan-detail-start{display:none}html.floss-web .hub-start-btn.hub-start-view{display:inline-flex}html.floss-web .page-slide-in,html.floss-web .page-slide-in-back{animation:none}html.floss-web .skeleton-body>*{display:none!important}html.floss-web .skeleton-body{justify-content:center;align-items:center;min-height:40vh;display:flex}html.floss-web .chat-loading .skeleton,html.floss-web .chat-loading-body>*{display:none!important}html.floss-web .chat-loading-body{align-items:center;justify-content:center!important}html.floss-web .skeleton-body:after,html.floss-web .chat-loading-body:after{content:"";border:3px solid #05966933;border-top-color:var(--primary-color);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite spin}html.floss-web .detail-header,html.floss-web .settings-topbar{top:var(--header-height)}html.floss-web .detail-header-inner{grid-template-columns:auto minmax(0,1fr) auto;gap:.5rem}html.floss-web .detail-header{-webkit-backdrop-filter:none;z-index:60;background:0 0;border-bottom:none;height:auto;padding:1.25rem 0 .25rem;position:relative;top:auto}html.floss-web .calendar-page-shell .detail-header{top:var(--header-height);height:var(--header-height);padding:0;position:fixed}html.floss-web .detail-header-inner{height:auto;min-height:44px}html.floss-web .detail-header-title{text-align:left;letter-spacing:-.02em;align-items:center;gap:.6rem;font-size:1.5rem;font-weight:800;display:flex}html.floss-web .detail-header-title:before{content:"";background:var(--brand-gradient);border-radius:2px;flex-shrink:0;width:4px;height:1.4rem}html.floss-web .detail-header-back,html.floss-web .detail-header:not(.keeps-title):not(.has-actions),html.floss-web .detail-header.is-desktop-hidden{display:none}html.floss-web .detail-header.has-actions:not(.keeps-title){padding:1rem 0 0}html.floss-web .detail-header.has-actions:not(.keeps-title) .detail-header-title{display:none}html.floss-web .detail-header.has-actions:not(.keeps-title) .detail-header-inner{justify-content:flex-end;min-height:0;display:flex}html.floss-web .detail-header.has-actions:not(.keeps-title)+.page-container{padding-top:.5rem}html.floss-web .activity-detail-page{padding-top:1rem;position:relative}html.floss-web .activity-detail-hero{border-radius:var(--radius-lg) var(--radius-lg) 0 0}html.floss-web .activity-detail-page:has(>.activity-detail-hero)>.detail-header{z-index:3;pointer-events:none;padding:0 .6rem;position:absolute;top:1.6rem;left:0;right:0}html.floss-web .activity-detail-page:has(>.activity-detail-hero)>.detail-header .detail-header-actions{pointer-events:auto;gap:.4rem}html.floss-web .activity-detail-page:has(>.activity-detail-hero)>.detail-header .detail-header-btn{-webkit-backdrop-filter:blur(4px);color:#fff;background:#00000073;width:36px;height:36px}html.floss-web .activity-detail-page:has(>.activity-detail-hero)>.detail-header .detail-header-btn:hover{background:#0009}html.floss-web .desktop-create-btn{flex-shrink:0;margin-left:auto;display:inline-flex}html.floss-web .catalog-head-row{align-items:center;gap:.75rem;display:flex}html.floss-web .catalog-head-row>.discover-tabs{flex:1;min-width:0}html.floss-web .detail-header-title:has(.calendar-header-nav){font-size:1rem;font-weight:700}html.floss-web .detail-header-title:has(.calendar-header-nav):before{display:none}html.floss-web .detail-header-btn:hover{background:#ffffffb3}html.floss-web .home-layout{max-width:var(--desktop-shell-width);grid-template-columns:264px minmax(0,600px);justify-content:center;align-items:start;gap:1.5rem;margin:0 auto;padding:1.25rem 1.5rem 0;display:grid}html.floss-web .home-feed-col .feed-list{max-width:none;margin:0;padding:0 0 2.5rem}html.floss-web .home-feed-col .feed-next-training-standalone{max-width:none;padding:0}html.floss-web .home-feed-col .homebase-empty-wrap{min-height:0}html.floss-web .home-feed-col .homebase-empty{padding:3rem 1.25rem}html.floss-web .home-feed-col .feed-search-track,html.floss-web .home-feed-col .feed-suggest-track{margin:0;padding-inline:0;scroll-padding-inline:0}html.floss-web .home-feed-col .feed-upcoming-track{margin:-.5rem 0;padding-inline:0;scroll-padding-inline:0}html.floss-web .home-side{flex-direction:column;gap:.875rem;padding-bottom:1.5rem;display:flex}html.floss-web .home-side>*{flex-shrink:0}html.floss-web .home-profile-cover{height:72px;display:block}html.floss-web .home-profile-cover img,html.floss-web .home-profile-cover-placeholder{object-fit:cover;width:100%;height:100%;display:block}html.floss-web .home-profile-cover-placeholder{background:var(--brand-gradient)}html.floss-web .home-profile-body{text-align:center;flex-direction:column;align-items:center;padding:0 1rem 1rem;display:flex}html.floss-web .home-profile-avatar{background:var(--primary-light);width:72px;height:72px;color:var(--primary-color);border:3px solid #fff;border-radius:50%;justify-content:center;align-items:center;margin-top:-36px;font-size:1.4rem;font-weight:800;display:flex;overflow:hidden}html.floss-web .home-profile-avatar img{object-fit:cover;width:100%;height:100%}html.floss-web .home-profile-avatar.premium-avatar{box-shadow:0 0 0 3px #d4a017,0 0 16px #d4a017b3}html.floss-web .home-profile-name{max-width:100%;color:var(--text-main);justify-content:center;align-items:center;margin-top:.6rem;font-size:1.05rem;font-weight:800;display:flex}html.floss-web .home-profile-name:hover .home-profile-name-text{text-decoration:underline}html.floss-web .home-profile-name-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}html.floss-web .home-profile-meta{color:var(--text-muted);margin-top:.1rem;font-size:.8rem}html.floss-web .home-profile-stats{border-top:1px solid var(--border-subtle);grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin-top:.9rem;padding-top:.75rem;display:grid}html.floss-web .home-profile-stats .profile-hstat{border-radius:var(--radius-sm);padding:.3rem 0;transition:background .15s}html.floss-web .home-profile-stats .profile-hstat:hover{background:var(--bg-body)}html.floss-web .home-plevel-card,html.floss-web .home-week-card{flex-direction:column;gap:.9rem;padding:1rem;display:flex}html.floss-web .home-plevel-card{gap:.6rem}html.floss-web .home-plevel-row{align-items:baseline;gap:.6rem;display:flex}html.floss-web .home-plevel-val{letter-spacing:-.02em;color:var(--text-main);font-variant-numeric:tabular-nums;font-size:2rem;font-weight:800;line-height:1}html.floss-web .home-plevel-delta{font-size:.78rem;font-weight:700}html.floss-web .home-plevel-delta.is-up{color:var(--success-text)}html.floss-web .home-plevel-delta.is-down{color:var(--text-muted)}html.floss-web .home-plevel-spark{width:100%;height:36px;display:block}html.floss-web .home-rank-card{flex-direction:column;gap:.5rem;padding:1rem;display:flex}html.floss-web .home-rank-card .leaderboard-all{margin-top:0}html.floss-web .home-rank-empty{color:var(--text-muted);margin:0;font-size:.82rem}html.floss-web .home-week-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem;display:grid}html.floss-web .home-week-day{color:var(--text-muted);flex-direction:column;align-items:center;gap:.35rem;font-size:.7rem;font-weight:600;display:flex}html.floss-web .home-week-dot{background:var(--bg-body);border:1.5px solid var(--border-color);border-radius:50%;width:22px;height:22px}html.floss-web .home-week-day.is-today{color:var(--text-main)}html.floss-web .home-week-day.is-today .home-week-dot{border-color:var(--primary-color)}html.floss-web .home-week-day.is-done .home-week-dot{background:var(--primary-color);border-color:var(--primary-color)}html.floss-web .home-week-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}html.floss-web .home-week-total{background:var(--bg-body);border-radius:var(--radius-md);flex-direction:column;gap:2px;padding:.6rem .75rem;display:flex}html.floss-web .home-week-total-val{color:var(--text-main);font-size:1.1rem;font-weight:800;line-height:1.1}html.floss-web .home-week-total-label{color:var(--text-muted);font-size:.7rem;font-weight:500}html.floss-web .home-shortcuts{flex-direction:column;display:flex}html.floss-web .home-shortcut{border-bottom:1px solid var(--border-subtle);color:var(--text-body);align-items:center;gap:.75rem;padding:.7rem 1rem;font-size:.875rem;font-weight:600;transition:background .15s,color .15s;display:flex}html.floss-web .home-shortcut:last-child{border-bottom:none}html.floss-web .home-shortcut:hover{background:var(--bg-body);color:var(--text-main)}html.floss-web .home-shortcut-icon{border-radius:var(--radius-sm);background:var(--primary-light);width:30px;height:30px;color:var(--primary-color);flex-shrink:0;justify-content:center;align-items:center;display:flex}html.floss-web .home-shortcut-icon.is-gold{background:var(--gold-tint);color:var(--gold)}html.floss-web .home-shortcut-label{flex:1;min-width:0}html.floss-web .home-premium-card{align-items:center;gap:.6rem;padding:.75rem 1rem;display:flex}html.floss-web .home-premium-title{min-width:0;color:var(--text-main);flex:1;font-size:.875rem;font-weight:700}html.floss-web .home-group-list{flex-direction:column;display:flex}html.floss-web .home-group-row,html.floss-web .home-group-create{align-items:center;gap:.75rem;padding:.7rem 1rem;transition:background .15s;display:flex}html.floss-web .home-group-row{border-bottom:1px solid var(--border-subtle)}html.floss-web .home-group-row:last-child{border-bottom:none}html.floss-web .home-group-row:hover,html.floss-web .home-group-create:hover{background:var(--bg-body)}html.floss-web .home-group-create{color:var(--text-body);font-size:.875rem;font-weight:600}html.floss-web .home-group-avatar{border-radius:var(--radius-md);background:var(--primary-light);width:40px;height:40px;color:var(--primary-color);flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}html.floss-web .home-group-avatar img{object-fit:cover;width:100%;height:100%}html.floss-web .home-group-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}html.floss-web .home-group-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:700;overflow:hidden}html.floss-web .home-group-meta{color:var(--text-muted);font-size:.75rem}html.floss-web .home-shortcut-chevron{color:var(--text-muted);flex-shrink:0}html.floss-web .page-container.catalog-page{max-width:960px}html.floss-web .page-container.stats-desktop{grid-template-columns:340px minmax(0,1fr);align-items:start;gap:.5rem 1.5rem;max-width:1060px;display:grid}html.floss-web .stats-desktop-cell{align-self:stretch}html.floss-web .stats-desktop-cell>.card:last-child{flex:1}html.floss-web .stats-desktop .stats-topbar{min-height:2rem}html.floss-web .stats-desktop-cell .plevel-head{display:none}html.floss-web .kpi-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}html.floss-web .stats-comp-grid{grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}html.floss-web .stats-top-lists{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-items:start;gap:.75rem;display:grid}html.floss-web .stats-top-col{flex-direction:column;gap:.5rem;min-width:0;display:flex}html.floss-web .stats-top-col:empty{display:none}html.floss-web .stats-top-col>.stats-topbar{margin:.5rem 0}html.floss-web .stats-top-col .live-picker-row,html.floss-web .stats-top-col .venue-row{min-height:4.25rem}html.floss-web .stats-venue-sub .stats-venue-sep{height:.8rem}html.floss-web .stats-top-col .live-picker-row-name,html.floss-web .stats-top-col .venue-row-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;display:block;overflow:hidden}html.floss-web .stats-top-col .live-picker-row-name-text{display:inline}html.floss-web .stats-venue-sub{color:var(--text-muted);align-items:center;gap:.4rem;font-size:.72rem;font-weight:600;display:inline-flex}html.floss-web .stats-venue-sub .hall-rank-num,html.floss-web .stats-venue-sub .hall-rank-crown{width:auto;min-width:0;font-size:.72rem}html.floss-web .profile-cover-wrap{width:calc(100% - 3rem);max-width:calc(var(--desktop-shell-width) - 3rem);border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin:1.25rem auto 0;overflow:hidden}html.floss-web .profile-cover,html.floss-web .profile-cover-placeholder{height:220px;display:block}html.floss-web .page-container.profile-page-body{max-width:var(--desktop-shell-width);grid-template-columns:264px minmax(0,600px);justify-content:center;align-items:start;gap:1.5rem;padding:0 1.5rem 2rem;display:grid}html.floss-web .profile-page-body.is-locked{min-height:0}html.floss-web .profile-page-body>.profile-head-card,html.floss-web .profile-page-body .profile-locked-note{grid-column:1/-1}html.floss-web .profile-head-card{border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:none;grid-template-columns:136px minmax(0,1fr) minmax(0,1fr);column-gap:1.5rem;margin-top:0;padding:0 1.5rem 1.25rem;display:grid;overflow:visible}html.floss-web .profile-head-top{display:contents}html.floss-web .profile-avatar-wrap{grid-area:1/1/span 4;align-self:start;margin-top:-56px}html.floss-web .profile-avatar{border-width:4px;width:136px;height:136px;font-size:2.6rem}html.floss-web .profile-name{grid-area:1/2;margin:1rem 0 .2rem;font-size:1.5rem}html.floss-web .profile-meta,html.floss-web .profile-bio,html.floss-web .profile-h2h-row{grid-column:2}html.floss-web .profile-h2h-row{max-width:420px}html.floss-web .profile-head-stats{flex:none;grid-area:1/3;justify-self:center;gap:1.75rem;margin-top:1rem}html.floss-web .profile-head-actions{grid-area:2/3/span 3;place-self:start center;margin-top:.75rem}html.floss-web .profile-desk-sides{flex-direction:column;grid-column:1;gap:1.25rem;min-width:0;display:flex}html.floss-web .profile-desk-left,html.floss-web .profile-desk-right{flex-direction:column;gap:1.25rem;min-width:0;display:flex}html.floss-web .profile-desk-section{flex-direction:column;gap:.5rem;display:flex}html.floss-web .profile-desk-main{flex-direction:column;grid-column:2;gap:.75rem;min-width:0;display:flex}html.floss-web .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}html.floss-web .photo-grid-item{aspect-ratio:1;cursor:pointer;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--border-subtle);box-shadow:var(--shadow-sm);padding:0;overflow:hidden}html.floss-web .photo-grid-item img{object-fit:cover;width:100%;height:100%;display:block}html.floss-web .photo-grid-item:hover img{opacity:.9}html.floss-web .stats-summary .stats-dual-row{flex-direction:column}html.floss-web .stats-summary .stats-dual-row>*{flex:none}html.floss-web .stats-summary .plevel-head{display:none}html.floss-web .stats-sticky-bar{pointer-events:none;background:0 0}html.floss-web .stats-sticky-inner{pointer-events:auto;background:var(--brand-gradient-soft) fixed;background-size:100vw 100vh}html.floss-web .catalog-page>.live-picker-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}html.floss-web .live-picker-row:hover{box-shadow:var(--shadow-card)}html.floss-web .plan-editor-desktop{grid-template-columns:minmax(0,1fr) 460px;align-items:start;gap:1.5rem;max-width:1060px;margin:0 auto;padding:.75rem 1.5rem 2.5rem;display:grid}html.floss-web .plan-editor-catalog{top:calc(var(--header-height) + 1.25rem);height:calc(100dvh - var(--header-height) - 2.5rem);flex-direction:column;gap:.75rem;padding:1rem 1rem 0;display:flex;position:sticky}html.floss-web .plan-editor-catalog .stats-section-title{flex-shrink:0;margin:0}html.floss-web .plan-editor-catalog-picker{padding-bottom:0}html.floss-web .page-container.exercise-editor-page:has(.dre){max-width:1200px}:is(html.floss-web .exercise-editor-page .new-exercise-form:has(>.dre),html.floss-web .page-container.exercise-editor-page:has(>.dre)){grid-template-rows:auto auto auto 1fr;grid-template-columns:minmax(0,3fr) minmax(0,7fr);align-items:start;gap:1rem 2rem;display:grid}:is(html.floss-web .exercise-editor-page .new-exercise-form:has(>.dre)>*,html.floss-web .page-container.exercise-editor-page:has(>.dre)>*){grid-column:1}html.floss-web .exercise-editor-page .new-exercise-form>.dre,html.floss-web .page-container.exercise-editor-page>.dre{grid-area:1/2/-1}html.floss-web .exercise-editor-page .exercise-save-cta{margin-top:0;position:sticky;bottom:1rem}html.floss-web .log-sticky-cta{max-width:var(--max-content-width);margin-inline:auto}html.floss-web textarea.form-input.exercise-desc-input{max-height:50vh;font-size:.9375rem;line-height:1.6}html.floss-web .dre-split{grid-template-rows:auto auto auto auto 1fr;grid-template-columns:minmax(0,3fr) minmax(0,4fr);align-items:start;gap:.75rem 2rem;display:grid}html.floss-web .dre-split>*{grid-column:2}html.floss-web .dre-split>.drill-row-stage{top:calc(var(--header-height) + 1.25rem);max-height:calc(100vh - var(--header-height) - 2.5rem);flex-direction:column;grid-area:1/1/-1;align-items:center;padding:2px;display:flex;position:sticky;overflow-y:auto}html.floss-web .dre-split .drill-row-stage>.drill-row-inline-form{border-radius:var(--radius-lg);width:100%}html.floss-web .dre-split .drill-row-row.active{border-radius:var(--radius-lg)}html.floss-web .page-container:has(>.exercise-detail-card .shot-viz-wrap){max-width:1000px}html.floss-web .exercise-detail-card:has(>.shot-viz-wrap){grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;column-gap:2rem;padding:1.25rem 1.5rem 1.5rem;display:grid}html.floss-web .exercise-detail-card:has(>.shot-viz-wrap)>*{grid-column:2}:is(html.floss-web .exercise-detail-card:has(>.shot-viz-wrap)>.exercise-detail-name,html.floss-web .exercise-detail-card:has(>.shot-viz-wrap)>.exercise-detail-meta,html.floss-web .exercise-detail-card>.shot-viz-wrap){grid-column:1}html.floss-web .exercise-detail-card>.shot-viz-wrap{top:calc(var(--header-height) + 1.25rem);grid-row:3/span 6;margin:0;position:sticky}html.floss-web .exercise-detail-card>.shot-viz-wrap .shot-viz-svg,html.floss-web .exercise-detail-card>.shot-viz-wrap .shot-viz-head{max-width:300px}html.floss-web .exercise-detail-card>.shot-viz-wrap .shot-viz-svg{margin-top:calc(min(300px,100%)/-14.2857)}html.floss-web .exercise-detail-card:has(>.shot-viz-wrap)>.drill-saved-list{grid-row:3/span 6;align-self:start;margin-top:0}html.floss-web .exercise-detail-card>.exercise-runs-badge{grid-row:9;justify-self:start}html.floss-web .expandable-text-toggle{margin:.375rem 0 0;padding:.25rem 0}html.floss-web .expandable-text-toggle:hover{color:var(--primary-hover)}html.floss-web body:has(.exercise-detail-card .shot-viz-wrap) .detail-header-inner{max-width:1000px}html.floss-web .page-container:has(>.exercise-detail-card>.exercise-detail-desc):has(>.exercise-detail-card>.shot-viz-wrap){max-width:1200px}html.floss-web body:has(.exercise-detail-card>.exercise-detail-desc):has(.exercise-detail-card>.shot-viz-wrap) .detail-header-inner{max-width:1200px}html.floss-web .exercise-detail-card:has(>.exercise-detail-desc):has(>.shot-viz-wrap){--detail-top-nudge:.25rem;grid-template-rows:auto auto auto 1fr;grid-template-columns:minmax(0,3fr) minmax(0,3fr) minmax(0,4fr);column-gap:1.5rem}html.floss-web .exercise-detail-card:has(>.exercise-detail-desc):has(>.shot-viz-wrap)>.exercise-detail-meta{margin-bottom:1.25rem}:is(html.floss-web .exercise-detail-card:has(>.exercise-detail-desc):has(>.shot-viz-wrap)>.exercise-detail-name,html.floss-web .exercise-detail-card:has(>.exercise-detail-desc):has(>.shot-viz-wrap)>.exercise-detail-meta){grid-column:1/-1}html.floss-web .exercise-detail-card:has(>.shot-viz-wrap)>.exercise-detail-desc{--clamp-lines:8;margin:calc(-1 * var(--detail-top-nudge)) 0 0;color:var(--text-body);grid-area:3/1/span 2;font-size:.875rem;line-height:1.6}html.floss-web .exercise-detail-card:has(>.exercise-detail-desc)>.shot-viz-wrap{grid-area:3/2/span 2;margin:0}:is(html.floss-web .exercise-detail-card:has(>.exercise-detail-desc)>.shot-viz-wrap .shot-viz-svg,html.floss-web .exercise-detail-card:has(>.exercise-detail-desc)>.shot-viz-wrap .shot-viz-head){max-width:min(300px,100%)}html.floss-web .exercise-detail-card:has(>.exercise-detail-desc):has(>.shot-viz-wrap)>.drill-saved-list{grid-area:3/3;align-self:start;margin-top:0}html.floss-web .exercise-detail-card:has(>.exercise-detail-desc)>.exercise-runs-badge{grid-area:4/3;place-self:start}@media (min-width:1180px){html.floss-web .exercise-detail-card:has(>.exercise-detail-desc):has(>.shot-viz-wrap){column-gap:2rem}}html.floss-web .exercise-action-row{align-items:stretch;gap:.875rem;display:flex}html.floss-web .exercise-action-row>.btn-gradient{flex:1;width:auto}html.floss-web .exercise-action-secondary{background:var(--surface-card);flex:none;padding-inline:1.5rem}html.floss-web body:has(.catalog-page) .detail-header-inner{max-width:960px}:is(html.floss-web body:has(.plan-editor-desktop) .detail-header-inner,html.floss-web body:has(.exercise-editor-page .dre) .detail-header-inner){max-width:1200px}html.floss-web .calendar-page-shell{height:calc(100dvh - var(--header-height))}html.floss-web .feed-strip-arrow{z-index:2;background:var(--glass-bg-strong);width:40px;height:40px;color:var(--text-main);box-shadow:var(--shadow-card);opacity:0;border-radius:50%;justify-content:center;align-items:center;transition:opacity .15s,background .15s;display:flex;position:absolute;top:calc(50% - 20px)}html.floss-web .feed-strip-arrow.is-prev{left:12px}html.floss-web .feed-strip-arrow.is-next{right:12px}html.floss-web .feed-media:hover .feed-strip-arrow{opacity:1}html.floss-web .feed-strip-arrow:hover{background:#fff}html.floss-web .feed-strip-arrow:focus-visible{opacity:1}html.floss-web .home-side-footer{color:var(--text-muted);flex-wrap:wrap;gap:.25rem .75rem;padding:0 .25rem;font-size:.72rem;display:flex}html.floss-web .home-side-footer a:hover{color:var(--text-main);text-decoration:underline}}@media (min-width:1200px){html.floss-web{--desktop-shell-width:calc(264px + 600px + 300px + 3rem + 3rem)}html.floss-web .home-layout,html.floss-web .page-container.profile-page-body{grid-template-columns:264px minmax(0,600px) 300px}html.floss-web .profile-desk-sides{display:contents}html.floss-web .profile-desk-left{grid-area:2/1}html.floss-web .profile-desk-right{grid-area:2/3}html.floss-web .home-feed-col .feed-list>.feed-section,html.floss-web .home-feed-col .feed-next-training-standalone{display:none}}.btn-white{background:var(--surface-card);border:1.5px solid var(--border-color);color:var(--text-main)}.btn-white:hover{border-color:var(--primary-color);color:var(--primary-color)}.btn-white.is-muted{color:var(--text-muted)}.group-head-actions .btn.group-head-share{flex:none}.group-head-actions .btn.group-head-share:only-child{flex:1}.group-head-requests{text-decoration:none}.section-header-actions{align-items:center;gap:.9rem;display:inline-flex}button.section-more-link{cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit}.group-privacy-tabs,.group-members-head{margin-bottom:0}.discover-sticky>.discover-tabs.live-picker-tabs.is-page.discover-sections{margin-top:0}.discover-sticky>.discover-tabs.live-picker-tabs.is-page.discover-sections:not(:last-child){margin-bottom:.5rem}.discover-filter-row{align-items:center;gap:.5rem;display:flex}.discover-filter-row>.discover-tabs.live-picker-tabs.is-page.discover-role-filter{flex:1;margin:0}.discover-sticky>.discover-filter-row+.search-field{margin-top:.5rem}.discover-search-toggle{background:var(--surface-card);border:1px solid var(--border-subtle);width:2.25rem;color:var(--text-muted);cursor:pointer;border-radius:999px;flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;padding:0;transition:background .15s,color .15s;display:flex}.discover-search-toggle.active{background:var(--primary-light);color:var(--primary-color)}.discover-player-avatar.discover-group-avatar{border-radius:12px;justify-content:center;align-items:center;display:flex;overflow:hidden}.discover-player-row>.notif-request-actions{flex-shrink:0;gap:.4rem;margin-top:0}.group-head-meta .group-head-requests{align-self:center}.discover-player-avatar.discover-group-avatar img{object-fit:cover;border-radius:0;width:100%;height:100%}.group-head-title-row{justify-content:space-between;align-items:center;gap:.75rem;margin:.85rem 0 .45rem;display:flex}.group-head-title-row .group-head-name{min-width:0;margin:0}.group-head-desktop-action{flex-shrink:0;margin-block:-.5rem;display:none}.group-head-desc{white-space:pre-line;line-height:1.45}.group-head-desc.is-clamped{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.group-head-desc-more{align-self:flex-start;margin-top:.2rem}.group-head-actions .btn{white-space:nowrap;min-width:0;padding-inline:.6rem;text-decoration:none}.group-head-actions.is-member{gap:.4rem}.group-head-actions.is-member .btn{flex:auto;gap:.35rem;padding-inline:.5rem;font-size:.85rem}@media (min-width:1024px){html.floss-web .group-head-desktop-action{display:block}}.lp{background:var(--surface-card);color:var(--text-main);min-height:100vh}.lp-wrap{max-width:var(--max-layout-width);margin:0 auto;padding:0 2rem}.lp-sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lp-h2{letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(1.75rem,3vw,2.5rem);font-weight:800;line-height:1.15}.lp-top{z-index:20;background:var(--surface-card);border-bottom:1px solid var(--border-color);padding-top:env(safe-area-inset-top,0px);position:sticky;top:0}.lp-top-inner{align-items:center;gap:2.5rem;height:64px;padding:0 2rem;display:flex}.lp-nav{gap:1.75rem;display:flex}.lp-nav a{color:var(--text-main);font-size:.95rem;font-weight:600;text-decoration:none}.lp-nav a:hover{color:var(--primary-color)}.lp-top-actions{align-items:center;gap:.6rem;margin-left:auto;display:flex}.lp-register{border-radius:var(--radius-sm);align-items:center;height:40px;padding:0 1.1rem;font-size:.92rem;font-weight:700;text-decoration:none;display:inline-flex}.lp-cta{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:100%;max-width:400px;height:50px;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.lp-login{border:1px solid var(--border-color);border-radius:var(--radius-sm);height:40px;color:var(--text-main);align-items:center;padding:0 1.1rem;font-size:.92rem;font-weight:600;text-decoration:none;display:inline-flex}.lp-login:hover{border-color:var(--text-muted)}.lp-hero{grid-template-rows:minmax(0,1fr);grid-template-columns:1fr minmax(380px,460px) 1fr;height:clamp(560px,100vh - 64px,700px);padding:3rem 0;display:grid;position:relative;overflow:hidden}.lp-hero-media{position:absolute;inset:0}.lp-hero-media img{object-fit:cover;width:100%;height:100%;display:block}.lp-hero-media:after{content:"";background:linear-gradient(135deg,#0596698c 0%,#0369a1a6 100%);position:absolute;inset:0}.lp-hero-center{z-index:1;text-align:center;background:var(--surface-card);border-radius:var(--radius-xl);flex-direction:column;grid-column:2;justify-content:center;align-items:center;gap:1rem;padding:3rem 2.5rem;display:flex;position:relative;box-shadow:0 30px 80px #03283c59}.lp-h1{letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:clamp(2rem,3vw,2.6rem);font-weight:800;line-height:1.1}.lp-hero-sub{color:var(--text-body);max-width:26em;margin:0;font-size:1.02rem;line-height:1.55}.lp-hero-login{color:var(--text-body);margin:.75rem 0 0;font-size:.98rem}.lp-hero-login a{color:var(--primary-color);font-weight:700;text-decoration:none}.lp-hero-center .auth-logo{margin-bottom:.75rem}.lp-screens{background:var(--brand-gradient-soft);padding:4.5rem 0 3.5rem}.lp-screens-row{justify-content:center;gap:1.25rem;padding:0 2rem;display:flex}.lp-phone-fig{flex-direction:column;flex:none;align-items:center;gap:1rem;margin:0;display:flex}.lp-phone{background:#0b0f0e;border-radius:38px;width:200px;padding:7px;box-shadow:0 24px 50px #033c5038,inset 0 0 0 1.5px #ffffff24}.lp-phone img{border-radius:31px;width:100%;display:block}.lp-phone-fig figcaption{color:var(--text-main);text-align:center;font-size:.92rem;font-weight:700}.lp-what{background:var(--surface-card);padding:6rem 0}.lp-what-grid{grid-template-columns:1fr 1fr;align-items:stretch;gap:1.5rem;display:grid}.lp-what-photo{object-fit:cover;border-radius:var(--radius-xl);width:100%;height:100%;min-height:320px;display:block}.lp-what-copy{border-radius:var(--radius-xl);flex-direction:column;justify-content:center;gap:1.1rem;min-width:0;padding:2.5rem;display:flex}.lp-what-copy p{color:var(--text-body);margin:0;font-size:1.08rem;line-height:1.7}.lp-plans-section{background:var(--brand-gradient-soft);padding:6rem 0}.lp-plans{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:1.25rem;margin-top:2rem;display:grid}.lp-plans .plan-card{height:100%}.lp-plan-btn{justify-content:center;align-items:center;height:48px;margin-top:auto;font-weight:700;text-decoration:none;display:inline-flex}.lp-final{background:var(--surface-card)}.lp-final-inner{text-align:center;flex-direction:column;align-items:center;gap:1.75rem;padding-top:6rem;padding-bottom:6rem;display:flex}.lp-final-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.lp-final-login,.lp-final-register{border-radius:var(--radius-sm);justify-content:center;align-items:center;min-width:180px;height:50px;padding:0 1.5rem;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.lp-final-login{background:var(--surface-card);border:1px solid var(--border-color);color:var(--text-main)}.lp-stores{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:.25rem;display:flex}.lp-store{border-radius:8px;display:inline-flex}.lp-store img{width:auto;height:40px;display:block}.lp-store:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.lp-footer{border-top:1px solid var(--border-color)}.lp-footer-inner{padding-top:1.75rem;padding-bottom:calc(1.75rem + env(safe-area-inset-bottom,0px));color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;gap:1rem 1.5rem;font-size:.875rem;display:flex}.lp-footer nav{flex-wrap:wrap;gap:.5rem 1.4rem;display:flex}.lp-footer a{color:inherit;text-decoration:none}.lp-footer a:hover{color:var(--text-main)}@media (max-width:1400px){.lp-screens{padding-bottom:.5rem}.lp-screens-row{scroll-snap-type:x mandatory;scrollbar-width:none;justify-content:flex-start;margin-top:-1rem;padding-top:1rem;padding-bottom:3.5rem;overflow-x:auto}.lp-screens-row::-webkit-scrollbar{display:none}.lp-phone-fig{scroll-snap-align:center}}@media (max-width:900px){.lp-wrap,.lp-top-inner{padding:0 1rem}.lp-top-inner{gap:1.25rem}.lp-nav{gap:1rem}.lp-nav a{font-size:.88rem}.lp-hero{grid-template-columns:1fr;height:auto;padding:2.5rem 1rem}.lp-hero-center{grid-column:1;padding:2.25rem 1.25rem 2rem}.lp-screens{padding:3rem 0 .5rem}.lp-screens-row{gap:1rem;padding:0 1rem}.lp-phone{width:200px}.lp-what{padding:4rem 0}.lp-what-grid{grid-template-columns:1fr;gap:1rem}.lp-what-photo{aspect-ratio:4/3;height:auto;min-height:0}.lp-what-copy{padding:1.5rem}.lp-plans-section{padding:4rem 0 1.5rem}.lp-plans{scroll-snap-type:x mandatory;scrollbar-width:none;gap:.875rem;margin:1.5rem -1rem 0;padding:.5rem 1rem 2.5rem;scroll-padding-inline:1rem;display:flex;overflow-x:auto}.lp-plans::-webkit-scrollbar{display:none}.lp-plans .plan-card{scroll-snap-align:center;flex:0 0 86%;height:auto}.lp-final-inner{padding-top:4rem;padding-bottom:4rem}}@media (max-width:480px){.lp-login,.lp-register{height:36px;padding:0 .8rem}.lp-final-actions{flex-wrap:nowrap;width:100%}.lp-final-login,.lp-final-register{flex:1 1 0;min-width:0}.lp-nav{display:none}}