@font-face{font-family:Nunito;src:url(/assets/Nunito-VariableFont_wght-CfknUHFh.ttf) format("truetype");font-weight:200 1000;font-style:normal;font-display:swap}@font-face{font-family:Nunito;src:url(/assets/Nunito-Italic-VariableFont_wght-CShpb_iS.ttf) format("truetype");font-weight:200 1000;font-style:italic;font-display:swap}:root{font-family:Nunito,Segoe UI,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;--app-height: 100vh;--app-height: 100dvh;--vh: 1vh;--top-bar-height: 56px;--bottom-nav-height: 84px;--bottom-nav-floating-inset: 12px;--bottom-nav-bottom: calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));--color-main: #151515;--color-secondary: #f7f9fc;--color-accent: #ffffff;--color-blue: #1CB0F6;--color-blue-light: #39c0ff;--color-blue-dark: #0e3a4e;--color-green: rgb(0, 173, 66);--color-green-light: #00da41;--color-green-dark: #0b8b31;--color-yellow: #f7b32b;--color-yellow-light: #FDECCA;--color-red: #f72c25;--color-red-light: #F76B69;--color-violet: #7B4B94;--color-violet-light: #9B76B3;--bg-primary: var(--color-main);--bg-secondary: #242424;--bg-tertiary: #1e1e1e;--bg-elevated: #494949;--bg-elevated-tint: color-mix(in srgb, var(--bg-elevated) 88%, white);--bg-hover: #313131;--text-primary: var(--color-secondary);--text-secondary: rgba(247, 249, 252, .7);--text-tertiary: rgba(247, 249, 252, .55);--text-muted: rgba(247, 249, 252, .4);--text-on-accent: var(--color-main);--accent-primary: var(--color-accent);--accent-secondary: var(--color-secondary);--accent-tertiary: var(--color-secondary);--accent-hover: color-mix(in srgb, var(--color-accent) 85%, white);--accent-primary-40: color-mix(in srgb, var(--color-accent) 40%, transparent);--accent-primary-20: color-mix(in srgb, var(--color-accent) 20%, transparent);--accent-primary-10: color-mix(in srgb, var(--color-accent) 10%, transparent);--border-primary: rgba(247, 249, 252, .16);--border-secondary: rgba(247, 249, 252, .24);--border-accent: var(--color-accent);--success: var(--color-secondary);--warning: var(--color-accent);--error: var(--color-accent);--info: var(--color-secondary);--shadow-sm: 0 2px 6px rgba(0, 0, 0, .35);--shadow-md: 0 6px 12px rgba(0, 0, 0, .45);--shadow-lg: 0 12px 24px rgba(0, 0, 0, .55);--shadow-glow: 0 0 20px rgba(247, 249, 252, .2);color-scheme:dark;color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}a{font-weight:600;color:var(--accent-primary);text-decoration:inherit;transition:color .2s ease}a:hover{color:var(--accent-hover)}html{height:100%;overflow:hidden;-webkit-text-size-adjust:100%}body{margin:0;min-width:0;width:100%;min-height:var(--app-height);height:100%;background:var(--bg-primary);overflow:hidden;overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:600;margin:0}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:600;font-family:inherit;background-color:var(--accent-primary);color:var(--color-main);cursor:pointer;transition:all .2s ease}button:hover{background-color:var(--accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}button:focus,button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}button:disabled{background-color:var(--bg-tertiary);color:var(--text-muted);cursor:not-allowed;transform:none;box-shadow:none}.app-button{--app-button-color: var(--color-blue);--app-button-shadow: var(--color-blue-dark);appearance:button;background-color:var(--app-button-color);border:0;border-radius:15px;box-shadow:0 5px var(--app-button-shadow);box-sizing:border-box;color:#fff;cursor:pointer;display:inline-block;font-size:15px;font-weight:700;letter-spacing:.8px;line-height:20px;margin:0;outline:none;overflow:visible;padding:13px 19px;text-align:center;text-transform:uppercase;touch-action:manipulation;transition:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;vertical-align:middle;white-space:nowrap}.app-button--small{padding:8px 14px;font-size:12px;border-radius:12px}.app-button:focus,.app-button:focus-visible,.app-button:active{border-color:transparent;outline:none;outline-width:0;outline-offset:0;-webkit-tap-highlight-color:transparent}.app-button:hover:not(:disabled){background-color:var(--app-button-color);color:#fff;box-shadow:0 5px var(--app-button-shadow);transform:none}.app-button:focus{-webkit-user-select:auto;user-select:auto}.app-button:disabled{background-color:var(--app-button-shadow);color:#ffffffb3;box-shadow:0 2px var(--app-button-shadow);cursor:not-allowed}.app-button:active:not(:disabled),.app-button.app-button--pressed:not(:disabled){background-color:var(--app-button-color);color:#fff;box-shadow:0 0 var(--app-button-shadow),inset 0 0 30px #0000001a;transform:translateY(5px)}.app-button.app-button--gradient{--app-button-gradient-shadow: #4c1d95;background-color:transparent;background-image:linear-gradient(105deg,#c084fc,#a855f7 38%,#6366f1 72%,#7c3aed);box-shadow:0 5px var(--app-button-gradient-shadow);color:#fff}.app-button.app-button--gradient:hover:not(:disabled){background-color:transparent;background-image:linear-gradient(105deg,#d8b4fe,#c084fc 35%,#818cf8 68%,#8b5cf6);box-shadow:0 5px var(--app-button-gradient-shadow);color:#fff}.app-button.app-button--gradient:disabled{background-image:none;background-color:#5b21b6;box-shadow:0 2px #4c1d95;color:#ffffffb8}.app-button.app-button--gradient:active:not(:disabled),.app-button.app-button--gradient.app-button--pressed:not(:disabled){background-color:transparent;background-image:linear-gradient(105deg,#c084fc,#a855f7 38%,#6366f1 72%,#7c3aed);box-shadow:0 0 var(--app-button-gradient-shadow),inset 0 0 28px #0000002e;color:#fff}:root{--page-padding-top: 24px;--page-padding-bottom: calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + 24px);--page-padding-left: 16px;--page-padding-right: 16px}#root{width:100%;min-height:var(--app-height);height:100%;overflow:hidden}.save-confirmation-toast-wrapper{position:fixed;top:calc(var(--top-bar-height) + env(safe-area-inset-top) + 12px);left:50%;transform:translate(-50%);z-index:2200;pointer-events:none}.save-confirmation-toast{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#166534;border:1px solid #15803d;border-radius:12px;box-shadow:var(--shadow-lg);color:#dcfce7;font-size:14px;font-weight:600}.rank-reached-popup-overlay{position:fixed;inset:0;z-index:4000;display:flex;align-items:center;justify-content:center;padding:24px;background:#030814e6;opacity:0;animation:rank-popup-overlay-fade .22s ease forwards;animation-delay:.12s}.rank-reached-popup-content{width:min(460px,100%);min-height:min(540px,calc(100vh - 48px));border-radius:26px;border:2px solid color-mix(in srgb,var(--color-yellow) 40%,#ffffff 14%);background:linear-gradient(180deg,color-mix(in srgb,#0f172a 65%,#1d4ed8),#0b1220);box-shadow:0 32px 70px #0000009e,inset 0 1px #ffffff1f;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;padding:12px 24px 24px;position:relative;overflow:hidden;opacity:0;transform:translateY(10px) scale(.82);animation:rank-popup-card-bounce-in .62s cubic-bezier(.2,.85,.2,1.12) forwards;animation-delay:.18s}.rank-reached-popup-confetti{position:absolute;inset:0;pointer-events:none}.rank-reached-popup-confetti-dot{position:absolute;width:10px;height:10px;border-radius:999px;opacity:.85;animation:rank-popup-float 3.8s ease-in-out infinite}.rank-reached-popup-confetti-dot--a{top:12%;left:14%;background:#22d3ee;animation-delay:0s}.rank-reached-popup-confetti-dot--b{top:18%;right:18%;background:#f59e0b;animation-delay:.4s}.rank-reached-popup-confetti-dot--c{top:34%;left:8%;background:#a855f7;animation-delay:.8s}.rank-reached-popup-confetti-dot--d{top:42%;right:8%;background:#34d399;animation-delay:1.2s}.rank-reached-popup-confetti-dot--e{bottom:18%;left:16%;background:#f97316;animation-delay:1.6s}.rank-reached-popup-confetti-dot--f{bottom:14%;right:14%;background:#facc15;animation-delay:2s}.rank-reached-popup-badge{width:210px;height:130px;display:grid;place-items:center;margin:0 0 4px;background:transparent;border:none;box-shadow:none}.rank-reached-popup-badge-rank{width:210px;height:130px;object-fit:contain;filter:none}.rank-reached-popup-chicken{position:absolute;left:50%;bottom:-45px;transform:translate(-50%);width:250px;height:auto;pointer-events:none;z-index:0}.rank-reached-popup-title{margin:0;font-size:28px;font-weight:900;color:#f8fafc;line-height:1.15;text-wrap:balance}.rank-reached-popup-label{margin:4px 0 0;font-size:20px;font-weight:800;color:#cbd5e1}.rank-reached-popup-rank{margin:0 0 2px;font-size:30px;font-weight:1000;line-height:1.1;color:#fde047;text-shadow:none;text-wrap:balance}.rank-reached-popup-button{margin-top:auto;width:100%;padding:16px 18px;border:none;border-radius:16px;background:linear-gradient(180deg,#fef08a,#facc15);color:#1f2937;font-size:17px;font-weight:900;cursor:pointer;box-shadow:0 6px #a16207;transition:none;position:relative;z-index:2}.rank-reached-popup-button:hover{filter:brightness(1.03)}.rank-reached-popup-button:active{transform:translateY(3px);box-shadow:0 3px #a16207}@keyframes rank-popup-float{0%,to{transform:translateY(0) scale(1);opacity:.85}50%{transform:translateY(-8px) scale(1.12);opacity:1}}@keyframes rank-popup-overlay-fade{0%{opacity:0}to{opacity:1}}@keyframes rank-popup-card-bounce-in{0%{opacity:0;transform:translateY(10px) scale(.82)}55%{opacity:1;transform:translateY(-6px) scale(1.045)}75%{transform:translateY(2px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.app-shell{height:var(--app-height);min-height:var(--app-height);display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden}.app-shell--safe-top{padding-top:env(safe-area-inset-top)}.top-bar-link{color:var(--text-secondary);font-size:14px;padding:6px 10px;border-radius:8px;border:1px solid var(--border-primary);background:var(--bg-tertiary);display:inline-flex;align-items:center;justify-content:center}.top-bar-link:hover{color:var(--text-primary);background:var(--bg-hover)}.top-bar{position:fixed;top:0;left:0;right:0;height:var(--top-bar-height);padding-top:env(safe-area-inset-top);padding-left:var(--page-padding-left);padding-right:var(--page-padding-right);display:flex;align-items:center;justify-content:space-between;background:color-mix(in srgb,var(--bg-primary) 88%,white);z-index:100}.top-bar-left{flex:1;min-width:0;display:flex;align-items:center}.top-bar-center{flex:0 0 auto;min-width:0;display:flex;align-items:center;justify-content:center}.top-bar-rank{flex-shrink:0;display:flex;flex-direction:column;align-items:center;padding:0;text-decoration:none;color:inherit;-webkit-tap-highlight-color:transparent;position:relative;width:56px}.top-bar-rank-icon{width:56px;height:56px;object-fit:contain;display:block;position:relative;z-index:0}.top-bar-rank-bar-wrap{position:absolute;left:50%;bottom:8px;transform:translate(-50%);width:100%;max-width:48px;z-index:1}.top-bar-rank-bar-track{width:100%;height:4px;background:var(--bg-elevated);border-radius:999px;overflow:hidden}.top-bar-rank-bar-fill{height:100%;border-radius:999px;background:var(--color-yellow);transition:width .4s ease}.top-bar-spacer{flex:1;min-width:0}.top-bar-avatar-link{flex-shrink:0;display:flex;align-items:center;justify-content:center}.top-bar-avatar,.top-bar-avatar-placeholder{width:40px;height:40px;border-radius:50%;object-fit:cover}.top-bar-avatar-placeholder{display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:1px solid var(--border-primary);color:var(--text-secondary);font-size:18px;font-weight:600}.top-bar-right{flex:1;min-width:0;display:flex;align-items:center;justify-content:flex-end}.top-bar-ai-feedback-card{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:6px 10px;border-radius:10px;border:none;background:var(--bg-tertiary);color:var(--text-secondary);text-decoration:none;font-weight:800;font-size:12px;max-width:220px}.top-bar-ai-feedback-card--loading{background:transparent}.top-bar-ai-feedback-card--done{background:var(--color-green);color:var(--color-secondary)}.top-bar-ai-feedback-card--failed{background:color-mix(in srgb,var(--color-red-light) 18%,transparent);border:1px solid color-mix(in srgb,var(--color-red) 35%,transparent);color:var(--color-red-light);box-shadow:0 0 0 1px #f72c250d,0 0 12px #f72c2526}.top-bar-icon-link{display:inline-flex;align-items:center;justify-content:center;padding:8px;color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-tertiary);transition:color .2s,background .2s}.top-bar-icon-link:hover{color:var(--text-primary);background:var(--bg-hover)}.top-bar-icon-link--bare{padding:4px;border:none;border-radius:0;background:transparent;-webkit-tap-highlight-color:transparent;outline:none;-webkit-user-select:none;user-select:none}.top-bar-icon-link--bare:hover,.top-bar-icon-link--bare:active,.top-bar-icon-link--bare:focus,.top-bar-icon-link--bare:focus-visible{background:transparent;outline:none}.top-bar-icon{width:44px;height:44px;object-fit:contain}.top-bar-icon--large{width:56px;height:56px}.top-bar-icon-svg{display:block}.top-bar-icon-svg .feedback-icon-bg{fill:var(--feedback-icon-primary, var(--color-blue))}.top-bar-icon-svg .feedback-icon-dots{fill:var(--feedback-icon-secondary, var(--color-blue-light))}.app-content{flex:1;min-height:0;width:100%;min-width:0;max-width:960px;margin:0 auto;padding:var(--page-padding-top) var(--page-padding-right) var(--page-padding-bottom) var(--page-padding-left);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.app-content--with-top-bar{padding-top:calc(var(--top-bar-height) + env(safe-area-inset-top) + var(--page-padding-top))}.app-content--auth{overflow:hidden;display:flex;align-items:center;justify-content:center}.app-content--auth-scroll{overflow-y:auto;align-items:flex-start}.page{display:block;width:100%;min-height:0;box-sizing:border-box}.app-content--form{padding-top:calc(var(--top-bar-height) + env(safe-area-inset-top) + 16px)}.app-content--timer{padding:0!important;overflow:hidden!important;max-width:none!important;margin:0!important}.page-title{margin:0;font-size:18px;font-weight:700;color:var(--text-primary)}.bottom-nav{position:fixed;left:0;right:0;bottom:0;min-height:var(--bottom-nav-height);padding-bottom:env(safe-area-inset-bottom);max-width:none;margin:0;background:var(--bg-tertiary);border:none;border-radius:0;box-shadow:none;display:grid;grid-template-columns:repeat(5,1fr);z-index:1600}body.chat-in-room .bottom-nav{display:none}.bottom-nav-link{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 0 17px;color:#ffffff8c;background:transparent;transition:color .2s ease,background .2s ease}.bottom-nav-link:hover{color:#ffffffd9;background:#ffffff0f}.bottom-nav-link.active{color:#fff;background:#ffffff1f}.bottom-nav-link.active:before{content:"";position:absolute;top:0;left:20%;right:20%;height:3px;background:#fff;border-radius:0 0 3px 3px;box-shadow:0 2px #000}.bottom-nav-icon{width:44px;height:44px;object-fit:contain}.bottom-nav-icon--star{transform:scale(1.15) translateY(3px)}.bottom-nav-label{margin-top:4px;font-size:11px;line-height:1.2}.page-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:16px;padding:20px;box-shadow:var(--shadow-sm)}.profile-top-row{display:flex;align-items:center;justify-content:space-between;margin:-8px 0 0 -8px;padding-left:var(--page-padding-left);padding-right:var(--page-padding-right)}.profile-settings-link{display:inline-flex;align-items:center;justify-content:center;padding:8px;color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-tertiary);transition:color .2s,background .2s}.profile-settings-link:hover{color:var(--text-primary);background:var(--bg-hover)}.profile-header{display:flex;flex-direction:column;align-items:center;gap:12px;padding:8px 0 16px}.profile-rank-wrap{position:relative;width:100%;max-width:320px;aspect-ratio:144.90961 / 86.984123}.profile-rank-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;pointer-events:none}.profile-rank-wrap .profile-avatar{position:absolute;left:50%;top:40.82%;transform:translate(-50%,-50%);width:24%;aspect-ratio:1;height:auto;margin:0;border-width:2px}.profile-avatar{width:88px;height:88px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--bg-tertiary);border:3px solid var(--border-primary);display:flex;align-items:center;justify-content:center}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar-placeholder{font-size:36px;font-weight:700;color:var(--text-secondary);text-transform:uppercase}.profile-name{margin:0;font-size:22px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.profile-coming-soon{display:flex;flex-direction:column;align-items:center;gap:4px;padding:20px 24px;background:var(--bg-tertiary);border:1px dashed var(--border-primary);border-radius:12px}.profile-coming-soon-icon{font-size:28px;opacity:.7}.profile-coming-soon-title{margin:0;font-size:14px;font-weight:600;color:var(--text-secondary)}.profile-coming-soon-text{margin:0;font-size:12px;color:var(--text-tertiary)}.profile-xp-card{display:flex;flex-direction:column;gap:10px;padding:16px;background:var(--bg-secondary);border-radius:14px}.profile-xp-rank-row{display:flex;align-items:center;gap:12px}.profile-xp-rank-icon{width:64px;height:24px;object-fit:contain;flex-shrink:0}.profile-xp-rank-info{display:flex;flex-direction:column;gap:2px;flex:1}.profile-xp-rank-name{font-size:16px;font-weight:800;color:var(--text-primary)}.profile-xp-total{font-size:13px;font-weight:600;color:var(--text-secondary)}.fill-progress-bar-track{width:100%;height:10px;background:var(--bg-elevated);border-radius:999px;overflow:hidden;position:relative}.fill-progress-bar-track--fat{height:14px}.fill-progress-bar-fill{height:100%;background:linear-gradient(to right,#3b82f6,#a855f7);border-radius:999px;min-width:0;position:relative;transition:width .4s ease}.fill-progress-bar-fill:after{content:"";position:absolute;top:2px;left:6px;right:6px;height:2px;background:#ffffff8c;border-radius:999px}.pill-tabs-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:4px 0 12px;margin:0 calc(-1 * var(--page-padding-left))}.pill-tabs-scroll::-webkit-scrollbar{display:none}.pill-tabs-track{display:inline-flex;flex-wrap:nowrap;gap:10px;padding:0 var(--page-padding-left);min-width:min-content}.pill-tab{flex-shrink:0;border:none;background:var(--bg-secondary);color:var(--text-tertiary);padding:10px 16px;font-size:14px;font-weight:600;border-radius:999px;cursor:pointer;white-space:nowrap;transition:background .2s ease,color .2s ease,border-color .2s ease}.pill-tab:hover{background:var(--bg-hover);color:var(--text-secondary)}.pill-tab:focus,.pill-tab:focus-visible{outline:none;box-shadow:none}.pill-tab.active,.pill-tab.active:hover{background:var(--color-yellow);color:var(--text-on-accent);font-weight:1000}.ranks-page{padding:var(--page-padding-top) var(--page-padding-right) var(--page-padding-bottom) var(--page-padding-left)}.ranks-tabs-section{margin-bottom:20px}.ranks-cta-card{background:color-mix(in srgb,var(--color-blue) 65%,var(--bg-secondary));border-radius:14px;padding:14px 16px 12px;margin-bottom:16px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.ranks-cta-card-heading,.community-friends-cta-card-heading{margin:0 0 4px;color:var(--text-primary)}.ranks-cta-card-text{margin:0;font-size:14px;font-weight:600;color:var(--text-secondary);line-height:1.4;align-self:stretch;text-align:left}.ranks-pyramid{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:24px}.ranks-pyramid-row{display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:0}.ranks-pyramid-item{display:flex;flex-direction:column;align-items:center;gap:4px;margin-left:-110px}.ranks-pyramid-row .ranks-pyramid-item:first-child{margin-left:0}.ranks-pyramid-item img{width:240px;height:90px;object-fit:contain}.ranks-pyramid-name{font-size:22px;font-weight:700;color:var(--text-primary)}.ranks-friends-placeholder,.ranks-history-empty{text-align:center;padding:32px 16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:14px;color:var(--text-secondary);font-size:14px}.ranks-history-graph{background:var(--bg-secondary);border-radius:14px;padding:16px;min-height:400px}.ranks-history-graph svg{width:100%;height:400px;display:block}.ranks-leaderboard{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.feedback-confidence-card{--confidence-accent: var(--color-yellow);--confidence-pct: 0%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:14px;background:var(--color-green-dark);border:none;margin-bottom:20px}.feedback-confidence-card__label{font-size:15px;font-weight:800;color:var(--text-primary)}.feedback-confidence-ring{width:46px;height:46px;border-radius:999px;display:grid;place-items:center;position:relative;flex-shrink:0}.feedback-confidence-ring__svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.feedback-confidence-ring__track,.feedback-confidence-ring__value{fill:none;stroke-width:5;cx:22;cy:22;r:18}.feedback-confidence-ring__track{stroke:color-mix(in srgb,var(--bg-elevated) 80%,transparent)}.feedback-confidence-ring__value{stroke:var(--confidence-accent);stroke-linecap:round}.feedback-confidence-ring__text{position:relative;z-index:1;font-size:12px;font-weight:900;letter-spacing:.2px;color:var(--text-primary);font-variant-numeric:tabular-nums}.ranks-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0}.ranks-avatar img{width:100%;height:100%;object-fit:cover}.ranks-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:700;border-radius:50%}.ranks-user-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.ranks-user-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.ranks-user-name{font-size:14px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.ranks-you-badge{font-size:10px;font-weight:700;background:#a855f740;color:#c084fc;border-radius:999px;padding:1px 7px;flex-shrink:0}.ranks-rank-badge{display:flex;align-items:center;gap:4px;flex-shrink:0}.ranks-rank-icon{width:48px;height:18px;object-fit:contain}.ranks-user-info--compact .ranks-rank-icon{width:52px;height:20px}.ranks-rank-name{font-size:11px;font-weight:700;flex-shrink:0}.ranks-xp-row{display:flex;align-items:center;gap:8px}.ranks-xp-bar-track{flex:1;height:6px;background:var(--bg-elevated);border-radius:999px;overflow:hidden}.ranks-xp-bar-fill{height:100%;border-radius:999px;transition:width .5s ease;opacity:.85}.ranks-user-info--compact .ranks-user-row{gap:10px}.ranks-user-info--compact .ranks-user-name{flex:1;min-width:0}.ranks-user-info--compact .ranks-user-row .ranks-rank-icon{margin-left:auto;flex-shrink:0}.ranks-user-info--compact .ranks-xp-label{min-width:4.5em;text-align:right}.ranks-xp-label{font-size:11px;font-weight:700;color:var(--text-secondary);flex-shrink:0}.profile-list-section{display:flex;flex-direction:column;gap:12px}.dl-btn-row{--dl-btn-bg: var(--bg-tertiary);--dl-btn-border: #cbd5e1;--dl-btn-accent: #12b5ff;--dl-btn-pad-y: 12px;--dl-btn-pad-x: 16px;--dl-btn-press-depth: 4px;width:100%;border-radius:16px;border:2px solid var(--dl-btn-border);background:var(--dl-btn-bg);padding:var(--dl-btn-pad-y) var(--dl-btn-pad-x);margin:0;box-shadow:0 var(--dl-btn-press-depth) 0 0 var(--dl-btn-border);transition:none;display:inline-flex;align-items:center;gap:12px;cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.dl-btn-row:hover:not(:disabled),.dl-btn-row:focus:not(:disabled),.dl-btn-row:focus-visible:not(:disabled){background-color:var(--dl-btn-bg);box-shadow:0 var(--dl-btn-press-depth) 0 0 var(--dl-btn-border);transform:none}.dl-btn-row:active:not(:disabled),.dl-btn-row.dl-btn-row--pressed:not(:disabled){background-color:var(--dl-btn-bg);box-shadow:0 0 0 0 var(--dl-btn-border);transform:translateY(var(--dl-btn-press-depth))}.dl-btn-row--leaderboard{box-shadow:none}.dl-btn-row--leaderboard:hover:not(:disabled),.dl-btn-row--leaderboard:focus:not(:disabled),.dl-btn-row--leaderboard:focus-visible:not(:disabled){box-shadow:none}.dl-btn-row--leaderboard:active:not(:disabled),.dl-btn-row--leaderboard.dl-btn-row--pressed:not(:disabled){box-shadow:none}.dl-btn-row:disabled{opacity:.6;cursor:not-allowed}.dl-btn-row--selected{--dl-btn-bg: rgba(var(--error-rgb, 220, 53, 69), .12);--dl-btn-border: rgba(var(--error-rgb, 220, 53, 69), .7);--dl-btn-accent: var(--error, #dc3545)}.profile-bulk-edit-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;margin:8px 0 10px;background:rgba(var(--error-rgb, 220, 53, 69),.12);border:1px solid rgba(var(--error-rgb, 220, 53, 69),.45)}.profile-bulk-edit-bar__left{display:flex;flex-direction:column;gap:2px}.profile-bulk-edit-bar__title{font-size:14px;font-weight:800;color:var(--text-primary)}.profile-bulk-edit-bar__subtitle{font-size:12px;color:var(--text-secondary)}.profile-bulk-edit-bar__actions{display:flex;gap:10px;align-items:center}.profile-bulk-edit-clear-btn{border:none;background:var(--bg-secondary);color:var(--text-primary);border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700;cursor:pointer}.profile-bulk-edit-clear-btn:hover:not(:disabled){background:var(--bg-hover)}.profile-bulk-edit-delete-btn{border:none;background:transparent;color:var(--error, #dc3545);border-radius:999px;padding:8px 12px;font-size:13px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.profile-bulk-edit-delete-btn:hover:not(:disabled){background:rgba(var(--error-rgb, 220, 53, 69),.12)}.profile-bulk-edit-delete-btn:disabled{opacity:.7;cursor:not-allowed}.dl-btn-row__number{border:2px solid var(--dl-btn-accent);border-radius:8px;width:30px;height:30px;display:flex;justify-content:center;align-items:center;color:var(--dl-btn-accent);font-weight:700;flex-shrink:0}.dl-btn-row--leaderboard:not(.dl-btn-row--leaderboard-top3) .dl-btn-row__number{border-color:transparent;color:var(--text-secondary)}.profile-list .dl-btn-row--leaderboard-top3:nth-child(1) .dl-btn-row__number{border-color:#b8860b;color:#b8860b}.profile-list .dl-btn-row--leaderboard-top3:nth-child(2) .dl-btn-row__number{border-color:gray;color:gray}.profile-list .dl-btn-row--leaderboard-top3:nth-child(3) .dl-btn-row__number{border-color:#8b5a2b;color:#8b5a2b}.profile-list .dl-btn-row--leaderboard-top3:nth-child(1){border:2px solid transparent!important;background:linear-gradient(var(--dl-btn-bg),var(--dl-btn-bg)) padding-box,linear-gradient(135deg,#d4af37,#b8860b) border-box}.profile-list .dl-btn-row--leaderboard-top3:nth-child(2){border:2px solid transparent!important;background:linear-gradient(var(--dl-btn-bg),var(--dl-btn-bg)) padding-box,linear-gradient(135deg,silver,gray) border-box}.profile-list .dl-btn-row--leaderboard-top3:nth-child(3){border:2px solid transparent!important;background:linear-gradient(var(--dl-btn-bg),var(--dl-btn-bg)) padding-box,linear-gradient(135deg,#cd7f32,#8b5a2b) border-box;margin-bottom:20px}.feedback-improvement-num{border:2px solid var(--feedback-improvement-accent, var(--color-blue));border-radius:8px;width:30px;height:30px;display:flex;justify-content:center;align-items:center;color:var(--feedback-improvement-accent, var(--color-blue));font-weight:700;font-size:14px;flex-shrink:0}.dl-btn-row__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;align-items:center}.dl-btn-row__title{width:100%;text-align:center;font-size:16px;font-weight:650;color:var(--text-primary)}.dl-btn-row__subtitle{width:100%;text-align:center;font-size:12px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.static-timer-session-hold-row{--dl-btn-bg: var(--bg-tertiary);--dl-btn-border: #cbd5e1;--dl-btn-accent: #12b5ff;--dl-btn-pad-y: 12px;--dl-btn-pad-x: 16px;--dl-btn-press-depth: 4px;width:100%;border-radius:16px;border:2px solid var(--dl-btn-border);background:var(--dl-btn-bg);padding:var(--dl-btn-pad-y) var(--dl-btn-pad-x);box-shadow:0 var(--dl-btn-press-depth) 0 0 var(--dl-btn-border);display:flex;flex-direction:row;align-items:center;gap:8px;box-sizing:border-box}.static-timer-session-hold-row__open{flex:1;min-width:0;display:flex;flex-direction:row;align-items:center;gap:12px;padding:0;margin:0;appearance:none;font:inherit;color:var(--text-primary);cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;background:transparent;border:none;box-shadow:none}.static-timer-session-hold-row .static-timer-session-hold-row__open:hover,.static-timer-session-hold-row .static-timer-session-hold-row__open:focus,.static-timer-session-hold-row .static-timer-session-hold-row__open:focus-visible,.static-timer-session-hold-row .static-timer-session-hold-row__open:active{background:transparent;color:var(--text-primary);box-shadow:none;transform:none}.static-timer-session-hold-row .static-timer-session-hold-row__open:focus-visible{outline:2px solid var(--dl-btn-accent);outline-offset:2px;border-radius:8px}.static-timer-session-hold-row__actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.static-timer-session-hold-row button.static-timer-session-hold-row__action{width:38px;height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:10px;background:transparent;color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:color .15s,background .15s;-webkit-tap-highlight-color:transparent}.static-timer-session-hold-row button.static-timer-session-hold-row__action--wide{width:auto;min-width:68px;padding:0 6px}.static-timer-session-hold-row__saving-label{font-size:11px;font-weight:700;color:var(--text-secondary);white-space:nowrap}.static-timer-session-hold-row button.static-timer-session-hold-row__action:hover:not(:disabled),.static-timer-session-hold-row button.static-timer-session-hold-row__action:focus,.static-timer-session-hold-row button.static-timer-session-hold-row__action:focus-visible,.static-timer-session-hold-row button.static-timer-session-hold-row__action:active{background:color-mix(in srgb,var(--dl-btn-accent) 12%,transparent);color:var(--text-primary);box-shadow:none;transform:none}.static-timer-session-hold-row button.static-timer-session-hold-row__action:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.static-timer-session-hold-row button.static-timer-session-hold-row__action--saved:disabled{opacity:1;cursor:default;background:color-mix(in srgb,#166534 22%,transparent);color:#166534}.static-timer-session-hold-row button.static-timer-session-hold-row__action--saved:disabled:hover{background:color-mix(in srgb,#166534 22%,transparent);color:#166534}.static-timer-session-hold-row button.static-timer-session-hold-row__action--delete:hover:not(:disabled){color:var(--error);background:#ef444414}.dl-btn-row--leaderboard .dl-btn-row__content{align-items:stretch}.dl-leaderboard-row{display:flex;align-items:center;gap:12px;width:100%}.dl-btn-row--leaderboard .ranks-user-info{gap:6px}.dl-btn-row--leaderboard{--dl-btn-pad-y: 8px;--dl-btn-pad-x: 14px}.dl-btn-row--leaderboard .ranks-avatar{width:36px;height:36px}.dl-btn-row--leaderboard .ranks-avatar-placeholder{font-size:14px}.profile-list-title{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.profile-list-empty{padding:12px 16px;border-radius:12px;border:1px dashed var(--border-primary);background:var(--bg-tertiary);color:var(--text-secondary);font-size:13px}.profile-list{display:flex;flex-direction:column;gap:8px}.profile-list--exercise-ranks .profile-list-item{border:none}.profile-list-item{display:flex;align-items:center;gap:0;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:12px;overflow:hidden}.profile-list-item-main{flex:1;display:flex;align-items:center;gap:12px;padding:12px 16px;background:none;border:none;min-width:0;text-align:left;color:var(--text-primary);transition:background .2s}.profile-list-item-main:hover{background:var(--bg-hover)}.profile-list-item-icon{width:40px;height:40px;border-radius:10px;background:var(--bg-secondary);border:1px solid var(--border-primary);display:flex;align-items:center;justify-content:center;color:var(--accent-primary);flex-shrink:0}.profile-list-item-content{flex:1;display:flex;flex-direction:column;gap:2px}.profile-list-item-label{font-size:14px;font-weight:600;color:var(--text-primary);display:block}.profile-list-item-date{font-size:12px;font-variant-numeric:tabular-nums;color:var(--text-secondary);display:block;margin-top:2px}.profile-list-item-meta{font-size:12px;color:var(--text-secondary)}.profile-list-item-chevron{color:var(--text-secondary);flex-shrink:0}.profile-list-item-actions{display:flex;align-items:center;border-left:1px solid var(--border-primary);flex-shrink:0}.profile-list-item-action{padding:10px 12px;background:none;border:none;border-left:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .2s,background .2s}.profile-list-item-action:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover)}.profile-list-item-action--delete:hover{color:var(--error);background:#ef444414}.profile-list-item-action--share:disabled,.profile-list-item-action[disabled]{opacity:.5;cursor:not-allowed}.skills-header{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}.community-friends-tab{display:flex;flex-direction:column;gap:20px;padding-top:4px;padding-bottom:80px;min-height:min-content}.community-friends-cta-card{background:color-mix(in srgb,#a855f7 18%,var(--bg-secondary));border-radius:14px;padding:14px 16px 12px;margin-bottom:4px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.community-friends-cta-card .community-friends-cta-card-heading{align-self:stretch}.community-friends-cta-card-text{margin:0;font-size:14px;font-weight:600;color:var(--text-secondary);line-height:1.4;align-self:stretch;text-align:left}.community-friends-search{display:flex;gap:10px;align-items:center}.community-friends-search-input-wrap{flex:1;position:relative;display:flex;align-items:center}.community-friends-search-input{width:100%;padding:10px 36px 10px 14px;font-size:16px;border:none;border-radius:12px;background:var(--bg-secondary);color:var(--text-primary);box-sizing:border-box}.community-friends-search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);padding:4px;border:none;background:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:0}.community-friends-search-clear:hover{color:var(--text-secondary)}.community-friends-search-input::placeholder{color:var(--text-muted)}.community-friends-section{display:flex;flex-direction:column;gap:8px}.community-friends-section-header{display:flex;align-items:center;gap:8px;margin-bottom:2px}.community-friends-section-header .community-friends-heading{margin:0}.community-friends-refresh{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:10px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:background .2s,color .2s}.community-friends-refresh:hover:not(:disabled){background:var(--bg-elevated-tint);color:var(--text-primary)}.community-friends-refresh:disabled{opacity:.6;cursor:not-allowed}.community-friends-heading{font-size:1rem;font-weight:700;color:var(--text-secondary);margin:0 0 6px}.community-friends-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.community-friend-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--bg-secondary);border:none;border-radius:12px}.community-friend-link{display:flex;align-items:center;gap:10px;flex:1;min-width:0;text-decoration:none;color:inherit}.community-friend-avatar,.community-friend-avatar-placeholder{width:40px;height:40px;border-radius:50%;flex-shrink:0;object-fit:cover}.community-friend-avatar-placeholder{display:flex;align-items:center;justify-content:center;background:var(--bg-elevated-tint);color:var(--text-muted);font-weight:700;font-size:16px}.community-friend-name{font-weight:500;color:var(--text-secondary)}.community-friend-actions{display:flex;gap:8px;flex-shrink:0}.app-button--outline{background:transparent;box-shadow:none;color:var(--text-secondary);border:1px solid var(--border-primary)}.app-button--outline:hover{background:var(--bg-elevated-tint)}.app-button--outline:active{box-shadow:none;transform:none}.app-button--outline:disabled{background:transparent;color:var(--text-muted);box-shadow:none}.skills-tabs{display:inline-flex;align-items:center;gap:12px;padding:10px 14px;background:var(--bg-elevated-tint);border-radius:12px;width:fit-content;position:relative}.skills-tab{display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1.2;border:none;background:transparent;color:var(--text-secondary);padding:8px 12px;font-size:14px;border-radius:10px;cursor:pointer;position:relative;z-index:1}.skills-tab svg{display:none}.skills-tab:hover{background:transparent;color:var(--text-secondary);transform:none;box-shadow:none}.skills-tab:focus,.skills-tab:focus-visible{outline:none;box-shadow:none}.skills-tabs-indicator{position:absolute;top:0;left:0;border-radius:10px;background:var(--color-yellow);transition:transform .22s cubic-bezier(.22,.61,.36,1),width .22s cubic-bezier(.22,.61,.36,1),height .22s cubic-bezier(.22,.61,.36,1);z-index:0}.skills-tab.active{color:var(--text-on-accent);font-weight:1000}.skills-tab.active:hover{background:transparent;color:var(--text-on-accent)}.chat-tier-title{margin:4px 0 12px;font-size:16px;color:var(--text-primary)}.chat-tier-grid,.skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:4px;margin-bottom:16px;width:100%}.skill-detail-content{padding:12px 0}.skill-detail-content section{margin-bottom:24px}.skill-detail-content section:last-child{margin-bottom:0}.skill-section-heading{font-size:1rem;font-weight:1000;color:var(--text-secondary);margin:0 0 6px}.ranks-cta-card .ranks-cta-card-heading{color:var(--text-primary)}.progressions-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.progression-item{display:flex;align-items:center;gap:12px;background:var(--bg-elevated);border-radius:12px;padding:12px 14px;position:relative;overflow:hidden;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:pan-y}.progression-item:before{content:"";position:absolute;inset:0;width:0%;background:var(--color-green-light);border-radius:12px;z-index:0;transition:width .25s ease,background .2s ease}.progression-item.pending-confirm:before{width:100%;background:var(--color-green-light);opacity:.6}.progression-item.pending-confirm{animation:progression-pulse 1.8s ease-in-out infinite}@keyframes progression-pulse{0%,to{opacity:1}50%{opacity:.92}}.progression-item.checked:before{width:100%;background:var(--color-green);animation:none}.progression-item.checked{animation:progression-bounce .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes progression-bounce{0%{transform:scale(1)}30%{transform:scale(1.04)}55%{transform:scale(.97)}75%{transform:scale(1.015)}to{transform:scale(1)}}.progression-item>*{position:relative;z-index:1}.progression-number{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--color-blue);color:var(--color-main);font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.progression-name{flex:1;font-size:14px;color:var(--text-primary)}.progression-chevron{margin-left:auto;display:flex;align-items:center;color:var(--text-secondary);flex-shrink:0}.progression-confirm-hint{margin-left:auto;font-size:12px;color:var(--text-secondary);font-weight:500}.progression-item.checked .progression-chevron{color:var(--color-main);animation:checkmark-pop .4s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes checkmark-pop{0%{transform:scale(0) rotate(-20deg);opacity:0}60%{transform:scale(1.2) rotate(5deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}.chat-tier-card{border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-secondary);aspect-ratio:1 / 1;padding:12px;border-radius:12px;text-align:center;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;min-width:0}.chat-tier-card.skill-card{background:var(--bg-elevated-tint);border:none;overflow:hidden;position:relative;padding:0}.chat-tier-card.skill-card:hover{background:var(--bg-hover)}.chat-tier-card.skill-card.active{background:var(--bg-hover);color:var(--text-primary);outline:none}.chat-tier-card.skill-card .skill-label{background:var(--bg-elevated-tint);color:var(--text-primary);text-shadow:none;margin:0}.chat-tier-card.skill-card:hover .skill-label,.chat-tier-card.skill-card.active .skill-label{background:var(--bg-hover)}.chat-tier-card.skill-card .skill-label--over-image{background:var(--bg-elevated-tint);color:var(--text-primary);text-shadow:none;margin:0}.chat-page .chat-tier-grid .chat-tier-card.skill-card{background:var(--bg-elevated-tint);border:none}.chat-page .chat-tier-grid .chat-tier-card.skill-card:hover{background:var(--bg-hover)}.chat-page .chat-tier-grid .chat-tier-card.skill-card.active{background:var(--bg-hover);outline:none}.chat-tier-card:hover{background:var(--bg-hover);color:var(--text-secondary);transform:none;box-shadow:none}.chat-tier-card.active{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary);outline:2px solid rgba(255,255,255,.9);outline-offset:2px}.skill-card-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end}.skill-thumbnail{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.skill-label{position:relative;z-index:1;font-size:14px;font-weight:600;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.8);padding:6px 12px;background:#1f1f1f;text-align:center;margin:0}.skill-rank-wrapper{position:absolute;top:4px;right:4px;width:56px;height:56px;z-index:2}.skill-rank-wrapper--rank-0{width:44px;height:44px}.skill-rank-wrapper--rank-1{width:48px;height:48px}.skill-rank-wrapper--rank-2{width:52px;height:52px}.skill-rank-wrapper--rank-3{width:56px;height:56px}.skill-rank-wrapper--rank-4{width:60px;height:60px}.skill-rank-wrapper--rank-5{width:64px;height:64px}.skill-rank-wrapper--rank-6{width:68px;height:68px}.skill-rank-wrapper--rank-7{width:72px;height:72px}.skill-rank-badge{width:100%;height:100%;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.7))}.exercise-hero-rank{position:absolute;bottom:56px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;z-index:2;pointer-events:none;width:300px;overflow:visible}.exercise-hero-rank-icon{position:absolute;bottom:15px;left:50%;transform:translate(-50%);width:280px;height:105px;display:block;overflow:visible;filter:drop-shadow(0 4px 12px rgba(0,0,0,.6));z-index:0}.exercise-hero-rank-xp{font-size:12px;font-weight:700;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.8);white-space:nowrap;letter-spacing:.3px;position:relative;z-index:1}.exercise-hero-rank-bar-track{width:120px;height:10px;background:#fff3;border-radius:999px;overflow:hidden;box-shadow:0 1px 4px #0006;position:relative;z-index:1}.pro-tier-locked{position:relative;min-height:180px}.pro-tier-locked-content{position:relative;z-index:0;filter:blur(6px);pointer-events:none;-webkit-user-select:none;user-select:none}.pro-tier-locked-overlay{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#00000073;border-radius:12px;pointer-events:auto}.pro-tier-lock-icon{color:#ffffffe6;flex-shrink:0}.pro-tier-coming-soon{font-size:18px;font-weight:600;color:#fffffff2;letter-spacing:.02em}@media(max-width:480px){:root{--page-padding-left: max(12px, env(safe-area-inset-left));--page-padding-right: max(12px, env(safe-area-inset-right))}.chat-tier-grid,.skills-grid{gap:8px}.chat-tier-card,.skills-grid .chat-tier-card{padding:8px}.skills-header{margin-bottom:8px}}.chat-room-top{display:flex;align-items:center;justify-content:center;width:100%;position:relative;min-height:32px}.chat-room-back{position:absolute;left:0;background:none!important;border:none!important;color:var(--text-primary);padding:0;font-size:24px;cursor:pointer;line-height:1;box-shadow:none!important;transform:none!important}.chat-room-back:hover{background:none!important;transform:scale(1.1)!important;box-shadow:none!important}.chat-room-title{margin:0;font-size:18px;font-weight:700;color:var(--text-primary);text-align:center}.login-card{max-width:420px;margin:60px auto}.auth-page{padding:16px;font-family:inherit}.app-content--auth .login-card{margin:0 auto}.auth-page h1,.auth-page h2,.auth-page h3,.auth-page p,.auth-page label,.auth-page input,.auth-page button,.auth-page a{font-family:inherit}.auth-card{position:relative;border-radius:18px;border:none;overflow:hidden;isolation:isolate;background:var(--bg-secondary)}.auth-card:before,.auth-card:after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:-1;filter:blur(.4px);opacity:.7}.auth-card:before{width:220px;height:220px;right:-86px;top:-88px;background:radial-gradient(circle at 30% 30%,rgba(142,205,255,.58),rgba(80,155,255,.14) 58%,transparent 72%);opacity:0;animation:none}.auth-card:after{width:170px;height:170px;left:-70px;bottom:-62px;background:radial-gradient(circle at 35% 35%,rgba(96,192,255,.44),rgba(47,131,255,.13) 62%,transparent 75%);opacity:0;animation:none}.auth-card>*{position:relative;z-index:1}.auth-logo{display:block;width:min(100%,240px);height:auto;margin:0 auto 20px}.auth-title{margin-bottom:8px}.auth-subtitle{margin:0 0 24px}.auth-switch-text{margin-top:16px;text-align:center}.auth-switch-text a{color:var(--accent-primary);font-weight:600}.auth-switch-text a:hover{color:var(--accent-hover)}.auth-error-text{color:var(--error);margin-bottom:12px}.auth-success-text{color:var(--success);margin-bottom:12px}.auth-pwa-hint{position:fixed;top:12px;right:12px;max-width:220px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:10px;padding:10px 12px;z-index:100;box-shadow:var(--shadow-md)}.auth-pwa-hint-content{display:flex;align-items:flex-start;gap:8px}.auth-pwa-hint-text{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.4}.auth-pwa-hint-text strong{color:var(--text-primary)}.auth-pwa-hint-dismiss{margin-top:8px;color:var(--text-tertiary);text-decoration:underline;border:none;box-shadow:none;background:transparent;padding:0;min-height:auto;transform:none}.auth-pwa-hint-dismiss:hover{color:var(--text-secondary);transform:none;box-shadow:none;background:transparent}.auth-pwa-hint-dismiss:focus-visible{outline:1px solid var(--accent-primary);outline-offset:2px}.auth-card .form-field input{border:none}@keyframes auth-bubble-float-1{0%,to{transform:translateY(0) translate(0) scale(1)}50%{transform:translateY(12px) translate(-8px) scale(1.04)}}@keyframes auth-bubble-float-2{0%,to{transform:translateY(0) translate(0) scale(1)}50%{transform:translateY(-10px) translate(10px) scale(1.03)}}.form-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.form-field input{border-radius:10px;border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-primary);padding:10px 12px;font-size:14px}.form-field label{font-size:13px;color:var(--text-secondary)}.helper-text{color:var(--text-tertiary);font-size:12px}.pose-detector-loading-overlay{position:fixed;top:calc(var(--top-bar-height) + env(safe-area-inset-top));left:0;right:0;bottom:var(--bottom-nav-bottom);z-index:2;background:var(--bg-primary);display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.pose-detector-loading-overlay__content{max-width:360px;width:100%;text-align:center}.pose-detector-loading-overlay--timer .pose-detector-loading-overlay__content{transform:translateY(100px)}.pose-detector-loading-overlay__spinner{width:48px;height:48px;margin:0 auto 20px;border:3px solid var(--border-primary);border-top-color:var(--accent-primary);border-radius:50%;animation:pose-detector-loading-spin .9s linear infinite}@keyframes pose-detector-loading-spin{to{transform:rotate(360deg)}}.pose-detector-loading-overlay__title{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.pose-detector-loading-overlay__subtitle{font-size:14px;color:var(--text-secondary);margin:0 0 20px}.pose-detector-loading-overlay__timer-text{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.pose-detector-loading-overlay__bar-wrap{height:6px;background:var(--bg-tertiary);border-radius:3px;overflow:hidden;margin-bottom:20px}.pose-detector-loading-overlay__bar{height:100%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));border-radius:3px;transition:width .15s ease-out}.pose-detector-loading-overlay__hint{font-size:13px;color:var(--text-tertiary);margin:0}.pose-detector-loading-overlay__link{color:var(--accent-primary);text-decoration:underline;text-underline-offset:2px}.pose-detector-loading-overlay__link:hover{color:var(--accent-hover)}.ai-feedback-loading__spinner-wrap .container{display:flex;justify-content:center;align-items:center}.ai-feedback-loading__spinner-wrap .loadingspinner{--square: 26px;--offset: 30px;--duration: 2.4s;--delay: .2s;--timing-function: ease-in-out;--in-duration: .4s;--in-delay: .1s;--in-timing-function: ease-out;width:calc(3 * var(--offset) + var(--square));height:calc(2 * var(--offset) + var(--square));padding:0;margin:0 auto;position:relative}.ai-feedback-loading__spinner-wrap .loadingspinner div{display:inline-block;background:var(--color-blue);border:none;border-radius:2px;width:var(--square);height:var(--square);position:absolute;padding:0;margin:0;font-size:6pt;color:#000}.ai-feedback-loading__spinner-wrap .loadingspinner #square1{left:calc(0 * var(--offset));top:calc(0 * var(--offset));animation:square1 var(--duration) var(--delay) var(--timing-function) infinite,squarefadein var(--in-duration) calc(1 * var(--in-delay)) var(--in-timing-function) both}.ai-feedback-loading__spinner-wrap .loadingspinner #square2{left:calc(0 * var(--offset));top:calc(1 * var(--offset));animation:square2 var(--duration) var(--delay) var(--timing-function) infinite,squarefadein var(--in-duration) calc(1 * var(--in-delay)) var(--in-timing-function) both}.ai-feedback-loading__spinner-wrap .loadingspinner #square3{left:calc(1 * var(--offset));top:calc(1 * var(--offset));animation:square3 var(--duration) var(--delay) var(--timing-function) infinite,squarefadein var(--in-duration) calc(2 * var(--in-delay)) var(--in-timing-function) both}.ai-feedback-loading__spinner-wrap .loadingspinner #square4{left:calc(2 * var(--offset));top:calc(1 * var(--offset));animation:square4 var(--duration) var(--delay) var(--timing-function) infinite,squarefadein var(--in-duration) calc(3 * var(--in-delay)) var(--in-timing-function) both}.ai-feedback-loading__spinner-wrap .loadingspinner #square5{left:calc(3 * var(--offset));top:calc(1 * var(--offset));animation:square5 var(--duration) var(--delay) var(--timing-function) infinite,squarefadein var(--in-duration) calc(4 * var(--in-delay)) var(--in-timing-function) both}@keyframes square1{0%{left:calc(0 * var(--offset));top:calc(0 * var(--offset))}8.333%{left:calc(0 * var(--offset));top:calc(1 * var(--offset))}to{left:calc(0 * var(--offset));top:calc(1 * var(--offset))}}@keyframes square2{0%{left:calc(0 * var(--offset));top:calc(1 * var(--offset))}8.333%{left:calc(0 * var(--offset));top:calc(2 * var(--offset))}16.67%{left:calc(1 * var(--offset));top:calc(2 * var(--offset))}25%{left:calc(1 * var(--offset));top:calc(1 * var(--offset))}83.33%{left:calc(1 * var(--offset));top:calc(1 * var(--offset))}91.67%{left:calc(1 * var(--offset));top:calc(0 * var(--offset))}to{left:calc(0 * var(--offset));top:calc(0 * var(--offset))}}@keyframes square3{0%,to{left:calc(1 * var(--offset));top:calc(1 * var(--offset))}16.67%{left:calc(1 * var(--offset));top:calc(1 * var(--offset))}25%{left:calc(1 * var(--offset));top:calc(0 * var(--offset))}33.33%{left:calc(2 * var(--offset));top:calc(0 * var(--offset))}41.67%{left:calc(2 * var(--offset));top:calc(1 * var(--offset))}66.67%{left:calc(2 * var(--offset));top:calc(1 * var(--offset))}75%{left:calc(2 * var(--offset));top:calc(2 * var(--offset))}83.33%{left:calc(1 * var(--offset));top:calc(2 * var(--offset))}91.67%{left:calc(1 * var(--offset));top:calc(1 * var(--offset))}}@keyframes square4{0%{left:calc(2 * var(--offset));top:calc(1 * var(--offset))}33.33%{left:calc(2 * var(--offset));top:calc(1 * var(--offset))}41.67%{left:calc(2 * var(--offset));top:calc(2 * var(--offset))}50%{left:calc(3 * var(--offset));top:calc(2 * var(--offset))}58.33%{left:calc(3 * var(--offset));top:calc(1 * var(--offset))}to{left:calc(3 * var(--offset));top:calc(1 * var(--offset))}}@keyframes square5{0%{left:calc(3 * var(--offset));top:calc(1 * var(--offset))}50%{left:calc(3 * var(--offset));top:calc(1 * var(--offset))}58.33%{left:calc(3 * var(--offset));top:calc(0 * var(--offset))}66.67%{left:calc(2 * var(--offset));top:calc(0 * var(--offset))}75%{left:calc(2 * var(--offset));top:calc(1 * var(--offset))}to{left:calc(2 * var(--offset));top:calc(1 * var(--offset))}}@keyframes squarefadein{0%{transform:scale(.75);opacity:0}to{transform:scale(1);opacity:1}}.chat-list{display:flex;flex-direction:column;gap:0;margin-bottom:16px}.chat-message-row{display:flex;align-items:flex-end;gap:8px;width:100%;margin-bottom:10px}.chat-message-row.grouped{margin-bottom:2px}.chat-message-row.mine{justify-content:flex-end}.chat-message-wrapper{display:flex;flex-direction:column;max-width:92%;position:relative}.chat-message-row:not(.mine) .chat-message-wrapper{align-items:flex-start}.chat-message-row.mine .chat-message-wrapper{align-items:flex-end}.chat-rank-wrap.invisible{visibility:hidden}.chat-rank-wrap{position:relative;width:28px;height:28px;flex-shrink:0;overflow:visible}.chat-rank-wrap .chat-rank-bg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:72px;height:auto;aspect-ratio:144.91 / 86.98;object-fit:contain;object-position:center;pointer-events:none;z-index:0}.chat-rank-wrap .chat-avatar{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:28px;height:28px;margin:0;z-index:1}.chat-avatar{width:28px;height:28px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--bg-tertiary);border:1px solid var(--border-primary);display:flex;align-items:center;justify-content:center;margin-bottom:2px}.chat-avatar img{width:100%;height:100%;object-fit:cover}.chat-avatar-placeholder{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase}.chat-rank-wrap .chat-avatar-placeholder{font-size:12px}.chat-message-row.hidden{opacity:0;pointer-events:none}.chat-message{display:flex;flex-direction:column;gap:2px;padding:6px 10px;border-radius:16px;background:var(--bg-elevated-tint);border:none;max-width:100%;box-shadow:var(--shadow-sm);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;cursor:pointer;position:relative}.chat-message-row:not(.mine) .chat-message{background:color-mix(in srgb,var(--bg-elevated-tint) 88%,black);border-bottom-left-radius:4px;margin-left:6px}.chat-message-row.mine .chat-message{border-bottom-right-radius:4px;margin-right:6px}.chat-message-row.grouped:not(.mine) .chat-message{border-bottom-left-radius:16px}.chat-message-row.grouped.mine .chat-message{border-bottom-right-radius:16px}.chat-message.mine{background:color-mix(in srgb,var(--color-blue) 65%,var(--bg-elevated-tint));border:none}.chat-message-header{display:flex;align-items:center;font-size:11px;color:var(--text-tertiary)}.chat-message-author{font-weight:700;color:#fff}.chat-message-body{display:flex;align-items:flex-end;gap:8px}.chat-message-body-stack{flex:1;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:8px}.chat-message-body .dl-btn-row{width:100%}.chat-message-row--shared-embed .chat-message-wrapper,.chat-message-row.mine.chat-message-row--shared-embed .chat-message-wrapper{max-width:min(560px,100%)}.chat-shared-embed-caption{font-size:12px;line-height:1.35;margin:0}.chat-shared-embed-caption__name{font-weight:700;color:var(--text-secondary)}.chat-shared-embed-caption__action{font-weight:600;color:var(--text-tertiary)}.dl-btn-row--chat-shared-unavailable.dl-btn-row:disabled{opacity:1;cursor:default;box-shadow:none;transform:none;--dl-btn-border: var(--text-tertiary);border-style:dashed}.dl-btn-row--chat-shared-unavailable.dl-btn-row:disabled .dl-btn-row__number{opacity:.55;border-color:var(--text-tertiary);color:var(--text-tertiary)}.dl-btn-row--chat-shared-unavailable.dl-btn-row:disabled .dl-btn-row__title{color:var(--text-tertiary);font-weight:600;white-space:normal}.dl-btn-row__chat-metric--muted{color:var(--text-tertiary);font-weight:600}.dl-btn-row--chat-shared .dl-btn-row__content{align-items:stretch;gap:6px}.dl-btn-row--chat-shared .dl-btn-row__number.dl-btn-row__number--leading{width:26px;height:26px;min-height:26px}.dl-btn-row__chat-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0}.dl-btn-row__title--chat-line{flex:1;min-width:0;text-align:left!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-btn-row__chat-metric{flex-shrink:0;font-size:15px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-primary)}.dl-btn-row__number--leading{padding:0;font-size:0;line-height:0}.dl-btn-row__number--leading svg{display:block}.chat-message-text{font-size:14px;line-height:1.4;color:var(--text-primary);flex:1;word-wrap:break-word;min-width:0}.chat-message-time{font-size:10px;color:var(--text-tertiary);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;align-self:flex-end;padding-bottom:1px}.chat-message-preview-hint{display:none}.chat-message-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:-8px;margin-left:6px;position:relative;z-index:2}.chat-message-row.mine .chat-message-reactions{margin-left:0;margin-right:6px;justify-content:flex-end}.chat-reaction-badge{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:12px;background:var(--bg-secondary)!important;border:none;font-size:14px;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;box-shadow:0 1px 4px #00000040}.chat-reaction-badge:hover{background:var(--bg-hover)!important;transform:translateY(-1px)}.chat-reaction-badge:active{transform:translateY(0)}.chat-reaction-badge.reacted{background:var(--bg-hover)!important}.chat-reaction-badge .reaction-emoji{line-height:1}.chat-reaction-badge .reaction-count{font-size:11px;font-weight:600;color:var(--text-secondary);line-height:1}.chat-reply-preview{border-left:3px solid var(--border-primary);background:var(--bg-tertiary);padding:8px 10px;border-radius:10px;display:flex;flex-direction:column;gap:4px}.chat-reply-label{font-size:11px;color:var(--text-secondary)}.chat-reply-snippet{font-size:12px;color:var(--text-tertiary)}.chat-attachments{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.chat-attachment-item img,.chat-attachment-item video{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:12px;border:1px solid var(--border-primary);background:var(--bg-secondary)}.chat-attachment-fallback{display:flex;align-items:center;justify-content:center;min-height:120px;border-radius:12px;border:1px dashed var(--border-primary);color:var(--text-tertiary);font-size:12px;text-align:center;padding:12px}.chat-message-actions{display:flex;justify-content:flex-end}.chat-message-actions button{border:none;background:transparent;color:var(--text-tertiary);padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.chat-message-actions button:hover{color:var(--text-primary);background:var(--bg-hover)}.chat-composer{display:flex;flex-direction:column;gap:8px;border-top:none;padding-top:12px}.chat-reply-chip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:12px;background:var(--bg-tertiary);border:none;font-size:12px;color:var(--text-secondary)}.chat-reply-chip button{border:none;background:transparent;color:var(--text-tertiary);cursor:pointer}.chat-attachment-queue{display:flex;gap:8px;flex-wrap:wrap}.chat-attachment-chip{position:relative;width:72px;height:72px;border-radius:12px;overflow:hidden;border:none;background:var(--bg-tertiary)}.chat-attachment-chip img,.chat-attachment-chip video{width:100%;height:100%;object-fit:cover}.chat-attachment-chip button{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:999px;border:none;background:#000000b3;color:var(--color-secondary);cursor:pointer}.chat-input-row{display:flex;gap:12px;align-items:center}.chat-attachment-button{background:none!important;border:none!important;color:var(--text-primary);font-size:28px;line-height:1;cursor:pointer;padding:0;box-shadow:none!important;transform:none!important;display:flex;align-items:center;justify-content:center;min-width:24px}.chat-attachment-button:hover{background:none!important;transform:scale(1.1)!important;box-shadow:none!important}.chat-file-input{display:none}.chat-input-row input{flex:1;border-radius:12px;border:none;background:var(--bg-tertiary);color:var(--text-primary);padding:10px 12px;font-size:14px}.chat-send-button{flex-shrink:0;width:38px;height:38px;border-radius:50%;border:none;background:var(--color-blue);color:#fff;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:background .15s,transform .15s;box-shadow:none!important}.chat-send-button:hover:not(:disabled){background:var(--color-blue-light);transform:scale(1.08)!important;box-shadow:none!important}.chat-send-button:disabled{background:var(--bg-elevated);color:var(--text-muted);cursor:not-allowed;transform:none!important}.chat-page.in-room{position:fixed;top:calc(var(--top-bar-height) + env(safe-area-inset-top));bottom:0;left:0;right:0;display:flex;flex-direction:column;background:var(--bg-primary);z-index:200;padding:0!important;margin:0!important;max-width:none!important;overflow-x:hidden}.chat-page.in-room .skills-header{flex-shrink:0;padding:8px 16px;background:color-mix(in srgb,var(--bg-primary) 88%,white);margin-bottom:0;z-index:10}.chat-page.in-room .skills-header .chat-room-back,.chat-page.in-room .skills-header .chat-room-title{color:#fff}.chat-page.in-room .chat-room-container{flex:1;display:flex;flex-direction:column;min-height:0;position:relative}.chat-page.in-room .chat-list-container{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px;background:var(--bg-primary);-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.chat-page.in-room .chat-list{margin-bottom:0}.chat-page.in-room .chat-list .chat-message:not(.mine){background:color-mix(in srgb,var(--bg-elevated-tint) 88%,black)}.chat-page.in-room .chat-composer{flex-shrink:0;background:var(--bg-secondary);border-top:none;padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom));z-index:10}.chat-page.in-room .chat-composer:focus-within{padding-bottom:12px}.chat-scroll-to-bottom{position:fixed;bottom:calc(72px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:50;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--color-blue);border:none;color:#fff;box-shadow:0 4px 20px #0009;cursor:pointer;padding:0;overflow:visible;transition:none}.chat-scroll-to-bottom:hover,.chat-scroll-to-bottom:active,.chat-scroll-to-bottom:focus,.chat-scroll-to-bottom:focus-visible{transform:translate(-50%);background:var(--color-blue);box-shadow:0 4px 20px #0009;outline:none}.chat-page.in-room .chat-composer .chat-input-row input{background:var(--bg-tertiary);border:none;color:#fff}.chat-page.in-room .chat-composer .chat-input-row input::placeholder{color:#ffffff80}.chat-page.in-room .chat-composer .chat-attachment-button{color:#fff}.chat-page.in-room .chat-composer .chat-input-row .chat-send-button:not(:disabled){background-color:var(--color-blue);color:#fff;border:none}.chat-page.in-room .chat-composer .chat-input-row .chat-send-button:focus,.chat-page.in-room .chat-composer .chat-input-row .chat-send-button:focus-visible,.chat-page.in-room .chat-composer .chat-input-row .chat-send-button:active{outline:none;box-shadow:none;border:none}.chat-page.in-room .chat-composer .chat-reply-chip{background:var(--bg-tertiary);border:none;color:#ffffffe6}.chat-page.in-room .chat-composer .chat-reply-chip button{color:#ffffffb3}.chat-page.in-room .chat-composer .chat-attachment-chip{background:var(--bg-tertiary);border:none}.chat-page.in-room .chat-reply-chip,.chat-page.in-room .chat-attachment-queue{margin-bottom:8px}.message-focus-overlay{position:fixed;inset:0;background:#0009;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.focus-menus-above{position:fixed;left:var(--origin-left);top:var(--origin-top);width:var(--origin-width);display:flex;flex-direction:column-reverse;gap:8px;align-items:flex-start;animation:fadeIn .2s ease-out;box-sizing:border-box;transform:translateY(calc(-100% - 8px))}.focus-menus-above.mine{align-items:flex-end}.focus-menus-below{position:fixed;left:var(--origin-left);top:calc(var(--origin-top) + var(--origin-height) + 8px);width:var(--origin-width);display:flex;flex-direction:column;gap:6px;align-items:flex-start;animation:fadeIn .2s ease-out;box-sizing:border-box}.focus-menus-below.mine{align-items:flex-end}.focused-message-wrapper{position:fixed;left:var(--origin-left);top:var(--origin-top);width:var(--origin-width);display:flex;flex-direction:column;align-items:flex-start;box-sizing:border-box;animation:fadeIn .2s ease-out}.focused-message-wrapper.mine{align-items:flex-end}.reaction-picker{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:999px;padding:8px 16px;display:flex;gap:12px;box-shadow:var(--shadow-lg);animation:menuAppear .3s ease-out .2s both}@keyframes menuAppear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.reaction-btn{background:none;border:none;font-size:24px;cursor:pointer;transition:transform .1s ease;padding:0}.reaction-btn:hover{transform:scale(1.3)}.message-action-menu{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;overflow:hidden;width:160px;box-shadow:var(--shadow-lg);animation:menuAppear .3s ease-out .2s both}.action-menu-item{width:100%;padding:12px 16px;display:flex;align-items:center;gap:12px;background:none;border:none;color:var(--text-primary);font-size:14px;cursor:pointer;text-align:left}.action-menu-item:hover{background:var(--bg-hover)}.action-menu-item--danger:hover{background:rgba(var(--error-rgb, 220, 53, 69),.15)}.action-menu-item svg{color:var(--text-secondary)}.action-menu-item--danger,.action-menu-item--danger svg{color:var(--error, #dc3545)}.focused-message-content{width:100%}.focused-message-content .chat-message{width:var(--origin-width, 85%);max-width:var(--origin-width, 85%);min-width:var(--origin-width, min(140px, 50%));margin:0;background:color-mix(in srgb,var(--bg-elevated-tint) 88%,black);opacity:1;user-select:text;-webkit-user-select:text;box-sizing:border-box}.focused-message-content .chat-message.mine{background:color-mix(in srgb,var(--color-blue) 65%,var(--bg-elevated-tint));border:none;user-select:text;-webkit-user-select:text}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.static-timer-page{position:fixed;top:calc(var(--top-bar-height) + env(safe-area-inset-top));bottom:var(--bottom-nav-bottom);left:0;right:0;display:flex;flex-direction:column;background:var(--bg-secondary);z-index:2;overflow:hidden;padding:0}.static-timer-inner{width:100%;flex:1 1 0;min-height:0;margin:0;max-width:none;display:flex;flex-direction:column}.static-timer-camera-fullscreen{position:relative;width:100%;flex:1 1 0;min-height:0;overflow:hidden;background:var(--bg-primary)}.static-timer-video--fullscreen,.static-timer-camera-fullscreen .realtime-pose-overlay{position:absolute;inset:50px 0 0;width:100%;height:100%;object-fit:contain}.static-timer-video--fullscreen{transform:scaleX(-1);background:var(--bg-primary)}.static-timer-camera-fullscreen .static-timer-video-placeholder,.static-timer-camera-fullscreen .static-timer-loading-overlay{position:absolute;inset:0}.static-timer-camera-fullscreen .static-timer-video-placeholder{background:var(--bg-primary)}.static-timer-glass-bar{position:absolute;top:12px;left:12px;right:12px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:20px;box-shadow:var(--shadow-md)}.static-timer-glass-timer{font-size:clamp(1.75rem,7vw,2.75rem);line-height:1;color:var(--text-primary);text-shadow:0 1px 2px rgba(0,0,0,.08);flex-shrink:0}.static-timer-glass-timer.holding{color:var(--success)}.static-timer-glass-actions{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;min-width:0}.static-timer-select--glass{background:var(--bg-tertiary);border-color:var(--border-primary)}.static-timer-info-btn--glass{color:var(--text-primary)}.static-timer-info-btn--glass:hover{background:var(--bg-hover)}.static-timer-stop-btn--glass{margin-left:auto;background:var(--bg-tertiary);border-color:var(--border-primary);color:var(--text-primary)}.static-timer-stop-btn--glass:hover{background:var(--bg-hover)}.static-timer-stop-camera-btn{width:28px;height:28px;padding:0;border:none;border-radius:8px;background:red;cursor:pointer;outline:none;flex-shrink:0}.static-timer-stop-camera-btn:hover{background:#c00}.static-timer-stop-camera-btn:focus{outline:none}.static-timer-glass-start-camera-btn{margin-left:auto;padding:8px 14px;border:none;border-radius:999px;background:var(--color-green);color:var(--text-on-accent);font-weight:900;font-size:14px;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;transition:background .15s ease,opacity .15s ease;white-space:nowrap}.static-timer-glass-start-camera-btn:hover:not(:disabled){background:var(--color-green-dark)}.static-timer-glass-start-camera-btn:disabled{opacity:.5;cursor:not-allowed}.static-timer-pills-wrap{position:absolute;left:var(--page-padding-left, 20px);right:var(--page-padding-right, 20px);z-index:3;padding:0;pointer-events:auto}.static-timer-modal-buttons-wrap{position:absolute;left:var(--page-padding-left, 20px);right:var(--page-padding-right, 20px);z-index:3;pointer-events:auto;display:flex;flex-direction:column;gap:10px;align-items:stretch}.static-timer-modal-buttons-row{display:flex;gap:12px;justify-content:space-between}.static-timer-modal-button{flex:1}.static-timer-auto-start-setting{display:flex;align-items:center;gap:10px;padding:4px 0 0}.static-timer-auto-start-setting input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--color-blue)}.static-timer-auto-start-setting span{color:var(--text-secondary);font-size:13px;line-height:1.2}.static-timer-pills-wrap .pill-tabs-scroll{margin:0;padding:0}.static-timer-pills-wrap .pill-tabs-track{padding:0;width:100%}.static-timer-pills-wrap .pill-tab{background:color-mix(in srgb,var(--color-blue) 18%,var(--bg-primary));color:var(--text-tertiary);flex:1 1 0;text-align:center}.static-timer-pills-wrap .pill-tab:hover{background:color-mix(in srgb,var(--color-blue) 26%,var(--bg-primary));color:var(--text-secondary)}.static-timer-pills-wrap .pill-tab.active{background:var(--color-blue);color:var(--text-on-accent)}.static-timer-pill-content{padding:12px 4px 0;font-size:14px;color:var(--text-secondary);line-height:1.45;margin:0}.static-timer-pill-content p{margin:0}.static-timer-main{display:flex;flex-direction:column;gap:12px}.static-timer-header{display:flex;align-items:center;justify-content:space-between}.static-timer-title{margin:0;font-size:18px;font-weight:700;color:var(--text-primary)}.static-timer-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.static-timer-exercise-select{flex-shrink:0}.feedback-style-select-wrap{position:relative;width:fit-content}.feedback-style-select{appearance:none;-webkit-appearance:none;padding:10px 34px 10px 12px;border-radius:14px;border:none;background:#ffffff8c;color:var(--color-main);font-size:13px;font-weight:800;cursor:pointer;outline:none}.feedback-style-select:focus{outline:none}.feedback-style-select-chevron{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;color:#151515b8;font-size:12px;font-weight:900}.static-timer-info-wrap{position:relative}.static-timer-info-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;color:var(--text-muted);background:transparent;border:none;border-radius:50%;cursor:pointer;transition:color .15s,background .15s}.static-timer-info-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.static-timer-info-btn:focus{outline:none;color:var(--accent-primary)}.static-timer-info-popover{position:absolute;top:100%;right:0;margin-top:6px;padding:12px 32px 12px 12px;min-width:320px;max-width:min(480px,calc(100vw - 24px));font-size:13px;line-height:1.4;color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:10}.static-timer-info-popover p{margin:0}.static-timer-info-close{position:absolute;top:8px;right:8px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;color:var(--text-muted);background:transparent;border:none;border-radius:4px;cursor:pointer}.static-timer-info-close:hover{color:var(--text-primary);background:var(--bg-tertiary)}.static-timer-select{padding:8px 12px;font-size:14px;color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:8px;cursor:pointer}.static-timer-select:focus{outline:none;border-color:var(--accent-primary)}.static-timer-card{display:flex;flex-direction:column;gap:20px}.static-timer-main .static-timer-card{gap:0px}.static-timer-main .static-timer-card.page-card{padding:0 8px 8px}.static-timer-display{font-size:2.5rem;font-weight:700;font-variant-numeric:tabular-nums;font-family:inherit;color:var(--text-secondary);text-align:center;min-height:3rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.static-timer-display.holding{color:var(--success)}.static-timer-hint{margin:0;font-size:12px;color:var(--text-muted);text-align:center;flex-shrink:0}.static-timer-camera-section{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0}.static-timer-video-wrap{position:relative;width:100%;aspect-ratio:4 / 3;max-height:min(56vh,480px);min-height:40vh;flex:1;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:12px;overflow:hidden}.static-timer-video{width:100%;height:100%;object-fit:contain;transform:scaleX(-1)}.realtime-pose-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;transform:scaleX(-1)}.static-timer-video-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:0;gap:12px;color:var(--text-muted);font-size:14px;z-index:1}.static-timer-error{color:var(--error)}.static-timer-camera-access-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;margin-top:64px;text-align:center}.static-timer-loading{margin:0}.static-timer-permission-hint{margin:0;font-size:12px;color:var(--text-muted);opacity:.9}.static-timer-loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0009;color:var(--text-primary);font-size:14px}.static-timer-start-btn,.static-timer-stop-btn{padding:10px 20px;font-size:14px;font-weight:600;color:var(--accent-primary);background:var(--bg-secondary);border:1px solid var(--border-secondary);border-radius:8px;cursor:pointer}.static-timer-start-btn:hover,.static-timer-stop-btn:hover{background:var(--bg-hover)}.static-timer-result-label{margin:0;font-size:14px;color:var(--text-secondary);text-align:center}.static-timer-recorded-video-wrap{width:100%;aspect-ratio:4 / 3;max-height:480px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.static-timer-recorded-video-inner{flex:1;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center}.static-timer-recorded-video{width:100%;height:100%;object-fit:contain;transform:scaleX(-1)}.analysis-result-video{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transform:none}.analysis-result-video-stage{position:absolute;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.static-timer-recorded-video-controls{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-secondary);border-top:1px solid var(--border-primary)}.static-timer-recorded-video-error{padding:10px 12px;border-top:1px solid var(--border-primary);background:#fb850014;color:var(--text-secondary);font-size:12px}.static-timer-recorded-video-control-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center}.static-timer-recorded-video-control-btn:hover{color:var(--accent-primary)}.static-timer-recorded-video-seek{flex:1;min-width:0;height:6px;-webkit-appearance:none;appearance:none;background:var(--bg-tertiary);border-radius:3px}.static-timer-recorded-video-seek::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent-primary);cursor:pointer}.static-timer-recorded-video-seek::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent-primary);cursor:pointer;border:none}.static-timer-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.static-timer-action-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;font-size:14px;font-weight:600;color:var(--text-primary);background:var(--bg-tertiary);border:none;border-radius:8px;cursor:pointer}.static-timer-action-btn:hover:not(:disabled){background:var(--bg-hover)}.static-timer-action-btn:disabled{opacity:.6;cursor:not-allowed}.static-timer-action-btn.static-timer-action-btn--saved,.static-timer-action-btn.static-timer-action-btn--saved:disabled{opacity:1;cursor:default;background:#166534;color:#dcfce7}.static-timer-action-btn.static-timer-action-btn--saved:hover:disabled{background:#166534;color:#dcfce7}.static-timer-action-icon{padding:10px}.static-timer-share-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1700;padding:20px}.static-timer-share-modal{background:var(--bg-secondary);width:100%;max-width:400px;border-radius:16px;padding:24px;border:none;box-shadow:var(--shadow-xl)}.static-timer-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1100;padding:20px}.static-timer-modal{background:var(--bg-secondary);width:100%;max-width:400px;border-radius:16px;padding:24px;border:none;box-shadow:var(--shadow-xl)}.static-timer-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.static-timer-modal-title{margin:0;font-size:20px;font-weight:700;color:var(--text-primary)}.static-timer-modal-close{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;border-radius:8px}.static-timer-modal-close:hover{background:var(--bg-hover)}.static-timer-modal-body p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.5}.static-timer-popup-info-overlay{position:fixed;top:0;left:0;right:0;bottom:var(--bottom-nav-bottom);background:#000000bf;display:flex;align-items:stretch;justify-content:center;z-index:1590;padding:0}.static-timer-popup-info-modal{width:100%;height:100%;max-width:none;border-radius:0;padding:0;border:none;box-shadow:none;background:var(--bg-secondary);display:flex;flex-direction:column;overflow:hidden}.static-timer-popup-info-header{height:calc(64px + env(safe-area-inset-top));min-height:calc(64px + env(safe-area-inset-top));padding:calc(env(safe-area-inset-top) + 8px) 16px 12px 12px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border-primary);flex-shrink:0}.static-timer-popup-info-back{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:0;border-radius:10px;-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center;width:40px;height:40px}.static-timer-popup-info-back:hover{background:var(--bg-hover)}.static-timer-popup-info-title{margin:0;flex:1;text-align:center;font-size:16px;font-weight:800;color:var(--text-primary);padding-bottom:0;line-height:1.1}.static-timer-popup-info-step-counter{font-size:12px;color:var(--text-tertiary);font-weight:600;padding-bottom:0;line-height:1.1}.static-timer-popup-info-carousel{flex:1;overflow:hidden;display:flex;flex-direction:column}.static-timer-popup-info-step{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 20px 8px;text-align:center}.static-timer-popup-info-step-title{margin:0 0 10px;font-size:18px;font-weight:900;color:var(--text-primary)}.static-timer-popup-info-step-text{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.6}.static-timer-popup-info-step-text a{color:var(--color-blue);text-decoration:underline;text-underline-offset:2px;font-weight:800}.static-timer-popup-info-step-text a:hover{color:var(--color-blue-light)}.static-timer-popup-info-step-image{margin-top:14px;width:100%;max-width:260px;height:auto;object-fit:contain;border-radius:14px;box-shadow:0 10px 30px #00000059}.static-timer-how-it-works-body{flex:1;overflow-y:auto;padding:18px 20px 24px}.static-timer-how-it-works-card{flex-direction:column;align-items:stretch;gap:10px;--dl-btn-bg: rgba(124, 58, 237, .18);--dl-btn-border: rgba(124, 58, 237, .65);--dl-btn-accent: #a855f7}.static-timer-how-it-works-card__header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}.static-timer-how-it-works-card__title{font-size:20px;font-weight:650;color:var(--text-primary);line-height:1.1}.static-timer-how-it-works-card__chevron{transition:transform .15s ease;flex-shrink:0;color:var(--dl-btn-accent)}.static-timer-how-it-works-card__chevron--open{transform:rotate(180deg)}.static-timer-how-it-works-card__body{padding-top:6px}.static-timer-how-it-works-step{margin-bottom:20px;text-align:left}.static-timer-how-it-works-step:last-child{margin-bottom:0}.static-timer-how-it-works-step .static-timer-popup-info-step-title{margin-bottom:6px}.static-timer-popup-info-dots{display:flex;gap:8px;justify-content:center;padding:8px 0 14px}.static-timer-popup-info-dot{width:8px;height:8px;border-radius:999px;background:#f7f9fc40}.static-timer-popup-info-dot.active{background:var(--color-blue);box-shadow:0 0 0 3px #1cb0f61f}.static-timer-popup-info-footer{padding:14px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--border-primary);flex-shrink:0;background:var(--bg-secondary);display:flex;justify-content:space-between;gap:12px;align-items:center}.static-timer-share-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.static-timer-share-header h3{margin:0;font-size:20px;font-weight:700}.static-timer-share-close{background:none;border:none;color:var(--text-secondary);cursor:pointer}.static-timer-share-body{display:flex;flex-direction:column;gap:20px}.static-timer-share-label{display:block;margin-bottom:8px;font-size:14px;color:var(--text-secondary)}.static-timer-share-tier-tabs.skills-tabs{align-items:stretch}.static-timer-share-tier-tabs.skills-tabs .static-timer-share-tier-tab-label{display:inline-flex;align-items:center;justify-content:center;gap:5px;line-height:1}.static-timer-share-tier-tabs.skills-tabs .skills-tab{display:flex;flex:1 1 0;gap:0;line-height:1;padding:0 12px;min-height:32px;box-sizing:border-box;align-items:center;justify-content:center;font-weight:1000}.static-timer-share-tier-tabs.skills-tabs .skills-tab.active{font-weight:1000;color:var(--text-on-accent)}.static-timer-share-tier-tabs .static-timer-share-tier-tab-icon-slot{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;min-height:14px;flex-shrink:0}.static-timer-share-tier-tabs .static-timer-share-tier-tab-icon-slot svg{display:block;width:14px;height:14px}.static-timer-share-tier-tabs .skills-tab--disabled{opacity:.5;cursor:not-allowed}.static-timer-share-channels{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:180px;overflow-y:auto;padding:4px}.static-timer-share-channel-btn{padding:8px;border-radius:8px;border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.static-timer-share-channel-btn:hover{background:var(--bg-hover);color:var(--text-secondary);transform:none;box-shadow:none}.static-timer-share-channel-btn.active{border-color:var(--accent-primary);background:var(--accent-primary-10);color:var(--accent-primary)}.static-timer-share-success{color:var(--success);text-align:center;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;background:#22c55e1a;border-radius:8px}.static-timer-view-holds{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;margin:16px 16px 0;align-self:center;padding:10px 16px;font-size:13px;font-weight:600;color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:999px;cursor:pointer;transition:color .2s,background .2s,border-color .2s}.static-timer-view-holds:hover{color:var(--accent-primary);background:var(--bg-tertiary);border-color:var(--border-secondary)}.static-timer-view-holds span{line-height:1}.static-timer-holds-fab{position:fixed;left:0;right:0;bottom:calc(var(--bottom-nav-bottom) + 12px);margin:0 auto;width:fit-content;z-index:120;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;border:none;background:var(--color-violet);color:var(--text-primary);font-size:14px;font-weight:600;cursor:pointer;box-shadow:var(--shadow-lg);transition:transform .2s ease;-webkit-tap-highlight-color:transparent}.static-timer-holds-fab:hover,.static-timer-holds-fab:focus,.static-timer-holds-fab:focus-visible,.static-timer-holds-fab:active{background-color:var(--color-violet);color:var(--text-primary);box-shadow:var(--shadow-lg)}.static-timer-holds-fab:focus-visible{outline:2px solid color-mix(in srgb,var(--color-violet-light) 65%,white);outline-offset:2px}.static-timer-holds-fab.open{transform:translateY(-2px)}.static-timer-holds-fab svg{transition:transform .2s ease}.static-timer-holds-fab.open svg{transform:rotate(180deg)}.static-timer-holds-panel{position:fixed;left:16px;right:16px;bottom:calc(var(--bottom-nav-bottom) + 64px);max-width:960px;margin:0 auto;max-height:min(55vh,480px);background:var(--bg-secondary);border:none;border-radius:18px;box-shadow:0 20px 40px #00000059;z-index:119;display:flex;flex-direction:column;overflow:hidden}.static-timer-holds-panel-header{display:flex;align-items:center;padding:14px 16px;background:var(--bg-elevated)}.static-timer-holds-panel-header h3{margin:0;font-size:15px;font-weight:600;color:var(--text-primary)}.static-timer-holds-panel-body{padding:12px 12px 16px;overflow-y:auto;-webkit-overflow-scrolling:touch}.static-timer-completed-section{flex:0 0 auto;margin-top:16px;padding:0 16px 24px;display:flex;flex-direction:column;gap:12px}.static-timer-completed-title{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.overlay-header{height:50px;min-height:50px;padding:0 20px;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary);display:flex;align-items:center;gap:12px;flex-shrink:0}.overlay-header-back{background:none;border:none;font-size:18px;color:var(--text-primary);cursor:pointer;padding:4px 8px;flex-shrink:0}.overlay-header-title{margin:0;font-size:15px;font-weight:700;color:var(--text-primary);flex:1;min-width:0}.overlay-header-subtitle{display:block;font-size:11px;font-weight:400;color:var(--text-secondary);margin-top:1px}.overlay-header-action{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .2s}.overlay-header-action:hover{color:var(--error)}.static-timer-hold-overlay-header{height:calc(50px + env(safe-area-inset-top));min-height:calc(50px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 20px 0;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary);display:flex;align-items:center;gap:12px;flex-shrink:0}.static-timer-hold-overlay-back{background:none;border:none;font-size:18px;color:var(--text-primary);cursor:pointer;padding:4px 8px;flex-shrink:0}.static-timer-hold-overlay-title{margin:0;font-size:15px;font-weight:700;color:var(--text-primary);flex:1}.static-timer-hold-overlay-delete{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .2s}.static-timer-hold-overlay-delete:hover{color:var(--error)}.analysis-result-video-wrap{min-height:min(59vh,500px);max-height:min(75vh,560px)}body.form-analysis-modal-open .app-content,body.profile-hold-modal-open .app-content{overflow:hidden!important}body.profile-hold-modal-open .profile-saved-section-tab-switch{visibility:hidden;pointer-events:none}.form-analysis-overlay-header{height:calc(50px + env(safe-area-inset-top));min-height:calc(50px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 20px 0;border-bottom:none;background:var(--bg-secondary);display:flex;align-items:center;gap:12px;flex-shrink:0}.form-analysis-overlay-back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;font-size:18px;color:var(--text-primary);cursor:pointer;padding:10px 12px;margin:-6px 0 -6px -12px;flex-shrink:0;-webkit-tap-highlight-color:transparent}.form-analysis-overlay-back-label{font-size:16px;font-weight:600}.form-analysis-overlay-tabs{padding:12px 20px;border-bottom:none;background:var(--bg-secondary);display:flex;justify-content:center}.static-hold-overlay-timer-above-video{width:100%;display:flex;justify-content:center;margin-bottom:4px}.static-hold-overlay-timer-above-video .static-hold-overlay-timer{font-size:clamp(2.75rem,8vw,3.75rem);font-weight:800;min-height:3.25rem;line-height:1.05}.form-analysis-overlay .page-card,.static-timer-hold-overlay .page-card,.form-analysis-overlay .static-timer-recorded-video-wrap{border:none}.form-analysis-overlay .static-timer-recorded-video-controls,.form-analysis-overlay .static-timer-recorded-video-error{border-top:none}.static-timer-hold-overlay-header{border-bottom:none}.form-analysis-overlay-title-wrap{flex:1;min-width:0}.form-analysis-overlay-title{display:block;margin:0;font-size:15px;font-weight:700;color:var(--text-primary)}.form-analysis-overlay-subtitle{display:block;font-size:11px;color:var(--text-secondary);margin-top:1px}.static-hold-result-header-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.static-timer-hold-overlay .static-hold-result-header,.form-analysis-overlay--saved-analysis .static-hold-result-header{position:relative;justify-content:space-between}.static-timer-hold-overlay .static-hold-result-header .form-analysis-overlay-back,.form-analysis-overlay--saved-analysis .static-hold-result-header .form-analysis-overlay-back{position:relative;z-index:2}.static-timer-hold-overlay .static-hold-result-header-end,.form-analysis-overlay--saved-analysis .static-hold-result-header-end{position:relative;z-index:2;flex-shrink:0;min-width:48px;max-width:min(42vw,132px);display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:2px}.static-hold-result-header-date{font-size:11px;font-weight:600;color:var(--text-secondary);text-align:right;line-height:1.25;max-width:100%;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.static-hold-result-header-datetime{display:flex;flex-direction:column;align-items:flex-end;gap:1px;line-height:1.15;max-width:100%}.static-hold-result-header-datetime .static-hold-result-header-date{line-height:1.2}.static-hold-result-header-time{font-size:10px;font-weight:600;color:var(--text-tertiary);text-align:right;line-height:1.2;max-width:100%;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.static-timer-hold-overlay .static-hold-result-title-center,.form-analysis-overlay--saved-analysis .static-hold-result-title-center{position:absolute;left:20px;right:20px;top:env(safe-area-inset-top);bottom:0;display:flex;align-items:center;justify-content:center;pointer-events:none;flex:none;min-width:0}.static-timer-hold-overlay .static-hold-result-title-center .static-hold-result-header-title,.form-analysis-overlay--saved-analysis .static-hold-result-title-center .static-hold-result-header-title{pointer-events:auto;max-width:100%;text-align:center;font-size:clamp(1.2rem,4.5vw,1.5rem);font-weight:700;line-height:1.2}.test-page{padding:20px;font-family:inherit;font-size:16px;line-height:1.5;color:#000!important;background:#fff}.test-page *{color:#000!important}.test-page .button-primary{color:#fff!important;background:#000!important}.test-page .button-primary:disabled{color:#000!important;background:#ccc!important}.test-page h1,.test-page h2,.test-page h3,.test-page p,.test-page label,.test-page span,.test-page small{color:#000!important}.test-page input,.test-page select{color:#000!important;background:#fff!important}.test-page .error-message{color:#000!important;background:#fcc!important}.test-header{margin-bottom:20px}.test-header h1{margin:0 0 10px;font-size:24px;font-weight:700}.test-header p{margin:0;font-size:14px}.test-content{display:flex;gap:30px;flex-wrap:wrap}.test-settings{padding:20px;border:1px solid #ccc;min-width:300px;flex:0 0 350px}.test-settings h2{margin:0 0 15px;font-size:18px;font-weight:700}.setting-group{margin-bottom:15px}.setting-group label{display:block;margin-bottom:5px;font-weight:700;font-size:14px}.setting-group input,.setting-group select{padding:5px;border:1px solid #000;font-size:14px;width:100%;box-sizing:border-box}.setting-group small{display:block;font-size:12px;margin-top:3px;color:#666}.setting-actions{margin-top:20px}.button{padding:8px 16px;border:1px solid #000;font-size:14px;cursor:pointer;margin-right:10px;margin-bottom:10px;background:#fff}.button-primary{background:#000;color:#fff;border-color:#000}.button-primary:hover:not(:disabled){background:#333}.button-primary:disabled{background:#ccc;border-color:#ccc;color:#000;cursor:not-allowed}.button-secondary{background:#fff;color:#000}.button-secondary:hover{background:#f0f0f0}.error-message{margin-top:15px;padding:10px;background:#fcc;border:1px solid #ff0000;font-size:14px}.test-preview{padding:20px;border:1px solid #ccc;flex:1;min-width:400px}.test-preview h2{margin:0 0 15px;font-size:18px;font-weight:700}.video-container{position:relative;margin-bottom:20px;display:inline-block;width:100%;max-width:800px}.video-container video{display:block;width:100%;height:auto}.video-container canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.pose-stats{margin-top:20px;padding:15px;border:1px solid #ccc}.pose-stats h3{margin:0 0 10px;font-size:16px;font-weight:700}.pose-stats p{margin:5px 0;font-size:14px}@media(max-width:1024px){.test-content{flex-direction:column}.test-settings{flex:1 1 auto}}.onboarding-page{min-height:100%;height:100%;width:100%;display:flex;align-items:stretch;justify-content:stretch;padding:0;background:radial-gradient(ellipse 120% 80% at 50% -20%,rgba(34,197,94,.12),transparent 55%),#070b15}.onboarding-card{width:100%;min-width:0;min-height:100%;height:100%;border-radius:0;border:none;background:transparent;box-shadow:none;padding:26px 24px calc(24px + env(safe-area-inset-bottom));display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px}.onboarding-header{display:flex;flex-direction:column;gap:12px;min-width:0;max-width:100%}.onboarding-content{min-height:0;min-width:0;width:100%;max-width:100%;overflow-x:hidden;overflow-y:auto}.onboarding-step{min-width:0;width:100%;max-width:100%;box-sizing:border-box}.onboarding-content>.onboarding-step:not(.onboarding-step--complete){max-width:560px;width:100%;margin-left:auto;margin-right:auto}.onboarding-progress{height:12px;border-radius:999px;background:color-mix(in srgb,var(--color-green, rgb(0, 173, 66)) 18%,rgba(15,23,42,.85));box-shadow:inset 0 1px 2px #0003;overflow:hidden}.onboarding-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--color-green, rgb(0, 173, 66)) 88%,#14532d),color-mix(in srgb,var(--color-green-light, #4ade80) 75%,var(--color-green, rgb(0, 173, 66))));transition:width .22s ease}.onboarding-step-label{margin:0;color:#a5b4fc;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.onboarding-step h1,.onboarding-step h2{margin:0;color:#f8fafc;line-height:1.2}.onboarding-step h1{font-size:clamp(30px,8vw,46px);font-weight:900}.onboarding-step h2{font-size:clamp(24px,6vw,34px);font-weight:800}.onboarding-step p{margin:10px 0 0;color:#dbe4f4;line-height:1.45}.onboarding-option-grid{margin-top:12px;display:grid;grid-template-columns:1fr;gap:14px}.onboarding-option-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.onboarding-option{--onboarding-option-bg: var(--bg-tertiary);--onboarding-option-border: #cbd5e1;--onboarding-option-press-depth: 4px;width:100%;border:2px solid var(--onboarding-option-border);background:var(--onboarding-option-bg);color:var(--text-primary);border-radius:16px;box-shadow:0 var(--onboarding-option-press-depth) 0 0 var(--onboarding-option-border);padding:12px 16px;text-align:left;text-transform:capitalize;font-weight:650;font-size:16px;transition:none;-webkit-tap-highlight-color:transparent}.onboarding-option:hover,.onboarding-option:focus,.onboarding-option:focus-visible{background:var(--onboarding-option-bg);border-color:var(--onboarding-option-border);box-shadow:0 var(--onboarding-option-press-depth) 0 0 var(--onboarding-option-border);transform:none;outline:none}.onboarding-option:active{background:var(--onboarding-option-bg);box-shadow:0 0 0 0 var(--onboarding-option-border);transform:translateY(var(--onboarding-option-press-depth))}.onboarding-option--selected{--onboarding-option-border: #22c55e;--onboarding-option-bg: color-mix(in srgb, #22c55e 14%, var(--bg-tertiary));color:#86efac}.onboarding-option--checkbox{margin-top:16px;display:flex;align-items:center;text-transform:none;position:relative;cursor:pointer}.onboarding-option--checkbox:focus-within{outline:none}.onboarding-option-checkbox-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.onboarding-option-checkbox-input:focus,.onboarding-option-checkbox-input:focus-visible{outline:none;box-shadow:none}.onboarding-option-checkbox-label{flex:1;min-width:0;font-weight:650;font-size:16px;line-height:1.35;color:inherit}.onboarding-option-checkbox-check{flex-shrink:0;margin-left:8px;font-size:22px;font-weight:900;line-height:1;color:#86efac;-webkit-user-select:none;user-select:none}.onboarding-option--checkbox.onboarding-option--selected .onboarding-option-checkbox-label strong{color:inherit}.onboarding-range-label{display:block;margin-top:12px;margin-bottom:6px;color:#cbd5e1;font-size:15px}.onboarding-range-control{width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding-left:calc(clamp(36px,12vw,52px) + env(safe-area-inset-left,0px));padding-right:12px;margin-left:0}.onboarding-range-control input[type=range]{--onboarding-range-track-h: 12px;--onboarding-range-thumb: 32px;display:block;width:100%;max-width:100%;min-width:0;max-inline-size:100%;box-sizing:border-box;margin:0;padding:0;height:56px;border:none;outline:none;background:transparent;box-shadow:none;-webkit-appearance:none;appearance:none;accent-color:var(--color-green)}.onboarding-range-control input[type=range]:focus-visible{outline:2px solid color-mix(in srgb,var(--color-green) 70%,white);outline-offset:3px;border-radius:6px}.onboarding-range-control input[type=range]::-webkit-slider-runnable-track{height:var(--onboarding-range-track-h);border:none;border-radius:999px;box-shadow:none;background:#f7f9fc24}.onboarding-range-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:var(--onboarding-range-thumb);height:var(--onboarding-range-thumb);margin-top:calc((var(--onboarding-range-track-h) - var(--onboarding-range-thumb)) / 2);border:none;border-radius:50%;box-shadow:0 1px 4px #00000059;background:var(--color-green);cursor:pointer}.onboarding-range-control input[type=range]::-moz-range-track{height:var(--onboarding-range-track-h);border:none;border-radius:999px;box-shadow:none;background:#f7f9fc24}.onboarding-range-control input[type=range]::-moz-range-thumb{width:var(--onboarding-range-thumb);height:var(--onboarding-range-thumb);border:none;border-radius:50%;box-shadow:0 1px 4px #00000059;background:var(--color-green);cursor:pointer}.onboarding-step--open-webapp p{margin-top:12px}.onboarding-step--camera .onboarding-camera-tabs,.onboarding-step--webapp .onboarding-webapp-tabs{margin-top:14px}.onboarding-webapp-tabs .skills-tab{font-size:12px;padding-left:6px;padding-right:6px;white-space:nowrap}@media(min-width:400px){.onboarding-webapp-tabs .skills-tab{font-size:13px;padding-left:8px;padding-right:8px}}.onboarding-instruction-list{margin:14px 0 0;padding-left:1.35rem;color:#dbe4f4;line-height:1.55;display:flex;flex-direction:column;gap:10px}.onboarding-instruction-list li{padding-left:4px}.onboarding-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:0;padding-top:10px;background:#070b15}.onboarding-back-button{appearance:none;border:1px solid rgba(148,163,184,.55);background:transparent;color:#cbd5e1;border-radius:12px;padding:12px 16px;font-size:15px;font-weight:700;line-height:1;outline:none;box-shadow:none;-webkit-tap-highlight-color:transparent}.onboarding-back-button:hover,.onboarding-back-button:active,.onboarding-back-button:focus,.onboarding-back-button:focus-visible{background:transparent;color:#cbd5e1;border-color:#94a3b88c;outline:none;box-shadow:none}.onboarding-back-button:disabled{opacity:.5}.onboarding-error{margin:0;color:#fca5a5;font-size:14px;font-weight:600}.onboarding-card--final .onboarding-content{display:flex;flex-direction:column;justify-content:center}.onboarding-step--complete{display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px 12px 24px;max-width:420px;margin-left:auto;margin-right:auto}.onboarding-complete-badge{width:88px;height:88px;border-radius:50%;display:grid;place-items:center;margin-bottom:22px;background:color-mix(in srgb,#22c55e 18%,rgba(15,23,42,.6));border:3px solid #4ade80;box-shadow:0 0 0 1px #4ade8059,0 12px 40px #00000059}.onboarding-complete-check{font-size:44px;font-weight:900;color:#86efac;line-height:1}.onboarding-complete-title{font-size:clamp(28px,7vw,36px);font-weight:900;letter-spacing:-.02em;color:#f8fafc;margin:0}.onboarding-complete-subtitle{margin:14px 0 0;font-size:16px;line-height:1.5;color:#cbd5e1;max-width:34ch}.onboarding-error--inline{margin-top:16px;text-align:center;max-width:34ch}.onboarding-complete-cta-wrap{margin-top:22px;width:100%;display:flex;justify-content:center}.onboarding-final-cta.app-button{width:100%;max-width:min(100%,280px);white-space:normal;line-height:1.25;padding:16px 20px;font-size:15px;letter-spacing:.04em}@media(min-width:400px){.onboarding-final-cta.app-button{max-width:300px}}@media(max-width:520px){.onboarding-card{padding:20px 18px calc(18px + env(safe-area-inset-bottom))}.onboarding-option-grid--two{grid-template-columns:1fr}.onboarding-actions{flex-direction:column;padding-top:8px}.onboarding-actions .app-button,.onboarding-back-button{width:100%}}
