:root{--pink:#f75f98;--blue:#3aaada;--ink:#303650;--shadow:0 16px 35px #625a7b2b}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;min-height:100%;overflow:hidden;background:#f9eefa;color:var(--ink);font-family:ui-rounded,"Nunito",system-ui,sans-serif;overscroll-behavior:none}body,button,canvas{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}button,input{font:inherit}button{border:0;color:inherit;cursor:pointer;touch-action:manipulation}.screen{display:none;min-height:100dvh;overflow:auto;position:relative;padding:28px 18px 90px;background:radial-gradient(circle at 15% 10%,#fff 0 5%,transparent 20%),linear-gradient(150deg,#fff8e9,#fde7f3 50%,#d8f5ff)}.screen.active{display:block}.language{position:fixed;z-index:30;right:14px;bottom:14px;background:#fff;border-radius:22px;padding:10px 15px;box-shadow:var(--shadow);font-weight:900}.brand{text-align:center}.eyebrow{font-size:.7rem;letter-spacing:.17em;font-weight:900;color:#8c6d96}.brand h1{font-size:clamp(3rem,15vw,5rem);line-height:1;margin:3px 0 -10px;letter-spacing:-.09em}.brand h1 b{color:var(--pink);text-shadow:0 5px #bd3e6b}.brand h1 strong{color:var(--blue);text-shadow:0 5px #237ca5}.brand h1 em{font-size:.5em}.brand h2{letter-spacing:.17em;margin:7px}.brand p{font-weight:700}.hero-pair{display:flex;justify-content:center;align-items:end;height:190px}.hero-pair img{width:165px;height:180px;object-fit:contain;filter:drop-shadow(0 13px 8px #4c526433);animation:float 2.3s ease-in-out infinite}.hero-pair img+img{margin-left:-35px;animation-delay:-1s}.menu{max-width:470px;margin:auto;display:grid;gap:9px}.menu button,.panel>button{min-height:57px;border-radius:18px;background:#fff;box-shadow:var(--shadow);font-weight:900}.menu button{font-size:1rem;text-align:left;padding:0 22px}.menu .primary,.panel .primary{background:linear-gradient(135deg,var(--pink),#e63e79);color:white}.panel-screen{padding-top:75px}.panel-screen header{position:fixed;z-index:10;top:0;left:0;right:0;height:60px;padding:8px 14px;display:flex;align-items:center;justify-content:space-between;background:#ffffffdf;font-weight:900}.panel-screen header button{width:42px;height:42px;border-radius:50%;background:white;font-size:1.4rem}.panel{max-width:680px;margin:auto;padding:26px 20px;border-radius:30px;background:#ffffffcf;border:1px solid white;box-shadow:var(--shadow);text-align:center}.cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.char-card{border-radius:24px;padding:15px;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;box-shadow:var(--shadow);font-weight:900}.char-card.pink{background:#ffe4ed}.char-card.blue{background:#def6ff}.char-card img{width:150px;height:170px;object-fit:contain;transition:.2s}.char-card:hover img{transform:translateY(-8px) scale(1.05)}.game-screen{padding:0;overflow:hidden;background:#77d3ec;touch-action:none}.game-screen canvas{display:block;width:100%;height:100dvh;touch-action:none}.hud{position:absolute;z-index:5;left:10px;right:10px;top:max(8px,env(safe-area-inset-top));display:flex;justify-content:space-between;align-items:start;pointer-events:none}.hud>div{background:#fffde9e8;border-radius:17px;padding:7px 15px;box-shadow:0 6px 12px #39647e33;display:flex;flex-direction:column}.hud small{font-size:.57rem;font-weight:900}.hud b{font-size:1.35rem}.hud button{pointer-events:auto;width:46px;height:46px;border-radius:14px;background:#fffde9;font-weight:900}.status-pills{position:absolute;z-index:5;top:78px;left:0;right:0;text-align:center}.status-pills span{display:inline-block;background:#fff9;border-radius:18px;padding:7px 11px;margin:3px;font-size:.72rem;font-weight:900}.touch-hint{position:absolute;z-index:3;left:15px;right:15px;bottom:18px;display:flex;justify-content:space-between;pointer-events:none;opacity:.22;font-size:2rem;animation:fadehint 5s forwards}.overlay{display:none;position:absolute;inset:0;z-index:20;background:#27324a99;place-items:center;padding:20px}.overlay.show{display:grid}.modal{width:min(390px,92vw);background:white;border-radius:28px;padding:28px;display:grid;gap:10px;text-align:center}.modal button{min-height:50px;border-radius:15px}.danger{color:#c8395e}.mini-settings{display:flex;gap:8px}.mini-settings button{flex:1;font-size:.72rem}.result img{width:160px;height:180px;object-fit:contain;animation:boing 1s infinite}.result>button{width:100%;margin:5px}.score-card{max-width:320px;margin:14px auto;padding:15px;border-radius:20px;background:#fff3c8;display:grid;gap:5px}.score-card>b{font-size:3rem;color:var(--pink)}.score-card span{font-weight:700}.score-card span b{font-size:1rem}.confetti{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(#ff659a 3px,transparent 4px),radial-gradient(#46b7e8 3px,transparent 4px),radial-gradient(#ffd553 3px,transparent 4px);background-size:43px 53px,61px 67px,37px 49px;animation:fall 6s linear infinite}.ceremony-pair,.buddy-hug{height:180px;display:flex;justify-content:center;align-items:center}.ceremony-pair img,.buddy-hug img{width:145px;height:165px;object-fit:contain}.ceremony-pair span{font-size:3.5rem;animation:boing .8s infinite}.ceremony-pair[data-winner=bibi] img:first-child,.ceremony-pair[data-winner=didi] img:last-child{animation:boing .6s infinite}.buddy-hug{animation:hug 6s ease both}.buddy-hug img+img{margin-left:-65px}.versus{font-size:1.2rem;font-weight:900}.nickname{display:flex;gap:7px;align-items:center;justify-content:center;flex-wrap:wrap}.nickname input,.settings input[type=text],#profileName{padding:11px;border:2px solid #eaddeb;border-radius:12px}.nickname button{padding:11px;border-radius:12px}.tabs{margin:18px;display:flex;justify-content:center}.tabs button{padding:10px 14px}.tabs .active{background:var(--ink);color:white}.boards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.board{text-align:left;border-radius:20px;padding:14px;min-height:220px}.board.pink{background:#ffe5ed}.board.blue{background:#e0f5ff}.board li{padding:7px 0;border-bottom:1px solid #fff;display:flex;justify-content:space-between;font-size:.8rem}.hint{font-size:.72rem}.settings{display:grid;gap:18px}.settings label{display:flex;justify-content:space-between;align-items:center}.settings input[type=range]{width:55%}.online button{width:100%}.link-icon{font-size:5rem;color:var(--blue)}#toast{position:fixed;z-index:50;bottom:25px;left:50%;transform:translate(-50%,20px);background:#26324add;color:#fff;padding:12px 20px;border-radius:22px;opacity:0;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}@keyframes float{50%{transform:translateY(-8px) rotate(2deg)}}@keyframes boing{50%{transform:translateY(-10px) scale(1.04)}}@keyframes fall{to{background-position:0 100vh,0 100vh,0 100vh}}@keyframes fadehint{0%,50%{opacity:.22}100%{opacity:0}}@keyframes hug{0%,35%{opacity:0;transform:scale(.8)}50%,100%{opacity:1;transform:scale(1)}}
@media(min-width:760px){.menu{grid-template-columns:1fr 1fr}.menu .primary{grid-column:1/-1}.game-screen{max-width:540px;margin:auto;box-shadow:0 0 50px #26324a55}.language{top:14px;bottom:auto}}@media(max-width:420px){.cards{gap:8px}.char-card{padding:5px;min-height:270px}.char-card img{width:125px}.boards{grid-template-columns:1fr}.hero-pair img{width:145px}.panel{padding:20px 12px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important}}
