@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-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:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}.__variable_246ccd{--font-geist-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-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:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_c29908{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_c29908{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}:root{--ink:#14201a;--muted:#647068;--canvas:#f3f6f1;--surface:#ffffff;--line:#dce4dd;--spotify:#1ed760;--spotify-deep:#139943;--mint:#dff8e8;--error:#b83838;--shadow:0 24px 70px rgba(29,52,38,0.13)}*{box-sizing:border-box}html{min-width:320px;background:var(--canvas)}body{min-height:100vh;margin:0;background:radial-gradient(circle at 82% 18%,rgba(30,215,96,.1),transparent 26rem),var(--canvas);color:var(--ink);font-family:var(--font-geist-sans),Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid rgba(20,32,26,.28);outline-offset:3px}.page-shell{width:min(1180px,calc(100% - 48px));min-height:100vh;margin:0 auto;display:grid;grid-template-rows:auto 1fr auto}.site-header{min-height:112px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:19px;font-weight:760;letter-spacing:-.04em;text-decoration:none}.brand-mark{width:34px;height:34px;border-radius:50%;display:flex;align-items:flex-end;justify-content:center;gap:3px;padding:8px 7px;background:var(--ink);transform:rotate(-6deg)}.brand-mark i{width:4px;border-radius:99px;background:var(--spotify)}.brand-mark i:first-child{height:8px}.brand-mark i:nth-child(2){height:17px}.brand-mark i:nth-child(3){height:12px}.secure-label{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;font-weight:560}.secure-label span{color:var(--spotify-deep);font-size:8px}.pairing-layout{align-self:center;display:grid;grid-template-columns:minmax(0,.9fr) minmax(440px,.75fr);gap:clamp(56px,9vw,130px);align-items:center;padding:42px 0 70px}.intro{max-width:545px}.card-kicker,.eyebrow{margin:0 0 16px;color:var(--spotify-deep);font-family:var(--font-geist-mono),monospace;font-size:12px;font-weight:650;letter-spacing:.11em;text-transform:uppercase}h1{max-width:520px;margin:0;font-family:var(--font-geist-sans),Arial,sans-serif;font-size:clamp(46px,5.7vw,76px);font-weight:680;line-height:.98;letter-spacing:-.055em}.lede{max-width:510px;margin:25px 0 0;color:var(--muted);font-size:18px;line-height:1.65}.step-list{max-width:430px;margin:42px 0 0;padding:0;list-style:none}.step-list li{position:relative;display:grid;grid-template-columns:38px 1fr;gap:14px;align-items:center;padding:0 0 24px;color:#8a938d}.step-list li:not(:last-child):after{content:"";position:absolute;left:18px;top:40px;width:2px;height:18px;background:var(--line)}.step-list li.is-complete,.step-list li.is-current{color:var(--ink)}.step-marker{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.55);font-family:var(--font-geist-mono),monospace;font-size:12px;font-weight:650}.is-current .step-marker{border-color:var(--ink);background:var(--ink);color:white}.is-complete .step-marker{border-color:var(--spotify);background:var(--mint);color:var(--spotify-deep)}.button-check svg,.step-marker svg,.success-icon svg{width:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.step-list small,.step-list strong{display:block}.step-list strong{margin-bottom:4px;font-size:15px;font-weight:670}.expiry-note,.step-list small{color:var(--muted);font-size:13px}.expiry-note{display:flex;align-items:center;gap:8px;margin:8px 0 0}.expiry-note span{color:var(--spotify-deep);font-size:20px}.pairing-card{min-height:566px;border:1px solid rgba(20,32,26,.08);border-radius:28px;display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,4vw,48px);background:var(--surface);box-shadow:var(--shadow)}.card-heading{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:start}.card-step{margin-top:3px;color:var(--spotify-deep);font-family:var(--font-geist-mono),monospace;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.card-heading h2,.card-heading label{display:block;margin:0;color:var(--ink);font-size:17px;font-weight:690;letter-spacing:-.02em}.card-heading p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.pair-button,.spotify-button{width:100%;min-height:54px;border:0;border-radius:12px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;cursor:pointer;font-size:14px;font-weight:690;transition:transform .16s ease,background .16s ease,opacity .16s ease}.spotify-button{margin-top:22px;background:var(--spotify);color:#08170d}.pair-button:hover:not(:disabled),.spotify-button:hover:not(:disabled){transform:translateY(-1px)}.spotify-button:hover:not(:disabled){background:#27e66a}.pair-button svg,.spotify-button svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.spotify-button.is-connected{justify-content:flex-start;gap:10px;background:var(--mint);color:#16783a}.button-check{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:rgba(30,215,96,.2)}.button-check svg{width:15px}.card-divider{height:1px;margin:31px 0;background:var(--line)}.code-field-wrap{position:relative;margin-top:20px}.code-field{width:100%;height:68px;border:1px solid #cbd5cd;border-radius:12px;padding:0 70px 0 20px;background:#fbfcfa;color:var(--ink);font-family:var(--font-geist-mono),monospace;font-size:25px;font-weight:650;letter-spacing:.21em;text-transform:uppercase;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.code-field::placeholder{color:#b4bdb6}.code-field:focus{border-color:var(--spotify-deep);background:white;box-shadow:0 0 0 4px rgba(30,215,96,.12)}.code-field:disabled{border-color:#e2e7e3;background:#f3f5f2;color:#a3aba5;cursor:not-allowed}.code-field[aria-invalid=true]{border-color:var(--error)}.code-count{position:absolute;right:18px;top:50%;color:#89928b;font-family:var(--font-geist-mono),monospace;font-size:11px;transform:translateY(-50%)}.field-help{min-height:18px;margin:8px 0 0;color:var(--muted);font-size:12px}.message-space{min-height:44px;display:flex;align-items:center}.error-message{display:flex;align-items:flex-start;gap:8px;margin:9px 0 0;color:var(--error);font-size:12px;line-height:1.4}.error-message span{flex:0 0 auto;width:18px;height:18px;border:1px solid;border-radius:50%;display:grid;place-items:center;font-family:var(--font-geist-mono),monospace;font-size:10px;font-weight:700}.pair-button{background:var(--ink);color:white}.pair-button:hover:not(:disabled){background:#233129}.pair-button:disabled{background:#dce2dd;color:#8a948d;cursor:not-allowed}.spinner{width:17px;height:17px;border:2px solid rgba(255,255,255,.4);border-top-color:white;border-radius:50%;animation:spin .7s linear infinite}.success-state{max-width:330px;margin:auto;text-align:center}.success-icon{width:68px;height:68px;margin:0 auto 26px;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:var(--spotify-deep)}.success-icon svg{width:31px}.success-state .card-kicker{margin-bottom:12px}.success-state h2{margin:0;font-family:"Arial Rounded MT Bold","Trebuchet MS",var(--font-geist-sans),sans-serif;font-size:34px;letter-spacing:-.045em}.success-state>p:not(.card-kicker){margin:14px 0 28px;color:var(--muted);font-size:15px;line-height:1.55}.text-button{border:0;border-bottom:1px solid #aeb8b0;padding:3px 0;background:transparent;color:var(--ink);cursor:pointer;font-size:13px;font-weight:650}footer{max-width:600px;margin:0 auto;padding:24px 0 32px;color:#7d8780;font-size:11px;line-height:1.5;text-align:center}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:900px){.pairing-layout{grid-template-columns:1fr;gap:44px;max-width:600px;margin:0 auto;padding-top:28px}.intro{max-width:none}h1{max-width:580px}.step-list{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:none}.step-list li{padding:0}.step-list li:not(:last-child):after{display:none}.pairing-card{min-height:0}}@media (max-width:560px){.page-shell{width:min(100% - 28px,480px)}.site-header{min-height:86px}.secure-label{font-size:0}.secure-label:after{content:"Secure pairing";font-size:11px}.pairing-layout{gap:34px;padding:26px 0 42px}h1{font-size:clamp(42px,13vw,60px)}.lede{margin-top:20px;font-size:16px}.step-list{grid-template-columns:1fr;margin-top:32px}.step-list li:not(:last-child):after{display:block}.expiry-note{margin-top:4px}.pairing-card{border-radius:22px;padding:28px 22px}.card-heading{grid-template-columns:1fr;gap:8px}.card-step{margin:0}.spotify-button{margin-top:19px}.card-divider{margin:27px 0}.code-field{font-size:22px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}