:root{color-scheme:light dark;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body,html{margin:0;height:100vh;background:#1a1a2e;background-image:radial-gradient(circle at 20% 30%,rgba(99,102,241,.25) 0,transparent 60%),radial-gradient(circle at 80% 70%,rgba(168,85,247,.25) 0,transparent 60%),radial-gradient(circle at 40% 80%,rgba(236,72,153,.2) 0,transparent 60%),radial-gradient(circle at 60% 20%,rgba(59,130,246,.15) 0,transparent 50%),linear-gradient(135deg,rgba(99,102,241,.1),rgba(168,85,247,.1) 50%,rgba(236,72,153,.1));color:#fafafa;position:relative;overflow-x:hidden;overflow-y:hidden}body{padding:24px;height:100vh;position:relative}.page,body{display:flex;align-items:center;justify-content:center}.page{width:100%;max-width:720px;min-height:100%}.card{width:100%;background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.08);border-radius:24px;padding:48px 40px;display:grid;grid-gap:24px;gap:24px;backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);box-shadow:0 8px 32px rgba(0,0,0,.4),inset 0 0 0 1px hsla(0,0%,100%,.05),inset 0 1px 0 hsla(0,0%,100%,.1),inset 0 1px 1px hsla(0,0%,100%,.05);animation:fadeInUp .6s cubic-bezier(.16,1,.3,1);position:relative}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.card h1{font-size:clamp(1.75rem,3vw,2.5rem);margin:0;text-align:center;color:#fff;font-weight:600;letter-spacing:-.03em;line-height:1.2}.card p{margin:0;line-height:1.6}.subtitle{text-align:center;color:hsla(0,0%,98%,.6);margin-bottom:8px;font-size:1rem;font-weight:400;letter-spacing:-.01em}.status{padding:20px;border-radius:12px;background:rgba(30,41,59,.85);border:1px solid rgba(148,163,184,.15);display:grid;grid-gap:12px;gap:12px}.status h2{margin:0;font-size:1.2rem}.status--ok{color:#34d399}.status--error{color:#f87171}footer{font-size:.875rem;color:rgba(226,232,240,.8);display:grid;grid-gap:4px;gap:4px}code{font-family:Source Code Pro,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;background:rgba(15,23,42,.85);padding:2px 6px;border-radius:6px;border:1px solid rgba(148,163,184,.25)}.inputs-container{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px;margin:32px 0;flex-shrink:0}.input-group{display:grid;grid-gap:10px;gap:10px}.input-group label{font-size:.875rem;font-weight:500;color:hsla(0,0%,98%,.7);letter-spacing:0}.input-group input{width:100%;padding:14px 18px;background:hsla(0,0%,100%,.04);border:1px solid hsla(0,0%,100%,.1);border-radius:12px;color:#fafafa;font-size:16px;font-family:inherit;transition:all .2s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.input-group input:hover:not(:disabled):not(.disabled){border-color:hsla(0,0%,100%,.15);background:hsla(0,0%,100%,.06)}.input-group input:focus{outline:none;border-color:hsla(0,0%,100%,.2);background:hsla(0,0%,100%,.08);box-shadow:0 0 0 3px rgba(99,102,241,.1),0 4px 12px rgba(0,0,0,.2)}.input-group input.disabled,.input-group input:disabled{background:hsla(0,0%,100%,.02);color:hsla(0,0%,98%,.4);cursor:not-allowed;opacity:.7}.input-group input::placeholder{color:hsla(0,0%,98%,.3)}.buttons-container{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;margin:32px 0;flex-shrink:0}.button{padding:14px 24px;border:none;border-radius:12px;font-size:.95rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden;letter-spacing:-.01em;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none}.button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:hsla(0,0%,100%,.1);transform:translate(-50%,-50%);transition:width .4s ease,height .4s ease;pointer-events:none}@media (hover:hover) and (pointer:fine){.button:hover:not(:disabled):before{width:300px;height:300px}}.button:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.button-primary{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.15);color:#fff;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 4px 12px rgba(0,0,0,.2),inset 0 0 0 1px hsla(0,0%,100%,.1)}@media (hover:hover) and (pointer:fine){.button-primary:hover:not(:disabled){background:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.2);transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.3),inset 0 0 0 1px hsla(0,0%,100%,.15)}}.button-primary:active:not(:disabled){transform:translateY(0);transition:transform .1s ease,box-shadow .1s ease}.button-secondary{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);color:hsla(0,0%,98%,.9);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}@media (hover:hover) and (pointer:fine){.button-secondary:hover:not(:disabled){background:hsla(0,0%,100%,.08);border-color:hsla(0,0%,100%,.15);transform:translateY(-1px)}}.button-secondary:active:not(:disabled){transform:translateY(0);transition:transform .1s ease,box-shadow .1s ease,background .1s ease}.result{margin-top:32px;padding:28px;border-radius:16px;text-align:center;animation:slideIn .4s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);flex-shrink:0}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.result-success{background:rgba(34,211,153,.08);border:1px solid rgba(34,211,153,.2);box-shadow:0 4px 16px rgba(0,0,0,.2),inset 0 0 0 1px hsla(0,0%,100%,.05)}.result-success h2{margin:0 0 16px;font-size:1rem;color:hsla(0,0%,98%,.8);font-weight:500}.couple-name{font-size:clamp(1.5rem,3vw,2.25rem);font-weight:600;color:#34d399;margin:0;text-transform:capitalize;letter-spacing:-.02em}.result-error{background:hsla(0,91%,71%,.08);border:1px solid hsla(0,91%,71%,.2);box-shadow:0 4px 16px rgba(0,0,0,.2),inset 0 0 0 1px hsla(0,0%,100%,.05)}.error-message{margin:0;color:#fca5a5;font-weight:500;font-size:.95rem}.game-button{position:fixed;bottom:24px;left:24px;width:48px;height:48px;border-radius:50%;border:1px solid hsla(0,0%,100%,.15);background:hsla(0,0%,100%,.08);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#fff;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px rgba(0,0,0,.2),inset 0 0 0 1px hsla(0,0%,100%,.1);z-index:1000;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none;text-decoration:none}.game-button:hover{background:hsla(0,0%,100%,.12);border-color:hsla(0,0%,100%,.2);transform:translateY(-2px) scale(1.05);box-shadow:0 6px 16px rgba(0,0,0,.3),inset 0 0 0 1px hsla(0,0%,100%,.15)}.game-button:active{transform:translateY(0) scale(1);transition:transform .1s ease}.easter-egg-button{position:fixed;bottom:24px;right:24px;width:48px;height:48px;border-radius:50%;border:1px solid hsla(0,0%,100%,.15);background:hsla(0,0%,100%,.08);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#fff;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px rgba(0,0,0,.2),inset 0 0 0 1px hsla(0,0%,100%,.1);z-index:1000;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none}.easter-egg-button:hover{background:hsla(0,0%,100%,.12);border-color:hsla(0,0%,100%,.2);transform:translateY(-2px) scale(1.05);box-shadow:0 6px 16px rgba(0,0,0,.3),inset 0 0 0 1px hsla(0,0%,100%,.15)}.easter-egg-button:active{transform:translateY(0) scale(1);transition:transform .1s ease}@media (max-width:600px){body,html{height:100vh;overflow:hidden}body{padding:12px;align-items:center}.page{height:100%;max-height:100vh;align-items:center}.card,.page{overflow-y:auto;-webkit-overflow-scrolling:touch}.card{padding:20px 16px;border-radius:20px;gap:14px;max-height:calc(100vh - 24px);display:flex;flex-direction:column;justify-content:flex-start}.card h1{font-size:clamp(1.4rem,5vw,1.8rem);margin-bottom:2px;flex-shrink:0}.subtitle{font-size:.85rem;margin-bottom:0;flex-shrink:0}.inputs-container{grid-template-columns:1fr;gap:14px;margin:12px 0;flex-shrink:0}.input-group{gap:8px}.input-group label{font-size:.8rem}.input-group input{padding:11px 14px;font-size:16px}.buttons-container{grid-template-columns:1fr;gap:10px;margin:12px 0;flex-shrink:0}.button{padding:11px 16px;font-size:.85rem;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.button:before{display:none}.result{padding:18px 14px;margin-top:12px;flex-shrink:0}.result-success h2{font-size:.85rem;margin-bottom:10px}.couple-name{font-size:clamp(1.2rem,6vw,1.6rem)}.error-message{font-size:.8rem}.game-button{left:16px}.easter-egg-button,.game-button{bottom:16px;width:44px;height:44px;font-size:22px}.easter-egg-button{right:16px}}@media (hover:none) and (pointer:coarse){.button{transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.button:before{display:none}.input-group input{transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.input-group input:focus,.input-group input:hover:not(:disabled):not(.disabled){transform:none}}.validation-message{margin-top:16px;padding:12px 16px;background:hsla(0,91%,71%,.1);border:1px solid hsla(0,91%,71%,.3);border-radius:8px;text-align:center;animation:slideDown .3s cubic-bezier(.16,1,.3,1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.validation-message p{margin:0;color:#f87171;font-size:.95rem;font-weight:500}