:root{
  /* pergament */
  --paper:#efe3c4; --paper-2:#e6d6b0; --cream:#fbf4e2;
  --ink:#3a2f22; --ink-soft:#7c6a4f;
  --line:#cdb98c;
  /* zelena (ti) */
  --green:#357a52; --green-dk:#234f37; --green-lt:#e4efe1;
  /* indigo (protivnik) */
  --indigo:#5a5fa3; --indigo-dk:#414682; --indigo-lt:#e6e7f3;
  /* zlato + akcenti */
  --gold:#cda24a; --gold-dk:#a07e34; --wood:#b58e52;
  --tomato:#c2553c; --tomato-dk:#9e4029;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0}
body{
  font-family:'Hanken Grotesk',sans-serif;color:var(--ink);
  background:
    radial-gradient(130% 90% at 50% -10%, #f7eed6 0%, var(--paper) 50%, var(--paper-2) 100%);
  min-height:100vh;display:flex;justify-content:center;padding:14px 10px 28px;
}
/* zrnasta tekstura + vinjeta po ivicama */
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:radial-gradient(rgba(120,90,40,.05) 1px,transparent 1px);background-size:4px 4px;mix-blend-mode:multiply}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  box-shadow:inset 0 0 120px rgba(90,64,28,.22)}
.app{width:100%;max-width:460px;position:relative;z-index:1}

