@font-face{font-family:Fredoka;font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/3e5302f118d6bde7-s.woff2) format("woff2");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:Fredoka;font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bb36247b0b027bd1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fredoka;font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/bca7023bf625e650-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fredoka Fallback;src:local("Arial");ascent-override:95.64%;descent-override:23.17%;line-gap-override:0.00%;size-adjust:101.84%}.__className_158fa5{font-family:Fredoka,Fredoka Fallback;font-style:normal}.__variable_158fa5{--font-heading:"Fredoka","Fredoka Fallback"}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito Fallback;src:local("Arial");ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.00%;size-adjust:101.39%}.__className_eef148{font-family:Nunito,Nunito Fallback;font-style:normal}.__variable_eef148{--font-body:"Nunito","Nunito Fallback"}*{box-sizing:border-box;margin:0;padding:0}:root{--ocean-deep:#0369a1;--ocean-mid:#0ea5e9;--ocean-light:#7dd3fc;--ocean-foam:#e0f2fe;--coral:#fb7185;--coral-dark:#e11d48;--sand:#fef3c7;--seaweed:#34d399;--ink:#0c4a6e}body,html{height:100%}body{font-family:var(--font-body),"Nunito",system-ui,sans-serif;color:var(--ink);background:linear-gradient(180deg,var(--ocean-light) 0,var(--ocean-mid) 55%,var(--ocean-deep) 100%);background-attachment:fixed;overflow-x:hidden}.heading,h1,h2,h3{font-family:var(--font-heading),"Fredoka",system-ui,sans-serif}.scene{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px 120px}.card,.scene{position:relative}.card{z-index:5;width:100%;max-width:560px;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:32px;padding:32px 28px;box-shadow:0 20px 60px rgba(3,62,100,.35);text-align:center}.card h1{font-size:clamp(1.8rem,6vw,2.6rem);line-height:1.15;margin-bottom:8px}.card h2{font-size:clamp(1.4rem,5vw,1.9rem);margin-bottom:10px}.subtitle{font-size:1.1rem;color:#155e75;margin-bottom:20px}.step-label{display:inline-block;background:var(--ocean-foam);color:var(--ocean-deep);font-weight:800;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:6px 14px;margin-bottom:14px}.btn{font-family:var(--font-heading),"Fredoka",sans-serif;font-size:1.25rem;font-weight:600;border:none;border-radius:999px;padding:16px 36px;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .2s;touch-action:manipulation}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--coral) 0,var(--coral-dark) 100%);color:white;box-shadow:0 8px 24px rgba(225,29,72,.4)}.btn-secondary{background:var(--ocean-foam);color:var(--ocean-deep)}.btn-big{font-size:1.5rem;padding:20px 48px}.field{text-align:left;margin-bottom:18px}.field label{display:block;font-weight:800;margin-bottom:6px;font-size:1rem}.field input,.field textarea{width:100%;font-family:inherit;font-size:1.15rem;padding:14px 16px;border:3px solid var(--ocean-light);border-radius:18px;background:white;color:var(--ink);outline:none;transition:border-color .15s}.field input:focus,.field textarea:focus{border-color:var(--ocean-mid)}.field .hint{font-size:.9rem;color:#64748b;margin-top:6px}.suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.suggestion-chip{background:var(--ocean-foam);border:2px solid var(--ocean-light);color:var(--ocean-deep);font-family:inherit;font-size:.95rem;font-weight:700;border-radius:999px;padding:8px 14px;cursor:pointer}.suggestion-chip:hover{background:var(--ocean-light)}.known-banner{background:var(--sand);border-radius:16px;padding:12px 16px;font-size:1rem;margin-bottom:16px}.error-banner{background:#fef2f2;border:2px solid #fecaca;color:#b91c1c;border-radius:16px;padding:12px 16px;font-size:.95rem;margin-top:16px;text-align:left}.camera-frame{position:relative;width:100%;aspect-ratio:1;max-width:420px;margin:0 auto 20px;border-radius:28px;overflow:hidden;background:#082f49;border:6px solid var(--ocean-foam);box-shadow:0 10px 30px rgba(3,62,100,.3)}.camera-frame img,.camera-frame video{width:100%;height:100%;object-fit:cover;display:block}.camera-frame video.mirrored{transform:scaleX(-1)}.camera-placeholder{flex-direction:column;color:var(--ocean-foam);font-size:1.05rem;gap:10px;padding:20px;text-align:center}.camera-placeholder,.face-guide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.face-guide{pointer-events:none}.face-guide-oval{width:62%;height:76%;border:4px dashed rgba(255,255,255,.9);border-radius:50%;box-shadow:0 0 0 999px rgba(8,47,73,.35)}.face-guide-hint{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);white-space:nowrap;background:rgba(8,47,73,.72);color:white;font-weight:800;font-size:.95rem;padding:7px 16px;border-radius:999px}.button-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.admin-card{max-width:960px;text-align:left}.admin-card .subtitle,.admin-card h1{text-align:center}.admin-rows{display:flex;flex-direction:column;gap:8px;margin-top:10px}.admin-row{display:grid;grid-template-columns:1.1fr 1.3fr 2fr 40px;grid-gap:8px;gap:8px;align-items:center}.admin-row-header{font-weight:800;font-size:.85rem;color:var(--ocean-deep);text-transform:uppercase;letter-spacing:.05em}.admin-row input{width:100%;font-family:inherit;font-size:.95rem;padding:9px 12px;border:2px solid var(--ocean-light);border-radius:12px;color:var(--ink);outline:none}.admin-row input:focus{border-color:var(--ocean-mid)}.admin-delete{background:transparent;border:none;font-size:1.1rem;cursor:pointer;opacity:.7}.admin-delete:hover{opacity:1}.admin-save{display:flex;gap:10px;justify-content:center;align-items:center;margin-top:22px;flex-wrap:wrap}.admin-save input{font-family:inherit;font-size:1rem;padding:12px 16px;border:3px solid var(--ocean-light);border-radius:999px;outline:none;color:var(--ink)}.admin-status-error,.admin-status-ok{margin-top:16px;border-radius:14px;padding:12px 16px;text-align:center;font-weight:700}.admin-status-ok{background:#dcfce7;color:#166534}.admin-status-error{background:#fef2f2;color:#b91c1c}@media (max-width:640px){.admin-row{grid-template-columns:1fr;padding-bottom:12px;border-bottom:1px solid var(--ocean-foam)}.admin-row-header{display:none}}.waves{position:fixed;bottom:0;left:0;width:100%;z-index:1;pointer-events:none;line-height:0}.waves svg{display:block;width:100%;height:110px}.bubble{position:fixed;bottom:-60px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.85),rgba(255,255,255,.12) 60%);animation:rise linear infinite;z-index:2;pointer-events:none}@keyframes rise{0%{transform:translateY(0) translateX(0);opacity:0}10%{opacity:.9}to{transform:translateY(-110vh) translateX(30px);opacity:0}}.creature{position:fixed;z-index:2;pointer-events:none;animation:bob 4s ease-in-out infinite;filter:drop-shadow(0 4px 8px rgba(3,62,100,.3))}@keyframes bob{0%,to{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-16px) rotate(4deg)}}.splash-creatures{font-size:2.2rem;letter-spacing:.4em;margin:12px 0 24px}.big-emoji{font-size:4rem;margin-bottom:12px}.big-emoji,.swimmer{display:inline-block}.swimmer{animation:swim 2.4s ease-in-out infinite}@keyframes swim{0%,to{transform:translateX(-18px) rotate(-6deg)}50%{transform:translateX(18px) rotate(6deg)}}.magic-card{overflow:hidden}.sparkle{position:absolute;font-size:1.3rem;animation:twinkle 1.8s ease-in-out infinite;pointer-events:none}@keyframes twinkle{0%,to{opacity:.15;transform:scale(.6) rotate(-15deg)}50%{opacity:1;transform:scale(1.25) rotate(15deg)}}.magic-bubble{width:150px;height:150px;margin:0 auto 18px;border-radius:50%;overflow:hidden;border:5px solid var(--ocean-light);box-shadow:0 0 0 6px rgba(224,242,254,.5),0 12px 30px rgba(3,62,100,.3);animation:bubble-bob 3s ease-in-out infinite}.magic-bubble img{width:100%;height:100%;object-fit:cover;display:block}@keyframes bubble-bob{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-12px) rotate(2deg)}}.magic-emoji{animation:wand-pop 1.5s ease infinite}@keyframes wand-pop{0%{transform:scale(.3) rotate(-25deg);opacity:0}35%{transform:scale(1.2) rotate(8deg);opacity:1}55%{transform:scale(1) rotate(-4deg)}to{transform:scale(1.05) rotate(0deg);opacity:1}}.magic-phrase{animation:phrase-in .5s ease both}@keyframes phrase-in{0%{opacity:0;transform:translateY(14px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.magic-dots{display:flex;gap:10px;justify-content:center;margin-top:18px}.magic-dots span{width:12px;height:12px;border-radius:50%;background:var(--ocean-mid);animation:dot-bounce 1.2s ease-in-out infinite}.magic-dots span:nth-child(2){animation-delay:.15s;background:var(--coral)}.magic-dots span:nth-child(3){animation-delay:.3s;background:var(--seaweed)}@keyframes dot-bounce{0%,to{transform:translateY(0);opacity:.5}50%{transform:translateY(-10px);opacity:1}}.pending-pill{top:14px;right:14px;z-index:20;background:rgba(255,255,255,.92);color:var(--ocean-deep);font-weight:800;border-radius:999px;padding:8px 16px;box-shadow:0 4px 16px rgba(3,62,100,.25)}.error-toast,.pending-pill{position:fixed;font-size:.9rem}.error-toast{bottom:16px;left:50%;transform:translateX(-50%);z-index:30;background:#7f1d1d;color:#fee2e2;border-radius:16px;padding:12px 20px;max-width:90vw;box-shadow:0 8px 24px rgba(0,0,0,.4)}.error-toast-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:6px}.toast-dismiss{background:transparent;border:1px solid rgba(254,226,226,.5);color:#fee2e2;font-family:inherit;font-size:.8rem;border-radius:999px;padding:4px 10px;cursor:pointer}.error-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0}.retry-btn{flex-shrink:0;background:#fee2e2;border:none;color:#7f1d1d;font-family:inherit;font-weight:800;font-size:.85rem;border-radius:999px;padding:6px 14px;cursor:pointer}