*{box-sizing:border-box}body{color:#172d24;background:#f7f5ed;margin:0;font:18px/1.55 system-ui,sans-serif}header{color:#fff;white-space:nowrap;background:#193c30;padding:12px max(20px,50% - 360px)}header a{color:inherit;font-weight:750;text-decoration:none}main{overflow-wrap:anywhere;width:min(100% - 40px,720px);margin:42px auto 72px}h1,h2{font-family:Georgia,serif;line-height:1.12}h1{margin:.35em 0 .5em;font-size:clamp(2.2rem,7vw,3.7rem)}h2{font-size:1.65rem}h3{margin:0}a{color:#175038;text-underline-offset:.22em;align-items:center;min-height:48px;display:inline-flex}button,.button{font:inherit;color:#fff;cursor:pointer;background:#205742;border:2px solid #205742;border-radius:8px;justify-content:center;align-items:center;min-height:50px;padding:10px 18px;font-weight:700;text-decoration:none;display:inline-flex}button:disabled{opacity:.55;cursor:default}.secondary{color:#205742;background:#fff}button:hover:not(:disabled),.button:hover{filter:brightness(.9)}:focus-visible{outline-offset:4px;outline:3px solid #a54717}.card,.result{background:#fffdf8;border:1px solid #cbcfc0;border-radius:14px;margin:20px 0;padding:clamp(16px,4vw,28px)}.card h2:first-child,.result p:first-child{margin-top:0}.result{background:#e4efe2;border-left:6px solid #205742}.result h2{margin:0;font-size:clamp(2rem,8vw,3.5rem)}label{margin:0 0 14px;font-weight:700;display:block}input,textarea{width:100%;min-height:50px;font:inherit;color:inherit;background:#fff;border:1px solid #637b6f;border-radius:7px;margin-top:6px;padding:10px 12px;display:block}ul{padding:0;list-style:none}li{border-bottom:1px solid #cbcfc0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 20px;min-height:48px;padding:10px 0;display:flex}li span{color:#395649}.actions{flex-wrap:wrap;gap:10px;display:flex}.error{color:#752c17;background:#fae8df;border-radius:8px;padding:12px}footer{border-top:1px solid #cbcfc0;margin-top:40px}@media (max-width:480px){main{margin-top:24px}button,.button{width:100%}}.waiting,.home-card{text-align:center;background:#fffdf8;border:1px solid #c5d4c3;border-radius:20px;margin:24px 0;padding:clamp(20px,6vw,44px);box-shadow:0 10px 28px #193c3010}.waiting-icon{color:#fff;background:#205742;border-radius:50%;place-items:center;width:72px;height:72px;display:inline-grid}.waiting h2{margin:16px 0;font-size:clamp(1.75rem,7vw,2.65rem)}.waiting-state{color:#215440;justify-content:center;align-items:center;gap:8px;font-weight:750;display:flex}.waiting p:not(.waiting-state){max-width:36ch;margin:12px auto}.home-card>svg{color:#205742;margin-top:6px}.draw-list{gap:14px;display:grid}.draw-list li{border:0;padding:0;display:block}.draw-link{background:#fffdf8;border:1px solid #aabdad;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;text-decoration:none;display:grid}.draw-link:hover{background:#eef5eb}.draw-link strong{font-size:1.3rem;display:block}.draw-link .draw-action{color:#175038;text-underline-offset:.22em;font-weight:700;text-decoration:underline}@media (max-width:560px){.draw-link{grid-template-columns:auto minmax(0,1fr)}.draw-action{grid-column:2}}.reveal{text-align:center;padding-block:36px;position:relative;overflow:hidden}.reveal-gift{color:#205742;animation:.65s ease-out both gift-open}.reveal h2{animation:.7s cubic-bezier(.2,.78,.25,1.15) .22s both name-reveal}.reveal:after{content:"";pointer-events:none;background:radial-gradient(circle at 12% 30%,#db9b47 3px,#0000 4px),radial-gradient(circle at 87% 24%,#237451 4px,#0000 5px),radial-gradient(circle at 17% 76%,#237451 4px,#0000 5px),radial-gradient(circle at 83% 69%,#db9b47 4px,#0000 5px);animation:.8s ease-out both gift-open;position:absolute;inset:0}@keyframes gift-open{0%{opacity:0;transform:scale(.65)rotate(-8deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes name-reveal{0%{opacity:0;transform:translateY(24px)scale(.85)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.reveal h2,.reveal-gift,.reveal:after{animation:none}}body{text-align:center}header{white-space:normal;padding-inline:20px}input,textarea{text-align:center}li{flex-direction:column;justify-content:center}.actions{justify-content:center}.draw-link{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center}.draw-link .draw-action{grid-column:auto}.budget{color:#193c30;background:#e4efe2;border-radius:10px;padding:12px}