/* ——— zaglavlje ——— */
.top{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:12px;gap:10px}
.brand h1{font-family:'Fraunces',serif;font-weight:900;font-size:29px;margin:0;letter-spacing:-.5px;color:var(--ink);text-shadow:0 1px 0 rgba(255,255,255,.5)}
.brand h1 span{color:var(--gold-dk)}
.brand small{font-weight:800;color:var(--gold-dk);font-size:9.5px;letter-spacing:2px;text-transform:uppercase}
.scoreboard{display:flex;gap:6px;align-items:center}
.chip{background:linear-gradient(180deg,#fdf7e6,#f1e4c5);border:2px solid var(--gold-dk);border-radius:15px;padding:5px 11px;text-align:center;
  box-shadow:0 3px 8px rgba(58,40,18,.18),inset 0 1px 0 rgba(255,255,255,.55);min-width:42px}
.chip b{display:block;font-family:'Fraunces',serif;font-weight:900;font-size:20px;line-height:1}
.chip small{font-size:8px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-soft);font-weight:800}
.chip.you{background:linear-gradient(180deg,#e9f2e6,#d6e7d2);border-color:var(--green-dk)} .chip.you b{color:var(--green-dk)}
.chip.opp{background:linear-gradient(180deg,#e9eaf4,#d7d9ec);border-color:var(--indigo-dk)} .chip.opp b{color:var(--indigo-dk)}
.vs{font-family:'Fraunces',serif;font-weight:900;font-size:12px;color:#fff;background:linear-gradient(180deg,var(--gold),var(--gold-dk));
  border:2px solid var(--gold-dk);border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;
  box-shadow:0 3px 7px rgba(58,40,18,.25),inset 0 1px 0 rgba(255,255,255,.4);text-shadow:0 1px 1px rgba(0,0,0,.25)}

/* ukupni saldo */
.career{display:flex;gap:8px;justify-content:center;margin:0 0 12px;flex-wrap:wrap}
.cstat{background:linear-gradient(180deg,#fdf7e6,#f1e4c5);border:2px solid var(--gold-dk);border-radius:13px;
  box-shadow:0 2px 6px rgba(58,40,18,.15),inset 0 1px 0 rgba(255,255,255,.5);padding:5px 12px;font-weight:800;font-size:12px;display:flex;align-items:center;gap:5px}
.cstat i{font-style:normal;color:var(--ink-soft);font-size:10px;text-transform:uppercase;letter-spacing:.5px}
.cstat b{font-family:'Fraunces',serif;font-size:15px}
.cstat b.you{color:var(--green-dk)} .cstat b.opp{color:var(--indigo-dk)}

/* dnevni izazov */
.btn.daily{--edge:var(--gold-dk);display:flex;align-items:center;justify-content:center;gap:6px;width:100%;
  background:linear-gradient(180deg,#f5d77f,#e8bd50);color:var(--ink);font-size:15px;font-family:'Fraunces',serif;font-weight:900;
  padding:11px;margin:0 0 12px;letter-spacing:.3px;border-color:var(--gold-dk)}
.btn.daily b{font-size:18px}
.btn.daily.done{filter:saturate(.65) brightness(.98)}
body.daily-mode .chip.opp, body.daily-mode .vs, body.daily-mode .career{display:none}

/* ——— tabla ——— */
.board-wrap{background:linear-gradient(180deg,#f7edd2,#efe1bf);border:3px solid var(--gold-dk);border-radius:18px;
  box-shadow:0 12px 28px rgba(58,40,18,.25),inset 0 0 0 2px rgba(255,255,255,.3),inset 0 2px 12px rgba(120,90,40,.12);
  padding:8px;margin-bottom:12px;overflow:auto}
#board{display:grid;gap:4px;margin:0 auto}
.cell{position:relative;border-radius:7px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.cell.empty{background:transparent}
.cell.clue{background:linear-gradient(180deg,#f0e2bc,#e6d4a8);border:1.5px solid var(--gold-dk);font-weight:800;color:#4a3a22;
  font-size:8.5px;line-height:1.02;text-align:center;padding:3px 2px;box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}
.cell.clue .ch{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;flex:1}
.cell.clue .ch.pic{font-size:min(7vw,26px);line-height:1}
.cell.clue .divider{width:100%;height:1px;background:var(--line)}
.cell.clue .ar{position:absolute;color:#6b5320;font-size:14px;font-weight:900;line-height:1;text-shadow:0 1px 0 rgba(255,255,255,.5)}
.cell.clue .ar.r{right:2px;top:50%;transform:translateY(-50%)}
.cell.clue .ar.d{bottom:1px;left:50%;transform:translateX(-50%)}
.cell.fill{background:linear-gradient(180deg,#ece0c0,#e3d3ad);border:2px solid #cbb585;cursor:pointer;
  font-weight:800;transition:transform .08s,background .15s,border-color .15s,box-shadow .15s;touch-action:none;
  box-shadow:inset 0 2px 5px rgba(120,90,40,.28),inset 0 -1px 0 rgba(255,255,255,.35)}
.cell.fill.dragging{opacity:.32}
.cell.fill .ltr{font-family:'Fraunces',serif;font-size:min(6.6vw,24px);line-height:1;color:#3a2f22}
.cell.fill .ltr.di{font-size:min(4.6vw,17px)}
.cell.fill.sel{border-color:var(--green);background:#dff0dc;transform:scale(1.06);box-shadow:0 0 0 3px rgba(53,122,82,.45),0 0 14px rgba(53,122,82,.4);animation:selpulse 1.1s ease-in-out infinite}
@keyframes selpulse{0%,100%{box-shadow:0 0 0 3px rgba(53,122,82,.45),0 0 10px rgba(53,122,82,.35)}50%{box-shadow:0 0 0 4px rgba(53,122,82,.6),0 0 18px rgba(53,122,82,.55)}}
.cell.fill.glow-you{animation:glowYou .75s ease}
.cell.fill.glow-bot{animation:glowBot .75s ease}
@keyframes glowYou{0%{box-shadow:0 0 0 0 rgba(53,122,82,.7)}50%{box-shadow:0 0 16px 4px rgba(53,122,82,.85);filter:brightness(1.15)}100%{box-shadow:0 0 0 0 rgba(53,122,82,0)}}
@keyframes glowBot{0%{box-shadow:0 0 0 0 rgba(90,95,163,.7)}50%{box-shadow:0 0 16px 4px rgba(90,95,163,.85);filter:brightness(1.15)}100%{box-shadow:0 0 0 0 rgba(90,95,163,0)}}
.cell.fill.tent{background:linear-gradient(180deg,#fcefcd,#f3e0a8);border-color:var(--gold);box-shadow:inset 0 1px 0 rgba(255,255,255,.5)}
.cell.fill.locked{background:linear-gradient(180deg,#43946a,#2b6043);border-color:var(--green-dk);box-shadow:inset 0 2px 0 rgba(255,255,255,.3),inset 0 -3px 6px rgba(0,0,0,.2)}
.cell.fill.locked .ltr{color:#fff}
.cell.fill.opp{background:linear-gradient(180deg,#6c71b9,#545aa0);border-color:var(--indigo-dk);box-shadow:inset 0 2px 0 rgba(255,255,255,.28),inset 0 -3px 6px rgba(0,0,0,.2)}
.cell.fill.opp .ltr{color:#fff}
.cell.fill.given{background:linear-gradient(180deg,#e8d49c,#d8be80);border-color:var(--gold-dk);box-shadow:inset 0 2px 5px rgba(120,90,40,.3)}
.cell.fill.given .ltr{color:#6b5320;text-shadow:0 1px 0 rgba(255,255,255,.45)}
.badge{position:absolute;top:-2px;right:-2px;font-size:11px;font-weight:900;border-radius:6px;padding:1px 4px;color:#fff;z-index:3;animation:pop .3s;box-shadow:0 2px 5px rgba(0,0,0,.25)}
.badge.good{background:var(--green)} .badge.bad{background:var(--tomato)} .badge.opp{background:var(--indigo)}
@keyframes pop{0%{transform:scale(.3)}70%{transform:scale(1.25)}100%{transform:scale(1)}}
.cell.wrong{animation:shake .4s}
@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}50%{transform:translateX(5px)}75%{transform:translateX(-4px)}}
.cell.drop{animation:drop .36s}
@keyframes drop{0%{transform:scale(1.35);filter:brightness(1.4)}60%{transform:scale(.94)}100%{transform:scale(1)}}

/* ——— red pločica ——— */
.rack-label{font-family:'Fraunces',serif;font-size:13px;margin:0 0 7px;color:var(--gold-dk);text-transform:uppercase;font-weight:900;letter-spacing:.5px}
.rack{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;min-height:54px;margin-bottom:14px}
.tile{min-width:48px;height:56px;padding:0 8px;border-radius:10px;
  background:linear-gradient(180deg,#fcefc9,#ebd29c);border:2px solid var(--wood);color:#463318;
  box-shadow:0 4px 0 #9c7536,0 6px 12px rgba(58,40,18,.3),inset 0 2px 0 rgba(255,255,255,.7),inset 0 -3px 5px rgba(120,80,30,.18);
  display:flex;align-items:center;justify-content:center;cursor:pointer;font-family:'Fraunces',serif;font-weight:900;font-size:26px;
  user-select:none;transition:transform .09s,box-shadow .09s;touch-action:none;animation:tilein .22s cubic-bezier(.2,.8,.3,1.3)}
@keyframes tilein{0%{transform:translateY(8px) scale(.85);opacity:0}100%{transform:none;opacity:1}}
.tile.di{font-size:20px;min-width:56px}
.tile:active{transform:translateY(4px);box-shadow:0 0 0 #9c7536,0 2px 5px rgba(58,40,18,.22),inset 0 2px 0 rgba(255,255,255,.6)}
.tile.used{opacity:.25;pointer-events:none;box-shadow:none;animation:none}
.tile.dragging{opacity:.3}
.drag-ghost{position:fixed;z-index:80;transform:translate(-50%,-50%);min-width:46px;height:54px;padding:0 8px;border-radius:10px;
  background:linear-gradient(180deg,#f7e0a6,#ecca78);border:2px solid var(--gold-dk);color:#4a3a22;
  box-shadow:0 8px 18px rgba(58,40,18,.35),inset 0 1px 0 rgba(255,255,255,.6);
  display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:900;font-size:25px;pointer-events:none}
.drag-ghost.di{font-size:19px}

/* ——— dugmad ——— */
.controls{display:flex;gap:9px;align-items:stretch;margin-bottom:9px}
.btn{--edge:var(--gold-dk);border:2px solid var(--gold-dk);border-radius:15px;font-family:'Hanken Grotesk',sans-serif;font-weight:800;cursor:pointer;
  box-shadow:0 4px 0 var(--edge),0 7px 13px rgba(58,40,18,.18),inset 0 1px 0 rgba(255,255,255,.45);
  transition:transform .07s,box-shadow .07s}
.btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--edge),0 3px 7px rgba(58,40,18,.16),inset 0 1px 0 rgba(255,255,255,.4)}
.btn.main{--edge:var(--green-dk);flex:1;background:linear-gradient(180deg,#43946a,#2c6043);color:#fff;font-size:21px;font-family:'Fraunces',serif;font-weight:900;letter-spacing:.5px;text-shadow:0 1px 1px rgba(0,0,0,.3)}
.btn.main.pass{--edge:#9c8a63;background:linear-gradient(180deg,#d7c9a3,#c2b189);color:var(--ink);text-shadow:none}
.btn.aux{--edge:var(--wood);background:linear-gradient(180deg,#fdf6e3,#f1e3c2);color:var(--ink);font-size:12px;padding:0 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05}
.btn.aux .ic{font-size:19px}
.btn.aux b{font-size:10px;color:var(--ink-soft)}
.foot{display:flex;gap:9px}
.btn.small{--edge:var(--wood);flex:1;background:linear-gradient(180deg,#fbf2dd,#efe0bd);color:var(--ink);font-size:12px;padding:9px 6px;text-align:center}
.btn.small.full{width:100%;flex:none;margin-bottom:8px}
.btn.small.danger{--edge:var(--tomato-dk);background:linear-gradient(180deg,#f3d9cf,#e9c0b1);border-color:var(--tomato-dk)}
.note{font-size:11px;color:var(--ink-soft);text-align:center;margin-top:9px;font-weight:600}

/* uputstvo + podešavanja */
.howto{text-align:left;margin:0 0 16px;padding-left:18px;font-weight:600;color:var(--ink);font-size:14px;line-height:1.55}
.howto li{margin-bottom:6px}
.howto b.g{color:var(--green-dk)} .howto b.r{color:var(--tomato-dk)}
.setrow{display:flex;align-items:center;justify-content:space-between;padding:9px 2px;font-weight:800;font-size:15px}
.setdiv{height:2px;background:var(--line);margin:8px 0 12px;border-radius:2px}
.toggle{--edge:var(--green-dk);border:2px solid var(--green-dk);border-radius:11px;background:linear-gradient(180deg,#3c8259,#2c6043);color:#fff;font-weight:800;font-size:13px;padding:6px 16px;cursor:pointer;
  box-shadow:0 3px 0 var(--edge),inset 0 1px 0 rgba(255,255,255,.3);font-family:'Hanken Grotesk',sans-serif;transition:transform .07s,box-shadow .07s}
.toggle:active{transform:translateY(2px);box-shadow:0 1px 0 var(--edge)}
.toggle.off{--edge:#9c8a63;background:linear-gradient(180deg,#d7c9a3,#c2b189);color:var(--ink)}

/* ——— toast + modali ——— */
.toast{position:fixed;left:50%;top:30%;transform:translateX(-50%);background:linear-gradient(180deg,#2c6043,#234f37);color:#fdf6e3;
  font-family:'Fraunces',serif;font-weight:900;padding:13px 24px;border-radius:15px;border:2px solid var(--gold);
  box-shadow:0 12px 32px rgba(35,40,30,.4);opacity:0;pointer-events:none;z-index:50;text-align:center;transition:opacity .25s,transform .25s;font-size:17px}
.toast small{display:block;font-family:'Hanken Grotesk';font-weight:700;font-size:12px;color:var(--gold);margin-top:3px}
.toast.show{opacity:1;transform:translateX(-50%) translateY(-8px)}
.overlay{position:fixed;inset:0;background:rgba(42,37,28,.6);display:none;align-items:center;justify-content:center;z-index:60;padding:24px;backdrop-filter:blur(2px)}
.overlay.show{display:flex;animation:fade .25s ease}
@keyframes fade{from{opacity:0}to{opacity:1}}
.card{background:linear-gradient(180deg,#fbf4e2,#f1e6c8);border:3px solid var(--gold-dk);border-radius:20px;
  box-shadow:0 18px 44px rgba(35,30,18,.45),inset 0 0 0 2px rgba(255,255,255,.35);padding:26px 22px;max-width:330px;width:100%;text-align:center;
  animation:rise .3s cubic-bezier(.2,.8,.3,1.2)}
@keyframes rise{from{transform:translateY(16px) scale(.96);opacity:0}to{transform:none;opacity:1}}
.card h3{font-family:'Fraunces',serif;font-weight:900;font-size:25px;margin:0 0 4px;color:var(--green-dk)}
.card .big{font-family:'Fraunces',serif;font-size:40px;font-weight:900;color:var(--green-dk);margin:4px 0 12px;text-shadow:0 2px 0 rgba(255,255,255,.4)}
.card p{margin:0 0 16px;color:var(--ink-soft);font-weight:600}

/* debug */
body.debug .app::after{content:"DEBUG";position:fixed;top:6px;left:6px;background:var(--tomato);color:#fff;font-size:10px;font-weight:800;padding:2px 6px;border-radius:5px;z-index:99}

/* ——— EKRANI: Home + Gameplay ——— */
.screen{display:none}
.screen.active{display:block;animation:fade .25s ease}

/* HOME */
#home{padding-top:5vh;text-align:center}
.hero{margin-bottom:22px}
.logo{font-family:'Fraunces',serif;font-weight:900;font-size:48px;margin:0;letter-spacing:-1px;color:var(--ink);text-shadow:0 2px 0 rgba(255,255,255,.5)}
.logo span{color:var(--gold-dk)}
.tag{margin:3px 0 0;font-weight:800;color:var(--gold-dk);text-transform:uppercase;letter-spacing:3px;font-size:11px}
.statbar{display:flex;gap:9px;justify-content:center;margin:0 auto 22px;max-width:360px}
.hstat{flex:1;background:linear-gradient(180deg,#fdf7e6,#f1e4c5);border:2px solid var(--gold-dk);border-radius:14px;padding:10px 4px;
  box-shadow:0 3px 8px rgba(58,40,18,.15),inset 0 1px 0 rgba(255,255,255,.5)}
.hstat b{display:block;font-family:'Fraunces',serif;font-weight:900;font-size:23px;line-height:1;color:var(--green-dk)}
.hstat small{font-size:9px;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-soft);font-weight:800}
.menu{display:flex;flex-direction:column;gap:12px;max-width:360px;margin:0 auto}
.home-btn{--edge:var(--wood);display:flex;align-items:center;gap:14px;text-align:left;padding:15px 18px;border:2px solid var(--gold-dk);border-radius:16px;
  background:linear-gradient(180deg,#fdf6e3,#f1e3c2);color:var(--ink);cursor:pointer;font-family:'Hanken Grotesk',sans-serif;
  box-shadow:0 4px 0 var(--edge),0 7px 13px rgba(58,40,18,.16),inset 0 1px 0 rgba(255,255,255,.5);transition:transform .07s,box-shadow .07s}
.home-btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--edge),0 3px 7px rgba(58,40,18,.14)}
.home-btn .hb-ic{font-size:24px;width:30px;text-align:center;flex:none}
.home-btn .hb-tx{font-family:'Fraunces',serif;font-weight:900;font-size:19px;display:flex;flex-direction:column;line-height:1.12}
.home-btn .hb-tx small{font-family:'Hanken Grotesk',sans-serif;font-weight:700;font-size:11px;color:var(--ink-soft);margin-top:2px}
.home-btn .hb-tx small b{color:var(--tomato-dk)}
.home-btn.primary{--edge:var(--green-dk);background:linear-gradient(180deg,#3c8259,#2c6043);border-color:var(--gold-dk);color:#fff}
.home-btn.primary .hb-tx small{color:rgba(255,255,255,.82)}
.home-btn.daily{--edge:var(--gold-dk);background:linear-gradient(180deg,#f5d77f,#e8bd50)}
.home-foot{margin-top:26px;text-align:center;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-soft);font-weight:800;opacity:.7}

/* GAMEPLAY zaglavlje */
.g-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.icon-btn{width:42px;height:42px;flex:none;border:2px solid var(--green-dk);border-radius:50%;
  background:linear-gradient(180deg,#3c8259,#2c6043);color:#fff;font-size:22px;font-weight:900;cursor:pointer;
  box-shadow:0 3px 0 var(--green-dk),inset 0 1px 0 rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;line-height:1;transition:transform .07s,box-shadow .07s}
.icon-btn:active{transform:translateY(2px);box-shadow:0 1px 0 var(--green-dk)}
.duel{flex:1;display:flex;align-items:center;justify-content:center;gap:12px;background:linear-gradient(180deg,#f7edd2,#efe1bf);
  border:2px solid var(--gold-dk);border-radius:16px;padding:6px 10px;box-shadow:0 3px 8px rgba(58,40,18,.16),inset 0 1px 0 rgba(255,255,255,.4)}
.dside{display:flex;flex-direction:column;align-items:center;min-width:58px;border-radius:12px;padding:3px 10px}
.dside small{font-size:9px;letter-spacing:1px;text-transform:uppercase;font-weight:800}
.dside b{font-family:'Fraunces',serif;font-weight:900;font-size:28px;line-height:1}
.dside.you{background:linear-gradient(180deg,#dcefe0,#bfe3c6);border:1.5px solid var(--green-dk)}
.dside.you b{color:var(--green-dk)} .dside.you small{color:var(--green-dk)}
.dside.opp{background:linear-gradient(180deg,#e2e3f6,#cfd1ee);border:1.5px solid var(--indigo-dk)}
.dside.opp b{color:var(--indigo-dk)} .dside.opp small{color:var(--indigo-dk)}
.duel .vs{position:static}
body.daily-mode .dside.opp, body.daily-mode .duel .vs{display:none}
.g-sub{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;font-weight:800;font-size:12px;color:var(--ink-soft)}
.sub-lvl b{font-family:'Fraunces',serif;color:var(--green-dk);font-size:14px}
.prog-wrap{display:flex;align-items:center;gap:6px;flex:1;max-width:170px}
.prog-track{flex:1;height:9px;background:#e3d4ac;border:1.5px solid var(--gold-dk);border-radius:6px;overflow:hidden}
.prog-track i{display:block;height:100%;width:0;background:linear-gradient(180deg,#4aa06c,#2c6043);transition:width .3s}
.prog-wrap b{font-family:'Fraunces',serif;color:var(--ink);font-size:12px}
.gstreak{font-family:'Fraunces',serif;font-weight:900;color:var(--tomato-dk);font-size:13px;white-space:nowrap}
.turn-info{text-align:center;font-weight:800;font-size:12px;color:var(--indigo-dk);min-height:15px;margin-bottom:4px}
.home-mascot{width:142px;height:auto;display:block;margin:0 auto 2px;filter:drop-shadow(0 8px 14px rgba(58,40,18,.28))}
.mascot-row{display:flex;align-items:center;gap:9px;margin-bottom:9px;min-height:46px}
.mascot-av{width:48px;height:48px;flex:none;border-radius:50%;border:2px solid var(--gold-dk);
  background-color:#f1e4c5;background-repeat:no-repeat;background-size:168%;background-position:50% 11%;
  box-shadow:0 2px 6px rgba(58,40,18,.2),inset 0 1px 0 rgba(255,255,255,.4)}
.m-bubble{position:relative;flex:1;background:#fffdf6;border:2px solid var(--gold-dk);border-radius:13px;padding:8px 12px;
  font-weight:700;font-size:12.5px;color:var(--ink);box-shadow:0 2px 6px rgba(58,40,18,.14)}
.m-bubble::before{content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%);border:7px solid transparent;border-right-color:var(--gold-dk)}
.m-bubble::after{content:"";position:absolute;left:-5px;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:#fffdf6}
.ov-mascot{width:104px;height:104px;border-radius:50%;border:3px solid var(--gold-dk);
  background-color:#f1e4c5;background-repeat:no-repeat;background-size:150%;background-position:50% 14%;
  background-image:url(assets/mascot-win.png);margin:-60px auto 8px;box-shadow:0 7px 16px rgba(58,40,18,.32)}

/* ——— reward momenti / animacije ——— */
.fly{position:fixed;z-index:70;font-family:'Fraunces',serif;font-weight:900;font-size:30px;transform:translate(-50%,-50%);
  transition:transform .72s cubic-bezier(.2,.7,.3,1),opacity .72s;pointer-events:none;text-shadow:0 2px 4px rgba(0,0,0,.18)}
.fly.good{color:#2c6043} .fly.bad{color:var(--tomato-dk)} .fly.opp{color:var(--indigo-dk)}
.confetti-bit{position:fixed;width:9px;height:13px;border-radius:2px;z-index:75;
  transition:transform .82s cubic-bezier(.2,.7,.3,1),opacity .82s;pointer-events:none}

/* ——— level-complete kartica ——— */
.win-card{position:relative;overflow:hidden}
.duel-result{display:flex;align-items:center;justify-content:center;gap:12px;margin:2px 0 14px;font-family:'Fraunces',serif;font-weight:900;font-size:34px}
.duel-result .you{color:var(--green-dk)} .duel-result .opp{color:var(--indigo-dk)} .duel-result .vsd{color:var(--ink-soft);font-size:24px}
.reward-row{display:flex;gap:9px;justify-content:center;margin:0 0 18px}
.rw{flex:1;background:linear-gradient(180deg,#fdf7e6,#f1e4c5);border:2px solid var(--gold-dk);border-radius:13px;padding:9px 4px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5)}
.rw b{display:block;font-family:'Fraunces',serif;font-weight:900;font-size:19px;line-height:1;color:var(--green-dk)}
.rw small{font-size:9px;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-soft);font-weight:800}

/* ——— na širem ekranu: igra u mekoj kartici, da ne "pliva" ——— */
@media (min-width: 560px) {
  body { align-items: flex-start; }
  .app {
    margin-top: 20px;
    background: rgba(255, 253, 246, .5);
    border: 1px solid rgba(160, 126, 52, .28);
    border-radius: 26px;
    padding: 16px 16px 24px;
    box-shadow: 0 20px 55px rgba(90, 64, 28, .2);
    backdrop-filter: blur(1px);
  }
}
