@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap");:root{color-scheme:light;--ink:#173744;--muted:#4f6872;--paper:#ffffff;--white:#ffffff;--coral:#f2d34f;--coral-dark:#dfbd35;--mint:#15765f;--line:#dce5e7;--focus:#187b82;--teal:#25747a;--teal-wash:#e4f3f3;--yellow-wash:#fff6cc;font-family:DM Sans,Avenir Next,sans-serif;background:var(--paper);color:var(--ink)}*{box-sizing:border-box}html{min-width:320px;background:var(--paper)}body{margin:0;min-height:100vh}::selection{background:#b9e2e1;color:#173744}button,input{font:inherit}button{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.app-shell{max-width:920px;min-height:100vh;margin:0 auto;padding:0 34px 54px}.corner-hi{position:fixed;z-index:5;top:8px;right:12px;color:var(--muted);font-size:12px;font-weight:700;line-height:1;pointer-events:none}.topbar{height:86px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}.brand,.topbar{align-items:center}.brand{display:inline-flex;gap:11px;color:var(--ink);text-decoration:none;font:800 17px/1 Manrope,sans-serif;letter-spacing:-.035em}.brand img{display:block;width:42px;height:42px;border-radius:13px}.account-actions{display:flex;align-items:center;gap:17px}.account-actions form{margin:0}.back-button,.text-button{background:none;border:0;cursor:pointer}.text-button{padding:10px 0;color:var(--ink);font-size:14px;font-weight:700}.text-button span{margin-left:5px;color:var(--teal)}.screen{width:min(100%,660px);margin:0 auto}.entry-screen{padding-top:63px}.entry-screen p{max-width:440px;margin:0 0 24px;color:var(--muted);font-size:16px;line-height:1.6}.entry-screen form{margin:0}.entry-screen .primary-button{min-width:190px}.account-error{margin:14px auto 0}.picker-screen{padding-top:63px}.intro{margin-bottom:30px}h1,h2,p{margin-top:0}h1{margin-bottom:9px;font:800 clamp(32px,5vw,43px)/1.12 Manrope,sans-serif;letter-spacing:-.05em}.helper-text,.intro p{color:var(--muted);font-size:16px;line-height:1.6}.intro p{margin-bottom:0}.exercise-list{border-top:1px solid var(--line)}.exercise-row{min-height:118px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;grid-gap:15px;gap:15px;border-bottom:1px solid var(--line);padding:19px 14px}.exercise-row.featured{background:var(--teal-wash)}.exercise-status-dot{align-self:start;width:11px;height:11px;margin:5px auto 0;border:2px solid #8ea4a9;border-radius:50%}.exercise-status-dot.ready{border-color:var(--teal);background:var(--teal);box-shadow:0 0 0 3px rgba(37,116,122,.12)}.exercise-status-dot.pending{border-color:#9aa9ac;background:transparent}.exercise-copy h2{margin-bottom:5px;font:750 17px/1.3 Manrope,sans-serif;letter-spacing:-.025em}.exercise-copy p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}.exercise-status{display:inline-block;margin-top:7px;color:var(--teal);font-size:12px;font-weight:700}.exercise-status.pending{color:#5b6d72}.primary-button,.secondary-button{min-height:46px;border-radius:9px;padding:0 20px;cursor:pointer;font-size:14px;font-weight:700;transition:background-color .16s ease,transform .16s ease}.primary-button{color:var(--ink);background:var(--coral);border:1px solid var(--coral)}.primary-button:hover:not(:disabled){background:var(--coral-dark);border-color:var(--coral-dark);transform:translateY(-1px)}.primary-button:disabled{color:#40565d;background:#d7e0e1;border-color:#d7e0e1;cursor:not-allowed}.secondary-button{color:var(--teal);border:1px solid #8ba9ad;background:transparent}.secondary-button:hover{background:var(--teal-wash)}.privacy-note{margin:22px 7px 0;color:#49616b;font-size:13px;line-height:1.5}.exercise-screen{padding-top:33px;text-align:center}.exercise-screen h1{margin:18px auto 14px}.back-button{display:block;margin:0 0 48px;padding:9px 0;color:var(--muted);font-size:14px;font-weight:650}.back-button:hover,.exercise-kicker,.text-button:hover{color:var(--teal)}.exercise-kicker{margin-bottom:14px;font-size:13px;font-weight:750;letter-spacing:.035em}.countdown{width:158px;height:158px;margin:29px auto 20px;display:grid;place-items:center;border:2px solid #e2c843;border-radius:50%;background:var(--yellow-wash);color:var(--ink);font:800 76px/1 Manrope,sans-serif;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;animation:arrive .28s ease-out both}.code-display{margin:39px auto 19px;color:var(--ink);font:800 clamp(76px,19vw,112px)/1 Manrope,sans-serif;letter-spacing:.12em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.helper-text{max-width:430px;margin:0 auto 27px}.answer-form{display:flex;justify-content:center;align-items:stretch;gap:10px;margin:28px auto 0}.answer-form input{width:150px;height:53px;padding:0 13px;border:1px solid #8ba9ad;border-radius:9px;background:var(--white);color:var(--ink);text-align:center;font:750 24px/1 Manrope,sans-serif;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.2em}.answer-form input::placeholder{color:#617981;opacity:1}.error-message{margin:18px auto 0;color:#a3332a;font-size:14px;line-height:1.5}.success-screen{padding-top:90px}.checkmark{width:78px;height:78px;display:grid;place-items:center;margin:0 auto 24px;border-radius:50%;background:#dff2e8;color:var(--mint);font:700 42px/1 DM Sans,sans-serif;animation:arrive .3s ease-out both}.success-screen .primary-button{margin-top:5px}.lower-button{display:block;margin:13px auto 0}.leaderboard-screen{padding-top:33px}.leaderboard-screen .intro{margin-bottom:24px}.score-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.score-list li{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);font-size:15px}.score-list strong{color:var(--teal);font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.leaderboard-screen .privacy-note{margin-left:0}.look-screen{padding-bottom:32px}.look-screen h1{margin:5px 0 12px;text-align:left}.look-instructions,.look-privacy{max-width:560px;margin:0 0 15px;color:var(--muted);font-size:16px;line-height:1.6;text-align:left}.look-privacy{margin-bottom:23px;font-size:13px}.look-status{min-height:45px;display:flex;align-items:center;justify-content:center;margin:2px auto 16px;color:var(--muted);font-size:14px;line-height:1.5;text-align:center}.look-stage{position:relative;width:min(100%,570px);height:clamp(220px,52vw,310px);margin:0 auto 18px;overflow:hidden;border:1px solid #c4dbdc;border-radius:12px;background:var(--teal-wash)}.look-target{position:absolute;top:50%;left:50%;width:24px;height:24px;transform:translate(-50%,-50%);border:4px solid #ffffff;border-radius:50%;background:var(--mint);box-shadow:0 2px 10px rgba(23,55,68,.18)}.look-camera{position:absolute;z-index:1;top:12px;right:12px;width:92px;height:70px;border:2px solid var(--white);border-radius:9px;background:#d8d2c7;object-fit:cover;transform:scaleX(-1)}.look-distraction{position:absolute;top:50%;display:grid;min-width:104px;min-height:66px;place-items:center;padding:8px 15px;border:2px solid #272d65;border-radius:18px 18px 18px 4px;background:#e9dbff;color:#272d65;font:800 20px/1 Manrope,sans-serif;letter-spacing:-.03em;transform:translateY(-50%);animation:distraction-pop .2s ease-out both}.look-distraction.left{left:12%}.look-distraction.right{right:12%;border-radius:18px 18px 4px 18px;background:#ffe1be;color:#823e20;border-color:#823e20}.look-score{margin:0;color:var(--muted);font-size:14px;text-align:center}.look-score strong{margin-left:5px;color:var(--ink);font:800 22px/1 Manrope,sans-serif;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.look-results{padding-top:34px;text-align:center}.look-results h2{margin-bottom:12px;font:800 28px/1.2 Manrope,sans-serif;letter-spacing:-.04em}.look-saved{margin:12px 0 0;color:var(--mint);font-size:14px;font-weight:700}.look-error{max-width:470px;margin:30px auto 0;text-align:center}.look-error .error-message{margin-bottom:18px}.needle-screen{padding-bottom:38px}.needle-screen h1{margin-top:0}.needle-instructions{margin-bottom:20px}.needle-board{width:min(100%,520px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;margin:0 auto;padding:13px;border:1px solid #d8cfb4;border-radius:12px;background:#f6f3e9}.hay-piece,.needle-empty-spot,.needle-spot{width:100%;aspect-ratio:1.12;border-radius:8px}.hay-piece{display:grid;place-items:center;border:1px solid #b7a06a;background:#f0dfac;box-shadow:0 2px 0 #c6ad73;cursor:pointer;transition:transform .18s ease-out,background-color .18s ease-out}.hay-piece:hover{transform:translateY(-3px) rotate(-2deg);background:#f6e8bc}.hay-bundle{position:relative;display:block;width:72%;height:48%;border:1px solid #a18b55;border-radius:50% 44% 6px 48%;background:repeating-linear-gradient(112deg,#d5b55f 0 3px,#e6cb7e 3px 6px,#caa952 6px 8px);transform:rotate(-9deg)}.hay-bundle:after{position:absolute;top:51%;left:7%;width:86%;height:2px;background:#ab904b;content:"";transform:rotate(7deg)}.needle-empty-spot{border:1px dashed #d1c8b0;background:#eeece3}.needle-spot{display:grid;place-items:center;border:1px solid #a9d3bc;background:#e3f3e9;color:#15765f;animation:arrive .28s ease-out both}.needle-mark{display:block;width:68%;height:54%;overflow:visible}.moved-hay{width:min(100%,520px);margin:12px auto 0;text-align:left}.moved-hay-label{color:var(--muted);font-size:12px;font-weight:700}.moved-hay-pile{min-height:43px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fffefa}.moved-hay-empty{color:var(--muted);font-size:12px}.moved-bundle{width:29px;height:17px;border-radius:50% 44% 4px 48%}.needle-score{margin:20px 0 0;color:var(--muted);font-size:14px;text-align:center}.needle-score strong{margin-left:6px;color:var(--ink);font:800 21px/1 Manrope,sans-serif;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.needle-result{margin:21px auto 0;padding-top:17px;border-top:1px solid var(--line);text-align:center}.needle-result-title{margin:0 0 5px;color:var(--mint);font:800 22px/1.25 Manrope,sans-serif}.needle-result-copy{margin:0 0 13px;color:var(--muted);font-size:14px;line-height:1.5}.needle-result .error-message{margin:10px auto 14px}@keyframes distraction-pop{0%{opacity:0;scale:.92}to{opacity:1;scale:1}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes arrive{0%{opacity:.55;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (max-width:560px){.app-shell{padding:0 19px 38px}.topbar{height:72px}.brand{font-size:15px;gap:9px}.brand img{width:36px;height:36px;border-radius:11px}.text-button{font-size:13px}.account-actions{gap:10px}.entry-screen,.picker-screen{padding-top:45px}.exercise-row{grid-template-columns:16px minmax(0,1fr);gap:10px;padding:17px 10px}.exercise-row>button{grid-column:2;justify-self:start;margin-top:4px;min-height:42px}.exercise-status-dot{margin-top:6px}.exercise-copy h2{font-size:16px}.exercise-copy p{font-size:13px}.back-button{margin-bottom:42px}.answer-form{flex-direction:column;align-items:center}.answer-form .primary-button,.answer-form input{width:min(100%,250px)}.success-screen{padding-top:68px}.score-list li{font-size:14px}.look-stage{height:min(59vw,270px);min-height:200px}.look-distraction{min-width:86px;min-height:58px;font-size:17px}.look-distraction.left{left:7%}.look-distraction.right{right:7%}.look-camera{width:76px;height:58px}.needle-board{gap:6px;padding:9px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}