:root{color-scheme:light;--landing-placeholder-width:clamp(100px,24%,180px);--landing-input-offset:max(0px,calc(clamp(6px, 2vw, 20px) - 20px))}*{box-sizing:border-box}body,html{padding:0;margin:0;font-family:rixdongnimgothic-pro,sans-serif;background-color:#f0f2f5}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed}.landing{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:0;background:#f0f2f5}.landing-wrapper{position:relative;width:min(100%,720px)}.landing-image-only{width:100%;display:block;height:auto}.landing-button{position:absolute;left:50%;transform:translate(-50%,-50%);top:clamp(60%,66vw,74%);width:clamp(200px,40vw,320px);display:block;touch-action:manipulation}.landing-button img{width:100%;height:auto;display:block;transform:translateZ(0);transition:transform .25s cubic-bezier(.16,1,.3,1),filter .2s ease}.landing-button:focus-visible{outline:3px solid rgba(37,208,244,.55);outline-offset:6px}.landing-button:focus-visible img,.landing-button:hover img{transform:translateY(-4px) scale(1.05) rotate(-1deg);filter:drop-shadow(0 18px 30px rgba(0,0,0,.25))}.landing-button:active img{transform:scale(.94);filter:drop-shadow(0 8px 16px rgba(0,0,0,.2));transition-duration:.15s}@media (hover:none){.landing-button:hover img{transform:translateZ(0);filter:none}}.landing-overlay{position:absolute;inset:0;pointer-events:none}.landing-overlay--readonly{pointer-events:auto}.landing-result-card{position:absolute;top:calc(820 / 3120 * 100% + 20px);left:50%;width:calc(1024 / 1440 * 100%);transform:translateX(-50%);aspect-ratio:1024/1464;pointer-events:none}.landing-result-card .invitation-wrapper{width:100%;height:100%}.landing-result-card .canvas-status,.landing-result-card .invitation-wrapper{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.landing-result-card .canvas-status{padding:1rem;text-align:center;font-size:.85rem;color:#6b6f74;background:hsla(0,0%,100%,.82);border-radius:18px}.landing-result-canvas{width:320px;height:457.5px;max-width:100%;max-height:100%;display:block;border-radius:18px;margin:0 auto}.landing-result-actions{position:absolute;top:calc((820 + 1464) / 3120 * 100% + 28px);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:clamp(6px,3vw,16px);z-index:2}.landing-result-action{border:none;background:none;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease,filter .2s ease,opacity .2s ease}.landing-result-action:focus-visible{outline:3px solid rgba(37,208,244,.6);outline-offset:6px}.landing-result-action:disabled{cursor:not-allowed;opacity:.55;transform:none;filter:none}.landing-result-action img{display:block;width:clamp(88px,25vw,136px);height:auto;transition:transform .2s ease,filter .2s ease}.landing-result-action--retry img{width:clamp(92px,27vw,144px)}.landing-result-action--retry{align-self:flex-end;margin-left:clamp(8px,4vw,20px)}.landing-result-action:not(:disabled):focus-visible img,.landing-result-action:not(:disabled):hover img{transform:translateY(-6px);filter:drop-shadow(0 16px 24px rgba(0,0,0,.22))}.landing-field{width:clamp(200px,48%,360px);height:clamp(26px,5vw,34px)}.landing-field,.landing-text{position:absolute;display:flex;align-items:center;justify-content:flex-start;font-weight:400;color:#121212}.landing-text{gap:.5rem;white-space:nowrap}.landing-field--to,.landing-text--to{top:35%;left:clamp(24%,32vw,40%);--landing-font-size:var(--landing-to-font-size,clamp(18px,4vw,28px));--landing-line-height:var(--landing-to-line-height,clamp(26px,5vw,34px));--landing-font-weight:var(--landing-to-font-weight,400)}.landing-placeholder{position:absolute;left:0;top:50%;width:var(--landing-placeholder-width);height:auto;object-fit:contain;opacity:.85;pointer-events:none;transform:translateY(-50%)}.landing-input{width:100%;border:none;outline:none;background:hsla(0,0%,100%,.01);color:#121212;font-size:var(--landing-font-size,clamp(18px,4vw,28px));font-weight:var(--landing-font-weight,400)!important;font-style:normal;font-family:rixdongnimgothic-pro,sans-serif;text-transform:none;padding:0;padding-left:var(--landing-input-offset);line-height:var(--landing-line-height,clamp(26px,5vw,34px));pointer-events:auto;text-align:left}.landing-input:-ms-input-placeholder,.landing-input::-moz-placeholder,.landing-input::-ms-input-placeholder,.landing-input::-webkit-input-placeholder,.landing-input::placeholder{color:hsla(0,0%,7%,.35);font-family:rixdongnimgothic-pro,sans-serif!important;font-weight:var(--landing-font-weight,400)!important;font-style:normal;font-size:var(--landing-font-size,clamp(18px,4vw,28px))}.landing-text{font-size:var(--landing-font-size,clamp(18px,4vw,28px));pointer-events:none}.landing-field--from,.landing-text--from{top:46%;left:clamp(33%,40vw,45%);--landing-font-size:var(--landing-from-font-size,clamp(18px,4vw,28px));--landing-line-height:var(--landing-from-line-height,clamp(26px,5vw,34px));--landing-font-weight:var(--landing-from-font-weight,400)}@media (min-width:1024px){.landing-wrapper{width:min(540px,70%)}.landing-field--to,.landing-text--to{left:32%}.landing-field--from,.landing-text--from{left:38%}.landing-button{top:58%;width:clamp(180px,22vw,260px)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:999px;padding:.9rem 2.8rem;font-size:1.05rem;font-weight:500;border:none;background:transparent;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn .arrow{font-size:1.2rem}.btn-primary{background:#25d0f4;color:#000;box-shadow:0 8px 0 rgba(0,0,0,.2)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 0 rgba(0,0,0,.18)}.generator{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2.5rem 1.5rem;background:#f0f2f5}.generator-shell{position:relative;width:100%;max-width:420px;background:#fff;border:6px solid #000;border-radius:40px;overflow:hidden;box-shadow:8px 8px 0 rgba(0,0,0,.12)}.generator-confetti{position:absolute;left:24px;top:24px;display:flex;gap:8px}.generator-confetti span{display:block;height:8px;border-radius:999px}.generator-confetti .mint{width:24px;background:#57e0c6}.generator-confetti .sun{width:32px;background:#ffd452}.generator-confetti .sky{width:16px;background:#25d0f4}.generator-body{gap:2rem;padding:4rem 2rem 3rem}.generator-body,.generator-header{display:flex;flex-direction:column}.generator-header{gap:.5rem;text-align:center;color:#2d2d2d}.generator-header p{font-size:.875rem;letter-spacing:.2em;font-weight:400}.generator-header h1{margin:0;font-size:1.25rem;line-height:1.6;font-weight:400}.generator-header span{margin-top:.75rem;font-size:1.05rem;font-weight:400}.generator-form{gap:2.5rem;font-weight:400}.generator-fields,.generator-form{display:flex;flex-direction:column}.generator-fields{gap:2rem}.generator-field{display:flex;flex-direction:column;gap:.75rem}.generator-field-label{font-size:.85rem;font-weight:400;color:#1f1f1f}.generator-field-content{display:flex;flex-direction:column;gap:.35rem}.generator-field-title{font-size:1.05rem;font-weight:400;color:#1f1f1f}.generator-input{border:none;border-bottom:4px solid #000;padding:.4rem 0;font-size:1.05rem;font-weight:400!important;font-style:normal;color:#1f1f1f;background:transparent;font-family:rixdongnimgothic-pro,sans-serif}.generator-input:-ms-input-placeholder,.generator-input::-moz-placeholder,.generator-input::-ms-input-placeholder,.generator-input::-webkit-input-placeholder,.generator-input::placeholder{color:#c2c2c2;font-family:rixdongnimgothic-pro,sans-serif!important;font-weight:400!important;font-style:normal}.generator-input:focus{outline:none;border-color:#25d0f4}.btn-create{align-self:flex-start}.btn.btn-disabled{background:#cdd2d6!important;color:#878787!important;box-shadow:none!important;cursor:not-allowed;transform:none!important}.btn.btn-disabled:hover{transform:none;box-shadow:none}.generator-preview{display:flex;flex-direction:column;gap:2rem;align-items:center}.preview-card{width:100%;border:4px solid #000;border-radius:24px;background:#fff;padding:1.5rem;box-shadow:6px 6px 0 rgba(0,0,0,.12)}.preview-text{margin-bottom:1rem;text-align:left;font-size:.75rem;color:#1f1f1f;line-height:1.6}.preview-label{font-weight:400;margin-bottom:.25rem}.preview-canvas{width:100%;display:block;border-radius:18px;border:2px solid #000}.invitation-wrapper{width:100%}.invitation-canvas{width:100%;height:auto;display:block}.canvas-status{display:flex;align-items:center;justify-content:center;min-height:96px;font-size:.85rem;color:#6b6f74;text-align:center;padding:1rem}.preview-details{margin-top:1rem;display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:#1f1f1f}.download-actions{display:flex;flex-direction:column;gap:.75rem;width:100%}.download-actions .btn{width:100%}.btn-save{background:#25d0f4;color:#000;box-shadow:0 8px 0 rgba(0,0,0,.18)}.btn-save:hover{transform:translateY(-3px);box-shadow:0 12px 0 rgba(0,0,0,.22)}.btn-retry{background:#a4ff7e;color:#000;box-shadow:0 8px 0 rgba(0,0,0,.15)}.btn-retry:hover{transform:translateY(-3px);box-shadow:0 12px 0 rgba(0,0,0,.18)}.generator-footer{border-top:4px solid #000;padding:1.25rem 2rem;text-align:center;font-size:.85rem;font-weight:400;color:#1f1f1f;background:#fff}