:root{
  --bg:#07060c;--panel:rgba(18,13,26,.92);--panel2:rgba(30,22,40,.95);
  --gold:#ffc463;--gold2:#ff9d2e;--ember:#ff6a2a;--blood:#c2253a;--text:#efe6d6;--dim:#a99c8a;
  --line:rgba(255,196,99,.28);--sl:env(safe-area-inset-left,0px);--sr:env(safe-area-inset-right,0px);
  --st:env(safe-area-inset-top,0px);--sb:env(safe-area-inset-bottom,0px);
  --serif:'Palatino Linotype','Book Antiqua',Palatino,Georgia,'Times New Roman',serif;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;height:100%;background:var(--bg);overflow:hidden;color:var(--text);
  font-family:var(--serif);user-select:none;-webkit-user-select:none;touch-action:none;overscroll-behavior:none}
#game{position:fixed;left:0;top:0;width:100%;height:100%;display:block;background:#000;touch-action:none}
#safe{position:fixed;left:0;top:0;width:0;height:0;visibility:hidden;
  padding:var(--st) var(--sr) var(--sb) var(--sl)}
.screen{position:fixed;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;
  padding:calc(12px + var(--st)) calc(14px + var(--sr)) calc(12px + var(--sb)) calc(14px + var(--sl));z-index:10}
