:root{font-family:DM Sans,system-ui,-apple-system,sans-serif;color:#fff;background:#ef471f;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}.invite-shell{min-height:100vh;min-height:100dvh;overflow:hidden;display:flex;flex-direction:column;position:relative;align-items:center;background:radial-gradient(ellipse at 50% 36%,#ff6330,#f34b22,#da341d);padding:calc(24px + env(safe-area-inset-top)) 18px calc(20px + env(safe-area-inset-bottom))}.invite-shell:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.13;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:22px 22px}.topmark{position:relative;z-index:2;text-align:center;letter-spacing:.23em;font-weight:800;font-size:.7rem;color:#ffe7cd}.topmark span{color:#6f2142;font-size:1.1rem;vertical-align:middle}.invite-inner{width:min(100%,440px);margin:auto;position:relative;z-index:2;padding:32px 0;display:flex;flex-direction:column;align-items:center}.eyebrow{color:#ffe7c4;letter-spacing:.19em;font-weight:800;font-size:.7rem;margin-bottom:24px;text-align:center}.hero-emoji{font-size:clamp(6rem,27vw,9rem);line-height:1.1;text-align:center;filter:drop-shadow(0 15px 12px #77231365);margin-bottom:27px}.bounce{animation:bob 3.4s ease-in-out infinite}@keyframes bob{50%{transform:translateY(-12px) rotate(-3deg)}}.invite-card{width:100%;background:linear-gradient(150deg,#62231f,#421c20);padding:31px 29px 28px;border-radius:27px;box-shadow:0 25px 50px #58170d51,0 2px #fff2 inset;text-align:center;border:1px solid #ffffff20}.invite-card h1{font-family:Nunito,system-ui,sans-serif;font-weight:900;font-size:clamp(1.75rem,7.4vw,2.35rem);line-height:1.15;margin:10px auto 12px;letter-spacing:-.035em}.invite-card p{color:#f4cbbf;line-height:1.48;font-size:1rem;margin:0 0 23px}.card-small,.step{display:block;color:#ffa27d;font-weight:800;letter-spacing:.16em;font-size:.72rem}.answer-row{display:flex;gap:11px;align-items:center;justify-content:center;min-height:64px;flex-wrap:wrap}.button{appearance:none;border:0;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#ff6035;color:#fff;border-radius:15px;min-height:52px;padding:12px 22px;font-size:.96rem;font-weight:800;box-shadow:0 5px #bc351d,0 12px 22px #17060930;transition:transform .16s,background .16s,box-shadow .16s;white-space:normal;text-align:center}.button:hover:not(:disabled){background:#ff7245;transform:translateY(-2px)}.button:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px #bc351d}.button.secondary{background:#73332a;color:#ffe5d7;box-shadow:0 5px #381b1d;border:1px solid #e9775d55}.button.secondary:hover:not(:disabled){background:#91402c}.answer-row .button,.answer-row .no-slot{flex:1;min-width:130px}.answer-row .dodge-target{position:fixed;z-index:12;flex:none;width:clamp(130px,34vw,160px);min-width:130px}.dodge-1{top:calc(env(safe-area-inset-top) + 100px);left:calc(50% - 70px)}.dodge-2{top:27%;right:18px}.dodge-3{bottom:calc(env(safe-area-inset-bottom) + 88px);left:18px}.dodge-4{top:16%;left:18px}.honest{font-size:.85rem!important;margin:14px 0 0!important}.hearts{position:absolute;inset:0;pointer-events:none;overflow:hidden}.hearts span{position:absolute;top:14%;left:9%;color:#742b4c;opacity:.55;font-size:21px;text-shadow:1px 3px 0 #391731,0 8px 12px #9b2025;animation:float 7s ease-in-out infinite alternate}.hearts span:nth-child(2){top:36%;left:85%;font-size:29px;animation-delay:-2s}.hearts span:nth-child(3){top:73%;left:7%;font-size:17px;animation-delay:-3s}.hearts span:nth-child(4){top:87%;left:73%;font-size:26px;animation-delay:-4s}.hearts span:nth-child(5){top:8%;left:72%;font-size:18px;animation-delay:-1s}.hearts span:nth-child(6){top:63%;left:88%;font-size:16px;animation-delay:-5s}.hearts span:nth-child(7){top:46%;left:3%;font-size:16px;animation-delay:-2.5s}.hearts span:nth-child(8){top:19%;left:35%;font-size:12px;animation-delay:-3.5s}.hearts span:nth-child(9){top:93%;left:28%;font-size:14px;animation-delay:-4.5s}.hearts span:nth-child(10){top:59%;left:69%;font-size:13px;animation-delay:-6s}@keyframes float{to{transform:translate(12px,-27px) rotate(12deg)}}footer{font-size:.72rem;font-weight:600;opacity:.65;position:relative;z-index:2;letter-spacing:.02em;text-align:center}.form-card{text-align:left}.form-card h1,.form-card>p{text-align:left}.form-card .section-emoji{font-size:3rem;margin-top:13px}.form-card label,.admin-panel label,.admin-login label{display:block;font-weight:700;font-size:.85rem;margin:17px 0 8px}.form-card input{display:block;appearance:none;color-scheme:dark;width:100%;height:54px;padding:0 16px;border-radius:13px;border:1px solid #d68a786e;background:#331820;color:#fff;outline:none;font-size:1rem}.form-card input:focus,.admin-shell input:focus{border-color:#ffbb90;box-shadow:0 0 0 3px #ffad7940}.form-card>.button{width:100%;margin-top:25px}.back{border:0;background:none;color:#f5aa96;font-weight:700;display:block;margin:22px auto 0}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:21px}.option{border:1px solid #bb6b5a7d;background:#512428;color:#fff;border-radius:13px;padding:13px 5px;min-height:74px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:.81rem;font-weight:700;transition:background .15s,transform .15s}.option span{font-size:1.5rem}.option:hover{transform:translateY(-2px);background:#70302a}.option.selected{background:#ff6238;border-color:#ffc19f;box-shadow:0 0 0 2px #ffb88a50 inset}.summary{display:grid;gap:1px;background:#ffffff21;border:1px solid #ffffff1b;border-radius:17px;overflow:hidden;text-align:left;margin:18px 0}.summary div{display:flex;align-items:center;gap:14px;padding:10px 16px;background:#381e21c0;text-transform:capitalize}.summary span{font-size:1.22rem}.summary strong{font-size:.92rem;font-weight:700}.saved-note{color:#bff2ce;font-size:.83rem;font-weight:700;margin:17px 0}.whatsapp{width:100%;background:#238859;box-shadow:0 5px #12613b}.whatsapp:hover{background:#289d66!important}.small-note{font-size:.8rem!important;margin:8px 0 0!important}.error{color:#ffb1a0!important;font-weight:700!important;margin:14px 0!important}.admin-shell{background:#100f17;color:#f7f3fa;min-height:100vh;font-family:DM Sans,system-ui,sans-serif}.admin-wrap{max-width:1140px;margin:auto;padding:0 26px 90px}.admin-header{height:95px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff18;margin-bottom:62px}.brand{text-decoration:none;font-size:1.35rem;font-weight:800;letter-spacing:-.04em}.brand span{font-size:.95rem;font-weight:500;color:#a9a0b6}.admin-kicker{letter-spacing:.2em;color:#b29aff;font-size:.73rem;font-weight:800}.admin-title,.admin-login h1{font-family:Nunito,system-ui,sans-serif;font-size:clamp(2.25rem,5vw,3.7rem);line-height:1.07;letter-spacing:-.04em;margin:11px 0}.admin-title span{color:#b29aff}.admin-lead,.admin-login p{color:#aca6b6;line-height:1.5;font-size:1rem;margin:0 0 32px}.admin-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:20px}.admin-side{display:grid;gap:20px;align-content:start}.admin-panel,.admin-login{border:1px solid #ffffff15;border-radius:22px;background:#1d1b26;padding:29px;box-shadow:0 20px 60px #00000018}.panel-heading{display:flex;justify-content:space-between;align-items:center;color:#a79db5;font-size:.72rem;font-weight:800;letter-spacing:.17em;margin-bottom:23px}.badge{letter-spacing:0;font-size:.75rem;color:#f8cba5;background:#55402a;padding:7px 12px;border-radius:30px}.badge.received{color:#c1f5d9;background:#264936}.admin-panel h2{font-size:2rem;letter-spacing:-.03em;margin:10px 0}.admin-panel h3{font-size:1.24rem;margin:0 0 6px}.admin-panel p{color:#afa8ba;font-size:.9rem;line-height:1.5}.main-panel .summary{margin-top:28px}.main-panel .summary div{background:#282531}.admin-big-emoji{font-size:3.3rem}.waiting{padding:36px 0 45px;text-align:center}.waiting div{font-size:3.7rem}.waiting h2{font-size:1.5rem}.waiting p{max-width:250px;margin:0 auto}.url-box{overflow-wrap:anywhere;border:1px solid #ffffff23;border-radius:11px;background:#12111a;padding:14px;color:#dacdfd;font-size:.82rem;margin:20px 0}.admin-shell .button{background:#ae91ff;color:#1f1734;box-shadow:none;min-height:45px;font-size:.85rem}.admin-shell .button:hover{background:#c8b7ff}.admin-panel input,.admin-login input{width:100%;border-radius:10px;background:#12111a;border:1px solid #ffffff27;color:#fff;min-height:46px;padding:10px 12px;outline:0}.admin-panel small{display:block;color:#9e96a9;margin:9px 0 19px;font-size:.76rem}.admin-login{max-width:470px;margin:10vh auto}.admin-login form .button{width:100%;margin-top:20px}.text-action{border:0;background:transparent;color:#c0aaff;font-size:.86rem;font-weight:700;padding:9px 0}.text-action.danger{color:#f8aba8;margin-top:26px}.notice{background:#243f31;color:#c9f4d9;padding:13px;border-radius:10px;font-size:.88rem}@media(max-width:720px){.admin-header{height:72px;margin-bottom:41px}.admin-wrap{padding:0 18px 55px}.admin-grid{grid-template-columns:1fr}.admin-panel,.admin-login{padding:22px}.invite-inner{padding:27px 0}.invite-card{padding:26px 20px 24px}}@media(max-width:350px){.answer-row{flex-direction:column}.answer-row .button{width:100%}.option{font-size:.73rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
