@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes glowPulse{0%,to{filter:drop-shadow(0 0 20px var(--accent-glow))}50%{filter:drop-shadow(0 0 40px var(--accent-glow))}}@keyframes messageAppear{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translate(0,0) scale(1)}25%{transform:translate(20px,-30px) scale(1.05)}50%{transform:translate(-10px,20px) scale(.95)}75%{transform:translate(-30px,-10px) scale(1.02)}}@keyframes glitchText{0%,90%,to{opacity:1;transform:translate(0)}92%{opacity:.8;transform:translate(-2px,1px)}94%{opacity:.8;transform:translate(2px,-1px)}96%{opacity:.8;transform:translate(-1px,2px)}}@keyframes trailFloat{0%,to{transform:translate(0,0) rotate(0deg)}25%{transform:translate(20px,-30px) rotate(5deg)}50%{transform:translate(-10px,20px) rotate(-3deg)}75%{transform:translate(-30px,-10px) rotate(2deg)}}@keyframes progress-slide{0%{transform:translateX(-100%)}to{transform:translateX(400%)}}@keyframes lp-marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes notificationPulse{0%,to{box-shadow:0 0 0 0 var(--error-pulse)}50%{box-shadow:0 0 0 6px transparent}}@keyframes msg-slide-down{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}:root{--blue-50:#eff6ff;--blue-900:#0a1628;--blue-800:#0f2444;--blue-700:#1a3a5c;--blue-600:#1e4d7b;--blue-500:#2563eb;--blue-400:#3b82f6;--blue-300:#60a5fa;--blue-200:#93c5fd;--blue-100:#dbeafe;--accent:#00d4ff;--accent-glow:rgba(0, 212, 255, 0.4);--error:#dc3545;--error-bg-subtle:rgba(255, 100, 100, 0.05);--error-bg:rgba(255, 100, 100, 0.1);--error-bg-hover:rgba(255, 100, 100, 0.15);--error-bg-active:rgba(255, 100, 100, 0.25);--error-border:rgba(255, 100, 100, 0.2);--error-border-strong:rgba(255, 100, 100, 0.3);--error-border-emphasis:rgba(255, 107, 107, 0.5);--error-bg-import:rgba(255, 107, 107, 0.05);--error-bg-import-hover:rgba(255, 107, 107, 0.1);--warning-orange-bg:rgba(255, 152, 0, 0.1);--warning-orange-border:rgba(255, 152, 0, 0.3);--warning-orange-text:#f59e0b;--warning-yellow-bg:rgba(255, 193, 7, 0.15);--warning-yellow-border:rgba(255, 193, 7, 0.3);--warning-yellow-text:rgba(255, 193, 7, 0.9);--success-bg-subtle:rgba(34, 197, 94, 0.05);--success-bg:rgba(34, 197, 94, 0.2);--success-bg-hover:rgba(74, 222, 128, 0.25);--success-border:rgba(34, 197, 94, 0.4);--success-text:#4ade80;--info-bg:rgba(0, 180, 216, 0.2);--info-bg-hover:rgba(0, 180, 216, 0.3);--info-border:rgba(0, 180, 216, 0.4);--info-text:#22d3ee;--warning-bg:rgba(251, 191, 36, 0.2);--warning-bg-hover:rgba(251, 191, 36, 0.3);--warning-border:rgba(251, 191, 36, 0.4);--warning-text:#fbbf24;--error-text:#f87171;--purple-bg:rgba(139, 92, 246, 0.15);--purple-bg-hover:rgba(139, 92, 246, 0.25);--purple-border:rgba(139, 92, 246, 0.35);--purple-text:#a78bfa;--blue-bg-subtle:rgba(96, 165, 250, 0.05);--blue-bg:rgba(96, 165, 250, 0.15);--blue-border:rgba(96, 165, 250, 0.3);--blue-text:#60a5fa;--sleep-deep:#6366f1;--sleep-light:#a78bfa;--sleep-rem:#22d3ee;--sleep-awake:#f59e0b;--sleep-resp:#f472b6;--white:#ffffff;--text-muted:rgba(255, 255, 255, 0.6);--font-display:'Bebas Neue', sans-serif;--font-body:'Outfit', sans-serif;--font-mono:'JetBrains Mono', 'Fira Code', monospace;--bg:var(--on-primary);--bg-primary:var(--blue-900);--bg-secondary:var(--blue-800);--surface:rgba(255, 255, 255, 0.03);--surface-elevated:rgba(255, 255, 255, 0.05);--surface-hover:rgba(255, 255, 255, 0.08);--surface-popover:var(--blue-800);--border:rgba(255, 255, 255, 0.1);--border-subtle:rgba(255, 255, 255, 0.06);--border-strong:rgba(255, 255, 255, 0.15);--text:var(--white);--on-primary:var(--white);--input-bg:rgba(255, 255, 255, 0.05);--input-border:rgba(255, 255, 255, 0.1);--gradient-start:var(--blue-600);--gradient-mid:var(--blue-700);--gradient-end:var(--blue-900);--logo-gradient-start:var(--white);--nav-bg:rgba(10, 22, 40, 0.95);--nav-border:rgba(255, 255, 255, 0.06);--overlay-indicator:rgba(255, 255, 255, 0.4);--overlay-indicator-hover:rgba(255, 255, 255, 0.6);--highlight-on-color:rgba(255, 255, 255, 0.4);--overlay-dark:rgba(0, 0, 0, 0.2);--overlay-darker:rgba(0, 0, 0, 0.7);--map-overlay-bg:rgba(10, 22, 40, 0.88);--map-overlay-text:#ffffff;--map-overlay-text-muted:rgba(255, 255, 255, 0.75);--map-track-casing:rgba(0, 0, 0, 0.55);--accent-shadow:rgba(0, 212, 255, 0.3);--accent-focus-ring:rgba(0, 212, 255, 0.1);--blue-shadow:rgba(37, 99, 235, 0.4);--purple-shadow:rgba(139, 92, 246, 0.4);--purple-ring:rgba(139, 92, 246, 0.3);--error-pulse:rgba(239, 68, 68, 0.4);--readiness-ready-gradient:linear-gradient(to top, rgba(74, 222, 128, 0.3), rgba(74, 222, 128, 0.6));--readiness-moderate-gradient:linear-gradient(to top, rgba(251, 191, 36, 0.3), rgba(251, 191, 36, 0.6));--readiness-light-gradient:linear-gradient(to top, rgba(251, 146, 60, 0.3), rgba(251, 146, 60, 0.6));--readiness-rest-gradient:linear-gradient(to top, rgba(248, 113, 113, 0.3), rgba(248, 113, 113, 0.6));--spectrum-red:#ef4444;--spectrum-orange:#f59e0b;--spectrum-yellow:#fbbf24;--spectrum-lime:#84cc16;--spectrum-green:#4ade80;--page-bg:radial-gradient(ellipse 80% 50% at 50% -20%, var(--gradient-start), transparent),
        radial-gradient(ellipse 60% 40% at 80% 100%, var(--gradient-mid), transparent),
        var(--bg-primary);--page-bg-immersive:radial-gradient(ellipse 80% 50% at 50% -20%, var(--gradient-start), transparent),
        radial-gradient(ellipse 60% 40% at 80% 100%, var(--gradient-mid), transparent),
        radial-gradient(ellipse 40% 30% at 10% 80%, var(--gradient-end), transparent),
        linear-gradient(180deg, var(--bg-primary) 0%, var(--bg-secondary) 100%);--cta-gradient:linear-gradient(135deg, var(--blue-500) 0%, #1749d4 100%);--on-cta:var(--white);--coach-wash-strong:rgba(245, 158, 11, 0.2);--coach-wash:rgba(217, 119, 6, 0.15);--coach-wash-weak:rgba(180, 83, 9, 0.1);--coach-fill-start:rgba(245, 158, 11, 0.3);--coach-fill-end:rgba(217, 119, 6, 0.25);--coach-shadow:rgba(245, 158, 11, 0.4);--garmin-blue:#007cc3;--garmin-btn:#006ba7;--garmin-btn-hover:#005a8f;--garmin-blue-text:#4aa9e0;--garmin-tint:rgba(0, 124, 195, 0.1);--garmin-tint-weak:rgba(0, 124, 195, 0.05);--garmin-tint-border:rgba(0, 124, 195, 0.5);--on-accent:var(--blue-900);--on-danger:var(--blue-900);--text-on-hero:var(--blue-100);--text-accent-soft:var(--blue-200);--text-accent:var(--blue-300);--text-accent-strong:var(--blue-400);--sport-badge-bg:rgba(37, 99, 235, 0.2);--sport-badge-border:rgba(37, 99, 235, 0.3);--sport-badge-text:var(--blue-300);--sport-run-bg:rgba(239, 68, 68, 0.15);--sport-run-border:rgba(239, 68, 68, 0.3);--sport-run-text:#fca5a5;--sport-ride-bg:rgba(34, 197, 94, 0.15);--sport-ride-border:rgba(34, 197, 94, 0.3);--sport-ride-text:#86efac;--sport-swim-bg:rgba(6, 182, 212, 0.15);--sport-swim-border:rgba(6, 182, 212, 0.3);--sport-swim-text:#67e8f9;--sport-walk-bg:rgba(234, 179, 8, 0.15);--sport-walk-border:rgba(234, 179, 8, 0.3);--sport-walk-text:#fde047;--sport-strength-bg:rgba(168, 85, 247, 0.15);--sport-strength-border:rgba(168, 85, 247, 0.3);--sport-strength-text:#d8b4fe;--sport-snow-bg:rgba(147, 197, 253, 0.15);--sport-snow-border:rgba(147, 197, 253, 0.3);--sport-snow-text:#bfdbfe}[data-theme=light]{--accent:#1e40af;--accent-glow:rgba(30, 64, 175, 0.25);--error-bg-subtle:rgba(220, 38, 38, 0.06);--error-bg:rgba(220, 38, 38, 0.1);--error-bg-hover:rgba(220, 38, 38, 0.14);--error-bg-active:rgba(220, 38, 38, 0.2);--error-border:rgba(220, 38, 38, 0.25);--error-border-strong:rgba(220, 38, 38, 0.35);--error-border-emphasis:rgba(220, 38, 38, 0.5);--error-bg-import:rgba(220, 38, 38, 0.06);--error-bg-import-hover:rgba(220, 38, 38, 0.1);--warning-orange-bg:rgba(217, 119, 6, 0.1);--warning-orange-border:rgba(217, 119, 6, 0.35);--warning-orange-text:#b45309;--warning-yellow-bg:rgba(180, 83, 9, 0.12);--warning-yellow-border:rgba(180, 83, 9, 0.35);--warning-yellow-text:#92400e;--success-bg-subtle:rgba(22, 163, 74, 0.06);--success-bg:rgba(22, 163, 74, 0.14);--success-bg-hover:rgba(22, 163, 74, 0.22);--success-border:rgba(22, 163, 74, 0.4);--success-text:#166534;--info-bg:rgba(8, 145, 178, 0.14);--info-bg-hover:rgba(8, 145, 178, 0.22);--info-border:rgba(8, 145, 178, 0.4);--info-text:#155e75;--warning-bg:rgba(202, 138, 4, 0.14);--warning-bg-hover:rgba(202, 138, 4, 0.22);--warning-border:rgba(202, 138, 4, 0.4);--warning-text:#854d0e;--error-text:#b91c1c;--purple-bg:rgba(124, 58, 237, 0.12);--purple-bg-hover:rgba(124, 58, 237, 0.2);--purple-border:rgba(124, 58, 237, 0.35);--purple-text:#6d28d9;--blue-bg-subtle:rgba(37, 99, 235, 0.05);--blue-bg:rgba(37, 99, 235, 0.12);--blue-border:rgba(37, 99, 235, 0.3);--blue-text:#1d4ed8;--sleep-deep:#4f46e5;--sleep-light:#7c3aed;--sleep-rem:#0891b2;--sleep-awake:#b45309;--sleep-resp:#db2777;--bg:var(--on-primary);--bg-primary:#fafbff;--bg-secondary:#f0f4f8;--surface:rgba(30, 58, 138, 0.04);--surface-elevated:rgba(30, 58, 138, 0.08);--surface-hover:rgba(30, 58, 138, 0.12);--surface-popover:#ffffff;--border:rgba(15, 23, 42, 0.1);--border-subtle:rgba(15, 23, 42, 0.06);--border-strong:rgba(15, 23, 42, 0.18);--text:#0f172a;--text-muted:#475569;--on-primary:var(--white);--input-bg:#ffffff;--input-border:#cbd5e1;--gradient-start:#e0f2fe;--gradient-mid:#f0f9ff;--gradient-end:#fafbff;--logo-gradient-start:#0c4a6e;--nav-bg:rgba(250, 251, 255, 0.92);--nav-border:rgba(15, 23, 42, 0.08);--overlay-indicator:rgba(15, 23, 42, 0.5);--overlay-indicator-hover:rgba(15, 23, 42, 0.65);--highlight-on-color:rgba(255, 255, 255, 0.9);--overlay-dark:rgba(0, 0, 0, 0.15);--overlay-darker:rgba(0, 0, 0, 0.5);--map-overlay-bg:rgba(15, 23, 42, 0.9);--map-overlay-text:#ffffff;--map-overlay-text-muted:rgba(255, 255, 255, 0.75);--map-track-casing:rgba(255, 255, 255, 0.9);--accent-shadow:rgba(30, 64, 175, 0.25);--accent-focus-ring:rgba(30, 64, 175, 0.15);--blue-shadow:rgba(37, 99, 235, 0.35);--purple-shadow:rgba(124, 58, 237, 0.35);--purple-ring:rgba(124, 58, 237, 0.3);--error-pulse:rgba(220, 38, 38, 0.4);--readiness-ready-gradient:linear-gradient(to top, rgba(22, 163, 74, 0.35), rgba(22, 163, 74, 0.6));--readiness-moderate-gradient:linear-gradient(to top, rgba(202, 138, 4, 0.35), rgba(202, 138, 4, 0.6));--readiness-light-gradient:linear-gradient(to top, rgba(217, 119, 6, 0.35), rgba(217, 119, 6, 0.6));--readiness-rest-gradient:linear-gradient(to top, rgba(220, 38, 38, 0.35), rgba(220, 38, 38, 0.6));--spectrum-red:#dc2626;--spectrum-orange:#b45309;--spectrum-yellow:#ca8a04;--spectrum-lime:#65a30d;--spectrum-green:#16a34a;--page-bg:radial-gradient(ellipse 90% 60% at 50% -15%, var(--gradient-start), transparent 60%),
        radial-gradient(ellipse 70% 50% at 85% 110%, var(--gradient-mid), transparent 55%),
        var(--bg-primary);--page-bg-immersive:radial-gradient(ellipse 90% 60% at 50% -15%, var(--gradient-start), transparent 60%),
        radial-gradient(ellipse 70% 50% at 85% 110%, var(--gradient-mid), transparent 55%),
        radial-gradient(ellipse 40% 30% at 10% 80%, var(--gradient-end), transparent 60%),
        linear-gradient(180deg, var(--bg-primary) 0%, var(--bg-secondary) 100%);--coach-wash-strong:rgba(217, 119, 6, 0.16);--coach-wash:rgba(180, 83, 9, 0.12);--coach-wash-weak:rgba(146, 64, 14, 0.08);--coach-fill-start:#92400e;--coach-fill-end:#7c2d12;--coach-shadow:rgba(180, 83, 9, 0.35);--on-accent:var(--white);--on-danger:var(--white);--garmin-blue-text:#005a8f;--garmin-tint:rgba(0, 124, 195, 0.12);--garmin-tint-weak:rgba(0, 124, 195, 0.06);--garmin-tint-border:rgba(0, 124, 195, 0.55);--text-on-hero:#334155;--text-accent-soft:#334155;--text-accent:#1d4ed8;--text-accent-strong:#1e40af;--sport-badge-bg:rgba(37, 99, 235, 0.12);--sport-badge-border:rgba(37, 99, 235, 0.3);--sport-badge-text:#1d4ed8;--sport-run-bg:rgba(239, 68, 68, 0.12);--sport-run-border:rgba(239, 68, 68, 0.35);--sport-run-text:#b91c1c;--sport-ride-bg:rgba(34, 197, 94, 0.12);--sport-ride-border:rgba(22, 163, 74, 0.35);--sport-ride-text:#166534;--sport-swim-bg:rgba(6, 182, 212, 0.12);--sport-swim-border:rgba(8, 145, 178, 0.35);--sport-swim-text:#0f766e;--sport-walk-bg:rgba(234, 179, 8, 0.12);--sport-walk-border:rgba(202, 138, 4, 0.35);--sport-walk-text:#854d0e;--sport-strength-bg:rgba(168, 85, 247, 0.12);--sport-strength-border:rgba(124, 58, 237, 0.35);--sport-strength-text:#6d28d9;--sport-snow-bg:rgba(147, 197, 253, 0.18);--sport-snow-border:rgba(59, 130, 246, 0.35);--sport-snow-text:#1d4ed8}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{height:100%;-webkit-text-size-adjust:100%}body{min-height:100%;font-family:var(--font-body);font-weight:400;line-height:1.6;color:var(--text);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.spin{animation:spin 1s linear infinite;display:inline-block}.page-with-nav,body{background:var(--page-bg)}.page-with-nav{min-height:100vh}.page-content{max-width:1400px;margin:0 auto;padding:2rem}@media (max-width:768px){.page-content{padding:1rem}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;padding:2rem;background:var(--page-bg-immersive)}.auth-content{text-align:center;z-index:10;max-width:480px;width:100%;animation:fadeInUp .8s ease-out}.auth-header,.legal-content section{margin-bottom:2.5rem}.brand-name{font-family:var(--font-display);font-size:clamp(4rem,16vw,8rem);font-weight:400;letter-spacing:.15em;line-height:.9;margin-bottom:.5rem;background:linear-gradient(135deg,var(--logo-gradient-start) 0%,var(--text-accent) 50%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 80px var(--accent-glow);animation:glowPulse 4s ease-in-out infinite}.brand-slogan{font-size:clamp(.9rem,2.5vw,1.25rem);font-weight:300;color:var(--text-accent-soft);letter-spacing:.25em;text-transform:uppercase;opacity:.85}.auth-title{font-family:var(--font-display);font-size:clamp(3rem,12vw,5rem);font-weight:400;letter-spacing:.15em;line-height:.9;margin-bottom:.75rem;background:linear-gradient(135deg,var(--logo-gradient-start) 0%,var(--text-accent) 50%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-subtitle{font-size:1rem;font-weight:400;color:var(--text-accent-soft);letter-spacing:.03em;margin-bottom:1.5rem}.auth-info-note{font-size:.85rem;color:var(--success-text);line-height:1.5;max-width:440px;margin:0 auto;padding:.75rem 1rem;background:var(--success-bg);border:1px solid var(--success-border);border-radius:8px;backdrop-filter:blur(10px)}.auth-card,.magic-link-form .input-group{background:var(--surface-elevated);border:1px solid var(--border)}.auth-card{border-radius:24px;padding:2.5rem;backdrop-filter:blur(20px)}.profile-card{max-width:500px;margin:0 auto}.magic-link-form .input-group{display:flex;gap:0;border-radius:60px;padding:6px;transition:all .3s ease;backdrop-filter:blur(10px)}.magic-link-form .input-group:focus-within{border-color:var(--accent);box-shadow:0 0 30px var(--accent-glow);background:var(--surface-hover)}.email-form #email-input,.magic-link-form #email-input{flex:1;background:0 0;border:0;padding:1rem 1.5rem;font-size:1rem;font-family:var(--font-body);color:var(--text);outline:0;min-width:0}.email-form #email-input::placeholder,.magic-link-form #email-input::placeholder{color:var(--text-muted)}.auth-divider,.submit-btn{display:flex;align-items:center}.submit-btn{background:var(--cta-gradient);color:var(--on-cta);border:0;padding:1rem 1.5rem;font-size:1.25rem;font-family:var(--font-body);font-weight:600;border-radius:60px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;min-width:56px;justify-content:center}.submit-btn:hover{transform:scale(1.05);box-shadow:0 10px 40px var(--blue-shadow)}.submit-btn:active{transform:scale(.98)}.submit-btn.loading .btn-text{opacity:0}.submit-btn.loading .btn-loader{opacity:1}.submit-btn .btn-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid transparent;border-top-color:var(--text);border-radius:50%;opacity:0;transition:opacity .2s ease;animation:spin .8s linear infinite}.auth-divider{gap:1rem;margin:1rem 0}.auth-divider::after,.auth-divider::before{content:"";flex:1;height:1px;background:var(--surface-hover)}.auth-divider span{font-size:.85rem;color:var(--text-muted);text-transform:lowercase}.oauth-buttons{display:flex;gap:.75rem;width:100%}.google-signin-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;flex:1;padding:.875rem 1.5rem;background:var(--white);border:0;border-radius:60px;font-family:var(--font-body);font-size:.95rem;font-weight:500;color:var(--blue-800);text-decoration:none;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px var(--overlay-dark)}.google-signin-btn:hover{background:var(--blue-50);transform:translateY(-2px);box-shadow:0 6px 20px var(--overlay-dark)}.google-signin-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.google-signin-btn:active{transform:translateY(0)}.google-signin-btn .google-icon{width:20px;height:20px;flex-shrink:0}.apple-signin-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;flex:1;padding:.875rem 1.5rem;background:#000;border:0;border-radius:60px;font-family:var(--font-body);font-size:.95rem;font-weight:500;color:var(--white);text-decoration:none;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px var(--overlay-darker)}.apple-signin-btn:hover{background:#1a1a1a;transform:translateY(-2px);box-shadow:0 6px 20px var(--overlay-darker)}.apple-signin-btn:active{transform:translateY(0);background:#000}.apple-signin-btn .apple-icon{width:20px;height:20px;flex-shrink:0;filter:brightness(0) invert(1)}.auth-footer-note{margin-top:1.5rem;font-size:.8rem;color:var(--text-muted)}.auth-footer-note a,.download-hint a,.garmin-instructions-list a{color:var(--accent);text-decoration:none}.auth-footer-note a:hover,.download-hint a:hover,.garmin-instructions-list a:hover{text-decoration:underline}.form-message{margin-top:.5rem;padding:0 1rem;font-size:.9rem;min-height:1rem;transition:all .3s ease}.form-message.success{color:var(--success-text)}.form-message.error{color:var(--error-text)}.form-message.info{color:var(--blue-text)}.form-message.show{animation:messageAppear .4s ease}.decorative-elements{position:fixed;inset:0;pointer-events:none;overflow:hidden}.circle{position:absolute;border-radius:50%;background:radial-gradient(circle,var(--accent-glow) 0%,transparent 70%);animation:float 20s ease-in-out infinite}.circle-1{width:600px;height:600px;top:-200px;right:-200px;opacity:.3;animation-delay:0s}.circle-2{width:400px;height:400px;bottom:-100px;left:-100px;opacity:.2;animation-delay:-5s}.circle-3{width:300px;height:300px;top:50%;left:20%;opacity:.15;animation-delay:-10s}.email-form .input-group{display:flex;gap:0;background:var(--surface-elevated);border:1px solid var(--border);border-radius:60px;padding:6px;transition:all .3s ease;backdrop-filter:blur(10px)}.email-form .input-group:focus-within{border-color:var(--accent);box-shadow:0 0 30px var(--accent-glow);background:var(--surface-hover)}.code-form{animation:fadeInUp .5s ease-out}.code-instruction{font-size:.95rem;color:var(--text-accent-soft);margin-bottom:.5rem;text-align:center}.code-email-display{font-size:.95rem;color:var(--text);font-weight:500;text-align:center}.code-email-display,.code-input-group{margin-bottom:1.5rem}.code-input-group #code-input{width:100%;background:var(--surface-elevated);border:1px solid var(--border);border-radius:12px;padding:1rem;font-size:2rem;font-family:var(--font-mono);font-weight:600;color:var(--text);text-align:center;letter-spacing:.5em;outline:0;transition:all .3s ease}.code-input-group #code-input::placeholder{color:var(--text-muted);opacity:.5}.code-input-group #code-input:focus{border-color:var(--accent);box-shadow:0 0 20px var(--accent-glow);background:var(--surface-hover)}.code-actions,.verify-btn{display:flex;justify-content:center;align-items:center}.verify-btn{width:100%;background:var(--cta-gradient);color:var(--on-cta);border:0;padding:1rem;font-size:1rem;font-family:var(--font-body);font-weight:600;border-radius:60px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;min-height:56px}.verify-btn:hover{transform:translateY(-2px);box-shadow:0 10px 40px var(--blue-shadow)}.verify-btn:active{transform:translateY(0)}.verify-btn.loading .btn-text{opacity:0}.verify-btn.loading .btn-loader{opacity:1}.verify-btn .btn-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid transparent;border-top-color:var(--text);border-radius:50%;opacity:0;transition:opacity .2s ease;animation:spin .8s linear infinite}.code-actions{gap:1rem;margin-top:1rem}.link-btn{background:0 0;border:0;color:var(--text-accent-soft);font-size:.9rem;cursor:pointer;padding:.5rem 1rem;transition:color .2s ease}.link-btn:hover{color:var(--accent);text-decoration:underline}.store-badges{margin-top:1.25rem}.store-badges-label{font-size:.8rem;color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.75rem}.store-badges-row{display:flex;justify-content:center;gap:.75rem}.store-badge{display:block;transition:transform .25s ease,filter .25s ease;border-radius:6px;overflow:hidden}.store-badge svg{height:40px;width:auto;display:block}.store-badge:hover{transform:translateY(-3px) scale(1.04);filter:drop-shadow(0 6px 20px var(--accent-glow))}.store-badge:active{transform:translateY(0) scale(.98)}@media (max-width:640px){.auth-container{padding:1.5rem}.auth-card{padding:1.75rem;border-radius:20px}.email-form .input-group{border-radius:20px;padding:6px}.email-form #email-input{padding:.875rem 1rem;font-size:.95rem}.submit-btn{padding:.875rem 1.25rem;min-width:56px;font-size:1.1rem}.oauth-buttons{flex-direction:column}.apple-signin-btn,.google-signin-btn{border-radius:14px;padding:.875rem 1.25rem}.brand-slogan{letter-spacing:.15em}.code-input-group #code-input{font-size:1.5rem;letter-spacing:.3em}.code-actions{flex-direction:column;gap:.5rem}.store-badge svg{height:36px}.store-badges{margin-top:1rem}}.form-group{margin-bottom:1.25rem;text-align:left;position:relative}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-label{display:block;font-size:.85rem;font-weight:500;color:var(--text-muted);margin-bottom:.5rem;letter-spacing:.02em}.form-input{width:100%;background:var(--input-bg);border:1px solid var(--input-border);border-radius:12px;padding:.875rem 1rem;font-size:1rem;font-family:var(--font-body);color:var(--text);outline:0;transition:all .2s ease}.form-input:focus{border-color:var(--accent);box-shadow:0 0 20px var(--accent-glow);background:var(--surface-hover)}.form-input::placeholder{color:var(--text-muted)}.form-input[type=date]{color-scheme:dark}[data-theme=light] .form-input[type=date]{color-scheme:light}.form-input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.6;cursor:pointer}[data-theme=light] .form-input[type=date]::-webkit-calendar-picker-indicator{filter:none}.form-textarea{resize:vertical;min-height:80px}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;color:var(--text-muted);font-size:.9rem}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.gender-options{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.gender-option{position:relative;cursor:pointer}.gender-option input[type=radio]{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.gender-label{display:block;background:var(--surface-elevated);border:1px solid var(--border);border-radius:10px;padding:.75rem 1rem;font-size:.9rem;color:var(--text-muted);text-align:center;transition:all .2s ease}.gender-option input[type=radio]:checked+.gender-label{background:var(--accent-focus-ring);border-color:var(--accent);color:var(--text)}.gender-option:hover .gender-label{border-color:var(--border-strong);color:var(--text)}.btn{gap:.75rem;width:100%;padding:.875rem 1.5rem;font-size:1rem;font-family:var(--font-body);font-weight:600;border-radius:12px;position:relative;overflow:hidden}.btn,.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;transition:all .2s ease}.btn-primary{padding:.75rem 1.5rem;background:var(--cta-gradient);color:var(--on-cta);border:0;border-radius:10px;font-size:.95rem;font-weight:600}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px var(--blue-shadow)}.btn-primary:active{transform:translateY(0)}.btn-primary.loading .btn-text{opacity:0}.btn-primary.loading .btn-loader{opacity:1}.btn-primary .btn-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid transparent;border-top-color:var(--text);border-radius:50%;opacity:0;animation:spin .8s linear infinite}.btn-secondary{padding:.5rem 1rem;background:0 0;border:1px solid var(--border-strong);border-radius:8px;color:var(--text-muted);font-size:.9rem;font-weight:500}.btn-secondary:hover{background:var(--surface);border-color:var(--border-strong);color:var(--text)}.btn-sm{padding:.35rem .75rem;font-size:.8rem;border-radius:6px;min-width:unset}.form-actions-btn{min-width:120px}.btn-social{background:var(--surface-elevated);border:1px solid var(--border);color:var(--text);font-weight:500}.btn-social:hover{background:var(--surface-hover);border-color:var(--border-strong);transform:translateY(-2px)}.btn-google{background:#fff;color:#1f1f1f;border-color:#dadce0}.btn-google:hover{background:#f8f9fa;border-color:#dadce0;box-shadow:0 4px 12px rgba(0,0,0,.15)}.btn-apple{background:#000;color:#fff;border-color:#000}.btn-apple:hover{background:#1a1a1a;box-shadow:0 4px 12px rgba(0,0,0,.3)}.social-icon{width:20px;height:20px;flex-shrink:0}.social-buttons{display:flex;flex-direction:column;gap:.75rem}.btn-icon{width:36px;height:36px;display:flex!important;align-items:center;justify-content:center;background:var(--surface-elevated)!important;border:1px solid var(--border)!important;border-radius:8px;color:var(--text-muted)!important;cursor:pointer;transition:all .2s ease;padding:0!important;flex-shrink:0;box-sizing:border-box}.btn-icon:hover{background:var(--surface-hover);color:var(--text)}.btn-icon .garmin-icon-small,.btn-icon svg{width:16px;height:16px;flex-shrink:0}.btn-icon .garmin-icon-small{object-fit:contain}.btn-icon.btn-danger{background:var(--error-bg)!important;border-color:var(--error-border)!important;color:var(--error-text)!important}.btn-icon.btn-danger:hover{background:var(--error-bg-hover)!important;border-color:var(--error-border-strong)!important;color:var(--error-text)!important}.btn-icon.btn-danger svg{color:var(--error-text)!important;stroke:var(--error-text)!important}.btn-icon.btn-primary{background:var(--cta-gradient);border:0;color:var(--on-cta);padding:0}.btn-icon.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--accent-shadow);background:var(--cta-gradient);color:var(--on-cta)}.btn-icon.btn-secondary{background:var(--surface-elevated);border:1px solid var(--border-strong);color:var(--text);padding:0}.btn-icon.btn-secondary:hover{background:var(--surface-hover);color:var(--text)}.btn-icon.btn-small{width:28px;height:28px}.btn-icon.btn-small svg{width:14px;height:14px}.btn-outline.btn-sm{padding:.5rem;background:0 0;border:1px solid var(--border-strong);border-radius:6px;color:var(--text-muted);cursor:pointer;transition:all .2s ease}.btn-outline.btn-sm:hover{border-color:var(--error-border-strong);color:var(--error-text);background:var(--error-bg)}.sport-badge{display:inline-block;padding:.35rem .75rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;border-radius:20px;background:var(--sport-badge-bg);color:var(--sport-badge-text);border:1px solid var(--sport-badge-border)}.sport-badge.sport-run,.sport-badge.sport-trailrun,.sport-badge.sport-virtualrun{background:var(--sport-run-bg);color:var(--sport-run-text);border-color:var(--sport-run-border)}.sport-badge.sport-cycling,.sport-badge.sport-ebikeride,.sport-badge.sport-gravelride,.sport-badge.sport-mountainbikeride,.sport-badge.sport-ride,.sport-badge.sport-virtualride{background:var(--sport-ride-bg);color:var(--sport-ride-text);border-color:var(--sport-ride-border)}.sport-badge.sport-swim{background:var(--sport-swim-bg);color:var(--sport-swim-text);border-color:var(--sport-swim-border)}.sport-badge.sport-hike,.sport-badge.sport-walk{background:var(--sport-walk-bg);color:var(--sport-walk-text);border-color:var(--sport-walk-border)}.sport-badge.sport-crossfit,.sport-badge.sport-highintensityintervaltraining,.sport-badge.sport-weighttraining,.sport-badge.sport-yoga{background:var(--sport-strength-bg);color:var(--sport-strength-text);border-color:var(--sport-strength-border)}.sport-badge.sport-alpineski,.sport-badge.sport-nordicski,.sport-badge.sport-skiing,.sport-badge.sport-snowboard{background:var(--sport-snow-bg);color:var(--sport-snow-text);border-color:var(--sport-snow-border)}#adopt-device-modal,#gear-modal,#injury-modal,.modal{display:none;position:fixed;inset:0;z-index:1000;align-items:center;justify-content:center}.modal.active{display:flex}.modal-backdrop{position:absolute;inset:0;background:var(--overlay-darker);backdrop-filter:blur(4px)}.modal-content{position:relative;background:var(--bg-secondary);border:1px solid var(--border);border-radius:16px;width:90%;max-width:480px;animation:modalSlideIn .3s ease}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-subtle)}.modal-title{font-family:var(--font-display);font-size:1.5rem;font-weight:400;letter-spacing:.03em;color:var(--text)}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:0 0;border:0;color:var(--text-muted);font-size:1.5rem;cursor:pointer;transition:color .2s ease}.legal-content li strong,.modal-close:hover{color:var(--text)}.modal-body{padding:1.5rem}#global-upload-modal .modal-content,.sudo-table-sticky tr:hover td.sticky-col{background:var(--bg-secondary)}.empty-state{text-align:center;padding:4rem 2rem;background:var(--surface);border:1px solid var(--border-subtle);border-radius:12px}.empty-icon{width:80px;height:80px;margin:0 auto 1.5rem;color:var(--text-muted)}.empty-icon svg{width:100%;height:100%}.empty-title{font-size:1.5rem;font-weight:600;color:var(--text);margin-bottom:.5rem}.empty-text{color:var(--text-muted);font-size:1rem}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-subtle)}.page-info{color:var(--text-muted);font-size:.9rem}.toast-notification{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%) translateY(100px);display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;box-shadow:0 10px 40px var(--overlay-darker);opacity:0;visibility:hidden;transition:all .3s ease;z-index:2000}.toast-notification.show{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.toast-notification svg{width:20px;height:20px;color:var(--accent);flex-shrink:0}.page-title,.toast-message{font-size:.9rem;color:var(--text)}.page-title{font-family:var(--font-display);font-size:2.5rem;font-weight:400;letter-spacing:.05em;margin-bottom:1rem}.page-title .count,.section-title{font-weight:400;color:var(--text-muted)}.section-title{font-family:var(--font-display);font-size:1.5rem;letter-spacing:.03em;color:var(--text);margin-bottom:1rem}.page-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}@media (max-width:640px){.form-row,.gender-options{grid-template-columns:1fr}}.download-main{max-width:800px;margin:0 auto;padding:4rem 1.5rem}.download-container{display:flex;flex-direction:column;gap:1.5rem;text-align:center}.download-title{font-family:var(--font-display);font-size:3rem;color:var(--text);margin:0}.download-subtitle,.download-version{color:var(--text-muted);font-size:1.1rem;margin:0}.download-version{font-size:.85rem}.download-cards{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:1rem}.download-card{display:flex;flex-direction:column;gap:.5rem;padding:1.5rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;color:var(--text);text-decoration:none;transition:transform .15s ease,border-color .15s ease}.download-card:hover{transform:translateY(-2px);border-color:var(--accent)}.download-card-os{font-weight:600;font-size:1.05rem}.download-card-meta,.download-card-sha{color:var(--text-muted);font-size:.85rem}.download-card-sha{font-family:var(--font-mono);font-size:.75rem}.download-hint{color:var(--text-muted);font-size:.9rem;margin-top:1rem}.not-found-container{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;padding:2rem;background:var(--page-bg-immersive);overflow:hidden}.not-found-content{text-align:center;z-index:10;max-width:600px;width:100%;animation:fadeInUp .8s ease-out}.error-code,.error-title{font-family:var(--font-display);font-weight:400}.error-code,.error-code::after{-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.error-code{font-size:clamp(8rem,25vw,14rem);letter-spacing:.05em;line-height:.85;margin-bottom:0;background:linear-gradient(180deg,var(--border-strong) 0%,var(--surface) 100%);position:relative}.error-code::after{content:"404";position:absolute;inset:0;background:linear-gradient(135deg,var(--logo-gradient-start) 0%,var(--text-accent) 50%,var(--accent) 100%);animation:glitchText 3s ease-in-out infinite}.error-title{font-size:clamp(1.5rem,5vw,2.5rem);letter-spacing:.1em;color:var(--text);margin-bottom:1rem;text-transform:uppercase}.error-message{font-size:1.1rem;color:var(--text-muted);margin-bottom:.5rem;line-height:1.6}.error-path{font-family:var(--font-mono);font-size:.85rem;color:var(--accent);background:var(--info-bg);padding:.5rem 1rem;border-radius:8px;display:inline-block;margin-bottom:2rem;word-break:break-all;max-width:100%}.error-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn-back,.btn-home{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;font-size:1rem;text-decoration:none;border-radius:12px;transition:all .2s ease}.btn-home{background:var(--cta-gradient);color:var(--on-cta);font-weight:600}.btn-home:hover{transform:translateY(-2px);box-shadow:0 10px 30px var(--blue-shadow)}.btn-back svg,.btn-home svg{width:20px;height:20px}.btn-back{background:var(--surface-elevated);border:1px solid var(--border-strong);color:var(--text-muted);font-weight:500;cursor:pointer}.btn-back:hover{border-color:var(--border-strong)}.trail-decoration{position:absolute;pointer-events:none;opacity:.1}.trail-1{top:20%;left:5%;width:200px;height:200px;animation:trailFloat 15s ease-in-out infinite}.trail-2{bottom:15%;right:8%;width:150px;height:150px;animation:trailFloat 12s ease-in-out infinite reverse}@media (max-width:640px){.not-found-container{padding:1.5rem}.error-actions{flex-direction:column}.btn-back,.btn-home{width:100%;justify-content:center}}.dashboard-main{min-height:calc(100vh - 60px);padding:2rem}.dashboard-container{max-width:1400px;margin:0 auto}.dashboard-header{margin-bottom:2rem}.dashboard-title-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.dashboard-title{display:flex;align-items:center;gap:.75rem;font-size:1.75rem;font-weight:600;color:var(--text)}.cron-help li code,.garmin-logo{color:var(--info-text)}.btn-back-nav{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;color:var(--text-muted);text-decoration:none;font-size:.9rem;transition:all .2s ease}.btn-back-nav:hover,.btn-back:hover{background:var(--surface-hover);color:var(--text)}.dashboard-subtitle{color:var(--text-muted);margin-top:.5rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.stat-card,.stat-icon{border-radius:12px;display:flex;align-items:center}.stat-card{background:var(--surface-elevated);border:1px solid var(--border);padding:1.25rem;gap:1rem}.stat-icon{width:48px;height:48px;justify-content:center}.stat-icon svg{width:24px;height:24px}.stat-today .stat-icon,.stat-total .stat-icon{background:var(--info-bg);color:var(--info-text)}.stat-processed .stat-icon{background:var(--success-bg);color:var(--success-text)}.stat-errors .stat-icon{background:var(--error-bg-subtle);color:var(--error-text)}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:1.75rem;font-weight:600;color:var(--text);line-height:1}.stat-label{font-size:.85rem;color:var(--text-muted);margin-top:.25rem}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.dashboard-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.card-title{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:600;color:var(--text);margin-bottom:1.25rem}.card-title svg{color:var(--accent)}.type-list{display:flex;flex-direction:column;gap:.5rem}.type-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border-subtle)}.sudo-dup-grid tr:last-child td,.type-row:last-child{border-bottom:none}.type-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.type-badge.activity{background:var(--info-bg);color:var(--info-text)}.type-badge.health{background:var(--success-bg);color:var(--success-text)}.type-badge.common{background:var(--info-bg);color:var(--info-text)}.type-badge.womens-health{background:var(--warning-bg);color:var(--warning-text)}.type-count{font-weight:600;color:var(--text)}.endpoint-group,.endpoints-list{display:flex;flex-direction:column;gap:1rem}.endpoint-group{gap:.25rem}.endpoint-group-title{font-size:.75rem;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:1px;margin-bottom:.25rem}.endpoint{display:block;font-size:.8rem;color:var(--text-muted);padding:.25rem 0}.recent-events{grid-column:1/-1}.events-table-wrapper{overflow-x:auto}.events-table{width:100%;border-collapse:collapse}.events-table td,.events-table th{padding:.75rem;text-align:left;border-bottom:1px solid var(--border-subtle)}.events-table th{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.events-table td{font-size:.9rem;color:var(--text)}.time-cell{white-space:nowrap;color:var(--text-muted)!important}.summary-cell,.user-cell{font-family:var(--font-mono);font-size:.8rem!important}.status-received{background:var(--warning-bg);color:var(--warning-text)}.status-processed{background:var(--success-bg);color:var(--success-text)}.status-stored{background:var(--info-bg);color:var(--info-text)}.status-skipped{background:var(--surface-elevated);color:var(--text-muted)}.status-error{background:var(--error-bg-subtle)}.empty-row{text-align:center;color:var(--text-muted);padding:2rem}.dashboard-card .empty-state{padding:2rem;background:0 0;border:0}@media (max-width:768px){.dashboard-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}.help-main{max-width:800px;margin:0 auto;padding:2rem 1.5rem}.help-container{display:flex;flex-direction:column;gap:2rem}.help-title{font-size:1.75rem;font-weight:600;color:var(--text);margin:0}.help-subtitle{color:var(--text-muted);font-size:.95rem;margin:-1rem 0 0}.help-sections{display:flex;flex-direction:column;gap:2rem}.help-section-title{font-size:1rem;font-weight:600;color:var(--text);margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}.help-section-title svg{width:20px;height:20px;flex-shrink:0;color:var(--accent)}.help-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.5rem}.help-link{display:flex;flex-direction:column;gap:.15rem;padding:.75rem 1rem;border-radius:8px;border:1px solid var(--border);background:var(--surface-elevated);text-decoration:none;transition:border-color .15s,background .15s}.help-link:hover{border-color:var(--accent);background:var(--surface-hover)}.help-link-name{font-size:.9rem;font-weight:500;color:var(--text)}.help-link-desc{font-size:.8rem;color:var(--text-muted);line-height:1.4}@media (max-width:768px){.help-main{padding:1rem}.help-links{grid-template-columns:1fr}}.import-section{margin-bottom:2rem}.garmin-connect-section{margin-bottom:1.5rem}.garmin-connection{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.garmin-disconnected{text-align:center}.garmin-disconnected p{color:var(--text-muted);margin-bottom:1rem}.garmin-connected{display:flex;flex-direction:column;gap:1rem}.garmin-info{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.garmin-badge-connected{height:48px;width:auto;object-fit:contain}.garmin-connected-badge{display:inline-flex;align-items:center;padding:.5rem .75rem;background:var(--success-bg);border:1px solid var(--success-border);border-radius:20px;color:var(--success-text);font-size:.85rem;font-weight:500}.garmin-last-sync{color:var(--text-muted);font-size:.9rem}.garmin-actions{display:flex;align-items:center;gap:.75rem}.btn-garmin{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;background:var(--garmin-btn);color:var(--white);border:0;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none}.garmin-badge-icon{height:18px;width:auto;object-fit:contain}.btn-garmin:hover:not(:disabled){background:var(--garmin-btn-hover);transform:translateY(-1px)}.btn-garmin:disabled{opacity:.7;cursor:not-allowed}.garmin-error,.garmin-note{padding:.75rem 1rem;border-radius:8px}.garmin-error{background:var(--error-bg);border:1px solid var(--error-border-strong);color:var(--error-text);font-size:.9rem}.garmin-note{margin-top:1rem;background:var(--surface);border:1px solid var(--border-subtle)}.garmin-note p{margin:0;color:var(--text-muted);font-size:.85rem}.import-section-title{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--text)}.import-section-desc{color:var(--text-muted);margin-bottom:1rem}.garmin-icon{color:var(--garmin-blue-text)}.garmin-section-icon{width:24px;height:24px;object-fit:contain}.garmin-import-info{margin-bottom:1.5rem;color:var(--text-muted)}.garmin-import-info p{margin-bottom:.75rem}.garmin-instructions-list{margin:.75rem 0 .5rem 1.5rem;padding:0;display:flex;flex-direction:column;gap:.5rem}.garmin-instructions-list li{color:var(--text-muted)}.import-warning{display:flex;gap:1rem;padding:1rem 1.25rem;background:var(--warning-bg);border:2px solid var(--warning-border);border-radius:10px;margin-bottom:1.5rem;box-shadow:0 0 20px var(--warning-bg)}.import-warning-icon{flex-shrink:0;color:var(--warning-text);margin-top:.1rem}.import-warning-content{color:var(--text-muted);font-size:.9rem;line-height:1.5}.import-warning-content strong{color:var(--warning-text)}.import-warning-content ul{margin:.5rem 0 0 1.25rem;padding:0}.import-warning-content li{margin-bottom:.35rem}.import-warning-content li:last-child,.pp-event-about p:last-child{margin-bottom:0}.garmin-dropzone{position:relative;border:2px dashed var(--border-strong);border-radius:12px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .3s ease;background:var(--surface)}.garmin-dropzone:hover{border-color:var(--garmin-tint-border);background:var(--garmin-tint-weak)}.garmin-dropzone.drag-over{border-color:var(--garmin-blue);background:var(--garmin-tint);transform:scale(1.01)}.garmin-dropzone.uploading{pointer-events:none}.dropzone-content{display:flex;flex-direction:column;align-items:center;gap:.75rem}.dropzone-icon{width:48px;height:48px;color:var(--text-muted);opacity:.6}.garmin-dropzone:hover .dropzone-icon{color:var(--garmin-blue-text);opacity:1}.dropzone-text{font-size:1.1rem;color:var(--text);font-weight:500}.dropzone-hint{font-size:.9rem;color:var(--text-muted)}.dropzone-progress{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem}.progress-bar{width:100%;max-width:300px}.progress-fill{background:linear-gradient(90deg,var(--garmin-blue),var(--accent));width:0%}.progress-fill.indeterminate{width:30%;animation:progress-slide 1.5s infinite ease-in-out}.progress-text{color:var(--text-muted);font-size:.9rem}.import-results{margin-top:1.5rem;padding:1rem 1.25rem;background:var(--success-bg);border:1px solid var(--success-border);border-radius:8px}.import-result-header{display:flex;align-items:center;gap:.75rem;color:var(--success-text);font-weight:500;margin-bottom:.75rem}.import-result-stats{display:flex;flex-wrap:wrap;gap:1.5rem;color:var(--text-muted);font-size:.9rem}.import-result-stats .stat{display:flex;align-items:center;gap:.5rem}.import-result-stats .stat-value{font-weight:600;color:var(--text)}.import-result-stats .stat-wide{flex-basis:100%}.import-result-stats .stat-value-sm{font-size:.95rem}.import-errors{margin-top:1rem;padding:1rem 1.25rem;background:var(--error-bg);border:1px solid var(--error-border-strong);border-radius:8px}.import-error-header{display:flex;align-items:center;gap:.75rem;color:var(--error-text);font-weight:500;margin-bottom:.75rem}.import-error-list{margin:0;padding-left:1.5rem;color:var(--text-muted);font-size:.85rem;max-height:150px;overflow-y:auto}.import-error-list li{margin-bottom:.25rem}.progress-bar{height:8px;background:var(--surface-hover);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--blue-400));border-radius:4px;transition:width .3s ease}.garmin-export-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}.import-file-queue{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.file-queue-item{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;font-size:.9rem}.file-queue-icon{width:16px;height:16px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.file-queue-icon-pending{width:8px;height:8px;border-radius:50%;background:var(--text-muted);opacity:.4;margin:4px}.file-queue-icon-uploading{color:var(--accent)}.file-queue-icon-done{color:var(--success-text)}.file-queue-icon-error{color:var(--error-text)}.spinner-sm{width:16px;height:16px;animation:spin 1s linear infinite}.spinner-sm .path{stroke:currentColor;stroke-linecap:round;animation:dash 1.5s ease-in-out infinite}.file-queue-name{font-weight:500;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-queue-error-text,.file-queue-result,.file-queue-size{color:var(--text-muted);font-size:.85rem;flex-shrink:0}.file-queue-error-text,.file-queue-result{margin-left:auto}.file-queue-error-text{color:var(--error-text)}.file-queue-done{border-color:var(--success-border);background:var(--success-bg-subtle)}.file-queue-uploading{border-color:var(--blue-border);background:var(--blue-bg-subtle)}.file-queue-item.file-queue-error{border-color:var(--error-border-strong);background:var(--error-bg-subtle)}@media (max-width:600px){.garmin-dropzone{padding:2rem 1.5rem}.dropzone-icon{width:36px;height:36px}.import-result-stats{flex-direction:column;gap:.5rem}}:root{--lp-navy:#f5f9ff;--lp-blue:#2f66ff;--lp-blue-deep:#9dbcff;--lp-lime:#ccff1a;--lp-purple:#6d3fd6;--lp-soft:#0a1628;--lp-text:rgba(233, 242, 255, .86);--lp-muted:rgba(233, 242, 255, .70);--lp-line:rgba(255, 255, 255, .12);--lp-card:rgba(255, 255, 255, .05);--lp-panel:rgba(255, 255, 255, .04);--lp-card-border:rgba(255, 255, 255, .10);--lp-nav-bg:rgba(10, 22, 40, .88);--lp-nav-bg-solid:rgba(10, 22, 40, .97);--lp-shadow:0 24px 70px rgba(0, 0, 0, .45);--lp-shadow-hover:0 32px 80px rgba(0, 0, 0, .55);--lp-badge-bg:rgba(255, 255, 255, .06);--lp-tint-weak:rgba(122, 165, 255, .10);--lp-tint-border:rgba(122, 165, 255, .32);--lp-glow-lime:rgba(204, 255, 26, .10);--lp-glow-blue:rgba(47, 102, 255, .16);--lp-glow-purple:rgba(138, 92, 255, .12)}[data-theme=light]{--lp-navy:#07173f;--lp-blue-deep:#1749d4;--lp-soft:#f5faff;--lp-text:rgba(7, 23, 63, .80);--lp-muted:rgba(7, 23, 63, .68);--lp-line:rgba(188, 209, 250, .78);--lp-card:rgba(255, 255, 255, .82);--lp-panel:rgba(255, 255, 255, .52);--lp-card-border:rgba(255, 255, 255, .92);--lp-nav-bg:rgba(245, 250, 255, .88);--lp-nav-bg-solid:rgba(245, 250, 255, .97);--lp-shadow:0 24px 70px rgba(55, 103, 180, .10);--lp-shadow-hover:0 32px 80px rgba(55, 103, 180, .15);--lp-badge-bg:rgba(255, 255, 255, .80);--lp-tint-weak:rgba(47, 102, 255, .06);--lp-tint-border:rgba(47, 102, 255, .30);--lp-glow-lime:rgba(204, 255, 26, .14);--lp-glow-blue:rgba(47, 102, 255, .12);--lp-glow-purple:rgba(138, 92, 255, .07)}.landing-container{width:min(1180px,100%);margin:0 auto;padding-inline:1.25rem}@media (min-width:900px){.landing-container{padding-inline:2rem}}body:has(.landing-nav){background:radial-gradient(circle at 8% 4%,var(--lp-glow-lime),transparent 22%),radial-gradient(circle at 84% 8%,var(--lp-glow-blue),transparent 30%),radial-gradient(circle at 70% 78%,var(--lp-glow-purple),transparent 32%),var(--lp-soft);color:var(--lp-navy)}.landing-nav{position:sticky;top:0;z-index:50;backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);background:var(--lp-nav-bg);border-bottom:1px solid var(--lp-line);transition:box-shadow 200ms ease}.landing-nav--scrolled{box-shadow:0 4px 20px var(--lp-glow-blue)}.landing-nav__inner{height:68px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.landing-nav__brand{font-size:1.75rem;font-weight:1000;letter-spacing:-.06em;color:var(--lp-navy);text-decoration:none;transform:skewX(-10deg);display:inline-block}.landing-nav__links{display:flex;align-items:center;gap:2rem}.landing-nav__links a{color:var(--lp-text);text-decoration:none;font-size:.9rem;font-weight:800;transition:color 200ms ease}.landing-nav__links a:hover{color:var(--lp-blue-deep)}.landing-nav__signin{padding:.5rem 1.25rem;border:1px solid var(--lp-tint-border);border-radius:999px;color:var(--lp-blue-deep)!important;font-weight:900!important;transition:background 200ms ease,border-color 200ms ease!important}.landing-nav__signin:hover{background:var(--lp-tint-weak);border-color:var(--lp-blue)!important}.landing-nav__toggle{display:none;flex-direction:column;gap:5px;background:0 0;border:0;padding:.5rem;cursor:pointer;width:44px;height:44px;align-items:center;justify-content:center}.landing-nav__toggle span{display:block;width:22px;height:2px;background:var(--lp-navy);border-radius:2px}@media (max-width:768px){.landing-nav__links{display:none;position:absolute;top:68px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1.25rem 1rem;background:var(--lp-nav-bg-solid);border-bottom:1px solid var(--lp-line)}.landing-nav__links--open{display:flex}.landing-nav__links a{padding:.75rem 0;border-bottom:1px solid var(--lp-line)}.landing-nav__signin{border:0!important;padding-inline:0!important;text-align:left}.landing-nav__toggle{display:inline-flex}}.landing-hero{padding-block:2.5rem}@media (min-width:900px){.landing-hero{padding-block:4rem;min-height:min(82vh,740px);display:flex;align-items:center}}.landing-hero__grid{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:center}@media (min-width:900px){.landing-hero__grid{grid-template-columns:1.1fr .9fr;gap:4rem}}.landing-hero__badge{display:inline-flex;align-items:center;gap:.6rem;padding:.6rem 1.1rem;border-radius:999px;border:1px solid var(--lp-tint-border);background:var(--lp-badge-bg);color:var(--lp-blue-deep);font-size:.7rem;font-weight:1000;letter-spacing:.18em;text-transform:uppercase;box-shadow:var(--lp-shadow);margin-bottom:1.5rem}.landing-hero__title{font-size:clamp(2.6rem,6.5vw,4.4rem);line-height:.94;letter-spacing:-.055em;text-transform:uppercase;font-weight:1000;color:var(--lp-navy);margin:0 0 1rem}.landing-faq__item summary:hover,.landing-footer__links a:hover,.landing-hero__accent{color:var(--lp-blue-deep)}.landing-hero__sub{font-size:1.1rem;color:var(--lp-muted);line-height:1.65;font-weight:550;margin:0 0 1.75rem;max-width:520px}.landing-hero__cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.landing-hero__store-badge{display:inline-block;transition:transform 200ms ease,box-shadow 200ms ease}.landing-hero__store-badge svg{display:block;height:44px;width:auto}.landing-hero__store-badge:hover{transform:translateY(-2px);box-shadow:0 8px 20px var(--lp-glow-blue);border-radius:6px}.landing-hero__ghost{display:inline-block;color:var(--lp-blue-deep);text-decoration:none;font-size:.95rem;font-weight:800;margin-bottom:.75rem;transition:opacity 200ms ease}.landing-hero__ghost:hover{text-decoration:underline}.landing-hero__note{font-size:.85rem;color:var(--lp-muted);margin:0;font-weight:560}.landing-hero__right{display:flex;justify-content:center}.landing-phone{position:relative;width:290px;height:600px;background:var(--lp-navy);border-radius:44px;padding:8px;box-shadow:0 40px 80px rgba(7,23,63,.22),0 12px 28px rgba(47,102,255,.14),inset 0 0 0 1px rgba(255,255,255,.08);transform:scale(.72);transform-origin:top center}@media (min-width:900px){.landing-phone{transform:scale(1)}}.landing-phone__notch{position:absolute;top:16px;left:50%;transform:translateX(-50%);width:100px;height:24px;background:var(--lp-navy);border-radius:999px;z-index:2}.landing-phone__screen{width:100%;height:100%;border-radius:36px;background:linear-gradient(160deg,#0d1f4a,#0a1830);padding:3rem 1rem 1rem;overflow:hidden;position:relative}.landing-arni-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:1.1rem;color:#fff;display:flex;flex-direction:column;gap:.85rem;margin-top:1rem;box-shadow:0 8px 24px rgba(0,0,0,.25)}.landing-arni-card__head{display:flex;align-items:center;gap:.65rem}.landing-arni-card__avatar{width:36px;height:36px;border-radius:50%;background:var(--lp-lime);color:var(--lp-navy);font-size:1.1rem;font-weight:1000;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 3px rgba(204,255,26,.25)}.landing-arni-card__name{font-weight:700;font-size:.95rem}.landing-arni-card__time,.landing-arni-card__title{font-size:.75rem;color:rgba(255,255,255,.5)}.landing-arni-card__title{text-transform:uppercase;letter-spacing:.1em}.landing-arni-card__workout{background:rgba(255,255,255,.05);border-radius:12px;padding:.75rem .9rem;display:flex;flex-direction:column;gap:.25rem}.landing-arni-card__sport{font-size:1rem;font-weight:700}.landing-arni-card__detail{font-size:.85rem;color:rgba(255,255,255,.6)}.landing-arni-card__reason{border-left:3px solid var(--lp-lime);padding-left:.75rem;font-size:.88rem;line-height:1.45;color:rgba(255,255,255,.72)}.landing-arni-card__reason-label{color:var(--lp-lime);font-weight:700;margin-right:.25rem}.landing-arni-card__metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.landing-arni-card__metric{background:rgba(255,255,255,.05);border-radius:10px;padding:.5rem;text-align:center;display:flex;flex-direction:column;gap:.15rem}.landing-arni-card__metric span{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:rgba(255,255,255,.6)}.landing-arni-card__metric strong{font-size:1.2rem;font-weight:800;color:#fff;letter-spacing:-.03em}.landing-marquee{overflow:hidden;white-space:nowrap;background:var(--lp-blue);color:#fff;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);margin-block:3rem}.landing-marquee__track{display:inline-flex;gap:1.5rem;padding:.85rem 0;font-size:1.15rem;font-weight:1000;text-transform:uppercase;letter-spacing:.08em;animation:lp-marquee 26s linear infinite}.landing-problems{padding-block:3rem}@media (min-width:900px){.landing-problems{padding-block:4.5rem}}.landing-problems__title{font-size:clamp(2rem,4vw,3rem);line-height:.94;letter-spacing:-.05em;text-transform:uppercase;font-weight:1000;color:var(--lp-navy);margin:0 0 2rem;text-align:center}.landing-problems__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}.landing-problem{border-radius:28px;border:1px solid var(--lp-card-border);background:var(--lp-card);box-shadow:var(--lp-shadow);backdrop-filter:blur(22px);overflow:hidden;padding:1.75rem 1.5rem;display:flex;flex-direction:column;gap:.75rem;transition:transform 220ms ease,box-shadow 220ms ease}.landing-problem:hover{transform:translateY(-3px);box-shadow:var(--lp-shadow-hover)}.landing-problem__bar{height:4px;border-radius:999px;background:linear-gradient(90deg,var(--lp-blue),var(--lp-lime));margin-bottom:.5rem;width:64px}.landing-problem__pain{font-size:.9rem;color:var(--lp-muted);font-style:italic;margin:0;font-weight:560}.landing-problem__fix{font-size:1.35rem;font-weight:1000;letter-spacing:-.03em;text-transform:uppercase;color:var(--lp-navy);margin:0}.landing-problem__how{font-size:.92rem;line-height:1.55;color:var(--lp-muted);margin:0;font-weight:560}.landing-faq{padding-block:3rem;background:var(--lp-panel);border-radius:40px;margin:0 1rem 2rem;border:1px solid var(--lp-card-border);box-shadow:var(--lp-shadow)}@media (min-width:900px){.landing-faq{padding-block:4rem;margin:0 2rem 3rem}}.landing-faq__title{font-size:clamp(2rem,4vw,3rem);line-height:.94;letter-spacing:-.05em;text-transform:uppercase;font-weight:1000;color:var(--lp-navy);margin:0 0 1.75rem;text-align:center}.landing-faq__item{border-bottom:1px solid var(--lp-line);max-width:720px;margin:0 auto}.landing-faq__item summary{cursor:pointer;padding:1.25rem 2.5rem 1.25rem 0;list-style:none;font-size:1rem;font-weight:750;color:var(--lp-navy);position:relative;transition:color 200ms ease}.landing-faq__item summary::-webkit-details-marker{display:none}.landing-faq__item summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--lp-blue-deep);transition:transform 200ms ease;line-height:1}.landing-faq__item[open] summary::after{transform:translateY(-50%) rotate(45deg)}.landing-faq__answer{padding-bottom:1.25rem;color:var(--lp-muted);line-height:1.6;font-size:.95rem;font-weight:560}.landing-final{position:relative;overflow:hidden;margin:1rem 1rem 3rem;padding:3.5rem 2.5rem;border-radius:36px;background:linear-gradient(135deg,var(--lp-blue),#4059d8,var(--lp-purple));color:#fff;box-shadow:0 30px 90px rgba(47,102,255,.22);text-align:center}.landing-final::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 20%,rgba(204,255,26,.22),transparent 28%),radial-gradient(circle at 20% 80%,rgba(255,255,255,.18),transparent 32%);pointer-events:none}.landing-final>*{position:relative;z-index:1}@media (min-width:900px){.landing-final{margin:1rem 2rem 4rem;padding:4.5rem 4rem}}.landing-final__title{font-size:clamp(2rem,4.5vw,3.5rem);line-height:.94;letter-spacing:-.055em;text-transform:uppercase;font-weight:1000;color:#fff;margin:0 0 .75rem}.landing-final__sub{color:#fff;margin:0 0 1.75rem;font-size:1.05rem;font-weight:560}.landing-final__badges{display:flex;justify-content:center;flex-wrap:wrap;gap:.75rem}.landing-footer{border-top:1px solid var(--lp-line);padding-block:2.5rem;background:var(--lp-panel)}.landing-footer__top{display:flex;flex-direction:column;gap:1rem;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem}@media (min-width:640px){.landing-footer__top{flex-direction:row;align-items:center}}.landing-footer__name{font-size:1.4rem;font-weight:1000;letter-spacing:-.06em;color:var(--lp-navy)}.landing-footer__slogan{color:var(--lp-muted);font-size:.875rem;margin-top:.25rem}.landing-footer__links{display:flex;flex-wrap:wrap;gap:1.25rem}.landing-footer__links a{color:var(--lp-muted);text-decoration:none;font-size:.875rem;font-weight:650;transition:color 200ms ease}.landing-footer__copyright{text-align:center;color:var(--lp-muted);font-size:.8rem;margin:0}@media (prefers-reduced-motion:reduce){.landing-marquee__track{animation:none}.landing-faq__item summary,.landing-faq__item summary::after,.landing-footer__links a,.landing-hero__store-badge,.landing-nav,.landing-problem{transition:none}}.legal-container{min-height:100vh;padding:2rem;background:var(--page-bg-immersive)}.legal-content{max-width:800px;margin:0 auto;animation:fadeInUp .6s ease-out}.back-link{display:inline-block;color:var(--accent);text-decoration:none;font-size:.9rem;margin-bottom:2rem;transition:all .2s ease}.back-link:hover{color:var(--text-accent-soft);transform:translateX(-4px)}.legal-content h1{font-family:var(--font-display);font-size:clamp(2.5rem,8vw,4rem);font-weight:400;letter-spacing:.05em;margin-bottom:.5rem;background:linear-gradient(135deg,var(--logo-gradient-start) 0%,var(--text-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.last-updated{color:var(--text-muted);font-size:.9rem;margin-bottom:3rem;padding-bottom:2rem}.legal-content h2,.legal-content p{color:var(--text);margin-bottom:1rem}.last-updated,.legal-content h2{border-bottom:1px solid var(--border)}.legal-content h2{font-family:var(--font-body);font-size:1.4rem;font-weight:600;padding-bottom:.5rem}.legal-content h3{font-family:var(--font-body);font-size:1.1rem;font-weight:500;color:var(--text-accent-soft);margin:1.5rem 0 .75rem}.legal-content p{font-size:1rem;line-height:1.8}.legal-content ul{margin:1rem 0 1.5rem 1.5rem;color:var(--text)}.legal-content li{margin-bottom:.6rem;line-height:1.7}.legal-content .info-page-table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.95rem}.legal-content .info-page-table td,.legal-content .info-page-table th{padding:.5rem .75rem;text-align:left;border:1px solid var(--border)}.legal-content .info-page-table th{background:var(--surface-elevated);font-weight:600;color:var(--text)}.legal-content .info-page-table td:first-child,.legal-content .info-page-table th:first-child{padding-left:1rem}.legal-content .info-page-table td:last-child,.legal-content .info-page-table th:last-child{padding-right:1rem}.contact-info{background:var(--surface-elevated);border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin-top:1rem}.contact-info strong{color:var(--accent)}@media (max-width:640px){.legal-container{padding:1.5rem}.legal-content h2{font-size:1.2rem}.legal-content li,.legal-content p{font-size:.95rem}}.top-nav{position:sticky;top:0;z-index:1000;background:var(--nav-bg);backdrop-filter:blur(12px);border-bottom:1px solid var(--nav-border);padding:0;height:60px}.nav-container,.nav-left{display:flex;align-items:center}.nav-container{justify-content:space-between;max-width:1600px;margin:0 auto;padding:0 1.5rem;height:60px}.nav-left{gap:2rem}.nav-logo{font-family:var(--font-display);font-size:1.5rem;letter-spacing:.1em;color:var(--text);text-decoration:none;background:linear-gradient(135deg,var(--logo-gradient-start) 0%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;transition:opacity .2s ease}.nav-logo:hover{opacity:.85}.nav-main{display:flex;align-items:center;gap:.25rem}.nav-link{padding:.5rem .875rem;font-size:.9rem;font-weight:500;color:var(--text-muted);text-decoration:none;border-radius:6px;transition:all .2s ease}.nav-link:hover{background:var(--surface-elevated)}.nav-link.active,.nav-link:hover{color:var(--text)}.nav-dropdown{position:relative}.nav-dropdown-trigger{display:flex;align-items:center;gap:.35rem;padding:.5rem .875rem;font-size:.9rem;font-weight:500;color:var(--text-muted);background:0 0;border:0;border-radius:6px;cursor:pointer;transition:all .2s ease;font-family:var(--font-body)}.nav-trigger-icon{display:none;width:20px;height:20px}.nav-dropdown-trigger:hover{color:var(--text);background:var(--surface-elevated)}.nav-dropdown-trigger.active{color:var(--text)}.nav-trigger-coach{color:var(--warning-orange-text)}.nav-trigger-coach:hover{color:var(--warning-text);background:var(--warning-orange-bg)}.dropdown-arrow{width:14px;height:14px;transition:transform .2s ease}.nav-dropdown.active .dropdown-arrow{transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:200px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:.5rem;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .2s ease;box-shadow:0 10px 40px var(--overlay-darker);z-index:1100}.nav-dropdown.active .nav-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.nav-dropdown-menu-right{left:auto;right:0}.nav-dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;font-size:.9rem;color:var(--text-muted);text-decoration:none;border-radius:8px;transition:all .15s ease;border:0;background:0 0;width:100%;text-align:left;cursor:pointer;font-family:var(--font-body)}.nav-dropdown-item svg,.rebuild-form .sudo-btn-danger svg{width:18px;height:18px;flex-shrink:0}.nav-dropdown-item:hover{color:var(--text);background:var(--surface-hover)}.nav-dropdown-item.active{color:var(--accent);background:var(--info-bg)}.nav-dropdown-item.not-implemented{opacity:.6}.nav-dropdown-divider{height:1px;background:var(--surface-elevated);margin:.5rem 0}.nav-add-btn,.nav-right{display:flex;align-items:center}.nav-right{gap:.5rem}.nav-add-btn{width:36px;height:36px;padding:0;justify-content:center;background:var(--cta-gradient);border:0;border-radius:8px;color:var(--on-cta);cursor:pointer;transition:all .2s ease}.nav-add-btn svg,.nav-calendar-btn svg{width:20px;height:20px}.nav-add-btn:hover{transform:scale(1.05);box-shadow:0 4px 16px var(--blue-shadow)}.nav-calendar-btn,.nav-notifications{position:relative;width:40px;height:40px;border:0;cursor:pointer;transition:all .2s ease}.nav-calendar-btn{padding:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--sleep-deep) 0%,var(--sleep-light) 100%);border-radius:10px;color:var(--on-primary);text-decoration:none}.nav-calendar-btn.active,.nav-calendar-btn:hover{background:linear-gradient(135deg,var(--sleep-light) 0%,var(--sleep-deep) 100%)}.nav-calendar-btn:hover{transform:scale(1.05);box-shadow:0 4px 16px var(--purple-shadow)}.nav-calendar-btn.active{box-shadow:0 0 0 2px var(--purple-ring),0 4px 16px var(--purple-shadow)}.nav-calendar-btn.active:hover{background:linear-gradient(135deg,var(--purple-text) 0%,var(--sleep-light) 100%)}.nav-notifications{background:0 0;border-radius:8px;color:var(--text-muted)}.nav-notifications svg{width:22px;height:22px}.nav-notifications:hover{color:var(--text);background:var(--surface-elevated)}.nav-notifications,.nav-user-trigger,.notification-badge{display:flex;align-items:center;justify-content:center}.notification-badge{position:absolute;top:4px;right:4px;min-width:18px;height:18px;padding:0 5px;font-size:.65rem;font-weight:700;color:var(--on-danger);background:var(--error-text);border-radius:9px;animation:notificationPulse 2s ease-in-out infinite}.nav-user-trigger{padding:0;background:0 0;border:2px solid transparent;border-radius:50%;cursor:pointer;transition:all .2s ease}.nav-user-trigger:hover{border-color:var(--accent)}.nav-user-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}.nav-user-avatar-placeholder{width:36px;height:36px;border-radius:50%;background:var(--cta-gradient);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;color:var(--on-cta)}.nav-user-menu{min-width:220px}.nav-user-info{padding:.75rem .875rem;display:flex;flex-direction:column;gap:.125rem}.nav-user-name{font-size:.95rem;font-weight:600;color:var(--text)}.nav-user-username{font-size:.8rem}.nav-logout-btn,.nav-user-username{color:var(--text-muted)}.nav-logout-btn:hover{background:var(--error-bg)}.nav-dropdown-item-sudo,.nav-logout-btn:hover{color:var(--error-text)}.nav-dropdown-item-sudo:hover{background:var(--error-bg-hover);color:var(--error-text)}.nav-mobile-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;padding:.5rem;background:0 0;border:0;cursor:pointer;position:absolute;top:50%;right:.5rem;transform:translateY(-50%);z-index:1001;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.nav-mobile-toggle span{display:block;width:24px;height:2px;background:var(--text);border-radius:1px;transition:all .3s ease;transform-origin:center}.nav-mobile-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.nav-mobile-toggle.active span:nth-child(2){opacity:0}.nav-mobile-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}@media (max-width:1024px){.top-nav{position:fixed;top:0;left:0;right:0;width:100%;height:60px}.nav-container{padding:0 1rem;height:60px}.nav-main{display:flex;gap:.25rem}.nav-mobile-toggle{display:none}.nav-main .nav-dropdown-trigger{padding:.5rem;width:40px;height:40px;justify-content:center;border-radius:8px}.nav-trigger-icon{display:block}.nav-main .dropdown-arrow,.nav-trigger-text{display:none}.nav-dropdown-menu{min-width:180px}.nav-link{padding:.5rem}.nav-left{gap:.5rem;flex:1;min-width:0}.nav-right{gap:.25rem;flex-shrink:0}.page-with-nav{padding-top:60px}}@media (max-width:480px){.nav-logo{font-size:1.25rem}.nav-main .nav-dropdown-trigger{width:36px;height:36px;padding:.4rem}.nav-add-btn svg,.nav-calendar-btn svg,.nav-trigger-icon{width:18px;height:18px}.nav-add-btn{width:32px;height:32px}.nav-calendar-btn,.nav-notifications{width:36px;height:36px}.nav-user-avatar,.nav-user-avatar-placeholder{width:32px;height:32px}}.header-nav{display:flex;gap:1.5rem}@media (max-width:768px){.header-nav{gap:1rem}.nav-link{font-size:.8rem}}.nav-notifications-dropdown .nav-dropdown-menu{width:380px;max-width:calc(100vw - 2rem);padding:0;overflow:hidden}.nav-notifications-dropdown.open .nav-notifications{color:var(--text);background:var(--surface-hover)}.nav-notifications-dropdown .nav-dropdown-menu.show{opacity:1;visibility:visible;transform:translateY(0)}.notifications-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;border-bottom:1px solid var(--border-subtle)}.notifications-title{font-size:.95rem;font-weight:600;color:var(--text)}.notifications-mark-all{font-size:.75rem;color:var(--accent);background:0 0;border:0;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:background .2s ease}.notifications-mark-all:hover{background:var(--info-bg)}.notifications-list{max-height:400px;overflow-y:auto}.notifications-list::-webkit-scrollbar{width:6px}.notifications-list::-webkit-scrollbar-track{background:0 0}.notifications-list::-webkit-scrollbar-thumb{background:var(--surface-hover);border-radius:3px}.notifications-list::-webkit-scrollbar-thumb:hover{background:var(--surface-hover)}.notification-item{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;text-decoration:none;color:var(--text);border-bottom:1px solid var(--border-subtle);background:var(--bg-secondary);transition:background .2s ease;position:relative}.notification-item:not(.read){background:var(--surface)}.notification-item:hover{background:var(--surface-elevated)}.notification-item.read{opacity:.65}.notification-item.read:hover{opacity:.85}.notification-avatar-wrap{flex-shrink:0}.notification-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.notification-avatar-icon,.notification-avatar-placeholder{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center}.notification-avatar-placeholder{background:var(--cta-gradient);font-size:.75rem;font-weight:600;color:var(--on-cta)}.notification-avatar-icon{background:var(--surface-hover);color:var(--accent)}.notification-avatar-icon svg{width:20px;height:20px}.notification-content{flex:1;min-width:0}.notification-message{font-size:.85rem;color:var(--text-muted);margin:0 0 .25rem;line-height:1.4}.notification-message strong{color:var(--text);font-weight:600}.notification-message em{color:var(--text-muted);font-style:normal}.notification-time{font-size:.7rem;color:var(--text-muted)}.notification-dot{position:absolute;right:1rem;top:50%;transform:translateY(-50%);width:8px;height:8px;background:var(--accent);border-radius:50%}.notifications-error,.notifications-loading{padding:2rem 1rem;text-align:center;color:var(--text-muted);font-size:.85rem}.notifications-empty{padding:2.5rem 1rem;text-align:center;color:var(--text-muted)}.notifications-empty svg{width:40px;height:40px;margin-bottom:.75rem;opacity:.4}.notifications-empty p{margin:0;font-size:.9rem}@media (max-width:480px){.nav-notifications-dropdown .nav-dropdown-menu{position:fixed;top:60px;left:0;right:0;width:100%;max-width:100%;border-radius:0;border-left:none;border-right:none}.notifications-list{max-height:calc(100vh - 180px)}}.period-nav,.period-nav-btn{display:flex;align-items:center}.period-nav{gap:.25rem}.period-nav-btn{justify-content:center;width:26px;height:26px;background:var(--surface-elevated);border:1px solid var(--border);border-radius:5px;color:var(--text);cursor:pointer;padding:0;transition:all .15s ease}.period-nav-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-strong)}.period-nav-btn:disabled{opacity:.3;cursor:default}.period-nav-btn svg{width:14px;height:14px}.period-nav-label{font-size:.8rem;color:var(--text-muted);text-align:center;white-space:nowrap;padding:0 .25rem}@media (max-width:600px){.period-nav-label{font-size:.75rem;white-space:normal;max-width:140px}}.pp-meet-head{display:flex;align-items:flex-start;gap:20px;margin-bottom:8px}.pp-meet-head__body{min-width:0}.pp-meet-head__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:15px;color:var(--text-muted)}.pp-meet-head__place{font-weight:600;color:var(--text)}.pp-meet-head--cancelled .pp-title{color:var(--text-muted);text-decoration:line-through}.pp-meet-badge--cancelled{background:var(--error-bg);border-color:var(--error-text);color:var(--error-text)}.pp-meet-banner{display:flex;flex-direction:column;gap:4px;margin:18px 0 8px;padding:18px 20px;border-radius:16px;background:var(--error-bg);border:1px solid var(--error-text);border-left-width:5px}.pp-meet-banner__title{font-family:var(--font-display);font-size:22px;letter-spacing:.05em;color:var(--error-text)}.pp-meet-banner__text{font-size:15px;line-height:1.5;color:var(--text)}.pp-meet-organiser{display:flex;align-items:center;gap:14px;padding:16px 18px}.pp-meet-organiser__body{min-width:0}.pp-meet-organiser__name{display:block;font-size:16px;font-weight:600;color:var(--text)}@media (max-width:720px){.pp-meet-head{gap:14px}.pp-meet-banner__title{font-size:19px}}.pp-meet-about{font-size:15px;line-height:1.6;color:var(--text);white-space:pre-wrap}.pp-meet-about,.pp-meet-workout{padding:16px 18px}.pp-meet-workout__head{display:flex;flex-direction:column;gap:2px;margin-bottom:14px}.pp-meet-workout__name{font-size:16px;font-weight:600;color:var(--text)}.pp-meet-workout__note{margin:12px 0 0;font-size:15px;line-height:1.6;color:var(--text);white-space:pre-wrap}.pp-stats-inline{margin:0 0 14px}.pp-steps{display:flex;flex-direction:column;gap:8px;margin:14px 0 0;padding:0;list-style:none;counter-reset:pp-step}.pp-step{padding:10px 14px;border-radius:12px;background:var(--surface-hover);border:1px solid var(--border-subtle)}.pp-step__body{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px}.pp-step__intensity{font-weight:600;color:var(--text)}.pp-step__duration{font-family:var(--font-display);font-size:18px;letter-spacing:.03em;color:var(--text)}.pp-step__note,.pp-step__target{font-size:14px;color:var(--text-muted)}.pp-step__note{margin-top:4px;line-height:1.5}.pp-step__repeat{padding:2px 10px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-family:var(--font-display);font-size:15px;letter-spacing:.05em}.pp-step--repeat{background:0 0;border-color:var(--border)}.pp-steps--nested{gap:6px;margin-top:10px;padding-left:14px;border-left:2px solid var(--border)}@media (max-width:720px){.pp-step__duration{font-size:17px}}.pp-page{background:var(--page-bg);min-height:100vh;color:var(--text);font-family:var(--font-body)}.pp-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid var(--border-subtle)}.pp-nav-brand{font-family:var(--font-display);font-size:30px;letter-spacing:.15em;background:linear-gradient(135deg,var(--text) 0%,var(--blue-400) 50%,var(--accent) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-decoration:none}.pp-nav-actions{display:flex;align-items:center;gap:12px}.pp-nav-link{font-size:15px;color:var(--text-muted);text-decoration:none;display:inline-flex;align-items:center;min-height:44px;padding:0 4px}.pp-nav-link:hover{color:var(--text)}.pp-body{max-width:940px;margin:0 auto;padding:32px 20px 64px}.pp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border-radius:12px;font-size:15px;font-weight:600;text-decoration:none;white-space:nowrap}.pp-btn-primary{background:var(--cta-gradient);color:var(--on-cta)}.pp-btn-ghost{border:1px solid var(--border-strong);color:var(--text)}.pp-btn-ghost:hover{background:var(--surface-hover)}.pp-card{background:var(--surface-elevated);border:1px solid var(--border);border-radius:16px}.pp-section-title{font-family:var(--font-display);font-size:24px;letter-spacing:.08em;margin:34px 0 14px;color:var(--text)}.pp-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}.pp-section-head .pp-section-title{margin-bottom:14px}.pp-section-note{font-size:13px;color:var(--text-muted)}.pp-title{font-family:var(--font-display);font-size:46px;letter-spacing:.04em;line-height:1.02;margin:0 0 10px;color:var(--text);text-wrap:balance}.pp-prose,.pp-subtitle{font-size:15px;color:var(--text-muted)}.pp-subtitle{margin:0 0 16px}.pp-prose{line-height:1.6}.pp-prose p{margin:0 0 12px}.pp-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.pp-badge{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 12px;border-radius:999px;background:var(--surface-hover);border:1px solid var(--border);color:var(--text-muted);font-size:13px}.pp-badge-sport{background:var(--sport-badge-bg);border-color:var(--sport-badge-border);color:var(--sport-badge-text);font-weight:600}.pp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:18px}.pp-stat{background:var(--surface-elevated);border:1px solid var(--border);border-radius:16px;padding:16px 18px}.pp-stat-label{font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.pp-stat-value{font-family:var(--font-display);font-size:38px;line-height:1;color:var(--text)}.pp-stat-unit{font-size:19px;color:var(--text-muted);margin-left:4px}.pp-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.pp-chip{display:flex;align-items:baseline;gap:8px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:12px;padding:10px 14px}.pp-chip-label{font-size:13px;color:var(--text-muted)}.pp-chip-value{font-size:16px;font-weight:600;color:var(--text)}.pp-map,.pp-map-svg{display:block;width:100%}.pp-map{position:relative;border-radius:24px;overflow:hidden;border:1px solid var(--border);background:var(--bg-secondary)}.pp-map-svg{height:100%}.pp-map-track{fill:none;stroke:var(--accent);stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.pp-map-end,.pp-map-start{fill:var(--bg-primary);stroke:var(--success-text);stroke-width:4}.pp-map-end{stroke:var(--sport-run-text)}.pp-routemap{position:relative;width:100%;aspect-ratio:5/3;border-radius:24px;overflow:hidden;border:1px solid var(--border);background:var(--bg-secondary);z-index:0}.pp-routemap .pp-map-plain,.pp-routemap-fallback{width:100%;height:100%}.pp-routemap .leaflet-container{width:100%;height:100%;background:var(--bg-secondary);font:inherit}.pp-routemap .leaflet-control-zoom a{background:var(--surface-popover);color:var(--text);border-color:var(--border)}.pp-routemap .leaflet-control-attribution{background:var(--surface-popover);color:var(--text-muted);font-size:11px}.pp-routemap .leaflet-control-attribution a{color:var(--text-muted)}.pp-route-layout{display:grid;gap:16px}.pp-stats-route{margin-top:0}@media (min-width:900px){.pp-route-layout{grid-template-columns:minmax(0,1fr) 260px;align-items:start}.pp-stats-route{grid-template-columns:1fr}.pp-route-layout+.pp-section-title{margin-top:22px}}.pp-hero{position:relative;border-radius:24px;overflow:hidden;border:1px solid var(--border);background:var(--bg-secondary);min-height:320px}.pp-hero-plain{background:radial-gradient(ellipse 80% 60%at 50% -10%,#1e4d7b,transparent),radial-gradient(ellipse 60% 50%at 85% 110%,#1a3a5c,transparent),#0a1628;min-height:0;padding:20px 24px 22px}.pp-hero-plain .pp-hero-scrim{display:none}.pp-hero-plain .pp-hero-foot,.pp-hero-plain .pp-hero-top{position:static}.pp-hero-plain .pp-hero-foot{margin-top:38px}.pp-hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.pp-hero-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,22,40,.72)0,rgba(10,22,40,0) 30%,rgba(10,22,40,.35) 62%,rgba(10,22,40,.94) 100%)}.pp-hero-foot,.pp-hero-top{position:absolute;left:24px;right:24px}.pp-hero-top{top:20px}.pp-hero-foot{bottom:22px}.pp-hero .pp-title,.pp-hero-meta a,.pp-hero-name{color:var(--map-overlay-text)}.pp-hero-foot .pp-title{margin-bottom:14px}.pp-hero .pp-badge,.pp-hero-meta{color:var(--map-overlay-text-muted)}.pp-hero-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:15px}.pp-hero-meta a{text-decoration:none}.pp-hero .pp-badge{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2)}.pp-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.pp-avatar-initials{display:inline-flex;align-items:center;justify-content:center;background:var(--cta-gradient);color:var(--on-cta);font-size:13px;font-weight:600}.pp-avatar-lg{width:96px;height:96px;font-size:32px;font-family:var(--font-display)}.pp-rows{display:flex;flex-direction:column;gap:8px}.pp-row,.pp-row-icon{display:flex;align-items:center}.pp-row{gap:14px;padding:12px 16px;background:var(--surface-elevated);border:1px solid var(--border);border-radius:12px;color:var(--text);text-decoration:none;min-height:44px}.pp-row:hover{background:var(--surface-hover)}.pp-row-icon{width:34px;height:34px;border-radius:9px;justify-content:center;background:var(--sport-badge-bg);color:var(--sport-badge-text);flex-shrink:0;font-size:17px}.pp-row-body{flex:1;min-width:0}.pp-row-title{display:block;font-size:15px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-row-meta,.pp-row-trail{font-size:13px;color:var(--text-muted)}.pp-row-meta{display:block;margin-top:2px}.pp-row-trail{font-variant-numeric:tabular-nums;flex-shrink:0}.pp-lb{background:var(--surface-elevated);border:1px solid var(--border);border-radius:16px;padding:8px 4px}.pp-lb-row{display:grid;grid-template-columns:32px 32px 1fr auto;gap:12px;align-items:center;padding:10px 16px;color:var(--text);text-decoration:none}.pp-lb-row+.pp-lb-row{border-top:1px solid var(--border-subtle)}.pp-lb-rank{font-family:var(--font-display);font-size:20px;color:var(--text-muted);text-align:center;font-variant-numeric:tabular-nums}.pp-lb-rank-1{color:var(--warning-text)}.pp-lb-rank-2{color:var(--text-accent-soft)}.pp-lb-rank-3{color:var(--warning-orange-text)}.pp-lb-name{font-size:15px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-lb-date{display:block;font-size:13px;color:var(--text-muted)}.pp-lb-value{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;text-align:right}.pp-lb-locked,.pp-photos img{border:1px solid var(--border-subtle)}.pp-lb-locked{margin-top:10px;position:relative;border-radius:16px;overflow:hidden}.pp-lb-locked-rows{filter:blur(3px);opacity:.5;pointer-events:none}.pp-lb-locked-cta{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,transparent,var(--bg-primary) 90%)}.pp-splits{display:flex;flex-direction:column;gap:9px}.pp-split{display:grid;grid-template-columns:34px 1fr 76px 64px;gap:12px;align-items:center}.pp-split-elev,.pp-split-index{font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums}.pp-split-elev{text-align:right}.pp-split-track{height:26px;border-radius:6px;background:var(--surface);overflow:hidden}.pp-split-bar{height:100%;background:linear-gradient(90deg,rgba(0,212,255,.3),rgba(0,212,255,.6))}.pp-split-bar-best{background:linear-gradient(90deg,rgba(74,222,128,.35),rgba(74,222,128,.7))}.pp-split-pace{font-size:14px;font-weight:600;text-align:right;font-variant-numeric:tabular-nums;color:var(--text)}.pp-split-foot{margin-top:14px;padding-top:12px;border-top:1px solid var(--border-subtle);font-size:13px;color:var(--text-muted)}.pp-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pp-photos img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px}.pp-cta{margin-top:36px;border-radius:20px;border:1px solid var(--border-strong);background:linear-gradient(135deg,var(--accent-focus-ring),var(--surface-elevated));padding:26px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.pp-cta-title{font-family:var(--font-display);font-size:26px;letter-spacing:.05em;color:var(--text);margin-bottom:4px}.pp-cta-text{font-size:15px;color:var(--text-muted);max-width:460px}.pp-cta-actions{display:flex;gap:10px;flex-wrap:wrap}.pp-datebox{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:72px;padding:12px 14px;border-radius:16px;background:var(--surface-elevated);border:1px solid var(--border);flex-shrink:0}.pp-datebox-month{font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted)}.pp-datebox-day{font-family:var(--font-display);font-size:34px;line-height:1;color:var(--text)}.pp-datebox-dow{font-size:12px;color:var(--text-muted)}.pp-members{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.pp-member{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;text-decoration:none;color:var(--text)}.pp-member-name{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.pp-member-role{font-size:11px;color:var(--text-muted)}.pp-progress-track{height:10px;border-radius:999px;background:var(--surface);overflow:hidden;margin:10px 0 8px}.pp-lb-bar span,.pp-progress-fill{height:100%;background:var(--cta-gradient)}.pp-notice{background:var(--surface-elevated);border:1px solid var(--border);border-radius:16px;padding:20px;color:var(--text-muted);font-size:15px;margin:16px 0}@media (max-width:720px){.pp-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.pp-members{grid-template-columns:repeat(3,minmax(0,1fr))}.pp-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-title{font-size:34px}.pp-stat-value{font-size:30px}.pp-cta{flex-direction:column;align-items:flex-start}.pp-nav{padding:16px}.pp-body{padding:24px 16px 48px}.pp-hero-plain{padding:16px 18px 18px}.pp-hero-plain .pp-hero-foot{margin-top:26px}}.pp-cover{position:relative;height:220px;margin:-32px -20px 0;overflow:hidden;background:var(--bg-secondary)}.pp-cover-plain{background:radial-gradient(ellipse 80% 60%at 50% -10%,#1e4d7b,transparent),radial-gradient(ellipse 60% 50%at 85% 110%,#1a3a5c,transparent),#0a1628}.pp-cover-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.pp-cover-scrim{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,var(--bg-primary) 100%)}.pp-identity{display:flex;align-items:flex-end;gap:22px;margin-top:-58px;position:relative}.pp-identity-logo{width:112px;height:112px;border-radius:26px;object-fit:cover;border:3px solid var(--border-strong);flex-shrink:0;font-family:var(--font-display);font-size:40px}.pp-identity-body{flex:1;min-width:0;padding-bottom:6px}.pp-identity-body .pp-title{margin-bottom:6px}.pp-identity-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:15px;color:var(--text-muted)}.pp-identity-place{color:var(--text-accent-soft)}.pp-identity-action{flex-shrink:0;margin-bottom:6px}.pp-club-about{margin:20px 0 0;max-width:660px}.pp-meets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.pp-meet{display:flex;gap:16px;padding:18px 20px}.pp-meet-body{min-width:0;display:flex;flex-direction:column;gap:2px}.pp-meet-title{font-size:16px;font-weight:600;color:var(--text)}.pp-member{padding:14px 8px}.pp-avatar-md{width:46px;height:46px;font-size:15px}.pp-member-more{justify-content:center;border-color:var(--border-strong)}.pp-member-more-count{font-family:var(--font-display);font-size:24px;line-height:1;color:var(--text)}.pp-event-head{display:flex;gap:24px;align-items:flex-start}.pp-datebox-lg{min-width:104px;padding:14px 12px 16px;border-radius:18px}.pp-datebox-lg .pp-datebox-day{font-size:48px}.pp-event-head-body{min-width:0;flex:1}.pp-event-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:15px;color:var(--text-muted)}.pp-event-place{color:var(--text-accent-soft)}.pp-badge-open{background:var(--success-bg);border-color:var(--success-text);color:var(--success-text);font-weight:600}.pp-stat-accent{border-color:var(--border-strong)}#injury-modal .modal-close:hover,.pp-stat-accent .pp-stat-label{color:var(--text)}.pp-stat-value-sm{font-size:28px}.pp-chip-primary{background:var(--surface-hover);border-color:var(--border-strong)}.pp-chip-series{border-radius:999px}.pp-event-about{padding:22px 24px}@media (max-width:720px){.pp-cover{height:160px;margin:-24px -16px 0}.pp-identity{flex-wrap:wrap;gap:16px;margin-top:-44px}.pp-identity-logo{width:84px;height:84px;border-radius:20px;font-size:30px}.pp-identity-action{width:100%;margin-bottom:0}.pp-meets{grid-template-columns:minmax(0,1fr)}.pp-event-head{gap:16px}.pp-datebox-lg{min-width:84px}.pp-datebox-lg .pp-datebox-day{font-size:38px}.pp-stat-value-sm{font-size:22px}}.pp-store-badges{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.pp-store-badge{display:inline-block;flex-shrink:0}.pp-store-badge svg{display:block;height:44px;width:auto}.pp-hero .pp-badge-live{background:rgba(74,222,128,.16);border-color:rgba(74,222,128,.36);color:#4ade80;font-weight:600}.pp-badge-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.pp-challenge-about{padding:20px 22px;margin-top:22px}.pp-lb-row-bar{grid-template-columns:32px 32px 1fr 110px auto}.pp-lb-bar{height:8px;border-radius:999px;background:var(--surface);overflow:hidden}.pp-lb-bar span{display:block}.pp-elevation{border-radius:20px;overflow:hidden;border:1px solid var(--border);background:var(--surface-elevated);touch-action:pan-y}.pp-elevation-range{padding:12px 16px 0;font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums}.pp-elevation-plot{position:relative}.pp-elevation-svg{display:block;width:100%;height:140px}.pp-elevation-ticks{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none;box-sizing:border-box}.pp-elevation-tick{height:0;display:flex;align-items:center}.pp-elevation-tick span{padding:0 6px;font-size:11px;line-height:1;color:var(--text-muted);background:var(--surface-elevated)}.pp-elevation-fill{fill:url(#ppElevationFill);stroke:none}.pp-elevation-stop-top{stop-color:var(--accent);stop-opacity:.35}.pp-elevation-stop-bottom{stop-color:var(--accent);stop-opacity:.02}.pp-elevation-line{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round;vector-effect:non-scaling-stroke}.pp-elevation-grid{stroke:var(--border-subtle);stroke-width:1;vector-effect:non-scaling-stroke}.pp-elevation-cursor,.pp-elevation-dot{opacity:0;transition:opacity 120ms ease}.pp-elevation--active .pp-elevation-cursor,.pp-elevation--active .pp-elevation-dot{opacity:1}.pp-elevation-cursor{stroke:var(--text-muted);stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.pp-elevation-dot{fill:var(--accent);stroke:var(--bg-primary);stroke-width:2;vector-effect:non-scaling-stroke}.pp-elevation-axis{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;border-top:1px solid var(--border-subtle);font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums}.pp-count strong,.pp-elevation-readout{color:var(--text);font-weight:600}@media (max-width:720px){.pp-lb-row-bar{grid-template-columns:32px 32px 1fr auto}.pp-lb-bar{display:none}}.pp-splits-card{padding:18px 20px}.pp-identity-flat{align-items:center;margin-top:0}.pp-counts{display:flex;flex-wrap:wrap;gap:18px;margin-top:10px;font-size:15px;color:var(--text-muted)}.pp-count strong{margin-right:4px}.pp-heatmap-card{padding:16px}.pp-heatmap-scroll{overflow-x:auto}.pp-heatmap-months{display:flex;gap:3px;margin-left:32px;margin-bottom:6px}.pp-heatmap-month{width:11px;flex-shrink:0;font-size:11px;line-height:1;color:var(--text-muted);white-space:nowrap}.pp-heatmap-body{display:flex;gap:4px}.pp-heatmap-weekdays{display:flex;flex-direction:column;gap:17px;padding-top:14px;width:28px;flex-shrink:0;font-size:11px;line-height:11px;color:var(--text-muted)}.pp-heatmap-grid,.pp-heatmap-week{display:flex;gap:3px}.pp-heatmap-week{flex-direction:column;flex-shrink:0}.pp-heatmap-day{width:11px;height:11px;border-radius:2.5px;background:var(--surface-elevated);border:1px solid var(--border-subtle);flex-shrink:0}.pp-heatmap-pad{background:0 0;border-color:transparent}.pp-heatmap-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:12px}.pp-heatmap-legend{display:flex;align-items:center;gap:3px}.pp-heatmap-legend .pp-section-note{margin:0 4px}.pp-heat-0{background:var(--surface-elevated)}.pp-heat-1{background:color-mix(in srgb,var(--accent) 35%,transparent);border-color:transparent}.pp-heat-2{background:color-mix(in srgb,var(--accent) 55%,transparent)}.pp-heat-2,.pp-heat-3,.pp-heat-4{border-color:transparent}.pp-heat-3{background:color-mix(in srgb,var(--accent) 78%,transparent)}.pp-heat-4{background:var(--accent)}.pp-byline{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:15px;color:var(--text);margin-bottom:18px}.pp-byline-muted{color:var(--text-muted)}.pp-lb-placeholder{display:block;height:12px;width:45%;border-radius:4px;background:var(--surface-hover)}@media (max-width:720px){.pp-identity-flat{align-items:flex-start}.pp-splits-card{padding:14px}}.public-profile-container{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;padding:2rem;background:radial-gradient(ellipse 80% 50%at 50% -20%,var(--gradient-start),transparent),radial-gradient(ellipse 60% 40%at 80% 100%,var(--gradient-mid),transparent),radial-gradient(ellipse 40% 30%at 10% 80%,var(--gradient-end),transparent),var(--bg-primary)}.public-profile-content{text-align:center;z-index:10;max-width:520px;width:100%;animation:fadeInUp .8s ease-out}.public-nav{margin-bottom:2rem}.brand-name-small{font-family:var(--font-display);font-size:2rem;font-weight:400;letter-spacing:.15em;text-decoration:none;background:linear-gradient(135deg,var(--logo-gradient-start) 0%,var(--text-accent) 50%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;transition:all .3s ease}.brand-name-small:hover{filter:drop-shadow(0 0 20px var(--accent-glow))}.public-profile-card{background:var(--surface-elevated);border:1px solid var(--border);border-radius:24px;padding:2.5rem;backdrop-filter:blur(20px);display:flex;flex-direction:column;align-items:center;gap:1rem}.public-avatar{width:120px;height:120px;border-radius:50%;overflow:hidden;border:3px solid var(--border-strong);box-shadow:0 0 40px var(--accent-glow);margin-bottom:.5rem}.public-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder-xlarge{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--cta-gradient);font-size:2.5rem;font-weight:600;color:var(--on-cta);letter-spacing:.05em}.public-profile-name{font-family:var(--font-display);font-size:clamp(1.75rem,6vw,2.25rem);font-weight:400;letter-spacing:.08em;color:var(--text);margin:0;line-height:1.2}.public-profile-club,.public-profile-location{display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--text-accent-soft);font-size:.95rem;margin:0}.public-profile-club svg,.public-profile-location svg{opacity:.7;flex-shrink:0}.public-profile-bio{color:var(--text-on-hero);font-size:.95rem;line-height:1.5;margin:.5rem 0;max-width:360px}.public-social-stats{display:flex;align-items:center;gap:.75rem;margin:.75rem 0}.public-social-stats .social-stat{display:flex;align-items:baseline;gap:.35rem}.public-social-stats .social-stat-value{font-size:1.1rem;font-weight:600;color:var(--text)}.public-social-stats .social-stat-label{font-size:.85rem;color:var(--text-accent)}.public-social-stats .social-dot{color:var(--text-accent-strong);font-size:.9rem}.public-follow-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 2rem;background:var(--cta-gradient);color:var(--on-cta);border:0;border-radius:60px;font-family:var(--font-body);font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s ease;margin-top:.5rem}.public-follow-btn:hover{transform:scale(1.05);box-shadow:0 10px 40px var(--blue-shadow)}.public-follow-btn:active{transform:scale(.98)}.public-recent-activities{width:100%;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border);text-align:left}.public-recent-title{font-family:var(--font-display);font-size:.95rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .75rem}.public-recent-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.email-preview-header h3,.public-recent-item{margin:0}.public-recent-card{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;background:var(--surface-elevated);border:1px solid var(--border);border-radius:12px;color:var(--text);text-decoration:none;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.public-recent-card:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:0 6px 20px var(--blue-shadow)}.public-recent-icon{font-size:1.4rem;line-height:1;flex-shrink:0}.public-recent-body{display:flex;flex-direction:column;gap:.2rem;min-width:0;flex:1}.public-recent-card-title{font-size:.95rem;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.public-recent-meta{font-size:.8rem;color:var(--text-muted);display:flex;align-items:center;gap:.4rem}.public-recent-dot{color:var(--text-accent-strong)}.public-profile-footer{margin-top:2rem;font-size:.9rem;color:var(--text-muted)}.public-profile-footer a{color:var(--accent);text-decoration:none;font-weight:500}.public-profile-footer a:hover{text-decoration:underline}.private-icon,.private-profile-banner{display:flex;align-items:center;background:var(--surface-elevated)}.private-profile-banner{border:1px solid var(--border);border-radius:24px;padding:3rem 2.5rem;backdrop-filter:blur(20px);flex-direction:column;gap:1.25rem}.private-icon{width:80px;height:80px;justify-content:center;border-radius:50%;color:var(--text-accent)}.private-title{font-family:var(--font-display);font-size:clamp(1.5rem,5vw,2rem);font-weight:400;letter-spacing:.08em;color:var(--text);margin:0}.private-description{color:var(--text-accent-soft);font-size:1rem;line-height:1.6;max-width:320px;margin:0}.private-description strong{color:var(--text);font-weight:500}.private-actions{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-top:.5rem;width:100%}.private-signup-btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 2.5rem;background:var(--cta-gradient);color:var(--on-cta);border:0;border-radius:60px;font-family:var(--font-body);font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s ease;width:100%;max-width:280px}.private-signup-btn:hover{transform:scale(1.03);box-shadow:0 10px 40px var(--blue-shadow)}.private-or{color:var(--text-muted);font-size:.85rem}.private-login-link{color:var(--accent);font-size:.9rem;text-decoration:none}.private-login-link:hover{text-decoration:underline}.private-footer{margin-top:2.5rem;font-size:.9rem;color:var(--text-muted)}.brand-accent{color:var(--accent);font-weight:500}.public-error-card{background:var(--surface-elevated);border:1px solid var(--border);border-radius:24px;padding:3rem 2.5rem;backdrop-filter:blur(20px);display:flex;flex-direction:column;align-items:center;gap:1rem}.public-error-card .error-icon{color:var(--text-accent);margin-bottom:.5rem}.public-error-card .error-title{font-family:var(--font-display);font-size:2rem;font-weight:400;letter-spacing:.08em;color:var(--text);margin:0}.public-error-card .error-message{color:var(--text-accent-soft);font-size:1rem;margin:0}.public-login-btn{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 2rem;background:var(--cta-gradient);color:var(--on-cta);border:0;border-radius:60px;font-family:var(--font-body);font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s ease;margin-top:1rem}.public-login-btn:hover{transform:scale(1.05);box-shadow:0 10px 40px var(--blue-shadow)}.public-activity-container{min-height:100vh;background:var(--bg-primary);padding:1rem}.public-activity-container .public-nav{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;max-width:1200px;margin:0 auto 1rem}.public-login-link{color:var(--text-accent-soft);text-decoration:none;font-size:.9rem;padding:.5rem 1rem;border:1px solid var(--border-strong);border-radius:8px;transition:all .2s ease}.public-login-link:hover{background:var(--surface-hover);color:var(--text)}.public-activity-main{max-width:1200px;margin:0 auto}.public-hero-actions{pointer-events:none;opacity:.7}.public-cta-section{background:var(--surface-elevated);border:1px solid var(--border);border-radius:16px;padding:2rem;text-align:center;margin-top:2rem}.public-cta-text{color:var(--text-accent-soft);font-size:1rem;margin:0 0 1rem}.public-cta-btn{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 2rem;background:var(--cta-gradient);color:var(--on-cta);border:0;border-radius:60px;font-family:var(--font-body);font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s ease}.public-cta-btn:hover{transform:scale(1.05);box-shadow:0 10px 40px var(--blue-shadow)}@media (max-width:640px){.public-profile-container{padding:1.5rem}.private-profile-banner,.public-error-card,.public-profile-card{padding:2rem 1.5rem;border-radius:20px}.public-avatar{width:100px;height:100px}.avatar-placeholder-xlarge{font-size:2rem}.private-signup-btn,.public-follow-btn,.public-login-btn{border-radius:16px;width:100%}.public-activity-container,.public-activity-container .public-nav{padding:.5rem}}.public-profile-container.coach-profile-public{background:radial-gradient(ellipse 80% 50%at 50% -20%,var(--coach-wash-strong),transparent),radial-gradient(ellipse 60% 40%at 80% 100%,var(--coach-wash),transparent),radial-gradient(ellipse 40% 30%at 10% 80%,var(--coach-wash-weak),transparent),var(--bg-primary)}.public-follow-btn.coach-request-btn-public{background:linear-gradient(135deg,var(--coach-fill-start) 0%,var(--coach-fill-end) 100%)}.public-follow-btn.coach-request-btn-public:hover{box-shadow:0 10px 40px var(--coach-shadow)}.public-coach-sports{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem;width:100%;padding-top:1.5rem;border-top:1px solid var(--border)}.public-coach-sport{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--surface-elevated);border-radius:12px;text-align:left}.public-coach-sport-icon{font-size:1.5rem;flex-shrink:0}.public-coach-sport-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.public-coach-sport-name{font-weight:600;color:var(--text);font-size:.938rem}.public-coach-sport-exp{font-size:.813rem;color:var(--text-accent)}.gear-page-header,.gear-tabs{display:flex;margin-bottom:1.25rem}.gear-page-header{justify-content:space-between;align-items:center}.gear-page-header .settings-section-title{margin-bottom:0}.gear-tabs{gap:.5rem;border-bottom:1px solid var(--border);padding-bottom:0;flex-wrap:wrap}.gear-retired-toggle,.gear-tab{align-items:center;gap:.5rem;color:var(--text-muted);cursor:pointer}.gear-tab{display:flex;padding:.875rem 1.25rem;background:0 0;border:0;font-size:.95rem;font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s ease}.gear-tab:hover{color:var(--text);background:var(--surface-hover)}.gear-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.gear-tab .tab-count{background:var(--surface-hover);padding:.125rem .5rem;border-radius:10px;font-size:.75rem}.gear-tab.active .tab-count{background:var(--accent-focus-ring)}.gear-tab-content.hidden{display:none}.gear-retired-toggle{display:inline-flex;font-size:.85rem;margin-bottom:1rem;user-select:none}.gear-retired-toggle input{accent-color:var(--accent)}.gear-list{display:flex;flex-direction:column;gap:.75rem}.gear-card{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;padding:1.25rem 1.5rem;border:1px solid var(--border);border-radius:12px;transition:all .2s ease;gap:1.5rem}.gear-card,.gear-card:hover{background:var(--surface-elevated)}.gear-card.retired{opacity:.6}.gear-card.primary{border-color:var(--accent);background:var(--surface)}.gear-info{flex:1}.gear-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem}.gear-name{font-weight:600;font-size:1.1rem;color:var(--text)}.gear-badge{font-size:.7rem;padding:.2rem .5rem;border-radius:10px;font-weight:500;text-transform:uppercase}.gear-badge.primary{background:var(--accent-focus-ring);color:var(--accent)}.gear-badge.retired{background:var(--error-bg-hover);color:var(--error-text)}.gear-meta{color:var(--text-muted);font-size:.9rem;margin-bottom:.5rem}.gear-stats{display:flex;flex-wrap:wrap;gap:1.5rem;font-size:.9rem;margin-top:.5rem}.gear-stat{display:flex;align-items:center;gap:.3rem;color:var(--text-muted)}.gear-stat-value{color:var(--text);font-weight:500}.gear-actions{flex-direction:column;flex-shrink:0}.gear-actions,.gear-actions-row{display:flex;gap:.5rem}.gear-modal-content{max-width:550px}.gear-type-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;padding:.25rem 0 .5rem}.gear-type-option{padding:.85rem .5rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:.9rem;font-weight:500;cursor:pointer;text-align:center;transition:all .15s ease}.gear-type-option:hover{border-color:var(--accent);background:var(--surface-elevated);color:var(--accent)}@media (max-width:480px){.gear-type-picker{grid-template-columns:repeat(2,1fr)}}#gear-modal.show{display:flex}#gear-modal .modal-backdrop{position:absolute;inset:0;background:var(--overlay-darker)}#gear-modal .modal-content{position:relative;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;width:100%;max-width:500px;margin:1rem;max-height:90vh;overflow-y:auto}#gear-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-secondary)}#gear-modal .modal-title{font-size:1.25rem}#gear-modal .modal-close{background:0 0;border:0;color:var(--text-muted);font-size:1.5rem;cursor:pointer}#gear-modal .modal-body{padding:1.5rem}@media (max-width:768px){.gear-page-header{flex-direction:column;align-items:stretch;gap:.75rem}.gear-page-header .form-actions-btn{width:100%}.gear-tabs{gap:0}.gear-tab{padding:.75rem;flex:1;justify-content:center;font-size:.85rem}.gear-tab span:first-child{display:none}.gear-card{flex-direction:column;gap:1rem;padding:1rem}.gear-actions{flex-direction:column;align-self:stretch;width:100%}.gear-actions-row{display:flex;gap:.5rem;width:100%}.gear-btn{flex:1;text-align:center}.gear-stats{flex-wrap:wrap;gap:.75rem}#gear-modal .modal-content{margin:0;max-height:100vh;border-radius:0}#gear-modal .modal-body{padding:1rem}}.gear-maintenance-panel{width:100%;border-top:1px solid var(--border);padding-top:1rem;margin-top:.75rem}.gear-activities-panel.hidden,.gear-maintenance-panel.hidden{display:none}.maintenance-add-form{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.maintenance-form-row{display:flex;gap:.5rem;align-items:center}.maintenance-input{padding:.4rem .6rem;font-size:.85rem}.maintenance-cost{max-width:100px}.maintenance-notes{max-width:100%}.maintenance-empty{color:var(--text-muted);font-size:.85rem;padding:.25rem 0}.maintenance-list{display:flex;flex-direction:column;gap:.4rem}.maintenance-entry{display:flex;justify-content:space-between;align-items:center;padding:.5rem .6rem;background:var(--surface);border-radius:8px;font-size:.85rem;gap:.75rem}.maintenance-entry-info{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center}.maintenance-entry-type{font-weight:600;color:var(--text)}.maintenance-entry-date{color:var(--text-muted)}.maintenance-entry-cost{color:var(--accent);font-weight:500}.maintenance-entry-notes{color:var(--text-muted);font-style:italic}.gear-activities-panel{width:100%;border-top:1px solid var(--border);padding-top:1rem;margin-top:.75rem}.gear-activities-list{display:flex;flex-direction:column;gap:.4rem}.gear-activity-entry{display:grid;grid-template-columns:100px 1fr auto auto auto;gap:.75rem;align-items:center;padding:.5rem .6rem;background:var(--surface);border-radius:8px;font-size:.85rem;color:var(--text);text-decoration:none}.gear-activity-entry:hover{background:var(--surface-hover);text-decoration:none}.gear-activity-date{color:var(--text-muted)}.gear-activity-title{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gear-activity-sport{color:var(--text-muted);font-size:.8rem}.gear-activity-distance,.gear-activity-duration{color:var(--text-muted);font-variant-numeric:tabular-nums}@media (max-width:768px){.gear-activity-entry{grid-template-columns:1fr auto;gap:.25rem .75rem}.gear-activity-sport{display:none}}.btn-icon-sm{width:28px;height:28px;flex-shrink:0}.btn-icon-sm svg{width:14px;height:14px}@media (max-width:768px){.maintenance-form-row{flex-wrap:wrap}.maintenance-form-row .maintenance-input{flex:1;min-width:100px}.maintenance-cost{max-width:none}}.devices-discovered-title{font-size:.95rem;font-weight:600;color:var(--text-muted);margin:1.25rem 0 .75rem;text-transform:uppercase;letter-spacing:.03em}.discovered-devices-list{display:flex;flex-direction:column;gap:.75rem}.discovered-device-card{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:var(--surface-elevated);border:1px dashed var(--border);border-radius:12px;gap:1rem}.discovered-device-detail{display:flex;gap:1.5rem;margin-top:.35rem}.discovered-device-stat-main{font-size:.95rem;font-weight:600;color:var(--text)}.discovered-device-dates{display:flex;gap:1.5rem;margin-top:.25rem;font-size:.85rem;color:var(--text-muted)}#adopt-device-modal.show{display:flex}#adopt-device-modal .modal-backdrop{position:absolute;inset:0;background:var(--overlay-darker)}#adopt-device-modal .modal-content{position:relative;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;width:100%;max-width:500px;margin:1rem;max-height:90vh;overflow-y:auto}#adopt-device-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-secondary)}#adopt-device-modal .modal-title{font-size:1.25rem}#adopt-device-modal .modal-close{background:0 0;border:0;color:var(--text-muted);font-size:1.5rem;cursor:pointer}#adopt-device-modal .modal-body{padding:1.5rem}@media (max-width:768px){.discovered-device-card{flex-direction:column;align-items:flex-start;gap:.75rem}.discovered-device-card .gear-actions{align-self:stretch}.discovered-device-card .form-actions-btn{width:100%;text-align:center}#adopt-device-modal .modal-content{margin:0;max-height:100vh;border-radius:0}}.injuries-main{min-height:calc(100vh - 60px);padding:2rem}.injuries-container{max-width:1200px;margin:0 auto}.injuries-page-header{margin-bottom:2rem}.injuries-page-title{font-size:1.75rem;font-weight:600;margin-bottom:.5rem}.injuries-page-desc{color:var(--text-muted);font-size:1rem}.injury-layout{display:grid;grid-template-columns:320px 1fr;gap:2rem;align-items:start}.body-diagram-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.view-toggle{display:flex;gap:.5rem;margin-bottom:1rem;padding:.25rem;background:var(--surface-elevated);border-radius:8px}.view-btn{flex:1;padding:.5rem;background:0 0;border:0;border-radius:6px;color:var(--text-muted);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.view-btn.active{background:var(--accent-focus-ring);color:var(--accent)}.view-btn:hover:not(.active){color:var(--text)}.body-container{position:relative;padding:0 2rem}.side-label{position:absolute;top:50%;transform:translateY(-50%);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);writing-mode:vertical-rl;text-orientation:mixed}.left-label{right:0;transform:translateY(-50%) rotate(180deg)}.right-label{left:0}.body-container.back-view .left-label{left:0;right:auto;transform:translateY(-50%)}.body-container.back-view .right-label{right:0;left:auto;transform:translateY(-50%) rotate(180deg)}.body-svg{display:none;width:100%;max-width:240px;margin:0 auto}.body-svg.active{display:block}.body-part{fill:var(--border);stroke:var(--border-strong);stroke-width:1;cursor:pointer;transition:all .2s ease}.body-part:hover{fill:var(--accent-focus-ring);stroke:var(--accent);stroke-width:2}.body-part.injured-active{fill:var(--error-bg-hover);stroke:var(--error-text);stroke-width:2}.body-part.injured-healed{fill:var(--success-bg);stroke:var(--success-text);stroke-width:1.5}.body-hint{text-align:center;font-size:.8rem;color:var(--text-muted);margin-top:1rem}.injuries-list-section{min-width:0}.injuries-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.injuries-list{display:flex;flex-direction:column;gap:.75rem}.injury-card{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;transition:all .2s ease}.injury-card:hover{background:var(--surface-elevated)}.injury-card.active{border-left:3px solid var(--error-text)}.injury-card.healed{border-left:3px solid var(--success-text)}.injury-info{flex:1}.injury-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.injury-badge,.injury-name{font-weight:600;font-size:1rem}.injury-badge{font-size:.65rem;padding:.2rem .5rem;border-radius:10px;text-transform:uppercase}.injury-badge.active,.injury-btn.injury-btn-delete:hover{background:var(--error-bg-hover);color:var(--error-text)}.injury-badge.healed{background:var(--success-bg);color:var(--success-text)}.injury-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.85rem;color:var(--text-muted)}.injury-meta-item{display:flex;align-items:center;gap:.35rem}.injury-notes{margin-top:.5rem;font-size:.85rem;color:var(--text-muted);font-style:italic}.injury-actions{display:flex;flex-direction:column;gap:.5rem}.injury-btn{padding:.35rem .65rem;font-size:.75rem;border-radius:6px;cursor:pointer;transition:all .2s ease;background:var(--surface-elevated);border:1px solid var(--border);color:var(--text-muted)}.injury-btn:hover{background:var(--surface-hover);color:var(--text)}.injury-btn.injury-btn-delete{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.injury-btn.injury-btn-delete:hover{border-color:var(--error-border-strong)}.empty-injuries{text-align:center;padding:2rem;color:var(--text-muted)}.empty-injuries .hint{font-size:.85rem;margin-top:.5rem;opacity:.7}#injury-modal.show{display:flex}#injury-modal .modal-backdrop{position:absolute;inset:0;background:var(--overlay-darker);z-index:1}#injury-modal .modal-content{position:relative;background:var(--bg-secondary);border:1px solid var(--border-strong);border-radius:12px;width:100%;max-width:550px;margin:1rem;max-height:90vh;overflow-y:auto;z-index:2;box-shadow:0 20px 60px var(--overlay-darker)}#injury-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border-strong);position:sticky;top:0;background:var(--bg-secondary);z-index:3}#injury-modal .modal-title{font-size:1.25rem;font-weight:600;color:var(--text)}#injury-modal .modal-close{background:0 0;border:0;color:var(--text-muted);font-size:1.5rem;cursor:pointer;line-height:1;transition:color .2s ease}#injury-modal .modal-body{padding:1.5rem}@media (max-width:900px){.injuries-main{padding:1rem}.injuries-page-title{font-size:1.5rem}.injury-layout,.settings-field-row{grid-template-columns:1fr}.injury-layout{gap:1.5rem}.body-diagram-section{max-width:100%;padding:1rem}.body-container{padding:0 1.5rem}.injuries-header{flex-direction:column;align-items:flex-start;gap:.75rem}.injuries-header .settings-btn{width:100%;justify-content:center}.injury-card{flex-direction:column;gap:1rem;padding:1rem}.injury-header{flex-wrap:wrap;gap:.5rem}.injury-actions{flex-direction:row;width:100%}.injury-btn{flex:1;text-align:center}#injury-modal .modal-content{margin:0;max-height:100vh;border-radius:0}#injury-modal .modal-body{padding:1rem}}.settings-main{min-height:calc(100vh - 60px);padding:2rem}.settings-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:240px 1fr;gap:2rem}.settings-container--no-sidebar,.settings-container-wide{grid-template-columns:1fr}.settings-container-wide{max-width:1000px}.settings-sidebar{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem;height:fit-content;position:sticky;top:80px}.settings-sidebar-title{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;color:var(--text)}.settings-nav{display:flex;flex-direction:column;gap:.25rem}.settings-nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:8px;color:var(--text-muted);text-decoration:none;transition:all .2s ease}.settings-nav-item svg{width:20px;height:20px;flex-shrink:0}.settings-nav-item:hover{background:var(--surface-hover);color:var(--text)}.settings-nav-item.active{background:var(--accent-focus-ring);color:var(--accent)}.settings-content{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2rem;overflow-x:hidden;min-width:0}.settings-section-title{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.settings-section-desc{color:var(--text-muted);margin-bottom:2rem}.settings-field,.settings-form{display:flex;flex-direction:column}.settings-form{gap:1.5rem;min-width:0}.settings-field{gap:.5rem}.settings-field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.settings-label{font-size:.9rem;font-weight:500;color:var(--text-muted)}.settings-input{width:100%;box-sizing:border-box;padding:.75rem 1rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;color:var(--text);font-size:1rem;transition:all .2s ease}.settings-input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-focus-ring)}.settings-textarea{min-height:150px;resize:vertical}.settings-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpolyline points='6,9 12,15 18,9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px;padding-right:2.5rem}.settings-radio-group{display:flex;flex-wrap:wrap;gap:.75rem}.settings-radio input{appearance:none;width:18px;height:18px;border:2px solid var(--border-strong);border-radius:50%;background:0 0;cursor:pointer;position:relative}.settings-radio input:checked{border-color:var(--accent)}.settings-radio input:checked::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:var(--accent);border-radius:50%}.settings-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:0}.settings-btn-primary{background:var(--cta-gradient);color:var(--on-cta)}.settings-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px var(--accent-shadow)}.settings-btn-primary:disabled{opacity:.6;cursor:not-allowed}.settings-btn-secondary{background:var(--surface-elevated);border:1px solid var(--border-strong);color:var(--text)}.settings-btn-secondary:hover{background:var(--surface-hover)}.settings-btn-danger{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text)}.settings-btn-danger:hover{background:var(--error-bg-hover)}.settings-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1.5rem;border-top:1px solid var(--border)}.settings-divider{height:1px;background:var(--surface-hover);margin:1.5rem 0}.settings-radio{display:flex;align-items:center;gap:.625rem;cursor:pointer;padding:.25rem 0;font-size:.9rem;color:var(--text)}.settings-radio input[type=checkbox],.settings-radio input[type=radio]{width:1rem;height:1rem;accent-color:var(--accent);flex-shrink:0}.settings-subsection{margin-top:2rem;min-width:0}.settings-subsection-title{font-size:1.1rem;font-weight:600;margin-bottom:1rem}.settings-message{padding:.75rem 1rem;border-radius:8px;font-size:.9rem;margin-top:1rem;display:none}.settings-message.show{display:block}.settings-message.success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text)}.settings-message.error{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text)}.settings-message.info{background:var(--blue-bg);border:1px solid var(--blue-border);color:var(--blue-text)}@media (max-width:900px){.settings-main{padding:1rem}.settings-container{grid-template-columns:56px 1fr;gap:.75rem}.settings-container--no-sidebar{grid-template-columns:1fr}.settings-sidebar{padding:.5rem;position:sticky;top:70px}.settings-sidebar-title{display:none}.settings-nav{gap:.25rem}.settings-nav-item{justify-content:center;padding:.65rem;font-size:0}.settings-nav-item svg{width:20px;height:20px}.settings-content{padding:1rem;overflow-x:hidden}.settings-section-title{font-size:1.25rem}.settings-section-desc{font-size:.9rem;margin-bottom:1.5rem}.settings-field-row{grid-template-columns:1fr}.settings-actions{flex-wrap:wrap}.settings-btn{flex:1;min-width:140px}}.sport-switcher{display:flex;gap:.5rem;margin-bottom:1.5rem;padding:.25rem;background:var(--surface-elevated);border-radius:10px;width:fit-content}.sport-tab{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.9rem;font-weight:500;color:var(--text-muted);background:0 0;border:0;border-radius:8px;cursor:pointer;transition:all .2s ease}.sport-tab .sport-icon{flex-shrink:0;font-size:16px;line-height:1;opacity:.8}.sport-tab.active .sport-icon,.sport-tab:hover .sport-icon{opacity:1}.sport-tab:hover{color:var(--text);background:var(--surface-elevated)}.sport-tab.active{color:var(--on-accent);background:var(--accent)}.pr-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.pr-layout.pr-layout-single{grid-template-columns:1fr;max-width:600px}.pr-form-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.pr-list-section{min-width:0}.pr-list{display:flex;flex-direction:column;gap:.75rem}.pr-card{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;transition:all .2s ease;gap:1rem}.pr-card:hover{background:var(--surface-elevated)}.pr-info{flex:1;min-width:0;overflow:hidden}.pr-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem}.pr-distance{font-weight:600;font-size:1rem;color:var(--text)}.pr-time{font-size:1.25rem;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}.pr-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.85rem;color:var(--text-muted);margin-top:.25rem}.pr-meta-item{display:flex;align-items:center;gap:.35rem}.pr-race-link{color:var(--accent);text-decoration:none;display:inline-flex;align-items:center;gap:.25rem}.pr-race-link:hover,.sudo-dup-pair-user a:hover{text-decoration:underline}.pr-actions{display:flex;gap:.5rem;align-items:center;flex-shrink:0}.pr-btn{padding:.35rem .65rem;font-size:.75rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s ease;border:1px solid var(--border-strong);white-space:nowrap;flex-shrink:0;min-width:60px}.pr-btn,.pr-btn:hover{background:var(--surface-hover);color:var(--text)}.pr-btn.edit-btn:hover{background:var(--blue-bg);border-color:var(--blue-border);color:var(--blue-text)}.pr-btn.delete-btn{opacity:1!important}.pr-btn.delete-btn:hover{background:var(--error-bg);border-color:var(--error-border-strong);color:var(--error-text);opacity:1!important}.empty-prs{text-align:center;padding:2rem;color:var(--text-muted);background:var(--surface);border:1px dashed var(--border);border-radius:10px}.empty-prs .hint{font-size:.85rem;margin-top:.5rem;opacity:.7}@media (max-width:900px){.sport-switcher{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.sport-tab{flex:1;justify-content:center;min-width:44px;padding:.6rem}.sport-tab .sport-name{display:none}.sport-tab .sport-icon{font-size:22px}.pr-layout{grid-template-columns:1fr;gap:1.5rem}.pr-form-section{padding:.75rem;overflow:hidden}.pr-form-section .settings-form{gap:1rem}.pr-form-section .settings-field{min-width:0}.pr-form-section .settings-input{font-size:16px;padding:.6rem .75rem}.pr-form-section .settings-label{font-size:.8rem}.pr-card{flex-direction:column;gap:.75rem;padding:.75rem}.pr-actions{align-self:flex-start}.pr-header{flex-direction:column;align-items:flex-start;gap:.25rem}.pr-meta{gap:.5rem}}.compare-table{font-size:.85rem;table-layout:fixed}.compare-table th:nth-child(1){width:18%}.compare-table th:nth-child(2),.compare-table th:nth-child(3){width:38%}.compare-table th:nth-child(4){width:6%;text-align:center}.compare-field{font-family:var(--font-mono);color:var(--text-muted);padding:.3rem .5rem;word-break:break-all}.compare-value{padding:.3rem .5rem;vertical-align:top;word-break:break-word}.compare-eq-cell{text-align:center;padding:.3rem}.compare-diff,.compare-eq{color:var(--text-muted);font-family:var(--font-mono)}.compare-diff{color:var(--error-text);font-weight:700}.compare-diff-row{background:var(--error-bg-subtle)}.compare-side-a{box-shadow:inset 3px 0 0 var(--error-text)}.compare-side-b{box-shadow:inset 3px 0 0 var(--warning-text)}.compare-null{font-style:italic}.compare-array,.compare-null,.compare-object{color:var(--text-muted)}.compare-section-row,.sudo-table tr:hover td{background:var(--surface)}.compare-section-row td{padding:.4rem .5rem;font-size:.9rem;letter-spacing:.04em}.stream-stat{line-height:1.4}.stream-stat>div{margin-bottom:.15rem}.compare-section-row td,.stream-label{color:var(--text-muted);text-transform:uppercase}.stream-label{font-size:.75rem;margin-right:.2rem}.sudo-subsection-title{margin-top:1.5rem;margin-bottom:.5rem;font-size:1.1rem}.compare-toolbar{margin:1rem 0;display:flex;gap:.5rem;align-items:center}.compare-only-diff .compare-row-equal{display:none}.sudo-dup-actions,.sudo-dup-toolbar{display:flex;flex-wrap:wrap;align-items:center}.sudo-dup-toolbar{justify-content:space-between;gap:1rem;position:sticky;top:0;z-index:5;padding:.7rem .9rem;margin-bottom:1rem;background:var(--surface-elevated);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:8px}.sudo-dup-actions{gap:.5rem}.sudo-dup-count{font-variant-numeric:tabular-nums;font-weight:700;color:var(--text)}.sudo-dup-truncated{color:var(--warning-text)}.sudo-dup-selected{font-family:var(--font-mono);font-size:.8rem;padding:.2rem .55rem;border-radius:999px;background:var(--surface-elevated);border:1px solid var(--border);color:var(--text-muted)}.sudo-dup-selected[data-active=true]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}.sudo-dup-pair{border:1px solid var(--border);border-radius:8px;margin-bottom:.85rem;overflow:hidden;background:var(--surface)}.sudo-dup-pair:hover{border-color:var(--border-strong)}.sudo-dup-pair-head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.5rem .7rem;background:var(--surface-elevated);border-bottom:1px solid var(--border);font-size:.78rem}.sudo-dup-pair-head form{display:inline-flex}.sudo-dup-pair-title{font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:34ch}.sudo-dup-pair-user{font-family:var(--font-mono);color:var(--text-muted)}.sudo-breadcrumb a,.sudo-dup-pair-user a,.sudo-page-links a{color:var(--accent);text-decoration:none}.sudo-dup-pair-spacer{margin-left:auto}.sudo-dup-grid{width:100%;border-collapse:collapse;font-size:.8rem}.sudo-dup-grid td,.sudo-dup-grid th{border-bottom:1px solid var(--border-subtle);white-space:nowrap}.sudo-dup-grid th{text-align:left;font-weight:500;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:.35rem .7rem}.sudo-dup-grid td{padding:.4rem .7rem}.sudo-dup-side-b td{background:var(--surface-elevated)}.sudo-dup-row-selected td{background:var(--error-bg-subtle)}.sudo-dup-row-selected td:first-child{box-shadow:inset 3px 0 0 var(--error-text)}.sudo-dup-preset-label{font-size:.78rem;color:var(--text-muted)}.sudo-dup-preset{max-width:22rem;padding:.35rem .55rem;background:var(--surface-elevated);border:1px solid var(--border-strong);border-radius:6px;color:var(--text);font-family:inherit;font-size:.8rem;cursor:pointer}.sudo-dup-preset:focus{outline:0;border-color:var(--accent)}.sudo-dup-preset option,.sudo-filter-form option{background:var(--surface-popover);color:var(--text)}.sudo-dup-side{font-family:var(--font-mono);font-weight:700;color:var(--text-muted);white-space:nowrap}.sudo-dup-origin{display:inline-block;margin-left:.35rem;font-family:var(--font-body);font-weight:500;font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.sudo-dup-id,.sudo-dup-num{font-family:var(--font-mono)}.sudo-dup-id{font-size:.78rem}.sudo-dup-num{font-variant-numeric:tabular-nums}.sudo-dup-same{color:var(--text-muted);opacity:.65}.sudo-dup-diff{color:var(--warning-text);font-weight:600}.sudo-dup-delta{font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);margin-left:.3rem}.sudo-dup-keep{display:inline-block;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;padding:.1rem .4rem;border-radius:3px;background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text)}.sudo-dup-richer{color:var(--success-text);font-weight:600}.sudo-dup-pick{width:1px}.sudo-dup-pick input{width:16px;height:16px;cursor:pointer}.sudo-dup-empty{color:var(--text-muted)}@media (max-width:900px){.sudo-dup-toolbar{position:static}}.sa-section{margin-bottom:2.5rem}.sa-section-title,.sa-top-bar{display:flex;align-items:center}.sa-section-title{gap:.6rem;font-size:1.2rem;font-weight:600;margin:0 0 1.25rem;color:var(--text)}.analytics-card-header svg,.sa-section-title svg{width:22px;height:22px;color:var(--accent);flex-shrink:0}.sa-top-bar{justify-content:space-between;margin-left:-2rem;margin-right:-2rem;margin-bottom:1.5rem;padding:.75rem 2rem;gap:1rem;flex-wrap:wrap;position:sticky;top:60px;z-index:20;background:var(--surface-popover);border-bottom:1px solid var(--border)}@media (max-width:900px){.sa-top-bar{margin-left:-1rem;margin-right:-1rem;padding-left:1rem;padding-right:1rem}}.sa-period-controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.sa-period-controls .period-nav-label{min-width:11rem}.sa-current-badge{font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);border:1px solid var(--border);border-radius:4px;padding:.15rem .4rem;margin-left:.5rem;vertical-align:middle}.sa-chart-note{font-size:.8rem;color:var(--text-muted);margin:-.25rem 0 .75rem}.sa-tab-nav{display:flex;gap:.25rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:3px}.sa-tab-btn{padding:.4rem 1.25rem;border:0;border-radius:6px;background:0 0;color:var(--text-muted);cursor:pointer;font-size:.9rem;font-weight:500;transition:all .15s ease}.sa-tab-btn:hover{color:var(--text)}.sa-tab-btn.active{background:var(--error-bg);color:var(--accent)}.sa-period-selector{display:flex;gap:.5rem}.sa-period-btn{padding:.4rem 1rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text-muted);cursor:pointer;font-size:.85rem;font-weight:500;transition:all .15s ease}.sa-period-btn.active,.sa-period-btn:hover{border-color:var(--accent);color:var(--text)}.sa-period-btn.active{background:var(--error-bg);color:var(--accent)}.sa-charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.sa-chart-full,.sa-charts-grid{margin-bottom:1.25rem}.sa-chart-card,.sa-table-card{background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;padding:1.25rem}.sa-chart-title{font-size:.9rem;font-weight:600;margin:0 0 .75rem;color:var(--text)}.sa-chart-wrapper{position:relative;height:220px}.sa-chart-small .sa-chart-wrapper{height:200px}.sa-chart-tall .sa-chart-wrapper{height:420px}.sa-tables-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.25rem}.sa-error-count{color:var(--error-text);font-weight:600}.sa-loading{text-align:center;padding:2rem;color:var(--text-muted);font-size:.9rem}.analytics-section{display:flex;flex-direction:column;gap:1.5rem}.analytics-card{background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;overflow:hidden}.analytics-card-header{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:var(--surface);border-bottom:1px solid var(--border)}.analytics-card-header svg{width:32px;height:32px}.analytics-card-title{font-size:1.1rem;font-weight:600;margin:0 0 .25rem;color:var(--text)}.analytics-card-desc{font-size:.9rem;color:var(--text-muted);margin:0}.analytics-card-body{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.rebuild-form{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.rebuild-form .sudo-input{width:180px}.rebuild-form .sudo-checkbox{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;cursor:pointer}.rebuild-form .sudo-checkbox input{cursor:pointer}.analytics-warning{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:var(--warning-yellow-bg);border:1px solid var(--warning-yellow-border);border-radius:6px;color:var(--warning-text);font-size:.9rem;margin:0}.analytics-warning svg{width:20px;height:20px;flex-shrink:0;margin-top:2px}.rebuild-form .sudo-btn-danger{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem}.analytics-result{padding:1rem 1.5rem;background:var(--surface);border-top:1px solid var(--border)}.analytics-result.success{background:var(--success-bg);border-top-color:var(--success-border);color:var(--success-text)}.analytics-result.error{background:var(--error-bg);border-top-color:var(--error-border);color:var(--error-text)}.analytics-result.processing{background:var(--blue-bg);border-top-color:var(--blue-border);color:var(--blue-text)}.sa-error-row{cursor:pointer;transition:background .15s ease}.sa-error-row:hover{background:rgba(255,255,255,.05)}.sa-error-row.active{background:rgba(255,107,107,.1)}.sa-click-hint{font-size:.75rem;font-weight:400;color:var(--text-muted)}.sa-error-details-title{margin-top:1.25rem}.sa-error-details-scroll{max-height:400px;overflow-y:auto}.sa-error-user{color:var(--blue-text);text-decoration:none}.sa-error-user:hover{text-decoration:underline}.sa-nowrap{white-space:nowrap}.fu-adoption-bar-bg{background:var(--surface-hover);border-radius:4px;height:18px;min-width:120px}.fu-adoption-bar{background:linear-gradient(90deg,rgba(59,130,246,.7),rgba(59,130,246,.3));border-radius:4px;height:100%;transition:width .4s ease}.sudo-stats-with-trend .sudo-stat{position:relative}.sudo-stat-trend{font-size:.75rem;font-weight:600;margin-top:.15rem;min-height:1.1em}.trend-up{color:var(--success-text)}.trend-up::before{content:"↑"}.trend-down{color:var(--error-text)}.trend-down::before{content:"↓"}.arni-calendar th,.trend-neutral{color:var(--text-muted)}.fu-bar-wrapper{height:300px}.fu-content-wrapper,.fu-social-wrapper{height:260px}.ue-event-badge{display:inline-block;font-size:.75rem;font-family:var(--font-mono);padding:.15rem .45rem;border-radius:4px;background:var(--surface-hover);color:var(--text-muted)}.ue-event-app{background:rgba(59,130,246,.15);color:#93c5fd}.ue-event-recording{background:rgba(34,197,94,.15);color:#86efac}.ue-event-share{background:rgba(168,85,247,.15);color:#d8b4fe}.ue-event-error{background:rgba(239,68,68,.15);color:#fca5a5}.ue-event-deeplink{background:rgba(6,182,212,.15);color:#67e8f9}.ue-event-feedback{background:rgba(234,179,8,.15);color:#fde047}.ue-event-permission{background:rgba(249,115,22,.15);color:#fdba74}.ue-event-sensor{background:rgba(148,163,184,.15);color:#cbd5e1}.sa-no-errors{color:rgba(34,197,94,.8)}.fb-list{display:flex;flex-direction:column;gap:.75rem}.fb-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1rem 1.25rem}.fb-text{font-size:.95rem;color:var(--text);line-height:1.5;white-space:pre-wrap;word-break:break-word;margin-bottom:.6rem}.fb-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem;font-size:.8rem;color:var(--text-muted)}.fb-user{color:var(--blue-text);text-decoration:none}.fb-user:hover,.sudo-breadcrumb a:hover,.sudo-page-links a:hover{text-decoration:underline}.fb-sep{color:var(--border)}.fb-date{font-family:var(--font-mono)}.fb-empty{color:var(--text-muted);font-style:italic;padding:.5rem 0}.sa-section-note{font-size:.8rem;font-weight:400;color:var(--text-muted);margin-left:.25rem}@media (max-width:900px){.sa-charts-grid,.sa-tables-grid{grid-template-columns:1fr}}@media (max-width:600px){.analytics-card-header{flex-direction:column;align-items:flex-start}}.sa-batch-checkboxes{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem 1.5rem}@media (max-width:600px){.sa-batch-checkboxes{grid-template-columns:1fr}}.sa-batch-checkboxes .sudo-checkbox{display:inline-flex;align-items:center;gap:.4rem;cursor:pointer}.sa-batch-danger-tag{color:var(--warning-text);font-size:.8rem;margin-left:.3rem}.sa-batch-status-list{display:flex;flex-direction:column;gap:.4rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.sa-batch-status-row{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;border-radius:6px;background:var(--surface);font-size:.9rem}.sa-batch-status-row.pending{opacity:.6}.sa-batch-status-row.running{background:var(--blue-bg);color:var(--blue-text)}.sa-batch-status-row.done{background:var(--success-bg);color:var(--success-text)}.sa-batch-status-row.failed{background:var(--error-bg);color:var(--error-text)}.sa-batch-status-row .sa-batch-status-label{font-weight:600;min-width:180px}.sa-batch-status-row .sa-batch-status-detail{opacity:.85;font-size:.85rem}.arni-calendar{width:100%;border-collapse:separate;border-spacing:4px;table-layout:fixed}.arni-calendar th{text-align:center;font-size:12px;font-weight:500;padding:4px 0}.arni-calendar-cell{background:var(--surface);border:1px solid var(--border);border-radius:6px;height:90px;vertical-align:top;padding:6px;cursor:pointer;transition:background 120ms ease}.arni-calendar-cell:hover{background:var(--surface-hover)}.arni-calendar-cell--out{background:0 0;border-color:transparent;cursor:default}.arni-calendar-cell--today{border-color:var(--accent)}.arni-calendar-date{font-size:13px;font-weight:600;color:var(--text);margin-bottom:4px}.arni-calendar-badges{display:flex;flex-wrap:wrap;gap:2px;font-size:13px;line-height:1}.arni-calendar-badge{display:inline-flex;align-items:center;gap:1px;padding:1px 3px;border-radius:4px;background:var(--surface-elevated)}.arni-day-tip{border-left:3px solid var(--border);padding:8px 12px;margin-bottom:12px}.arni-day-tip-meta{display:flex;gap:8px;font-size:12px;margin-bottom:4px}.arni-day-dialog[open]{width:min(880px,92vw);max-width:min(880px,92vw);height:auto;max-height:85vh;margin:auto;padding:0;border:1px solid var(--border);border-radius:10px;background:var(--surface-popover);color:var(--text);overflow:hidden;box-shadow:0 20px 60px var(--overlay-darker);display:flex;flex-direction:column}.arni-day-dialog::backdrop{background:var(--overlay-darker)}.arni-day-dialog-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:16px}.arni-day-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}.arni-day-dialog-title{margin:0;font-size:16px;font-weight:600}.arni-day-dialog-close{background:0 0;border:0;color:var(--text-muted);font-size:24px;line-height:1;cursor:pointer;padding:0 4px}.arni-day-dialog-close:hover{color:var(--text)}.sudo-challenges-toolbar{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap}.sudo-challenges-toolbar .sudo-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.challenge-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.challenge-badge-global{background:var(--blue-bg);color:var(--blue-text)}.challenge-badge-club{background:var(--purple-bg);color:var(--purple-text)}.challenge-status-active{color:var(--success-text);font-weight:600}.challenge-status-upcoming{color:var(--warning-text);font-weight:600}.challenge-status-ended{color:var(--text-muted)}.ce-col-route{width:50%}.ce-tabs{display:flex;gap:var(--space-xs, 0.25rem);border-bottom:1px solid var(--border);margin-bottom:1rem}.ce-tab{padding:.5rem 1rem;color:var(--text-muted);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}.ce-tab-active,.ce-tab:hover{color:var(--text)}.ce-tab-active{border-bottom-color:var(--accent);font-weight:600}.ce-col-message{width:40%}.ce-message{word-break:break-word;max-height:3.6em;overflow:hidden}.ce-stack{font-size:.8em;color:var(--text-muted);word-break:break-all;margin-top:.15rem}.ce-row{cursor:pointer}.ce-row:hover{background:var(--surface-hover)}.connection-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem}.connection-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;color:var(--text-muted);cursor:pointer;font-size:.9rem;transition:all .2s ease}.connection-tab svg{width:18px;height:18px}.connection-tab:hover{background:var(--surface-elevated);color:var(--text)}.connection-tab.active{background:var(--error-bg-hover);border-color:var(--error-border-strong);color:#ff6b6b}.connection-panel{display:none}.connection-panel.active{display:block}.connection-panel-title{font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:var(--text)}.health-panel-title{margin-top:3rem}.health-panel-clear{background:var(--success-bg);border:1px solid var(--success-border);border-radius:10px;color:var(--success-text);font-weight:600;margin-bottom:1rem;padding:.85rem 1.25rem}.health-gauge-list{display:flex;flex-direction:column;gap:.75rem}#email-editor,.health-gauge{background:var(--surface-elevated)}.health-gauge{border:1px solid var(--border);border-left-width:4px;border-radius:10px;padding:1rem 1.25rem}.health-gauge--critical{border-left-color:var(--error-text)}.health-gauge--warning{border-left-color:var(--warning-text)}.health-gauge--info{border-left-color:var(--info-text)}.health-gauge--ok{border-left-color:var(--success-text)}.health-gauge-head{align-items:baseline;display:flex;flex-wrap:wrap;gap:.6rem}.health-gauge-title{color:var(--text);flex:1;font-size:1rem;font-weight:600}.health-gauge-count{color:var(--text);font-family:var(--font-mono);font-size:1.35rem;font-weight:700}.health-gauge-badge{border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.04em;padding:.2rem .6rem;text-transform:uppercase}.health-gauge-badge--critical{background:var(--error-bg);color:var(--error-text)}.health-gauge-badge--warning{background:var(--warning-bg);color:var(--warning-text)}.health-gauge-badge--info{background:var(--info-bg);color:var(--info-text)}.health-gauge-badge--ok{background:var(--success-bg);color:var(--success-text)}.health-gauge-action,.health-gauge-detail{color:var(--text-muted);font-size:.9rem;margin-top:.5rem}.health-gauge-action{color:var(--text)}.health-gauge-examples{margin-top:.6rem}.health-gauge-examples summary{color:var(--text-muted);cursor:pointer;font-size:.85rem}.health-gauge-examples ul{margin:.5rem 0 0;padding-left:1.25rem}.health-gauge-examples li{color:var(--text-muted);font-size:.82rem;overflow-wrap:anywhere;padding:.15rem 0}.email-form{margin-bottom:2rem}.email-actions{display:flex;align-items:center;gap:1rem}.email-status,.recipient-count{font-size:.85rem;color:var(--text-muted)}.email-status.success{color:var(--success-text)}.email-status.error{color:var(--error)}.recipient-count{margin-bottom:1rem;min-height:1.2em}.char-count{font-size:.8rem;color:var(--text-muted);font-weight:400}#email-editor{color:var(--text);border-radius:0 0 6px 6px}#email-editor .ql-editor{min-height:200px;font-size:15px;line-height:1.6}.ql-container.ql-snow,.ql-toolbar.ql-snow{border-color:var(--border-strong)!important}.ql-toolbar.ql-snow{border-radius:6px 6px 0 0;background:var(--surface)}.ql-container.ql-snow{border-radius:0 0 6px 6px}.ql-snow .ql-stroke{stroke:var(--text-muted)!important}.ql-snow .ql-fill{fill:var(--text-muted)!important}.ql-snow .ql-picker-label{color:var(--text-muted)!important}.email-html-textarea{font-family:var(--font-mono);font-size:.85rem;line-height:1.5;resize:vertical;min-height:200px}#push-body{resize:vertical;font-family:inherit;font-size:.95rem;padding:.5rem .75rem}.channel-badge{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;letter-spacing:.03em}.channel-email{background:var(--info-bg);color:var(--info-text)}.channel-push{background:var(--warning-bg);color:var(--warning-text)}.email-preview-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center}.email-preview-modal.hidden{display:none}.email-preview-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6)}.email-preview-content{position:relative;background:var(--surface);border-radius:12px;width:90%;max-width:700px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.email-preview-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border)}.email-preview-frame{width:100%;height:500px;border:0;background:#fff}.email-log-table{width:100%;border-collapse:collapse;font-size:.9rem}.email-log-table td,.email-log-table th{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--border)}.email-log-table th{font-size:.8rem;text-transform:uppercase}.msg-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border)}.email-log-table th,.msg-tab{color:var(--text-muted);font-weight:500}.msg-tab{background:0 0;border:1px solid transparent;border-bottom:none;cursor:pointer;font-size:.95rem;padding:.5rem 1.25rem;border-radius:999px 999px 0 0;margin-bottom:-1px}.msg-tab:hover{color:var(--text);background:var(--surface-hover)}.msg-tab--active{color:var(--accent);background:var(--surface-elevated);border-color:var(--border);border-bottom-color:var(--surface-elevated)}.msg-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.msg-pane{margin-bottom:2rem}.msg-pane-loading{color:var(--text-muted);padding:2rem 0;text-align:center}.msg-channel-toggle{display:flex;gap:.5rem;margin-bottom:1.25rem}.msg-channel-option{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem 1rem;border:1px solid var(--border);border-radius:999px;cursor:pointer;font-size:.9rem;color:var(--text-muted);background:var(--surface)}.msg-channel-option--active{background:var(--surface-elevated);color:var(--text);border-color:var(--accent)}.msg-channel-option input{margin:0}.msg-template-row{display:flex;gap:.5rem;align-items:stretch}.msg-template-row .sudo-select{flex:1}.msg-placeholder-hints{margin-top:.4rem;font-size:.78rem;color:var(--text-muted);display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}.msg-chip{display:inline-block;padding:.1rem .5rem;background:var(--surface-elevated);border:1px solid var(--border);border-radius:4px;font-family:var(--font-mono);font-size:.75rem;color:var(--text)}.msg-body-header,.msg-templates-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.msg-templates-header{margin-bottom:1rem}.msg-template-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:.75rem;overflow:visible}.msg-template-card-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:1rem;padding:1rem}.msg-template-info{min-width:0}.msg-template-name{font-weight:600;color:var(--text);margin-bottom:.25rem;display:flex;align-items:center;gap:.5rem}.msg-template-subject{color:var(--text-muted);font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-template-meta{color:var(--text-muted);font-size:.78rem;margin-top:.25rem}.msg-trigger-badge{display:inline-block;padding:.1rem .55rem;border-radius:4px;background:var(--info-bg);color:var(--info-text);border:1px solid var(--info-border);font-size:.72rem;font-weight:600;letter-spacing:.02em}.msg-template-actions{display:flex;gap:.5rem;align-items:center}.msg-menu-wrap{position:relative}.msg-menu-btn{background:0 0;border:1px solid var(--border);color:var(--text-muted);padding:.35rem .65rem;border-radius:4px;cursor:pointer;font-size:1rem;line-height:1}.msg-menu-btn:hover{background:var(--surface-hover);color:var(--text)}.msg-menu{position:absolute;top:calc(100% + 4px);right:0;background:var(--surface-popover);border:1px solid var(--border-strong);border-radius:6px;box-shadow:0 6px 20px rgba(0,0,0,.25);min-width:140px;z-index:50;padding:.25rem 0}.msg-menu.hidden{display:none}.msg-menu-item{display:block;width:100%;text-align:left;background:0 0;border:0;color:var(--text);padding:.5rem .85rem;cursor:pointer;font-size:.88rem}.msg-menu-item:hover{background:var(--surface-hover)}.msg-menu-item--danger{color:var(--error-text)}.msg-template-edit{border-top:1px solid var(--border);padding:1rem;background:var(--surface-elevated);animation:msg-slide-down 180ms ease-out}.msg-template-edit.hidden{display:none}.msg-template-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem}.msg-template-edit-grid .sudo-filter{margin:0}.msg-template-edit-body-wrap{margin-bottom:1rem}.msg-template-edit-body{min-height:180px;background:var(--surface);color:var(--text)}.msg-template-edit-actions{display:flex;gap:.5rem;align-items:center}.msg-template-edit-actions .msg-spacer{flex:1}.msg-templates-empty{color:var(--text-muted);padding:2rem;text-align:center;background:var(--surface);border:1px dashed var(--border);border-radius:8px}.gdpr-section-subtitle{font-size:1.1rem;font-weight:600;color:var(--text);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.gdpr-search-section{margin-bottom:2rem}.gdpr-search-box{display:flex;gap:.75rem;margin-bottom:1rem}.gdpr-search-input{flex:1;padding:.75rem 1rem;background:var(--surface-elevated);border:1px solid var(--border-strong);border-radius:8px;color:var(--text);font-size:.95rem;transition:border-color .2s ease}.gdpr-search-input:focus,.user-copy__user-picker input[type=text]:focus{outline:0;border-color:var(--accent)}.gdpr-search-input::placeholder,.redis-search-input::placeholder,.sudo-filter-form input::placeholder,.sudo-input::placeholder{color:var(--text-muted)}.gdpr-search-results{background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;max-height:400px;overflow-y:auto}.gdpr-search-item{display:flex;align-items:center;gap:1rem;padding:1rem;cursor:pointer;transition:background .2s ease;border-bottom:1px solid var(--border-subtle)}.gdpr-search-item:last-child{border-bottom:none}.gdpr-search-item:hover{background:var(--error-bg)}.gdpr-search-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,#c43a3a 100%);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem;color:var(--text);flex-shrink:0}.gdpr-search-info{flex:1;min-width:0}.gdpr-search-name{font-weight:500;color:var(--text);display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.gdpr-search-email,.gdpr-search-meta{color:var(--text-muted);font-size:.9rem;margin-top:.25rem}.gdpr-search-meta{font-size:.8rem;font-family:var(--font-mono)}.gdpr-search-empty,.gdpr-search-error{padding:2rem;text-align:center;color:var(--text-muted)}.gdpr-search-error{color:var(--error-text)}.gdpr-user-panel{margin-top:2rem}.gdpr-user-card{background:var(--surface-elevated);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.gdpr-user-info{display:flex;gap:1.5rem;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.gdpr-user-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,#c43a3a 100%);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.75rem;color:var(--text);flex-shrink:0}.gdpr-user-details{flex:1}.gdpr-actions h4,.gdpr-user-details h3{font-size:1.5rem;font-weight:600;color:var(--text);margin:0 0 .25rem}.gdpr-user-details>p{color:var(--text-muted);margin:0 0 .75rem}.gdpr-user-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.75rem}.gdpr-meta-item{font-size:.85rem;color:var(--text-muted);font-family:var(--font-mono)}.gdpr-action-buttons,.gdpr-user-badges{display:flex;gap:.5rem;flex-wrap:wrap}.gdpr-actions h4{font-size:1rem;margin:0 0 1rem}.gdpr-action-buttons{gap:1rem}.gdpr-action-btn{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid}.gdpr-action-btn:disabled{opacity:.5;cursor:not-allowed}.gdpr-action-export{background:var(--blue-bg);border-color:var(--blue-border);color:var(--blue-text)}.gdpr-action-export:hover:not(:disabled){background:var(--blue-border)}.gdpr-action-delete{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.gdpr-action-delete:hover:not(:disabled){background:var(--error-bg-hover)}.gdpr-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.75);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.gdpr-modal-content{background:var(--bg-secondary);border:1px solid var(--error-border-strong);border-radius:12px;width:100%;max-width:480px;animation:modalSlideIn .2s ease}.gdpr-modal-header{display:flex;align-items:center;gap:.75rem;padding:1.5rem;border-bottom:1px solid var(--border);color:var(--error-text)}.gdpr-modal-header h3{margin:0;font-size:1.25rem;font-weight:600}.gdpr-modal-body{padding:1.5rem}.gdpr-modal-body p{color:var(--text-muted);margin:0 0 1rem}.gdpr-confirm-user{background:var(--error-bg);border:1px solid var(--error-border);border-radius:8px;padding:1rem;margin-bottom:1rem;display:flex;flex-direction:column;gap:.25rem}.gdpr-confirm-user span:first-child{font-weight:600;color:var(--text)}.gdpr-confirm-user span:last-child{color:var(--text-muted);font-size:.9rem}.gdpr-warning{background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:8px;padding:1rem;color:var(--warning-text)!important;font-size:.9rem}.gdpr-confirm-input{margin-top:1.5rem}.gdpr-confirm-input label{display:block;color:var(--text-muted);font-size:.9rem;margin-bottom:.5rem}.gdpr-confirm-input input{width:100%;padding:.75rem 1rem;background:var(--surface-elevated);border:1px solid var(--border-strong);border-radius:8px;color:var(--text);font-size:1rem;font-family:var(--font-mono);box-sizing:border-box}.gdpr-confirm-input input:focus{outline:0;border-color:var(--error-text)}.gdpr-modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid var(--border)}.gdpr-loading{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.75);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;z-index:1001;color:var(--text)}.gdpr-spinner{width:48px;height:48px;border:3px solid var(--error-border);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@media (max-width:768px){.gdpr-search-box,.gdpr-user-info{flex-direction:column}.gdpr-user-info{align-items:center;text-align:center}.gdpr-user-badges,.gdpr-user-meta{justify-content:center}.gdpr-action-buttons{flex-direction:column}.gdpr-action-btn{justify-content:center}.gdpr-modal-footer{flex-direction:column-reverse}.gdpr-modal-footer button{width:100%}}.growth-funnel,.growth-period-pills{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.growth-period-pills .sudo-btn{opacity:.6}.growth-period-pills .sudo-btn.active{opacity:1;font-weight:600}.growth-funnel{align-items:center;gap:0;margin-bottom:32px}.growth-funnel-card{background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;padding:20px 24px;min-width:140px;flex:1}.growth-funnel-arrow{color:var(--text-muted);font-size:20px;padding:0 12px;flex-shrink:0}.growth-funnel-label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:6px}.growth-funnel-value{font-size:32px;font-weight:700;line-height:1;margin-bottom:4px}.growth-funnel-rate{font-size:13px;color:var(--accent)}.growth-stat-cards{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:32px}.growth-stat-card{background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;padding:20px 24px;flex:1;min-width:160px}.growth-stat-label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:6px}.growth-stat-rate{font-size:36px;font-weight:700;line-height:1;margin-bottom:4px}.growth-stat-count{font-size:13px;color:var(--text-muted)}.growth-section{margin-bottom:40px}.growth-section-subtitle{font-size:13px;color:var(--text-muted);margin-bottom:16px;margin-top:-8px}.home-queue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.home-queue-tile,.sudo-info-pages-header code{background:var(--surface-elevated);border:1px solid var(--border)}.home-queue-tile{display:flex;flex-direction:column;gap:.35rem;border-radius:10px;padding:1.25rem 1.5rem;text-decoration:none;transition:border-color .15s ease,transform .15s ease}.home-queue-tile:hover{border-color:var(--border-strong);transform:translateY(-1px)}.home-queue-tile-count{font-size:2rem;font-weight:700;color:var(--text-muted)}.home-queue-tile-label{font-size:.9rem;color:var(--text-muted)}.home-queue-tile--attention{border-color:var(--error-border);background:rgba(139,0,0,.06)}.home-queue-tile--attention .home-queue-tile-count{color:var(--accent)}.home-queue-tile--attention .home-queue-tile-label,.rtb-card-meta strong{color:var(--text)}.sudo-info-pages-header{margin-bottom:1.5rem}.sudo-link-sep{margin:0 .5em;color:var(--text-muted)}.sudo-info-pages-header code{padding:.15em .4em;border-radius:3px;font-size:.85em;color:var(--text)}.sudo-info-pages-toolbar{margin-bottom:1.5rem;display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap}.sudo-info-pages-toolbar .sudo-filters{margin-bottom:0}.sudo-hint{font-size:.8em;color:var(--text-muted)}.sudo-info-pages-editor .sudo-filter label{display:block;margin-bottom:.5rem}.sudo-textarea{width:100%;min-height:400px;font-family:var(--font-mono);font-size:.9rem}.sudo-info-pages-actions,.sudo-info-pages-editor .sudo-filter{margin-bottom:1rem}.sudo-info-pages-delete{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.log-levels-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem}.log-levels-header .sudo-section-title{margin-bottom:.5rem}.log-levels-header .sudo-section-desc{margin-bottom:0}.log-levels-header-actions{display:flex;gap:.75rem;flex-wrap:wrap}.log-levels-header .sudo-btn{display:flex;align-items:center;gap:.5rem;white-space:nowrap}.log-levels-controls{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem;padding:1.5rem;background:var(--surface);border-radius:8px;border:1px solid var(--border)}.log-levels-quick-set,.log-levels-single-set{display:flex;flex-direction:column;gap:1rem}.log-levels-subtitle{font-size:1rem;font-weight:600;color:var(--text);margin:0 0 .75rem}.log-levels-quick-form{display:flex;gap:.75rem;align-items:flex-start;flex-wrap:wrap}.log-levels-quick-form .sudo-input,.log-levels-quick-form .sudo-select{flex:1;min-width:0}.log-levels-quick-form .sudo-btn{white-space:nowrap;flex-shrink:0;background:var(--error-bg-hover);border-color:var(--error-border-strong);color:var(--accent)}.log-levels-quick-form .sudo-btn:hover{background:var(--error-bg-active)}.log-levels-filters{display:flex;gap:1rem;margin-bottom:1rem}.log-levels-filters .sudo-input{flex:1}.log-levels-filters .sudo-select{min-width:150px}.log-levels-table-container{background:var(--surface);border-radius:8px;border:1px solid var(--border);padding:1.5rem}.log-levels-table-container .sudo-table td:nth-child(1),.log-levels-table-container .sudo-table th:nth-child(1){word-wrap:break-word;word-break:break-word;white-space:normal}.log-levels-table-container .sudo-table td:nth-child(2),.log-levels-table-container .sudo-table td:nth-child(3),.log-levels-table-container .sudo-table th:nth-child(2),.log-levels-table-container .sudo-table th:nth-child(3){white-space:nowrap;width:1%}.log-levels-table-container .sudo-table td:last-child,.log-levels-table-container .sudo-table th:last-child{white-space:nowrap;min-width:280px;width:auto}.logger-name{font-family:var(--font-mono);font-size:.9rem;color:var(--text);white-space:normal;word-wrap:break-word;word-break:break-word}.level-badge{display:inline-block;padding:.3rem .75rem;border-radius:6px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.level-trace{background:var(--blue-bg);color:var(--blue-text);border:1px solid var(--blue-border)}.level-debug{background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border)}.level-info{background:var(--blue-bg);color:var(--blue-text);border:1px solid var(--blue-border)}.level-warn{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.level-error{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border)}.level-off{background:var(--surface-hover);color:var(--text-muted);border:1px solid var(--border)}.level-inherited{background:rgba(156,163,175,.15);color:#9ca3af;border:1px solid rgba(156,163,175,.25)}.level-effective{background:rgba(139,92,246,.2);color:#8b5cf6;border:1px solid rgba(139,92,246,.3)}.logger-level-select{padding:.4rem .75rem;background:var(--surface-elevated);border:1px solid var(--border-strong);border-radius:6px;color:var(--text);font-size:.875rem;min-width:100px;max-width:140px;font-family:inherit;flex-shrink:1}.logger-level-select:focus{outline:0;border-color:var(--accent);background:var(--surface-hover)}@media (max-width:768px){.log-levels-header{flex-direction:column}.log-levels-controls{grid-template-columns:1fr}.actions-cell,.log-levels-filters,.log-levels-quick-form{flex-direction:column}.actions-cell{align-items:stretch}.log-levels-filters .sudo-select,.log-levels-quick-form .sudo-btn,.log-levels-quick-form .sudo-input,.log-levels-quick-form .sudo-select,.logger-level-select{width:100%}}.rtb-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin-bottom:1.5rem}.rtb-summary-tile{background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;padding:1rem}.rtb-summary-method{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);margin:0 0 .35rem}.rtb-summary-mae{font-size:1.4rem;font-weight:600;color:var(--text);margin:0}.rtb-summary-count{font-size:.75rem;color:var(--text-muted);margin:.2rem 0 0}.rtb-summary-best .rtb-summary-mae{color:var(--success-text)}.rtb-card{background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;margin-bottom:1.5rem;overflow:hidden}.rtb-card-header{padding:1rem 1.25rem;background:var(--surface);border-bottom:1px solid var(--border)}.rtb-card-title{font-size:1rem;font-weight:600;color:var(--text);margin:0 0 .35rem}.rtb-card-asof,.rtb-card-meta{font-size:.8rem;color:var(--text-muted)}.rtb-card-asof{font-size:.75rem;margin-top:.35rem}.rtb-delta-bad,.rtb-delta-good{color:var(--success-text);font-weight:600}.rtb-delta-bad{color:var(--error-text)}.rtb-explanation{font-size:.8rem;color:var(--text-muted);max-width:420px}.rtb-skipped-table .mono{white-space:nowrap}.redis-header,.redis-warning{display:flex;align-items:flex-start;gap:1rem}.redis-header{justify-content:space-between;margin-bottom:2rem}.redis-warning{padding:1rem 1.25rem;background:var(--warning-yellow-bg);border:1px solid var(--warning-yellow-border);border-radius:8px;margin-bottom:1.5rem;color:var(--warning-yellow-text)}.redis-warning svg{flex-shrink:0;margin-top:.125rem;stroke:var(--warning-yellow-text)}.redis-warning strong{display:block;margin-bottom:.5rem;font-size:1rem;color:var(--warning-yellow-text)}.redis-warning p{margin:0;font-size:.9rem;color:var(--warning-yellow-text);line-height:1.5}.redis-header .sudo-section-title{margin-bottom:.5rem}.redis-header .sudo-section-desc{margin-bottom:0}.redis-header-actions{display:flex;gap:.75rem;flex-wrap:wrap}.redis-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.redis-stat{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1.5rem;text-align:center}.redis-stat-value{font-size:1.75rem;font-weight:600;color:var(--text);margin-bottom:.5rem}.redis-stat-label{color:var(--text-muted);font-size:.9rem}.redis-sections{display:flex;flex-direction:column;gap:2rem}.redis-section{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1.5rem}.redis-section-title{display:flex;align-items:center;gap:.75rem;font-size:1.1rem;font-weight:600;margin:0 0 1.25rem;color:var(--text)}.redis-section-title svg{width:22px;height:22px;color:var(--accent)}.redis-search-box{display:flex;gap:.75rem;margin-bottom:1rem}.redis-search-input{flex:1;padding:.75rem 1rem;background:var(--surface-elevated);border:1px solid var(--border-strong);border-radius:6px;color:var(--text);font-size:.95rem}.redis-search-input:focus{outline:0;border-color:var(--accent);background:var(--surface-hover)}.redis-keys-actions{margin-bottom:1rem}.redis-keys-container{margin-top:1rem}.redis-table-wrapper{overflow-x:auto}.redis-empty{text-align:center;padding:3rem;color:var(--text-muted)}.mono{font-family:var(--font-mono);font-size:.9em}.payload-preview{max-width:800px;max-height:200px;overflow:auto;word-break:break-all;white-space:pre-wrap;font-size:.85em}.redis-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.redis-info-item{background:var(--surface-elevated);border:1px solid var(--border-subtle);border-radius:6px;padding:1rem}.redis-info-label{font-size:.85rem;color:var(--text-muted);text-transform:capitalize;margin-bottom:.25rem}.redis-info-value{font-size:.95rem;color:var(--text);font-family:var(--font-mono);word-break:break-word}.redis-payload-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--surface-hover);border:1px solid var(--border-strong);border-radius:6px;color:var(--text);font-size:.85rem;cursor:pointer;transition:all .2s ease}.redis-payload-btn:hover{background:var(--surface-hover);border-color:var(--border-strong)}.redis-payload-btn svg{width:16px;height:16px}.redis-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;padding:1rem}.redis-modal.hidden{display:none}.redis-modal:not(.hidden){display:flex;align-items:center;justify-content:center}.redis-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.75);backdrop-filter:blur(4px);z-index:1000}.redis-modal-content{position:relative;background:var(--bg-secondary);border:1px solid var(--border-strong);border-radius:12px;width:95%;max-width:1400px;min-width:600px;max-height:95vh;display:flex;flex-direction:column;animation:modalSlideIn .2s ease;z-index:1001}.redis-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--border)}.redis-modal-header h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--text);font-family:var(--font-mono);word-break:break-all}.redis-modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:0 0;border:0;color:var(--text-muted);cursor:pointer;transition:color .2s ease;flex-shrink:0;margin-left:1rem}.redis-modal-close:hover,.rp-progress-row strong{color:var(--text)}.redis-modal-body{padding:2rem;overflow:auto;flex:1;min-height:0;display:block}.redis-payload-full{margin:0;padding:1.5rem;background:var(--overlay-dark);border:1px solid var(--border);border-radius:8px;font-family:var(--font-mono);font-size:.95rem;color:var(--text);white-space:pre-wrap;word-break:break-all;max-height:80vh;overflow:auto;line-height:1.6;width:100%;box-sizing:border-box;display:block}@media (max-width:768px){.redis-header{flex-direction:column}.redis-stats{grid-template-columns:repeat(2,1fr)}.redis-search-box{flex-direction:column}.redis-info-grid{grid-template-columns:1fr}}.analytics-warning-safe{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.rp-input-wide{width:100%!important;max-width:520px}.rp-date-label{font-size:.85rem;color:var(--text-muted);white-space:nowrap}.rp-row-hidden{display:none!important}.rp-populate-hint{margin-left:.75rem}.rp-progress-row{display:flex;gap:1.5rem;flex-wrap:wrap;font-size:.9rem;color:var(--text)}.rp-aborted-banner{padding:1rem;background:var(--error-bg);border:1px solid var(--error-border);border-radius:6px;color:var(--error-text);font-weight:600;margin-bottom:1rem}.rp-result-card{background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;margin-bottom:1rem;overflow:hidden}.rp-result-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap}.rp-result-label{font-weight:600;color:var(--text)}.rp-result-meta{padding:.5rem 1.25rem 0;font-size:.8rem;color:var(--text-muted)}.rp-refresh-btn{display:flex;align-items:center;gap:.35rem;padding:.4rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.85rem;cursor:pointer}.rp-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.rp-refresh-btn svg{width:14px;height:14px}.rp-refresh-push-btn{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning-text);font-weight:600}.rp-result-body{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.rp-push-preview{padding:1rem;background:var(--surface);border-radius:6px;border:1px solid var(--border)}.rp-push-title{font-weight:600;margin-bottom:.35rem;color:var(--text)}.rp-push-body{color:var(--text-muted);font-size:.9rem;white-space:pre-wrap}.rp-section{padding:.85rem 1rem;border-left:3px solid var(--accent);background:var(--surface);border-radius:0 6px 6px 0}.rp-section-title{font-weight:600;font-size:.85rem;margin-bottom:.3rem;color:var(--text)}.rp-section-key{font-size:.75rem;color:var(--text-muted);font-weight:400}.rp-section-insight{font-size:.9rem;color:var(--text-muted);white-space:pre-wrap}.rp-error-text{color:var(--error-text);font-size:.9rem}.rp-reason{color:var(--text);font-weight:600}.rp-note{margin:.5rem 0 .75rem;padding:.55rem .75rem;background:var(--surface-elevated);border-left:3px solid var(--border);border-radius:4px;font-size:.88rem;color:var(--text-muted);white-space:pre-wrap;word-break:break-word}.rp-actions{display:flex;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}.rp-status,.user-copy__user-picker label{color:var(--text-muted);text-transform:uppercase}.rp-status{font-size:.72rem;font-weight:600;letter-spacing:.03em;padding:.1rem .45rem;border-radius:999px;background:rgba(148,163,184,.15)}.rp-status-open{background:rgba(234,179,8,.15);color:#fde047}.rp-status-actioned{background:rgba(239,68,68,.15);color:#fca5a5}.rp-status-dismissed{background:rgba(148,163,184,.15);color:#cbd5e1}.rp-status-reviewed{background:rgba(59,130,246,.15);color:#93c5fd}.rp-card-pending{opacity:.5;pointer-events:none}.cron-help{background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;padding:1.5rem;margin-bottom:2rem}.cron-help h3{margin:0 0 .75rem;font-size:1.1rem;color:var(--text)}.cron-help li,.cron-help p{margin:.5rem 0}.cron-help code{background:rgba(0,0,0,.3);padding:.2rem .4rem;border-radius:4px;font-family:var(--font-mono);color:var(--accent)}.cron-help ul{margin:.75rem 0 0;padding-left:1.5rem;color:var(--text-muted)}.cron-help li{font-size:.9rem}.sudo-table .cron-expr{font-family:var(--font-mono);color:var(--info-text)}.cron-help p,.sudo-table .next-run{color:var(--text-muted);font-size:.9rem}.sudo-table .actions-cell{display:flex;gap:.5rem;flex-wrap:wrap}.sudo-table .actions-cell .sudo-btn{padding:.4rem .8rem;font-size:.85rem}.segment-merges .sudo-table{min-width:0}.segment-merges .sudo-table td.merge-ids{max-width:320px;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.8}.segment-merges .sudo-table td.merge-ids a{margin-right:.4rem}.sudo-breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.9rem}.segment-merges .merge-deleted,.sudo-breadcrumb-sep{color:var(--text-muted)}.sudo-table a,.user-link{color:var(--accent);text-decoration:none}.sudo-table a:hover,.user-link:hover{text-decoration:underline}.activity-row.row-error{background:rgba(239,68,68,.05)}.activity-row.row-warning{background:rgba(234,179,8,.05)}.method-badge{display:inline-block;padding:.15rem .4rem;border-radius:3px;font-size:.7rem;font-weight:600;font-family:var(--font-mono)}.method-get{background:var(--blue-bg);color:var(--blue-text)}.method-post{background:var(--success-bg);color:var(--success-text)}.method-patch,.method-put{background:var(--warning-orange-bg);color:var(--warning-orange-text)}.method-delete{background:var(--error-bg);color:var(--error-text)}.path-cell,.status-badge{font-family:var(--font-mono)}.path-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}.status-badge{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.status-success{background:var(--success-bg);color:var(--success-text)}.status-warning{background:var(--warning-bg);color:var(--warning-text)}.status-error{background:var(--error-bg);color:var(--error-text)}.status-info{background:var(--blue-bg);color:var(--blue-text)}.client-cell{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-type{display:inline-block;padding:.1rem .35rem;border-radius:3px;font-size:.7rem;background:var(--error-bg);color:var(--accent);margin-right:.25rem}.client-version{color:var(--text-muted)}.client-version,.ip-cell{font-size:.75rem}.sudo-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.pagination-info,.user-detail-dl dt{color:var(--text-muted);font-size:.9rem}.user-copy{display:flex;flex-direction:column;gap:1.5rem}.user-copy__pickers{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media (max-width:900px){.user-copy__pickers{grid-template-columns:1fr}}.user-copy__user-picker{background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;padding:1rem;position:relative}.user-copy__user-picker label{display:block;font-size:.8rem;margin-bottom:.5rem;letter-spacing:.04em}.user-copy__selected,.user-copy__user-picker input[type=text]{color:var(--text);padding:.5rem .75rem;background:var(--surface);border-radius:6px}.user-copy__user-picker input[type=text]{width:100%;border:1px solid var(--border-strong);font-size:.9rem;box-sizing:border-box}.user-copy__selected{margin-top:.5rem;font-size:.85rem;border:1px dashed var(--border);min-height:1.4em}.user-copy__selected--empty{color:var(--text-muted);font-style:italic}.user-copy__selected--locked{margin-top:0;border-style:solid;border-color:var(--border-strong);font-weight:500}.user-copy__results{position:absolute;top:100%;left:1rem;right:1rem;background:var(--surface-popover);border:1px solid var(--border-strong);border-radius:6px;margin-top:.25rem;max-height:280px;overflow-y:auto;z-index:10;display:none;box-shadow:0 6px 16px rgba(0,0,0,.25)}.user-copy__results--open{display:block}.user-copy__result-item{padding:.5rem .75rem;cursor:pointer;border-bottom:1px solid var(--border-subtle);font-size:.85rem;color:var(--text)}.user-copy__result-item:last-child{border-bottom:none}.user-copy__result-item:hover,.user-copy__section{background:var(--surface-elevated)}.user-copy__section{border:1px solid var(--border);border-radius:8px;padding:1rem 1.25rem}.user-copy__section h3{margin:0 0 .75rem;font-size:.95rem;font-weight:600;color:var(--text)}.user-copy__row{display:flex;align-items:center;justify-content:space-between;padding:.4rem 0;border-bottom:1px solid var(--border-subtle);gap:1rem}.user-copy__row:last-child{border-bottom:none}.user-copy__period-radios label,.user-copy__row label{display:flex;align-items:center;cursor:pointer;font-size:.9rem}.user-copy__row label{gap:.5rem;color:var(--text);flex:1}.user-copy__row label small{color:var(--text-muted);font-size:.8rem;margin-left:.5rem}.user-copy__count{font-family:var(--font-mono);font-size:.85rem;color:var(--text-muted);min-width:60px;text-align:right}.user-copy__count--has-value{color:var(--accent);font-weight:600}.user-copy__period{flex-wrap:wrap;align-items:center}.user-copy__period,.user-copy__period-radios{display:flex;gap:1rem}.user-copy__period-radios label{gap:.4rem}.user-copy__period-dates{display:flex;gap:.5rem;align-items:center}.user-copy__period-dates input[type=date]{padding:.4rem .6rem;background:var(--surface);border:1px solid var(--border-strong);border-radius:6px;color:var(--text);font-size:.9rem}.user-copy__separator{height:1px;background:var(--border);margin:.75rem 0}.user-copy__actions{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.user-copy__preview-status{color:var(--text-muted);font-size:.85rem}.user-copy__job-status{display:inline-block;padding:.2rem .6rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.user-copy__job-status--pending{background:var(--surface-elevated);color:var(--text-muted)}.user-copy__job-status--running{background:var(--blue-bg);color:var(--blue-text)}.user-copy__job-status--completed{background:var(--success-bg);color:var(--success-text)}.user-copy__job-status--failed{background:var(--error-bg);color:var(--error-text)}.user-copy__detail-header{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:center;margin-bottom:1.25rem;padding:1rem 1.25rem;background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px}.user-copy__detail-field{display:flex;flex-direction:column;gap:.15rem}.user-copy__detail-field-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.user-copy__detail-field-value{font-size:.95rem;color:var(--text)}.user-copy__flags{display:flex;flex-wrap:wrap;gap:.4rem}.user-copy__flag{padding:.15rem .5rem;border-radius:4px;font-size:.75rem;background:var(--surface);border:1px solid var(--border);color:var(--text-muted)}.user-copy__flag--on{background:var(--error-bg);border-color:var(--error-border);color:var(--accent)}.user-copy__error-list{margin:.5rem 0 0;padding-left:1.25rem;color:var(--error-text);font-size:.85rem}.user-copy__error-list li{margin-bottom:.25rem}.user-copy__message{padding:.75rem 1rem;border-radius:6px;background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text);margin-bottom:1rem;font-size:.9rem}.user-copy__counts-table{width:100%;border-collapse:collapse;font-size:.9rem}.user-copy__counts-table td,.user-copy__counts-table th{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--border-subtle)}.user-copy__counts-table th{color:var(--text-muted);font-weight:500;background:var(--surface-elevated)}.user-copy__counts-table td:last-child,.user-copy__counts-table th:last-child{text-align:right;font-variant-numeric:tabular-nums}.user-detail-header{display:flex;flex-direction:column;margin-bottom:1.5rem}.user-detail-header-name{font-size:1.75rem;font-weight:600;color:var(--text);margin:0}.user-detail-header-meta{color:var(--text-muted);font-size:.9rem;margin-top:.25rem;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.user-detail-header-sep{color:var(--border-strong)}.user-detail-header-profile{color:var(--text-muted);text-decoration:none}.user-detail-header-profile:hover{color:var(--text);text-decoration:underline}.user-detail-header-badges{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.user-detail-actions{display:flex;flex-direction:row;gap:.5rem;margin-top:1rem;align-items:center}.user-detail-self-note{color:var(--text-muted);font-size:.9rem;font-style:italic}.user-detail-role-label{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-muted);font-size:.85rem}.user-detail-tabs{display:flex;gap:0;margin:1.5rem 0;border-bottom:1px solid var(--border)}.user-detail-tab{padding:.75rem 1.25rem;color:var(--text-muted);text-decoration:none;border-bottom:2px solid transparent;transition:color .15s ease,border-color .15s ease;font-size:.95rem}.user-detail-tab:hover{color:var(--text)}.user-detail-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.user-detail-content{padding:0}.user-detail-section{margin-bottom:2rem}.user-detail-dl{display:grid;grid-template-columns:minmax(140px,max-content) 1fr;gap:.5rem 1.25rem;margin:0}.user-detail-dl dd{color:var(--text);font-size:.95rem;margin:0}.user-detail-placeholder-note{color:var(--text-muted);margin:.75rem 0 0}.user-detail-muted{color:var(--text-muted)}.user-detail-integration-meta{display:inline-flex;gap:.75rem;margin-left:.75rem;color:var(--text-muted);font-size:.85rem;align-items:center}.user-detail-integration-error{color:var(--error-text);cursor:help}.user-detail-integrations-extra{margin-top:.75rem;padding-top:.75rem;border-top:1px dashed var(--border)}.user-detail-section-count{color:var(--text-muted);font-size:.85rem;font-weight:400;margin-left:.5rem}.user-detail-compact-table{font-size:.9rem}.user-detail-compact-table td,.user-detail-compact-table th{padding:.5rem .75rem}.user-events-filter{display:flex;gap:.5rem;align-items:center;margin-bottom:1rem}.user-events-filter-input{width:300px}.user-events-time-cell{white-space:nowrap}.user-events-type-link{font-family:var(--font-mono);font-size:12px;display:inline-block;padding:.15rem .5rem;border-radius:999px;background:var(--surface-elevated);color:var(--text);text-decoration:none;border:1px solid var(--border);transition:background .15s ease,border-color .15s ease}.user-events-type-link:hover{background:var(--surface);border-color:var(--border-strong)}tr.row-error .user-events-type-link{background:var(--error-bg);color:var(--error-text);border-color:var(--error-border)}tr.row-warning .user-events-type-link{background:var(--warning-bg);color:var(--warning-text);border-color:var(--warning-border)}.user-events-data-cell{max-width:500px}.user-events-data-cell .event-data-container{font-family:var(--font-mono);font-size:12px;white-space:pre-wrap;word-break:break-all}.user-events-data-empty{color:var(--text-muted)}.user-notifications-time-cell{white-space:nowrap}.user-notifications-type{font-family:var(--font-mono);font-size:12px;display:inline-block;padding:.15rem .5rem;border-radius:999px;background:var(--surface-elevated);color:var(--text);border:1px solid var(--border)}.user-notifications-activity-cell,.user-notifications-actor-cell{white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis}.user-notifications-activity-cell{max-width:220px}.user-notifications-message-cell{max-width:420px;color:var(--text);font-size:.9rem}.user-notifications-muted{color:var(--text-muted)}.user-notifications-row-unread{background:var(--error-bg-subtle)}.user-notifications-status-read{color:var(--text-muted);font-size:.85rem}.user-notifications-status-unread{color:var(--accent);font-weight:600;font-size:.85rem}.user-social-totals{margin-bottom:1.5rem}.user-social-chart-wrapper{position:relative;height:420px;width:100%}.user-arni-muted{color:var(--text-muted);font-size:.85rem}.user-arni-nowrap{white-space:nowrap}.user-arni-answer-list{grid-template-columns:minmax(220px,max-content) 1fr}.user-arni-answer-key{display:flex;flex-direction:column;gap:.15rem}.user-arni-answer-category{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.user-arni-answer-value{display:flex;flex-direction:column;gap:.15rem}.user-arni-answer-text{color:var(--text);word-break:break-word}.user-arni-answer-meta{color:var(--text-muted);font-size:.8rem}.user-arni-feedback-note,.user-arni-tip-title{max-width:360px;word-break:break-word}.tp-section{margin-top:1.25rem;padding-top:1rem;border-top:1px dashed var(--border)}.tp-section:first-of-type{border-top:none;padding-top:0;margin-top:.75rem}.tp-section-title{color:var(--text);font-size:.95rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .75rem}.tp-section h5.tp-section-title{font-size:.85rem;color:var(--text-muted);margin:.75rem 0 .5rem}.tp-count{color:var(--text-muted);font-weight:400;font-size:.85em;margin-left:.4rem}.tp-dl{grid-template-columns:minmax(180px,max-content) 1fr;gap:.4rem 1.5rem}.tp-num{font-variant-numeric:tabular-nums;color:var(--text)}.tp-list{margin:0;padding-left:1.25rem;color:var(--text)}.tp-table-wrap{overflow-x:auto;margin-bottom:.5rem}.tp-table{font-size:.9rem}.tp-table th{white-space:nowrap;text-transform:none;letter-spacing:0;font-weight:500;color:var(--text-muted)}.tp-table td{vertical-align:top}.tp-raw{margin-top:1.5rem}.tp-raw summary{color:var(--text-muted);cursor:pointer;font-size:.85rem;padding:.4rem 0}.tp-raw pre{max-height:480px;overflow:auto;font-size:.8rem}.users-filter-form{display:flex;gap:.5rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.users-filter-input{flex:1 1 320px;min-width:220px;padding:.5rem .75rem;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9rem}.sudo-filter input:focus,.sudo-filter select:focus,.users-filter-input:focus{outline:0;border-color:var(--accent)}.users-filter-select,.users-filter-submit{border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9rem}.users-filter-select{padding:.5rem .75rem;background:var(--surface)}.users-filter-submit{padding:.5rem 1rem;background:var(--surface-elevated);cursor:pointer}.users-filter-submit:hover{background:var(--surface);border-color:var(--text-muted)}.users-row-link{cursor:pointer;transition:background .15s ease}.users-row-link:hover td{background:var(--surface-elevated)}.users-user-cell{max-width:320px}.users-user-name{display:block;font-weight:600;color:var(--text)}.sudo-table-container .sudo-table td,.users-user-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-user-email{display:block;color:var(--text-muted);font-size:.8rem;max-width:280px}.users-sort-header{color:var(--text-muted);text-decoration:none;display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap}.sudo-stat-event-type-item strong,.users-sort-header.users-sort-active,.users-sort-header:hover{color:var(--text)}.users-sort-indicator{font-size:.7rem;line-height:1;width:.75rem;display:inline-block;color:var(--accent)}.users-active-col{text-align:right}.users-active-cell{text-align:right;font-variant-numeric:tabular-nums}.users-active-cell.users-active-zero,.users-chevron{color:var(--text-muted)}.users-chevron{font-size:1rem;width:1.5rem;text-align:right}.sudo-webhook-stats{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.sudo-stat-event-types{background:var(--success-bg);border:1px solid var(--success-border)}.sudo-stat-event-types-line{font-size:1rem;color:var(--text)}.sudo-stats-row{display:flex;gap:1rem;flex-wrap:wrap}.sudo-stat-status{display:flex;flex-direction:column;min-width:140px;padding:1rem 1.25rem;background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px}.sudo-stat-status-name{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.sudo-stat-pairs{display:flex;gap:1.5rem;align-items:flex-start}.sudo-stat-pair{display:flex;flex-direction:column;gap:.25rem}.sudo-stat-status .sudo-stat-value{font-size:1.35rem;font-weight:600;font-variant-numeric:tabular-nums}.sudo-stat-value-secondary{font-size:1.1rem!important;font-weight:500;color:var(--text-muted)}.sudo-stat-status .sudo-stat-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.sudo-stat-status.processed{border-left:3px solid var(--success-text)}.sudo-stat-status.skipped{border-left:3px solid var(--blue-text)}.sudo-stat-status.error{border-left:3px solid var(--error-text)}.sudo-stat-status.pending,.sudo-stat-status.stored{border-left:3px solid var(--warning-text)}.sudo-table-container .sudo-table{width:100%}.sudo-table-container .sudo-table td{max-width:200px}.sudo-table-container .sudo-table td.mono{max-width:120px}.sudo-table-container .sudo-table td:last-child{max-width:100px;white-space:nowrap}.sudo-action-status{font-size:.85rem;color:var(--text-muted)}.sudo-action-status.success{color:var(--success-text)}.sudo-action-status.error{color:var(--error-text)}.webhook-row:hover{background:var(--error-bg-subtle)}.payload-btn{padding:.25rem .75rem;background:var(--blue-bg);border:1px solid var(--blue-border);border-radius:4px;color:var(--blue-text);font-size:.75rem;cursor:pointer;transition:all .2s ease}.payload-btn:hover{background:var(--blue-bg);border-color:var(--blue-border)}.payload-btn:disabled{opacity:.5;cursor:not-allowed}.payload-modal{display:none;position:fixed;inset:0;z-index:1000}.payload-modal.open{display:flex;align-items:center;justify-content:center}.payload-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(4px)}.payload-modal-content{position:relative;width:90vw;max-width:1200px;max-height:85vh;background:var(--surface-popover);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px rgba(0,0,0,.5)}.payload-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border)}.payload-modal-title{font-size:1rem;font-weight:600;color:var(--text)}.payload-modal-actions{display:flex;gap:.5rem}.payload-modal-body{margin:0;padding:1.5rem;font-family:var(--font-mono);font-size:.85rem;line-height:1.6;color:var(--text);overflow:auto;flex:1;white-space:pre-wrap;word-break:break-word;background:rgba(0,0,0,.2)}.close-btn,.copy-btn{border-radius:6px;cursor:pointer;transition:all .2s ease}.copy-btn{padding:.4rem 1rem;background:var(--blue-bg);border:1px solid var(--blue-border);color:var(--blue-text);font-size:.8rem}.copy-btn:hover{background:var(--blue-bg);border-color:var(--blue-border)}.copy-btn.copied{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.close-btn{padding:.4rem .8rem;background:var(--surface-elevated);border:1px solid var(--border-strong);color:var(--text-muted);font-size:1rem}.close-btn:hover{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.activity-link{color:var(--blue-text);text-decoration:none;border-bottom:1px dashed var(--blue-border)}.activity-link:hover{color:var(--blue-text);border-bottom-color:var(--blue-border)}.sudo-main{min-height:calc(100vh - 60px);padding:2rem}.sudo-container{max-width:1400px;margin:0 auto;width:100%}.sudo-nav-main{flex:1;min-width:0}.sudo-nav-main .nav-dropdown-trigger.active,.sudo-nav-main .nav-dropdown.active-group .nav-dropdown-trigger{color:var(--accent)}.sudo-nav-main .nav-trigger-icon{display:block;width:16px;height:16px}.sudo-content{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2rem;min-width:0}.sudo-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.sudo-section-title{font-size:1.5rem;font-weight:600;margin-bottom:0;color:var(--text)}.sudo-section-desc{color:var(--text-muted);margin-bottom:2rem}.sudo-stats{display:flex;gap:1.5rem;margin-bottom:2rem;flex-wrap:wrap}.sudo-stat{background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;padding:1rem 1.5rem;min-width:120px}.sudo-stat-value{font-size:1.5rem;font-weight:700;color:var(--accent)}.sudo-filter label,.sudo-stat-label{font-size:.85rem;color:var(--text-muted)}.sudo-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:var(--surface);border-radius:8px}.sudo-filter{display:flex;flex-direction:column;gap:.25rem}.sudo-filter label{font-size:.8rem}.sudo-filter input,.sudo-filter select,.sudo-filter-form input,.sudo-filter-form select{background:var(--surface-elevated);border:1px solid var(--border-strong);border-radius:6px;color:var(--text)}.sudo-filter input,.sudo-filter select{padding:.5rem .75rem;font-size:.9rem;min-width:140px}.sudo-filter-form input,.sudo-filter-form select{padding:.4rem .6rem;font-family:inherit;font-size:.85rem;width:100%}.sudo-filter-form input:focus,.sudo-filter-form select:focus,.sudo-input:focus,.sudo-select:focus{outline:0;border-color:var(--accent);background:var(--surface-hover)}.sudo-input,.sudo-select{padding:.5rem .75rem;background:var(--surface-elevated);border:1px solid var(--border-strong);border-radius:6px;color:var(--text);font-size:.9rem;font-family:inherit;width:100%;transition:all .2s ease}.sudo-btn,.sudo-filter-form select,.sudo-select{cursor:pointer}.sudo-btn{padding:.5rem 1rem;background:var(--error-bg-hover);border:1px solid var(--error-border-strong);border-radius:6px;color:var(--accent);font-size:.9rem;transition:all .2s ease;align-self:flex-end}.sudo-btn:hover{background:var(--error-bg-active)}.sudo-btn-danger{background:var(--error-bg);border-color:var(--error-border-strong);color:var(--error-text)}.sudo-btn-danger:hover,.sudo-btn-primary{background:var(--error-bg-hover)}.sudo-btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border:1px solid var(--error-border-strong);border-radius:6px;color:var(--accent);cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s ease;align-self:flex-start}.sudo-btn-primary svg{width:18px;height:18px;flex-shrink:0}.sudo-btn-primary:hover:not(:disabled){background:var(--error-bg-active)}.sudo-btn-primary:disabled{opacity:.5;cursor:not-allowed}.sudo-btn-secondary{border-color:var(--border-strong)}.sudo-btn-secondary,.sudo-btn-secondary:hover{background:var(--surface-hover)}.sudo-btn-warning{background:var(--warning-orange-bg);border-color:var(--warning-orange-border);color:var(--warning-orange-text)}.sudo-btn-warning:hover{background:rgba(245,158,11,.25);border-color:rgba(245,158,11,.6)}.sudo-btn-warning:disabled{opacity:.5;cursor:not-allowed}.sudo-btn-link{background:0 0;border:0;color:var(--accent);cursor:pointer;font-size:.85rem;padding:0;text-decoration:underline}.sudo-btn-link:hover{opacity:.8}.sudo-btn-sm{padding:.4rem .75rem;font-size:.875rem;white-space:nowrap;flex-shrink:0;background:var(--error-bg-hover);border-color:var(--error-border-strong);color:var(--accent)}.sudo-btn-sm:hover{background:var(--error-bg-active)}.sudo-btn-sm.sudo-btn-secondary{background:var(--surface-hover);border-color:var(--border-strong);color:var(--text-muted)}.sudo-btn-sm.sudo-btn-secondary:hover{background:var(--surface-hover);color:var(--text)}.actions-cell{white-space:nowrap;display:flex;gap:.5rem;align-items:center}.hidden{display:none!important}.sudo-btn:disabled{opacity:.45;cursor:not-allowed}.sudo-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:1000}.sudo-modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;padding:1.75rem;width:100%;max-width:460px;display:flex;flex-direction:column;gap:1rem}.sudo-modal-title{margin:0;font-size:1.1rem;font-weight:600;color:var(--error-text)}.sudo-modal-desc{margin:0;font-size:.9rem;color:var(--text-muted);line-height:1.5}.sudo-modal-input{width:100%;padding:.5rem .75rem;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9rem;box-sizing:border-box}.sudo-modal-input:focus{outline:0;border-color:var(--error-text)}.sudo-modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.sudo-table{width:100%;border-collapse:collapse;font-size:.9rem}.sudo-table th{text-align:left;padding:.75rem 1rem;background:var(--surface-elevated);border-bottom:1px solid var(--border);color:var(--text-muted);font-weight:500;white-space:nowrap}.sudo-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.sudo-table .mono{font-family:var(--font-mono);font-size:.8rem;color:var(--text-muted)}.sudo-thumb{width:64px;height:64px;object-fit:cover;border-radius:4px;border:1px solid var(--border);display:block}.sudo-link,.sudo-link:hover{color:var(--accent);text-decoration:none}.sudo-link:hover{text-decoration:underline}.sudo-badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase}.sudo-badge-success{background:rgba(34,197,94,.15);color:var(--success-text)}.sudo-badge-error{background:rgba(239,68,68,.15);color:var(--error-text)}.sudo-badge-skipped{background:rgba(239,68,68,.1);color:var(--error-text)}.sudo-badge-pending{background:rgba(234,179,8,.15);color:var(--warning-text)}.sudo-badge-warning{background:rgba(249,115,22,.15);color:var(--warning-orange-text)}.sudo-badge-info{background:rgba(59,130,246,.15);color:var(--blue-text)}.sudo-empty{text-align:center;padding:3rem;color:var(--text-muted)}.sudo-timestamp{font-size:.8rem;color:var(--text-muted)}.sudo-table-container{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.sudo-table-container .sudo-table{min-width:100%;table-layout:auto}.sudo-table-sticky{max-height:80vh;overflow:auto}.sudo-table-sticky thead th{position:sticky;top:0;z-index:2;background:var(--surface-elevated)}.sudo-table-sticky td.sticky-col{position:sticky;left:0;z-index:1;background:var(--bg-primary)}.sudo-table-sticky th.sticky-col{position:sticky;left:0;z-index:3}@media (max-width:900px){.sudo-content,.sudo-main{padding:1rem}}.surface-card{background:var(--surface);border:1px solid var(--border-subtle)}.surface-elevated{background:var(--surface-elevated);border:1px solid var(--border)}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:4rem 2rem;color:var(--text-muted)}.loading-spinner .spinner{width:48px;height:48px;animation:spin .8s linear infinite}.loading-spinner .path{stroke:var(--accent);stroke-linecap:round;animation:dash 1.5s ease-in-out infinite}