:root{color-scheme:light dark;--ground:#d4d6cd;--paper:#f5f4ee;--ink:#252820;--muted:#56594e;--surface:#e9eadf;--accent:#d9cb48;--accent-ink:#252820;--selected:#e4e8d7;--field:#fffefa;--border:#777b6b;--error:#a22d25;--error-bg:#f7e4dc;--focus:#245d9a;--radius:3px;--body:17px;--small:15px;--title:clamp(36px,4.5vw,58px);--heading:25px;--app-title:21px}
*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--ink);font-family:"Trebuchet MS",Arial,sans-serif;font-size:var(--body);line-height:1.5}button,input{font:inherit}button,a,input,label{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:4px}button,a,input:focus-visible{outline-offset:5px}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}button{cursor:pointer}button:disabled{cursor:wait}button:disabled:not(.primary){opacity:.7}[hidden]{display:none!important}.frame{max-width:1104px;margin:auto;padding:0 32px}.masthead,footer{display:flex;justify-content:space-between;gap:20px;align-items:center}.masthead{padding:25px 0 21px}.masthead span:first-child{font-size:24px;font-weight:bold;letter-spacing:-1px}.masthead span:last-child,footer{font-size:var(--small)}footer{padding:24px 0 32px;color:var(--muted)}.paper{background:var(--paper);padding:44px 48px;min-height:520px}.hero{display:grid;grid-template-columns:1fr 220px;gap:36px;align-items:center;margin-bottom:34px}.hero-art{width:220px;height:128px;object-fit:contain;transform:rotate(-8deg)}h1,h2,p{margin:0}h1{font-family:Georgia,"Times New Roman",serif;font-weight:normal;font-size:var(--title);line-height:1.08;letter-spacing:-1.7px;max-width:650px}h2,legend{font-family:Georgia,"Times New Roman",serif;font-size:var(--heading);line-height:1.2;font-weight:normal}h1+p{margin-top:19px;max-width:530px}.content-grid{display:grid;grid-template-columns:1.23fr 1fr;gap:42px;align-items:start}fieldset{padding:0;margin:0;border:0;min-width:0}legend{padding:0;margin-bottom:8px}fieldset>p{font-size:var(--small);color:var(--muted);margin-bottom:18px}.app-list{display:grid;gap:10px}.app-option{position:relative;display:grid;grid-template-columns:68px 1fr 24px;gap:14px;align-items:center;padding:17px 15px;cursor:pointer;background:var(--surface);border-radius:var(--radius);transition:background .15s,transform .15s}.app-option:has(input:checked){background:var(--selected)}.app-option:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.app-option:has(input:disabled){cursor:default}.app-option input{width:23px;height:23px;margin:0;accent-color:var(--ink)}.app-option img{width:68px;height:68px;object-fit:contain;border-radius:var(--radius)}.app-option .fish-img{height:64px}.app-copy{display:block}.app-name{display:block;font-size:var(--app-title);font-family:Georgia,"Times New Roman",serif;line-height:1.15;margin-bottom:6px}.tagline{display:block;font-size:var(--small);line-height:1.4}.devices{display:block;color:var(--muted);font-size:var(--small);margin-top:7px}.signup{padding-top:0}.signup h2{margin-bottom:22px}.field{margin-bottom:19px}.field label{display:block;margin-bottom:7px;font-weight:bold}.optional{font-weight:normal;color:var(--muted);font-size:var(--small)}input[type=email],input[type=text]{display:block;width:100%;min-height:49px;padding:10px 12px;border:2px solid var(--border);border-radius:var(--radius);background:var(--field);color:var(--ink);min-width:0}input[aria-invalid=true]{border-color:var(--error)}.help,.fine{font-size:var(--small);color:var(--muted);margin-top:7px}.challenge{background:var(--surface);padding:12px 14px;margin:22px 0 16px;font-size:var(--small);color:var(--muted);min-height:54px;display:flex;align-items:center;gap:10px}.challenge-mark{font-size:21px;color:var(--ink)}.primary{display:block;width:100%;background:var(--accent);color:var(--accent-ink);border:0;border-radius:var(--radius);min-height:54px;padding:14px 20px;font-weight:bold;transition:transform .15s,filter .15s}.primary:hover:not(:disabled){filter:brightness(.95);transform:translateY(-2px)}.primary:active:not(:disabled){transform:translateY(0)}.signup .fine{text-align:center;margin-top:12px}.error{background:var(--error-bg);color:var(--error);padding:14px 16px;margin:16px 0;font-size:var(--small)}.error:empty{display:none}.inline-error{color:var(--error);font-size:var(--small);margin-top:6px}.result-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.result-item{display:flex;align-items:center;gap:16px;background:var(--surface);padding:18px}.result-item img{width:55px;height:55px;object-fit:contain}.result-item strong{display:block;font-family:Georgia,"Times New Roman",serif;font-weight:normal;font-size:var(--app-title);line-height:1.2}.outcome{display:block;font-size:var(--small);margin-top:6px}.failed{color:var(--error)}.next-steps{background:var(--selected);padding:25px 27px}.next-steps ol{padding-left:24px;margin:20px 0 0}.next-steps li{padding-left:6px;margin:0 0 15px}.next-steps li:last-child{margin-bottom:0}.next-steps p{margin-top:20px;font-size:var(--small)}.retry{margin-top:20px}.text-button{background:none;border:0;color:var(--ink);text-decoration:underline;text-underline-offset:5px;padding:13px 0;min-height:48px;font-weight:bold}.compact{max-width:690px;margin:20px auto 32px}.compact .hero{grid-template-columns:1fr 130px;margin-bottom:26px}.compact .hero-art{width:130px;height:120px}.compact h1{font-size:clamp(36px,4.5vw,52px)}.note{background:var(--selected);padding:24px;margin-top:30px}.note h2{margin-bottom:12px}.mock-note{font-size:var(--small);color:var(--muted);margin:24px 0 0}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip:focus{display:block;padding:12px;background:var(--paper)}.busy .app-option{opacity:.8}.busy .hero-art{animation:swim 1.8s ease-in-out infinite}.busy-message{margin:16px 0 0;font-size:var(--small)}@keyframes swim{50%{transform:translateX(9px) rotate(-4deg)}}
@media(prefers-color-scheme:dark){:root{--ground:#191e19;--paper:#272d26;--ink:#f3f3e7;--muted:#c0c5b4;--surface:#343b31;--selected:#3a4433;--field:#20271f;--border:#919b87;--error:#ffb3a3;--error-bg:#4d302b;--focus:#95c7ff}.app-option input{accent-color:var(--accent)}.app-option img:not(.fish-img),.result-item img{border-radius:var(--radius)}}
@media(max-width:760px){.frame{padding:0 20px}.paper{padding:30px 24px}.content-grid{grid-template-columns:1fr;gap:33px}.hero{grid-template-columns:1fr 105px;gap:16px}.hero-art{width:105px;height:90px}.hero h1{max-width:400px}.hero>div{min-width:0}h1{letter-spacing:-1px}.signup{padding:25px;background:var(--surface)}.challenge{background:var(--paper)}.compact{margin:10px auto}.compact .hero{grid-template-columns:1fr}.compact .hero-art{grid-row:1;width:140px;height:90px}.next-steps{padding:25px}.result-item strong{font-size:20px}}
@media(max-width:460px){.frame{padding:0 14px}.masthead{padding:18px 4px}.masthead span:first-child{font-size:22px}.masthead span:last-child{font-size:14px}.paper{padding:26px 20px}.hero{display:block;position:relative;margin-bottom:28px}.hero h1{font-size:38px;max-width:270px;padding-right:0}.hero p{margin-top:17px}.hero-art{display:none}.app-option{grid-template-columns:52px 1fr 22px;gap:11px;padding:15px 12px}.app-option img{width:52px;height:56px}.app-name{font-size:20px}.tagline{font-size:15px}.devices{margin-top:5px;font-size:14px}.signup{padding:22px 16px;margin:0 -4px}.signup h2{font-size:25px}footer{display:block;padding:20px 4px;font-size:14px}footer span{display:block}footer span+span{margin-top:4px}.compact .hero-art{display:block;width:138px;height:95px;margin-bottom:22px}.compact h1{font-size:38px}.next-steps{padding:22px 20px}.result-item{padding:17px 13px;gap:13px}.result-item img{width:42px;height:42px}.compact{margin:0}.note{padding:22px 20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:460px){.hero:not(.compact .hero) h1{max-width:245px;padding-right:35px}.hero:not(.compact .hero)>.hero-art{display:block;position:absolute;right:0;top:10px;width:72px;height:66px}.masthead{padding-inline:0}footer{padding-inline:0}}
@media(max-width:359px){.hero:not(.compact .hero)>.hero-art{display:none}.hero:not(.compact .hero) h1{padding-right:0}}
.hero h1:focus{outline:none}
@media(max-width:460px){.hero:not(.compact .hero)>.hero-art{top:5px;height:44px}}