.screen.on{display:flex}
.screen.dim{background:radial-gradient(ellipse at center,rgba(10,6,16,.72),rgba(3,2,6,.94))}
.scroll{overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;max-height:100%;width:100%}
h1,h2,h3{margin:0;font-weight:normal;letter-spacing:.06em}
.title{font-size:clamp(44px,9vw,104px);letter-spacing:.14em;color:#ffe2a8;line-height:1;
  text-shadow:0 0 18px rgba(255,170,60,.85),0 0 60px rgba(255,110,30,.55),0 4px 0 #3a1b08;animation:flick 4s infinite}
@keyframes flick{0%,100%{opacity:1}46%{opacity:1}47%{opacity:.82}48%{opacity:1}72%{opacity:.93}73%{opacity:1}}
.sub{color:var(--dim);letter-spacing:.35em;font-size:clamp(11px,1.6vw,15px);margin:10px 0 22px;text-transform:uppercase}
.btn{font-family:var(--serif);background:linear-gradient(180deg,#3a2a1c,#1d140e);color:#ffe7bf;border:1px solid var(--line);
  border-radius:10px;padding:11px 22px;font-size:clamp(15px,2vw,19px);letter-spacing:.08em;cursor:pointer;min-width:200px;margin:5px;
  box-shadow:0 0 0 1px rgba(0,0,0,.6) inset,0 6px 18px rgba(0,0,0,.5);transition:transform .08s,box-shadow .2s,filter .2s}
.btn:hover{filter:brightness(1.2);box-shadow:0 0 18px rgba(255,170,60,.35),0 6px 18px rgba(0,0,0,.5)}
.btn:active{transform:scale(.97)}
.btn.main{background:linear-gradient(180deg,#b5561c,#6e2a0c);border-color:#ffb35c;color:#fff4dc;font-size:clamp(18px,2.6vw,24px);
  box-shadow:0 0 24px rgba(255,120,40,.45)}
.btn.small{min-width:0;padding:8px 14px;font-size:15px}
.btn[disabled]{opacity:.45;pointer-events:none}
.row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px}
.col{display:flex;flex-direction:column;align-items:center}
.icobtn{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(20,14,26,.85);color:#ffd890;
  font-size:20px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;margin:4px;font-family:var(--serif)}
.icobtn.off{opacity:.4;text-decoration:line-through}
.goldtag{position:absolute;top:calc(12px + var(--st));left:calc(16px + var(--sl));color:var(--gold);font-size:20px;
  text-shadow:0 0 10px rgba(255,180,60,.6)}
.hdr{font-size:clamp(24px,4vw,38px);color:#ffdca0;text-shadow:0 0 14px rgba(255,150,40,.6);margin-bottom:6px;text-align:center}
.hint{color:var(--dim);font-size:14px;text-align:center;margin:2px 0 10px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:10px;width:100%;max-width:1100px;padding:4px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px;cursor:pointer;position:relative;
  transition:transform .1s,border-color .2s,box-shadow .2s;display:flex;flex-direction:column;align-items:center;text-align:center}
.card:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:0 0 20px rgba(255,170,60,.25)}
.card.sel{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold) inset,0 0 26px rgba(255,170,60,.35)}
.card.lock{filter:grayscale(.8) brightness(.7)}
.card img,.card canvas{width:64px;height:64px;image-rendering:auto}
.card .nm{font-size:18px;color:#ffe0a8;margin:4px 0 2px}
.card .ds{font-size:13px;color:var(--dim);line-height:1.3}
.card .ct{margin-top:6px;color:var(--gold);font-size:15px}
.pips{display:flex;gap:3px;justify-content:center;margin-top:5px}
.pip{width:12px;height:6px;border-radius:2px;background:#3a2f28;border:1px solid #5a4630}
.pip.on{background:var(--gold);box-shadow:0 0 6px var(--gold2)}
.lvcards{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;max-width:1000px}
.lvc{width:min(270px,30vw);min-width:180px;background:linear-gradient(180deg,rgba(40,28,22,.96),rgba(16,11,18,.97));border:1px solid var(--line);
  border-radius:14px;padding:14px 12px;cursor:pointer;display:flex;flex-direction:column;align-items:center;text-align:center;
  animation:pop .28s ease-out both;transition:transform .1s,box-shadow .2s}
.lvc:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 0 28px rgba(255,170,60,.4)}
.lvc.evo{border-color:#ff5edb;box-shadow:0 0 26px rgba(255,80,220,.45)}
.lvc.new .tag{color:#7dffb0}
.lvc img{width:72px;height:72px}
.lvc .nm{font-size:20px;color:#ffe0a8;margin:6px 0 2px}
.lvc .tag{font-size:12px;letter-spacing:.2em;color:var(--gold);text-transform:uppercase}
.lvc .ds{font-size:14px;color:#d8ccbb;margin-top:6px;line-height:1.35}
@keyframes pop{0%{opacity:0;transform:translateY(16px) scale(.92)}100%{opacity:1;transform:none}}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px 18px;max-width:760px;width:100%}
table.stats{width:100%;border-collapse:collapse;font-size:15px}
table.stats td,table.stats th{padding:4px 6px;border-bottom:1px solid rgba(255,196,99,.12);text-align:left}
table.stats th{color:var(--gold);font-weight:normal;font-size:13px;letter-spacing:.1em}
table.stats td.n{text-align:right;color:#ffe0a8}
.big{font-size:clamp(34px,6vw,64px);letter-spacing:.1em}
.win{color:#ffe9a8;text-shadow:0 0 24px rgba(255,210,100,.9)}
.lose{color:#ff6b6b;text-shadow:0 0 24px rgba(200,30,40,.9)}
.kv{display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:center;margin:8px 0}
.kv div{font-size:16px;color:var(--dim)} .kv b{color:#ffe0a8;font-weight:normal}
.itemsrow{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin:6px 0}
.itemsrow img{width:38px;height:38px}
#hudbtns{position:fixed;top:calc(24px + var(--st));right:calc(10px + var(--sr));z-index:5;display:none}
#hudbtns.on{display:flex}
#hudbtns .icobtn{width:42px;height:42px;font-size:17px}
#gnavos{position:fixed;right:calc(14px + var(--sr));bottom:calc(14px + var(--sb));z-index:30;width:74px;height:74px;border-radius:50%;
  border:2px solid #ffb35c;background:radial-gradient(circle at 35% 30%,#ffcf7a,#c2561a 55%,#3b1206);color:#fff6e0;cursor:pointer;
  font-family:var(--serif);font-size:11px;line-height:1.1;font-weight:bold;letter-spacing:.02em;text-shadow:0 1px 2px #000;
  box-shadow:0 0 18px rgba(255,140,40,.6),0 4px 14px rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;
  text-align:center;padding:6px;animation:gpulse 3s infinite}
#gnavos.hide{display:none}
@keyframes gpulse{0%,100%{box-shadow:0 0 14px rgba(255,140,40,.5),0 4px 14px rgba(0,0,0,.6)}50%{box-shadow:0 0 28px rgba(255,170,60,.9),0 4px 14px rgba(0,0,0,.6)}}
.chestbox{display:flex;flex-direction:column;align-items:center}
.chestitem{display:flex;align-items:center;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:6px 14px;margin:4px;
  animation:pop .4s both;min-width:260px}
.chestitem img{width:44px;height:44px}
.chestitem .nm{color:#ffe0a8;font-size:17px}.chestitem .ds{color:var(--dim);font-size:13px}
#toast{position:fixed;left:50%;top:30%;transform:translateX(-50%);z-index:40;pointer-events:none;color:#ffe0a8;font-size:20px;
  text-shadow:0 0 12px #000;opacity:0;transition:opacity .4s}
.ver{position:absolute;bottom:calc(8px + var(--sb));left:calc(12px + var(--sl));color:#5d5246;font-size:12px}
.board td:first-child{color:var(--gold)}
.tabs{display:flex;gap:6px;margin-bottom:8px}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:3px}
.seg button{font-family:var(--serif);background:rgba(20,14,26,.85);color:#d8ccbb;border:0;padding:8px 14px;font-size:15px;cursor:pointer;border-right:1px solid var(--line)}
.seg button:last-child{border-right:0}
.seg button.on{background:linear-gradient(180deg,#b5561c,#6e2a0c);color:#fff4dc}
.seg button[disabled]{opacity:.35;pointer-events:none}
.sect{width:100%;max-width:900px;margin:6px auto 2px;color:var(--gold);letter-spacing:.12em;font-size:14px;text-transform:uppercase;text-align:left}
.setrow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 4px;border-bottom:1px solid rgba(255,196,99,.12);width:100%}
.setrow label{color:#e8dcc8;font-size:16px}
input[type=range]{touch-action:auto;-webkit-appearance:none;appearance:none;width:min(260px,45vw);height:6px;border-radius:3px;background:#3a2a20;outline:none}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe0a0,#c2561a);border:1px solid #ffb35c;cursor:pointer}
input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#e08a3a;border:1px solid #ffb35c;cursor:pointer}
.achrow{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:8px 12px;margin:5px 0}
.achrow.done{border-color:#ffcf4a;box-shadow:0 0 14px rgba(255,200,80,.18) inset}
.achrow img{width:44px;height:44px}.achrow.lock img{filter:grayscale(1) brightness(.6)}
.achrow .nm{color:#ffe0a8;font-size:17px}.achrow .ds{color:var(--dim);font-size:13px}
.bar{height:6px;border-radius:3px;background:#2a2028;margin-top:5px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#c2561a,#ffcf4a)}
.card.unseen img{filter:brightness(0) drop-shadow(0 0 4px rgba(255,200,120,.4))}
.skrow{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 8px;width:100%;touch-action:pan-x pan-y}
.skc{min-width:118px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:8px;text-align:center;cursor:pointer;position:relative}
.skc.sel{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold) inset}
.skc.lock{opacity:.55}
.skc img{width:58px;height:58px}.skc .nm{font-size:14px;color:#ffe0a8}.skc .ct{font-size:13px;color:var(--gold)}
#actbtns{position:fixed;right:calc(16px + var(--sr));bottom:calc(16px + var(--sb));z-index:6;display:none;gap:12px;align-items:flex-end}
#actbtns.on{display:flex}
.actbtn{width:72px;height:72px;border-radius:50%;border:2px solid #ffb35c;padding:0;position:relative;cursor:pointer;touch-action:none;
  background:radial-gradient(circle at 35% 30%,#4a2a18,#170c10);box-shadow:0 0 14px rgba(255,140,40,.35);overflow:hidden}
.actbtn img{width:70%;height:70%;position:absolute;left:15%;top:15%;pointer-events:none}
.actbtn .cd{position:absolute;inset:0;border-radius:50%;pointer-events:none;background:conic-gradient(rgba(0,0,0,.72) var(--p,0%),transparent 0)}
.actbtn .k{position:absolute;bottom:2px;left:0;right:0;font-size:10px;color:#ffe0a8;text-align:center;pointer-events:none;text-shadow:0 1px 2px #000}
.actbtn.dash{width:58px;height:58px}
.actbtn.ready{box-shadow:0 0 22px rgba(255,190,80,.85)}
@media (max-height:520px){.actbtn{width:62px;height:62px}.actbtn.dash{width:50px;height:50px}.seg button{padding:6px 10px;font-size:13px}.setrow{padding:5px 4px}}
@media (max-height:520px){
  .title{font-size:clamp(36px,8vh,64px)} .sub{margin:4px 0 10px}
  .btn{padding:7px 16px;margin:3px;min-width:170px;font-size:15px} .btn.main{font-size:18px}
  .grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:7px}
  .card{padding:6px}.card img,.card canvas{width:46px;height:46px}.card .nm{font-size:15px}.card .ds{font-size:11.5px}
  .lvc{padding:9px 8px}.lvc img{width:52px;height:52px}.lvc .nm{font-size:16px}.lvc .ds{font-size:12.5px}
  .hdr{font-size:24px;margin-bottom:2px}.hint{margin:0 0 4px;font-size:12px}
  #gnavos{width:58px;height:58px;font-size:9px}
  table.stats{font-size:13px} table.stats td,table.stats th{padding:2px 5px}
}
  /* χωρίς zoom με τσίμπημα μέσα στο παιχνίδι (κύλιση και πατήματα κανονικά) */
  html,body{touch-action:pan-x pan-y}
