:root{font-family:ui-rounded,"Avenir Next",Avenir,system-ui,sans-serif;color:#352114;background:#fff6df;font-synthesis:none}*{box-sizing:border-box}body{min-width:320px;margin:0;background:radial-gradient(circle at 10% 6%,#fff 0 1%,transparent 20%),radial-gradient(circle at 96% 21%,#f9ce66 0 1%,transparent 24%),linear-gradient(145deg,#fff9e9,#fff0c7);min-height:100vh}button,textarea,input{font:inherit}.page-shell{width:min(100%,510px);min-height:100vh;margin:auto;padding:max(34px,env(safe-area-inset-top)) 18px max(22px,env(safe-area-inset-bottom));display:flex;flex-direction:column;justify-content:center;gap:20px}.profile-header{text-align:center}.avatar{width:74px;height:74px;margin:auto;display:grid;place-items:center;border:1px solid #f0ca72;border-radius:25px;background:#fffaf0;box-shadow:0 12px 25px #ad741f1c;font-size:38px;transform:rotate(-5deg)}h1{margin:15px 0 5px;font-size:31px;letter-spacing:.115em;line-height:1;color:#3c260e}.tagline{margin:0;color:#61462c;font-size:17px;font-weight:700}.subtagline{margin:5px 0 0;color:#947657;font-size:13px}.sender-card{padding:25px 20px 20px;border:1px solid #f0d9a1;border-radius:30px;background:#fffdfa;box-shadow:0 22px 50px #9b67251c}.card-topline{display:flex;align-items:center;justify-content:center;gap:8px;color:#a46b27;font-size:10px;font-weight:900;letter-spacing:.13em}.card-topline i{height:4px;width:4px;border-radius:50%;background:#e09a27}.sender-card h2{margin:13px 0 10px;text-align:center;font-size:22px;letter-spacing:-.03em}.bun-stage{height:101px;position:relative;display:grid;place-items:center}.main-bun{font-size:57px;filter:drop-shadow(0 8px 7px #a76d2726)}.bump .main-bun{animation:bump .28s ease-out}.floating-bun{position:absolute;opacity:0;font-size:22px;transition:opacity .25s ease,transform .3s ease}.b1{top:13px;left:23%;transform:rotate(-20deg)}.b2{top:39px;left:13%;transform:rotate(-11deg)}.b3{top:4px;right:22%;transform:rotate(15deg)}.b4{top:39px;right:12%;transform:rotate(20deg)}.b5{top:67px;right:27%;transform:rotate(-10deg)}.bun-stage[data-quantity="few"] .b1,.bun-stage[data-quantity="few"] .b3,.bun-stage[data-quantity="some"] .floating-bun,.bun-stage[data-quantity="many"] .floating-bun{opacity:.8}.bun-stage[data-quantity="many"] .floating-bun{font-size:28px}.count-display{display:block;text-align:center}.count-display strong{display:block;font-size:55px;letter-spacing:-.07em;line-height:.93}.count-display span{color:#9a6c3b;font-size:11px;font-weight:900;letter-spacing:.16em}.adjuster{display:grid;grid-template-columns:49px 1fr 49px;align-items:center;gap:13px;margin-top:22px}.round-button{width:49px;height:49px;border:1px solid #e5bd63;border-radius:50%;background:#fff8e5;color:#6d451f;font-size:29px;line-height:1;box-shadow:0 3px 8px #8b571015}.round-button:active:not(:disabled){transform:scale(.93)}button:disabled{cursor:not-allowed;opacity:.45}input[type=range]{--progress:0%;width:100%;height:8px;margin:0;border-radius:99px;appearance:none;background:linear-gradient(to right,#eea831 var(--progress),#f3e5c8 var(--progress))}input[type=range]::-webkit-slider-thumb{width:23px;height:23px;border:3px solid #fff;appearance:none;border-radius:50%;background:#d98818;box-shadow:0 2px 6px #70410b45}input[type=range]::-moz-range-thumb{width:17px;height:17px;border:3px solid #fff;border-radius:50%;background:#d98818;box-shadow:0 2px 6px #70410b45}.slider-labels{display:flex;justify-content:space-between;margin:7px 61px 0;color:#aa8963;font-size:11px;font-weight:800}.message-section{margin-top:26px}.message-section label{display:block;margin-bottom:9px;font-size:14px;font-weight:850}.message-section label span,.message-meta{color:#987858;font-size:12px;font-weight:600}.message-section label span{margin-left:3px;font-weight:500}textarea{display:block;width:100%;min-height:104px;padding:13px 14px;resize:vertical;border:1px solid #e7d4ac;border-radius:16px;outline:0;background:#fffdf8;color:#352114;line-height:1.4}textarea:focus{border-color:#db9c31;box-shadow:0 0 0 4px #f8cc7740}.message-meta{display:flex;justify-content:space-between;margin:7px 2px}.form-error{margin:12px 0 -2px;color:#b32323;font-size:13px;font-weight:700}.send-button{width:100%;min-height:59px;margin-top:20px;display:grid;grid-template-columns:30px 1fr 30px;align-items:center;border:0;border-radius:17px;background:linear-gradient(135deg,#f5b43e,#e8901d);color:#392005;box-shadow:0 7px 15px #bf741936;font-size:15px;font-weight:900;letter-spacing:.06em}.send-button b{font-size:22px;font-weight:500}.send-button:active:not(:disabled){transform:translateY(2px);box-shadow:0 4px 8px #bf741936}.send-button.is-loading{background:#e8bc71}.success-state{text-align:center;animation:appear .4s cubic-bezier(.2,.8,.2,1)}.delivery-flight{height:92px;position:relative}.delivery-flight span{position:absolute;left:50%;top:38px;font-size:29px;animation:deliver .7s cubic-bezier(.2,.85,.3,1) both}.delivery-flight span:nth-child(1){--x:-115px;--y:-25px}.delivery-flight span:nth-child(2){--x:-65px;--y:-57px;animation-delay:.08s}.delivery-flight span:nth-child(3){--x:-18px;--y:-72px;animation-delay:.15s}.delivery-flight span:nth-child(4){--x:32px;--y:-69px;animation-delay:.22s}.delivery-flight span:nth-child(5){--x:76px;--y:-47px;animation-delay:.29s}.delivery-flight span:nth-child(6){--x:113px;--y:-15px;animation-delay:.35s}.success-seal{width:46px;height:46px;margin:-5px auto 12px;display:grid;place-items:center;border-radius:50%;background:#e99b29;color:white;font-size:26px;font-weight:900;box-shadow:0 6px 15px #bd711d38}.success-kicker{margin:0;color:#b16e1a;font-size:11px;font-weight:900;letter-spacing:.16em}.success-state h2{margin:8px 0 13px;font-size:25px}.success-state blockquote{margin:0;padding:14px;border-radius:15px;background:#fff3d3;color:#70471f;font-size:15px;font-style:italic;line-height:1.4}.another-button{width:100%;padding:15px;margin-top:18px;border:1px solid #edcf94;border-radius:15px;background:transparent;color:#765122;font-weight:800}.another-button span{font-size:19px;margin-left:4px}footer{text-align:center;color:#987957;font-size:12px;font-weight:650}footer span{margin:0 7px;color:#d49126}@keyframes bump{50%{transform:scale(1.14) rotate(-5deg)}}@keyframes appear{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}@keyframes deliver{from{opacity:0;transform:translate(-50%,30px) scale(.25)}70%{opacity:1;transform:translate(calc(-50% + var(--x)),var(--y)) scale(1.15)}to{opacity:1;transform:translate(calc(-50% + var(--x)),var(--y))}}@media (min-width:680px){.page-shell{padding-top:42px;padding-bottom:42px}.sender-card{padding:29px 27px 25px}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
