.dfm{max-width:40rem;min-height:22rem;margin-top:2.5rem}.dfm [hidden]{display:none!important}.dfm section{outline:none;animation:.35s both dfm-in}.dfm-noscript{border:2px dashed var(--ink);padding:1rem}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dfm-step{letter-spacing:-.01em;font-size:1.4rem;font-weight:600;line-height:1.25}.dfm-step--big{letter-spacing:-.02em;font-size:clamp(1.7rem,5vw,2.5rem);font-weight:700;line-height:1.1}.dfm-rows{gap:.35rem;margin-top:1.25rem;display:grid}.dfm-row{grid-template-columns:2.25rem 1fr 2.75rem;align-items:start;gap:0 .5rem;display:grid}.dfm-idx{font-family:var(--mono);color:var(--lab-blue);padding-top:.85rem;font-size:.85rem}.dfm-field{min-width:0}.dfm-field input{width:100%;font:inherit;color:var(--ink);border:0;border-bottom:2px solid var(--ink);background:0 0;border-radius:0;min-height:2.75rem;padding:.5rem .1rem;font-size:1.4rem}.dfm-field input::placeholder{color:var(--ink-soft);opacity:.5;font-style:italic}.dfm-field input:focus{background:var(--paper-deep);border-bottom-color:var(--lab-blue);outline:none}.dfm-field input:focus-visible{box-shadow:0 3px 0 0 var(--lab-blue);outline:none}.dfm-field input[aria-invalid=true]{border-bottom-color:var(--accent)}.dfm-error{color:var(--accent);font-family:var(--mono);min-height:0;font-size:.78rem}.dfm-error:not(:empty){margin:.3rem 0 .4rem}.dfm-x{width:2.75rem;height:2.75rem;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:50%;margin-top:.1rem;font-size:1.6rem;line-height:1}.dfm-x:hover:not(:disabled){color:var(--accent);background:var(--paper-deep)}.dfm-x:disabled{opacity:.25;cursor:not-allowed}.dfm-tools{flex-wrap:wrap;align-items:baseline;gap:.25rem 1rem;margin:1rem 0 0 2.75rem;display:flex}.dfm-count{font-family:var(--mono);color:var(--ink-soft);font-size:.75rem}.dfm-form .dfm-error,#dfm-form-error{margin:.75rem 0 0 2.75rem;font-size:.85rem}.dfm-link{font:inherit;font-family:var(--mono);color:var(--ink);cursor:pointer;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:.25em;background:0 0;border:0;padding:.6rem 0;font-size:.85rem}.dfm-link:hover:not(:disabled){color:var(--accent)}.dfm-link:disabled{color:var(--ink-soft);cursor:not-allowed;text-decoration:none}.dfm-btn{font:inherit;font-family:var(--mono);color:var(--ink);background:var(--paper);border:2px solid var(--ink);cursor:pointer;min-height:3rem;box-shadow:4px 4px 0 var(--ink);padding:.85rem 1.25rem;font-size:.95rem;font-weight:500;transition:transform .12s,box-shadow .12s,background-color .12s}.dfm-btn:hover:not(:disabled){box-shadow:5px 5px 0 var(--ink);transform:translate(-1px,-1px)}.dfm-btn:active:not(:disabled){box-shadow:1px 1px 0 var(--ink);transform:translate(3px,3px)}.dfm-btn:disabled{opacity:.5;cursor:wait}.dfm-btn--primary{background:var(--lab-yellow)}#dfm-form .dfm-btn--primary{margin:1.25rem 0 0 2.75rem;padding-inline:1.75rem;font-size:1.05rem}.dfm-actions,.dfm-answers{flex-wrap:wrap;gap:1rem;margin-top:2rem;display:flex}.dfm-num{letter-spacing:-.05em;color:var(--lab-blue);font-variant-numeric:tabular-nums;font-size:clamp(7rem,30vw,13rem);font-style:italic;font-weight:800;line-height:.9}.dfm-num.is-tick{animation:.6s cubic-bezier(.3,1.6,.5,1) both dfm-tick}.dfm-msg{max-width:24rem;min-height:2.4em;margin-top:1rem;font-size:1.5rem;font-style:italic}.dfm-bar{background:var(--paper-deep);max-width:24rem;height:4px;margin-top:1.25rem}.dfm-bar span{background:var(--accent);transform-origin:0;height:100%;animation:3s linear both dfm-fill;display:block}.dfm-recap{font-family:var(--mono);flex-wrap:wrap;gap:.4rem .9rem;margin-top:1.5rem;font-size:.85rem;display:flex}.dfm-recap li{border-bottom:2px dotted var(--ink-soft);overflow-wrap:anywhere}.dfm-quip{margin-top:2rem;font-size:1.6rem;font-style:italic;line-height:1.3}#dfm-after .dfm-btn{margin-top:1.75rem}.dfm-kicker{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:.8rem;font-weight:500}.dfm-winner{letter-spacing:-.03em;overflow-wrap:anywhere;background:linear-gradient(transparent 62%, var(--lab-yellow) 62% 92%, transparent 92%);-webkit-box-decoration-break:clone;box-decoration-break:clone;margin-top:.75rem;font-size:clamp(2.4rem,10vw,5.5rem);font-weight:800;line-height:1.02;display:inline}.dfm-winner.is-pop{animation:.55s cubic-bezier(.3,1.6,.5,1) both dfm-pop;display:inline-block}.dfm-reaction{max-width:30rem;margin-top:1.5rem;font-size:1.3rem;font-style:italic}.dfm-others{font-family:var(--mono);color:var(--ink-soft);overflow-wrap:anywhere;margin-top:1rem;font-size:.8rem}.dfm-others span{text-transform:uppercase;letter-spacing:.05em}@keyframes dfm-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes dfm-tick{0%{opacity:.4;transform:scale(1.18)rotate(-4deg)}to{opacity:1;transform:none}}@keyframes dfm-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes dfm-pop{0%{opacity:0;transform:scale(.7)rotate(-3deg)}to{opacity:1;transform:none}}@media (width<=30rem){.dfm-row{grid-template-columns:1.75rem 1fr 2.75rem}.dfm-tools,#dfm-form-error,#dfm-form .dfm-btn--primary{margin-left:0}.dfm-btn{width:100%}.dfm-actions,.dfm-answers{gap:.9rem}#dfm-form .dfm-btn--primary{margin-left:0}}@media (prefers-reduced-motion:reduce){.dfm section,.dfm-num.is-tick,.dfm-winner.is-pop{animation:none}.dfm-bar span{animation:none;transform:none}.dfm-btn{transition:none}}
