html,body{height:100%}body{background:var(--sage)}.stage{min-height:100%;display:grid;place-items:center;padding:32px 16px}.device{position:relative;width:390px;height:844px;max-height:calc(100dvh - 64px);border-radius:48px;background:var(--mint);overflow:hidden;box-shadow:0 0 0 10px var(--ink),0 30px 80px #1c262040}.status{position:absolute;inset:0 0 auto;height:50px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;font:600 15px/1 var(--sans);z-index:5;pointer-events:none}.status .island{position:absolute;left:50%;top:11px;width:120px;height:34px;margin-left:-60px;border-radius:20px;background:var(--ink)}.status .sys{font-size:10px;letter-spacing:1px}@media(max-width:500px){body{background:var(--mint)}.stage{padding:0;display:block}.device{width:100%;height:100dvh;max-height:none;border-radius:0;box-shadow:none}.status{display:none}}.still body{background:var(--mint)}.still .stage{padding:0;display:block}.still .device{width:100%;height:100vh;max-height:none;border-radius:0;box-shadow:none}.to-board{position:fixed;top:max(24px,env(safe-area-inset-top));left:max(24px,env(safe-area-inset-left));z-index:10;padding:12px 20px;border-radius:999px;background:var(--card);color:var(--ink);text-decoration:none;font:600 14px/1 var(--sans);box-shadow:0 6px 18px #1c26201a;transition:transform var(--t-fast) var(--spring)}.to-board:hover{transform:translateY(-2px)}.to-board:focus-visible{outline:2px solid var(--red);outline-offset:3px}@media(max-width:500px){.to-board{display:none}}.still .to-board{display:none}#screen{position:absolute;inset:0}.scr{position:absolute;inset:0;display:flex;flex-direction:column;gap:24px;padding:max(64px,calc(env(safe-area-inset-top) + 24px)) 28px max(28px,calc(env(safe-area-inset-bottom) + 16px));background:var(--mint);animation:scr-in var(--t-med) var(--soft) both}.scr.tint{background:var(--panel)}.scr.leaving{animation:scr-out .34s var(--soft) both;pointer-events:none}@keyframes scr-in{0%{opacity:0;transform:translate(calc(var(--dir, 1) * 28px))}}@keyframes scr-out{to{opacity:0;transform:translate(calc(var(--dir, 1) * -28px))}}.scr.center{align-items:center;justify-content:center;text-align:center}.top{min-height:24px;display:flex;align-items:center;justify-content:space-between}.back{border:0;background:none;padding:6px 0;font:600 15px/1 var(--sans);color:var(--muted);cursor:pointer}.count{font:600 13px/1 var(--sans);letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.body{flex:1;display:flex;flex-direction:column;justify-content:center;min-height:0}.gap-m{gap:20px}.gap-l{gap:28px}.center-x{align-items:center;text-align:center}.actions{display:flex;flex-direction:column;gap:12px}.display{font:500 34px/1.06 var(--serif);letter-spacing:-.6px;color:var(--red);text-wrap:balance}.display.q{font-size:30px}.display.small{font-size:28px}.display.em{font-size:30px}.display u{text-decoration-thickness:2px;text-underline-offset:5px}.lead{font:500 17px/1.5 var(--sans);color:var(--ink);text-wrap:pretty}.lead.muted,.muted{color:var(--muted)}.lines{display:flex;flex-direction:column;gap:12px}.note{font:500 14px/1.4 var(--sans);color:var(--muted);text-align:center}.note.left{text-align:left}.pill.on-tint{background:var(--card)}.rise{animation:rise var(--t-slow) var(--spring) both;animation-delay:var(--d, 0ms)}@keyframes rise{0%{opacity:0;transform:translateY(22px)}}.progress{display:flex;gap:6px}.progress span{flex:1;height:6px;border-radius:3px;background:var(--sage);transition:background var(--t-med)}.progress .done{background:var(--red)}.progress .now{background:var(--red);animation:grow var(--t-slow) var(--spring) both;transform-origin:left}@keyframes grow{0%{transform:scaleX(0)}}.opts{display:flex;flex-direction:column;gap:10px}.or{font:600 12px/1 var(--sans);letter-spacing:1px;text-transform:uppercase;color:var(--faint);text-align:center}.opt{width:100%;display:flex;flex-direction:column;gap:8px;text-align:left;padding:22px;border:0;border-radius:var(--radius);background:var(--panel);cursor:pointer;transition:transform var(--t-med) var(--spring),opacity var(--t-med),background var(--t-fast)}.opt:hover{background:var(--sage)}.opt:active{transform:scale(.97)}.opt:focus-visible{outline:2px solid var(--red);outline-offset:3px}.opt-t{font:500 21px/1.15 var(--serif);color:var(--ink)}.opt-s{font:500 15px/1.45 var(--sans);color:var(--muted)}.opt.picked{background:var(--red);animation:pick .56s var(--spring)}.opt.picked .opt-t,.opt.picked .opt-s{color:var(--card)}.opt.dim{opacity:.3;transform:scale(.96)}@keyframes pick{0%{transform:scale(.95)}55%{transform:scale(1.04)}to{transform:scale(1)}}.splash{cursor:pointer}.logo-wrap{width:220px}.logo-wrap svg{width:100%;height:auto;display:block}.field{position:relative;width:300px;height:300px;flex:none}.ring{position:absolute;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%);background:var(--panel)}.ring.r3{width:300px;height:300px;opacity:.45}.ring.r2{width:200px;height:200px;opacity:.7}.ring.r1{width:100px;height:100px;background:var(--sage)}.dot{position:absolute;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:var(--sage-deep);animation:dot-in .6s var(--spring) both,drift 3.2s ease-in-out infinite alternate;animation-delay:var(--d),calc(var(--d) + .6s)}@keyframes dot-in{0%{opacity:0;transform:scale(0)}}@keyframes drift{to{transform:translate(3px,-3px)}}.you{position:absolute;left:50%;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:var(--red)}.pulse{position:absolute;inset:0;border-radius:50%;background:var(--red);animation:pulse 1.8s ease-out infinite}@keyframes pulse{0%{transform:scale(1);opacity:.45}to{transform:scale(4.5);opacity:0}}.match{position:absolute;left:calc(50% + var(--x) * 130px);top:calc(50% + var(--y) * 130px);display:flex;align-items:center;gap:8px;transition:left .9s var(--spring),top .9s var(--spring)}.mdot{width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--sage-deep);flex:none;transition:transform .6s var(--spring),background .3s}.mlabel{margin-top:-5px;padding:6px 10px;border-radius:999px;background:var(--card);font:600 12px/1 var(--sans);color:var(--ink);white-space:nowrap;opacity:0;transform:translateY(6px) scale(.9);transition:opacity .3s,transform .6s var(--spring)}.match.found{left:calc(50% + var(--x) * 62px);top:calc(50% + var(--y) * 62px);z-index:2}.match.found .mdot{background:var(--red);transform:scale(1.4)}.match.found .mlabel{opacity:1;transform:none}.match.flip{flex-direction:row-reverse;transform:translate(calc(-100% + 5px))}.match.flip .mdot{margin:-5px -5px 0 0}.loading-copy{display:flex;flex-direction:column;gap:10px;align-items:center}#ltext{min-height:26px}.orgs{display:flex;flex-direction:column;gap:10px}.org{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:var(--radius);background:var(--panel)}.org.swapped{animation:pick .56s var(--spring)}.share{flex:none;width:52px;font:500 24px/1 var(--serif);color:var(--red);font-variant-numeric:tabular-nums}.org-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.org-name{font:500 19px/1.15 var(--serif);color:var(--ink)}.org-what{font:500 14px/1.4 var(--sans);color:var(--muted)}.org-meta{display:flex;align-items:center;gap:8px;font:500 13px/1 var(--sans);color:var(--muted);padding-top:4px}.tag{padding:5px 9px;border-radius:999px;background:var(--card);font-weight:600;color:var(--ink)}.swap{flex:none;border:0;border-radius:999px;padding:9px 14px;background:var(--card);font:600 13px/1 var(--sans);cursor:pointer}.mini-card{position:relative;width:280px;height:176px;border-radius:16px;background:var(--panel);box-shadow:0 18px 40px #1c26202e,inset 0 0 0 1px #ff2c0040;animation:card-in .9s var(--spring) both}.mini-card .chip{position:absolute;top:22px;right:22px;width:38px;height:28px;border-radius:6px;background:var(--sage-deep)}.mini-card .num{position:absolute;top:28px;left:22px;font:600 12px/1 var(--sans);color:var(--muted);letter-spacing:1px}.mini-card .mark{position:absolute;left:22px;bottom:20px;width:112px}.card-logo{width:100%;height:auto;display:block}.card-logo .l{fill:var(--red)}@keyframes card-in{0%{opacity:0;transform:translateY(40px) rotate(-6deg) scale(.9)}}.still .scr,.still .rise,.still .opt,.still .mini-card{animation:none!important}.still .match,.still .mdot,.still .mlabel{transition:none}
