:root{--paper:#EDE8DB;--paper-2:#F7F3EA;--paper-3:#FBF9F3;--rust:#BE5A34;--rust-dark:#A54A26;--slate:#3B4150;--slate-2:#4B5262;--sky:#A9CDD4;--ink:#2A2E36;--muted:#8C8677;--line:#DED8C8;--font-serif:var(--font-fraunces),Georgia,"Times New Roman",serif;--font-sans:var(--font-inter),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}.shell,body{min-height:100dvh;display:flex;flex-direction:column}.shell,.topbar{align-items:center;width:100%}.topbar{max-width:480px;display:flex;justify-content:space-between;padding:24px 24px 12px}.wordmark{display:flex;align-items:center;gap:8px;font-family:var(--font-serif);font-weight:600;font-size:20px;color:var(--slate)}.card{background:var(--paper-3);border:1px solid var(--line);border-radius:20px;padding:28px 26px;width:100%;max-width:420px;margin:12px 16px;box-shadow:0 2px 8px rgba(60,55,40,.06);display:flex;flex-direction:column;gap:16px}h1{font-family:var(--font-serif);font-size:25px;font-weight:600;letter-spacing:-.2px;color:var(--slate)}.subtitle{font-size:15px;color:#5c5849;line-height:1.55}.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px 20px;border-radius:13px;font-family:var(--font-sans);font-size:15px;font-weight:600;cursor:pointer;border:none;transition:filter .15s,opacity .15s,transform .05s}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--rust);color:#fff}.btn-primary:hover:not(:disabled){filter:brightness(1.05)}.btn-secondary{background:var(--slate);color:#fff}.btn-secondary:hover:not(:disabled){filter:brightness(1.1)}.btn-ghost{background:transparent;color:var(--slate);border:1.5px solid rgba(59,65,80,.28)}.btn-ghost:hover:not(:disabled){background:rgba(59,65,80,.05)}.btn-danger{background:#fbeae5;color:var(--rust-dark);border:1.5px solid rgba(190,90,52,.35)}.btn-danger:hover:not(:disabled){background:#f7ddd5}.error{color:var(--rust-dark);font-size:14px}label{font-size:13px;font-weight:500;color:var(--slate-2)}input,select{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:12px;font-family:var(--font-sans);font-size:15px;outline:none;color:var(--ink);background:#fff;transition:border-color .15s}input:focus,select:focus{border-color:var(--rust)}.link{color:var(--rust);font-weight:600;text-decoration:none;cursor:pointer}.link:hover{text-decoration:underline}.secured{font-size:11px;opacity:.8}.auth-foot,.secured{text-align:center;color:var(--muted)}.auth-foot{font-size:13.5px}.copy-review{background:#fff3b0;color:inherit;padding:0 2px;border-radius:3px;box-shadow:0 0 0 1px var(--rust)}.app-foot{width:100%;max-width:480px;margin-top:32px;padding:20px 24px 0;border-top:1px solid var(--line)}.foot-links{display:flex;align-items:center;gap:10px;margin-bottom:8px}.foot-links .dotsep{color:var(--muted)}.foot-disc{line-height:1.5;margin-bottom:8px}.foot-copy,.foot-disc{font-size:11.5px;color:var(--muted)}.foot-copy{padding-bottom:24px}.user-menu{position:relative}.avatar-btn{width:34px;height:34px;border-radius:50%;border:none;cursor:pointer;padding:0;overflow:hidden;background:var(--slate);display:flex;align-items:center;justify-content:center}.avatar-img{width:100%;height:100%;object-fit:cover}.avatar-initials{font-size:13px;font-weight:600;color:#fff}.menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--paper-3);border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 30px -10px rgba(20,20,25,.35);min-width:190px;overflow:hidden;z-index:100}.menu-name{padding:12px 16px;font-size:13px;color:var(--muted)}.menu-divider{border:none;border-top:1px solid var(--line)}.menu-item{display:block;width:100%;padding:12px 16px;text-align:left;background:none;border:none;font-family:var(--font-sans);font-size:14px;font-weight:500;cursor:pointer;color:var(--rust)}.menu-item:hover{background:rgba(59,65,80,.06)}.profile-rows{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.profile-row{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;font-size:15px;border-bottom:1px solid var(--line)}.profile-row:last-child{border-bottom:none}.profile-label{color:var(--muted)}.profile-value{font-weight:600;color:var(--slate);text-align:right;max-width:60%}.garmin-badge{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#3f8a5f;background:#e2efe6;border-radius:999px;padding:4px 10px;white-space:nowrap}.garmin-dot{width:7px;height:7px;border-radius:50%;background:#3f8a5f}.garmin-badge.warn{color:var(--rust-dark);background:#f5e2da}.garmin-badge.warn .garmin-dot{background:var(--rust-dark)}.src-item{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.src{gap:14px;padding:14px 16px}.src,.src-ic{display:flex;align-items:center}.src-ic{flex:0 0 auto;width:40px;height:40px;border-radius:11px;justify-content:center;background:var(--paper)}.src-ic svg{width:22px;height:22px;display:block}.src-txt{flex:1 1;display:flex;flex-direction:column;min-width:0}.src-txt b{font-size:15px;color:var(--slate);font-weight:600}.src-txt small{font-size:12.5px;color:var(--muted);margin-top:1px}.src-act{flex:0 0 auto}.src-act-btn{background:none;border:none;padding:0;cursor:pointer;font-family:var(--font-sans)}.src-form{padding:4px 16px 18px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:12px}.edit-link{color:var(--rust);font-weight:600}.edit-link,.muted-link{font-size:13px;cursor:pointer;background:none;border:none;font-family:var(--font-sans)}.muted-link{color:var(--muted);font-weight:500;text-decoration:underline}.muted-link:disabled{opacity:.6;cursor:not-allowed}.secure-line{display:flex;gap:8px;align-items:flex-start;font-size:12px;color:var(--muted);line-height:1.45}.toggle-switch{position:relative;width:44px;height:26px;background:var(--line);border-radius:13px;border:none;cursor:pointer;transition:background .2s;flex-shrink:0;padding:0}.toggle-switch:disabled{opacity:.6;cursor:not-allowed}.toggle-switch.on{background:var(--rust)}.toggle-switch:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .2s}.toggle-switch.on:after{transform:translateX(18px)}.hamburger{width:34px;height:34px;border-radius:50%;border:none;cursor:pointer;background:transparent;color:var(--slate);display:flex;align-items:center;justify-content:center}.hamburger:hover{background:rgba(59,65,80,.06)}.drawer-scrim{position:fixed;inset:0;background:rgba(20,20,25,.42);z-index:200}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(78%,300px);background:var(--paper-3);box-shadow:-12px 0 34px -12px rgba(0,0,0,.45);z-index:201;padding:24px 0 20px;display:flex;flex-direction:column}.drawer-acct{display:flex;align-items:center;gap:12px;padding:0 22px 18px;border-bottom:1px solid var(--line)}.avatar-initials-badge{width:34px;height:34px;border-radius:50%;background:var(--slate);color:#fff;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.da-name{font-size:14px;font-weight:600;color:var(--slate)}.da-mail{font-size:12.5px;color:var(--muted)}.drawer-brand{padding:0 22px 18px;border-bottom:1px solid var(--line)}.drawer-nav{display:flex;flex-direction:column;flex:1 1;padding:8px 0}.drawer-nav a{padding:14px 22px;font-size:15px;color:var(--slate);cursor:pointer;font-weight:500;text-decoration:none}.drawer-nav a:hover{background:rgba(59,65,80,.06)}.drawer-nav a.signout{color:var(--rust);margin-top:auto;border-top:1px solid var(--line)}@keyframes spin{to{transform:rotate(1turn)}}.spinner{width:36px;height:36px;border:3px solid var(--line);border-top-color:var(--rust);border-radius:50%}.spinner,.spinner-inline{animation:spin .75s linear infinite}.spinner-inline{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;vertical-align:-2px;margin-right:8px}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_eb41fe{font-family:Fraunces,Fraunces Fallback;font-style:normal}.__variable_eb41fe{--font-fraunces:"Fraunces","Fraunces Fallback"}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback"}