:root{
  --bg:#070a0f; --panel:#101722; --panel2:#151e2b; --text:#f8fafc; --muted:#8b94a7;
  --green:#47e17b; --red:#ff4f6d; --orange:#ff9b21; --line:rgba(255,255,255,.09);
}
*{box-sizing:border-box} html,body{height:100%}
body{margin:0;background:#05070b;font-family:-apple-system,BlinkMacSystemFont,"Inter","Segoe UI",sans-serif;color:var(--text);display:grid;place-items:center;overflow:hidden}
body:before{content:"";position:fixed;inset:0;background:
  radial-gradient(circle at 20% -10%, rgba(255,79,109,.13), transparent 35%),
  radial-gradient(circle at 95% 15%, rgba(71,225,123,.16), transparent 36%),
  linear-gradient(180deg,#090d14,#05070b);pointer-events:none}
button{font:inherit}.app{width:min(430px,100vw);height:100dvh;min-height:700px;padding:calc(env(safe-area-inset-top) + 18px) 18px calc(env(safe-area-inset-bottom) + 18px);position:relative;overflow:hidden}.hidden{opacity:0!important;pointer-events:none!important;transform:translateY(16px)}
.loader,.game{height:100%;transition:.35s ease}.loader{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px}.loadingMascotWrap{width:min(330px,88vw);aspect-ratio:1;display:grid;place-items:center;position:relative;animation:mascotFloat 2.2s ease-in-out infinite}.loadingMascotWrap:before{content:"";position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18),rgba(255,79,109,.1) 42%,transparent 70%);filter:blur(10px);animation:loadingGlow 1.5s ease-in-out infinite alternate}.loadingMascot{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 24px 48px rgba(0,0,0,.5));animation:mascotBreathe 1.35s ease-in-out infinite}.loader h1,.topbar h1{margin:0;font-weight:900;letter-spacing:.3px}.topbar h1{font-size:18px;text-align:center;color:#fff;text-shadow:0 0 20px rgba(255,79,109,.18)}.loader p{margin:0;color:#b7bfcd}.loadTrack{width:72%;height:6px;border-radius:99px;background:rgba(255,255,255,.1);overflow:hidden}.loadTrack i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),#fff,var(--red));border-radius:inherit;transition:width .9s ease}.loadingDots{display:flex;gap:8px;height:12px}.loadingDots span{width:8px;height:8px;border-radius:50%;background:#fff;opacity:.42;animation:dotBounce .9s infinite ease-in-out}.loadingDots span:nth-child(2){animation-delay:.14s}.loadingDots span:nth-child(3){animation-delay:.28s}.primary{width:100%;border:0;border-radius:18px;padding:16px;font-size:16px;font-weight:900;background:#fff;color:#070b12;box-shadow:0 12px 40px rgba(255,255,255,.12)}.start{display:none}
.topbar{display:grid;grid-template-columns:82px 1fr 94px;align-items:center;gap:10px;margin-top:2px}.topbar h1{font-size:18px}.score{justify-self:end;display:grid;grid-template-columns:auto 34px;grid-template-rows:auto auto;align-items:center;column-gap:6px;min-width:86px;text-align:right}.score strong{color:var(--green);font-size:20px;text-shadow:0 0 18px rgba(71,225,123,.42)}.score small{color:var(--muted);font-size:9px;text-transform:uppercase;font-weight:800;letter-spacing:.6px}.moneyIcon{grid-column:2;grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;font-family:"Noto Color Emoji","Apple Color Emoji","Segoe UI Emoji",sans-serif;font-size:30px;line-height:1;filter:drop-shadow(0 0 9px rgba(71,225,123,.35))}.streakPill{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;align-items:center;column-gap:5px;min-width:74px}.streakPill strong{font-size:20px}.streakPill small{grid-column:2;color:var(--muted);font-size:9px;text-transform:uppercase;font-weight:800;letter-spacing:.6px}.flame{width:32px;height:32px;display:block;grid-row:1/3;filter:drop-shadow(0 0 8px rgba(255,139,28,.7));animation:flicker .85s infinite alternate}.flame img{width:100%;height:100%;display:block;object-fit:contain}.streakPill.hot .flame{animation:flicker .28s infinite alternate, pulseHot .9s infinite}.streakPill.hot strong{color:var(--orange);text-shadow:0 0 18px rgba(255,139,28,.7)}.streakPill.blast .flame{animation:fireBlast .55s ease both}.streakPill.blast strong{animation:scorePop .42s ease both;color:#ffd36a;text-shadow:0 0 28px rgba(255,139,28,1)}
@keyframes mascotFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes mascotBreathe{0%,100%{transform:scale(1) rotate(-1deg)}50%{transform:scale(1.035) rotate(1deg)}}@keyframes loadingGlow{to{transform:scale(1.08);opacity:.8}}@keyframes dotBounce{0%,80%,100%{transform:translateY(0);opacity:.38}40%{transform:translateY(-7px);opacity:1}}@keyframes flicker{from{transform:translateY(1px) scale(.94) rotate(-4deg)}to{transform:translateY(-1px) scale(1.08) rotate(3deg)}}@keyframes pulseHot{50%{filter:drop-shadow(0 0 18px rgba(255,139,28,1))}}@keyframes fireBlast{0%{transform:scale(1) rotate(-4deg);filter:drop-shadow(0 0 8px rgba(255,139,28,.7))}45%{transform:scale(1.55) rotate(7deg);filter:drop-shadow(0 0 26px rgba(255,139,28,1)) drop-shadow(0 0 46px rgba(255,75,20,.9))}100%{transform:scale(1.05) rotate(0);filter:drop-shadow(0 0 14px rgba(255,139,28,.95))}}@keyframes scorePop{50%{transform:scale(1.24)}}
.progress{display:flex;gap:7px;justify-content:center;margin:22px 0 18px}.bar{width:42px;height:5px;border-radius:99px;background:rgba(255,255,255,.12)}.bar.ok{background:var(--green)}.bar.bad{background:var(--red)}
.deck{height:63vh;display:grid;place-items:center;position:relative}.successFeedback{position:absolute;z-index:5;width:min(330px,88%);aspect-ratio:2/3;display:grid;place-items:center;opacity:0;transform:translateY(20px) scale(.62) rotate(-5deg);pointer-events:none;filter:drop-shadow(0 0 22px rgba(174,255,24,.45)) drop-shadow(0 26px 60px rgba(0,0,0,.55))}.successFeedback:before{content:"";position:absolute;inset:6% 0 22%;border-radius:50%;background:radial-gradient(circle,rgba(189,255,28,.55),rgba(71,225,123,.18) 42%,transparent 72%);filter:blur(24px);opacity:0;transform:scale(.75)}.successFeedback img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain}.successFeedback.show{animation:correctMascotPop .9s cubic-bezier(.18,.92,.22,1) both}.successFeedback.show:before{animation:correctGlowPulse .9s ease both}@keyframes correctMascotPop{0%{opacity:0;transform:translateY(24px) scale(.58) rotate(-7deg);filter:drop-shadow(0 0 0 rgba(174,255,24,0)) drop-shadow(0 26px 60px rgba(0,0,0,.4))}30%{opacity:1;transform:translateY(-10px) scale(1.08) rotate(2deg);filter:drop-shadow(0 0 34px rgba(174,255,24,.8)) drop-shadow(0 26px 70px rgba(0,0,0,.6))}62%{opacity:1;transform:translateY(0) scale(1) rotate(0)}100%{opacity:0;transform:translateY(-18px) scale(.9) rotate(1deg);filter:drop-shadow(0 0 42px rgba(174,255,24,0)) drop-shadow(0 20px 50px rgba(0,0,0,0))}}@keyframes correctGlowPulse{0%{opacity:0;transform:scale(.65)}28%{opacity:1;transform:scale(1.08)}72%{opacity:.78;transform:scale(1.18)}100%{opacity:0;transform:scale(1.34)}}.card{width:100%;height:100%;border-radius:30px;background:rgba(255,255,255,.045);border:1px solid var(--line);box-shadow:0 24px 70px rgba(0,0,0,.5);overflow:hidden;position:relative;touch-action:none;transform:translateX(0) rotate(0deg);transition:transform .22s ease,opacity .22s ease}.card.dragging{transition:none}.card.swipe-left{transform:translateX(-125%) rotate(-10deg);opacity:0}.card.swipe-right{transform:translateX(125%) rotate(10deg);opacity:0}.swipeLabel{position:absolute;top:34px;z-index:4;padding:10px 16px;border:4px solid currentColor;border-radius:14px;font-size:34px;font-weight:950;letter-spacing:1px;opacity:0;transform:scale(.88) rotate(-12deg);pointer-events:none;text-shadow:0 8px 22px rgba(0,0,0,.35);transition:opacity .08s linear,transform .08s linear}.swipeLabelAi{right:26px;color:var(--red);transform:scale(.88) rotate(12deg)}.swipeLabelReal{left:26px;color:var(--green)}.card.choosing-ai .swipeLabelAi,.card.choosing-real .swipeLabelReal{opacity:var(--swipe-opacity,.85);transform:scale(1) rotate(var(--label-rotate,-12deg))}.card.choosing-ai .swipeLabelAi{--label-rotate:12deg}.video{
    position:absolute;
    inset:0;
    background:#05070b;
    display:grid;
    place-items:center;
}.video:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1) 45%,rgba(0,0,0,.64))}.badge,.duration{position:absolute;z-index:2;background:rgba(0,0,0,.36);border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:8px 11px;font-weight:800}.badge{top:14px;left:14px}.duration{bottom:14px;left:14px}.play{z-index:2;width:70px;height:70px;border:0;border-radius:50%;background:rgba(0,0,0,.52);color:#fff;font-size:25px;box-shadow:0 16px 35px rgba(0,0,0,.4);backdrop-filter:blur(10px)}
.tinderActions{display:flex;align-items:center;justify-content:center;gap:13px;padding:16px 2px 0}.roundAction{width:48px;height:48px;border:0;border-radius:50%;display:grid;place-items:center;background:#fff;color:#111827;font-size:22px;font-weight:950;line-height:1;box-shadow:0 10px 28px rgba(0,0,0,.32),inset 0 0 0 1px rgba(0,0,0,.04);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.roundAction:active{transform:scale(.92)}.roundAction:disabled{opacity:.38}.rejectAction,.likeAction{width:58px;height:58px;font-size:31px}.rewindAction{color:#ffb32f}.rejectAction{color:#ff4f6d}.superAction{color:#3fa9ff}.likeAction{color:#2ddf8f}.boostAction{color:#925bff}.roundAction.pulse{animation:buttonPulse .38s ease}@keyframes buttonPulse{50%{transform:scale(1.13);box-shadow:0 14px 34px rgba(255,255,255,.13),0 0 0 10px rgba(255,255,255,.04)}}.actions{display:none}.swipeHint{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.8px}.choice{height:96px;border-radius:28px;background:rgba(255,255,255,.035);border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#fff;font-weight:900}.choice span{font-size:32px}.choice small{font-size:10px;text-transform:uppercase;color:var(--muted)}.aiChoice{box-shadow:inset 0 0 0 1px rgba(255,79,109,.4);color:var(--red)}.realChoice{box-shadow:inset 0 0 0 1px rgba(71,225,123,.4);color:var(--green)}
.result{position:absolute;left:18px;right:18px;bottom:calc(env(safe-area-inset-bottom) + 18px);background:rgba(13,18,27,.94);border:1px solid var(--line);border-radius:30px;padding:23px;box-shadow:0 30px 100px rgba(0,0,0,.72);backdrop-filter:blur(22px);transition:.25s ease}.close{position:absolute;right:18px;top:12px;background:transparent;border:0;color:#fff;font-size:28px}.resultIcon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font-size:28px;font-weight:900;margin-bottom:10px;background:rgba(71,225,123,.13);color:var(--green)}.result h2{margin:0 0 6px;font-size:28px}.result p{color:#cbd1dc;line-height:1.4;margin:0}.explain{background:rgba(255,255,255,.055);border:1px solid var(--line);border-radius:18px;padding:14px;margin:16px 0}.explain p{margin-top:6px}
.milestone{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;background:radial-gradient(circle at center,rgba(255,119,20,.22),rgba(5,7,11,.98) 58%);transition:.3s ease}.milestone p{text-transform:uppercase;font-weight:900;letter-spacing:1.2px;margin:0 0 10px}.milestone strong{font-size:132px;line-height:.9;color:#ffb12a;text-shadow:0 0 16px #ff6b00,0 0 52px rgba(255,88,0,.9);animation:boom .8s ease both, fireGlow .8s infinite alternate}.milestone h2{font-size:26px;margin:24px 0 44px;color:#ffd369}.milestone .primary{max-width:310px}.sparks:before,.sparks:after{content:"✦ ✹ ✦ ✹ ✦ ✹ ✦";position:absolute;left:50%;top:50%;width:100%;transform:translate(-50%,-50%);color:#ff8a1f;font-size:26px;letter-spacing:18px;animation:sparks 1.2s infinite linear}.sparks:after{animation-delay:.55s;color:#ffd25a}@keyframes boom{from{transform:scale(.35);opacity:0}70%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes fireGlow{to{text-shadow:0 0 28px #ff6b00,0 0 80px rgba(255,88,0,1)}}@keyframes sparks{from{transform:translate(-50%,-50%) rotate(0) scale(.5);opacity:1}to{transform:translate(-50%,-50%) rotate(30deg) scale(1.35);opacity:0}}
.milestone{z-index:7;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(255,141,24,.32),rgba(5,7,11,.96) 62%)}.streakBurst{position:relative;display:grid;justify-items:center;align-items:center;animation:streakBurstIn 1.75s cubic-bezier(.18,.9,.18,1) both}.streakBurst:before{content:"";position:absolute;width:270px;height:270px;border-radius:50%;background:radial-gradient(circle,rgba(255,178,42,.48),rgba(255,76,17,.18) 46%,transparent 72%);filter:blur(18px);animation:streakGlow 1.75s ease both}.milestoneFire{position:relative;z-index:1;width:156px;height:156px;display:block;filter:drop-shadow(0 0 24px rgba(255,111,22,.95)) drop-shadow(0 0 62px rgba(255,176,38,.55));animation:milestoneFirePulse .72s ease-in-out infinite alternate}.milestoneFire img{width:100%;height:100%;display:block;object-fit:contain}.milestone .streakBurst p{position:relative;z-index:1;text-transform:uppercase;font-weight:950;letter-spacing:1.4px;margin:10px 0 4px;color:#fff;text-shadow:0 0 22px rgba(255,139,28,.72)}.milestone .streakBurst strong{position:relative;z-index:1;font-size:118px;line-height:.86;color:#ffb12a;text-shadow:0 0 16px #ff6b00,0 0 58px rgba(255,88,0,.95);animation:streakNumberPop .9s ease both}@keyframes streakBurstIn{0%{opacity:0;transform:scale(.72) translateY(28px)}22%{opacity:1;transform:scale(1.08) translateY(-8px)}70%{opacity:1;transform:scale(1) translateY(0)}100%{opacity:0;transform:scale(.94) translateY(-18px)}}@keyframes milestoneFirePulse{from{transform:scale(.96) rotate(-4deg)}to{transform:scale(1.12) rotate(4deg)}}@keyframes streakGlow{0%{opacity:0;transform:scale(.55)}30%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.45)}}@keyframes streakNumberPop{from{transform:scale(.35);opacity:0}60%{transform:scale(1.16);opacity:1}to{transform:scale(1)}}@media (max-height:760px){.app{min-height:0}.deck{height:56vh}.choice{height:82px}.progress{margin:14px 0}.tinderActions{padding-top:12px}.roundAction{width:43px;height:43px}.rejectAction,.likeAction{width:52px;height:52px}.milestone .streakBurst strong{font-size:104px}.milestoneFire{width:132px;height:132px}}
.card{
    width:100%;
    height:100%;
    border-radius:30px;
    overflow:hidden;
    position:relative;
}
.rejectAction,
.likeAction {
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0.5px;
}

.rewindAction,
.superAction,
.boostAction {
  font-size: 24px;
}

.loader h1{
  margin:2px 0 0;
  font-size:34px;
  line-height:1;
  font-weight:950;
  letter-spacing:-.8px;
  text-shadow:0 0 28px rgba(71,225,123,.18);
}

.loader p{
  max-width:280px;
  font-size:14px;
  line-height:1.35;
  font-weight:750;
}

.startGameButton{
  width:min(310px,86%);
  min-height:60px;
  margin-top:2px;
  border-radius:20px;
  background:linear-gradient(180deg,#98ff7e 0%,#59e85c 100%);
  color:#071009;
  box-shadow:
    0 18px 42px rgba(76,234,91,.24),
    inset 0 2px 0 rgba(255,255,255,.36),
    inset 0 -2px 0 rgba(0,0,0,.13);
  font-size:20px;
}

.startGameButton:disabled{
  opacity:.72;
}

.loader .loadTrack{
  opacity:0;
  transform:translateY(8px);
  transition:opacity .25s ease,transform .25s ease;
}

.loader.is-loading .loadTrack{
  opacity:1;
  transform:translateY(0);
}

.loader.is-loading .startGameButton{
  pointer-events:none;
}

.roundAction {
  display: flex;
  align-items: center;
  justify-content: center;
}

.navIcon {
  width:30px;
  height:30px;
  display:block;
  object-fit:contain;
  pointer-events:none;
}

.superAction .navIcon {
  width:34px;
  height:34px;
}
/* AI swipe = červený glow */

.card.choosing-ai {
  box-shadow:
    0 0 0 2px rgba(255,79,109,.35),
    0 0 30px rgba(255,79,109,.35),
    0 0 60px rgba(255,79,109,.20),
    0 24px 70px rgba(0,0,0,.5);
}

.card.choosing-ai .video::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:rgba(255,79,109,.12);
  border-radius:inherit;
  pointer-events:none;
}

/* REAL swipe = zelený glow */

.card.choosing-real {
  box-shadow:
    0 0 0 2px rgba(71,225,123,.35),
    0 0 30px rgba(71,225,123,.35),
    0 0 60px rgba(71,225,123,.20),
    0 24px 70px rgba(0,0,0,.5);
}

.card.choosing-real .video::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:rgba(71,225,123,.12);
  border-radius:inherit;
  pointer-events:none;
}

.card,
.video,
.video video,
.video::after {
  border-radius:30px;
}

.video {
  overflow:hidden;
  isolation:isolate;
}
