/* Kanasta (wzór Ilyi „KLYO / CANASTA”): to, czego nie ma we wspólnym stole 2D. Wynik par w pigułce u góry, nad imieniem
   kierunek drobnymi literami, „Partner” złotą kursywą, podpisy rzędów z kreskami („— NASZE MELDUNKI —”), pigułki pod
   meldunkami, kursywa pod talią i stosem, przyciski w prawym dolnym rogu bez szklanej karty. */
.mk-tabela { width: 100%; border-collapse: collapse; margin: 6px 0 10px; font-variant-numeric: tabular-nums; }
.mk-tabela th, .mk-tabela td { padding: 7px 10px; text-align: right; border-bottom: 1px solid rgba(201, 171, 112, .25); }
.mk-tabela th:first-child { text-align: left; font-weight: 500; }
.mk-tabela thead th { font-size: 12px; letter-spacing: .06em; text-transform: uppercase; opacity: .7; }
.mk-tabela tbody td b { font-size: 18px; }
.mk-tabela .mk-grajacy th, .mk-tabela .mk-grajacy td { color: #e9cf8f; }
.mk-cel { text-align: center; opacity: .75; margin: 0 0 6px; }

.kn-gra .b2-wynik { flex-direction: column; align-items: center; gap: 6px; top: calc(10px + var(--kit-safe-gora, 0px)); letter-spacing: 0; text-shadow: none; }
.kn-wynik { display: flex; align-items: center; gap: 14px; padding: 9px 26px; border-radius: 999px; background: rgba(12, 16, 14, .72); border: 1px solid rgba(201, 166, 92, .55); box-shadow: 0 8px 24px rgba(0, 0, 0, .45), inset 0 1px 0 rgba(255, 255, 255, .06); font: 600 15px/1 var(--s2-serif); letter-spacing: .08em; text-transform: uppercase; }
.kn-wynik b { font: 600 25px/1 var(--s2-serif); letter-spacing: .02em; margin-left: 8px; font-variant-numeric: lining-nums tabular-nums; }
.kn-wynik i { font-style: normal; color: var(--s2-krem2); }
.kn-my { color: var(--s2-mieta); } .kn-my b { color: #f3ead4; }
.kn-oni { color: #e9cf8f; } .kn-oni b { color: #f08a8a; }
.kn-cel { display: flex; align-items: center; gap: 12px; font: 500 16px/1 var(--s2-serif); color: var(--s2-krem); letter-spacing: .04em; }
.kn-cel::before, .kn-cel::after { content: ""; width: 60px; height: 1px; background: linear-gradient(90deg, transparent, rgba(201, 166, 92, .7), transparent); }
.kn-gra .b2-wynik--pion { top: calc(58px + var(--kit-safe-gora, 0px)); right: auto; left: 50%; transform: translateX(-50%); }
.kn-gra .b2-wynik--pion .kn-wynik { padding: 6px 16px; font-size: 12px; } .kn-gra .b2-wynik--pion .kn-wynik b { font-size: 18px; }
.kn-gra .b2-wynik--pion .kn-cel { font-size: 13px; } .kn-gra .b2-wynik--pion .kn-cel::before, .kn-gra .b2-wynik--pion .kn-cel::after { width: 28px; }

.kn-gra .s2-strona { display: block; width: auto; height: auto; border: 0; border-radius: 0; margin: 0 0 3px; font: 600 11px/1 var(--s2-sans); letter-spacing: .24em; text-transform: uppercase; color: var(--s2-krem2); }
.kn-gra .s2-txt > b { display: block; }
.kn-gra .s2-imie { display: block; font-family: var(--s2-serif); font-size: 26px; font-weight: 600; }
.kn-gra .s2-tag { background: none; padding: 0; margin: 2px 0 0; font: italic 500 17px/1 var(--s2-serif); color: #e2bf72; }
.kn-gra .s2-ja .s2-tag { display: none; }
.kn-gra .s2-ja .s2-imie { font: 600 21px/1 var(--s2-serif); letter-spacing: .12em; text-transform: uppercase; display: flex; align-items: center; gap: 10px; }
.kn-gra .s2-ja .s2-imie::before, .kn-gra .s2-ja .s2-imie::after { content: ""; width: 64px; height: 1px; background: linear-gradient(90deg, transparent, rgba(201, 166, 92, .8)); }
.kn-gra .s2-ja .s2-imie::after { transform: scaleX(-1); }
.kn-gra .s2-ja .s2-imie i { font-style: normal; } .kn-gra .s2-ja .s2-imie em { font-style: italic; text-transform: none; letter-spacing: .01em; color: var(--s2-mieta); }
.kn-gra .s2-ja .s2-status { font: italic 500 19px/1.2 var(--s2-serif); color: var(--s2-krem); }

.s2-etykieta.kn-naglowek { display: flex; align-items: center; gap: 12px; transform: translateX(-50%); font: 600 13px/1 var(--s2-sans); letter-spacing: .26em; color: var(--s2-krem); }
.kn-naglowek::before, .kn-naglowek::after { content: ""; width: min(110px, 12vw); height: 1px; background: linear-gradient(90deg, transparent, rgba(201, 166, 92, .75)); }
.kn-naglowek::after { transform: scaleX(-1); }
.s2-etykieta.kn-pigulka { z-index: 45; padding: 6px 14px; border-radius: 999px; font: 600 12px/1 var(--s2-sans); letter-spacing: .16em; color: #f3ead4; background: linear-gradient(180deg, #7c1626, #5a0e1b); border: 1px solid rgba(201, 166, 92, .8); box-shadow: 0 4px 10px rgba(0, 0, 0, .45); text-shadow: none; }
.kn-pigulka--kanasta { padding: 7px 20px; font-size: 13px; }
.kn-pigulka--trojki { background: linear-gradient(180deg, #2a2a2a, #121212); letter-spacing: .06em; }
.s2-etykieta.kn-podpis { font: italic 500 19px/1 var(--s2-serif); letter-spacing: .02em; text-transform: none; color: var(--s2-krem); }

.kn-gra .b2-panel { top: auto; bottom: calc(70px + var(--kit-safe-dol, 0px)); right: calc(36px + var(--kit-safe-prawo, 0px)); width: min(250px, 19vw); padding: 0; background: none; border: 0; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
.kn-akcje { display: grid; gap: 12px; }
.kn-wybrane { margin: 0 0 4px; text-align: center; font: italic 500 20px/1.1 var(--s2-serif); color: var(--s2-krem); text-shadow: 0 1px 4px rgba(0, 0, 0, .6); }
.kn-wybrane b { font: 700 24px/1 var(--s2-serif); font-style: normal; color: var(--s2-mieta); margin: 0 6px; }
.kn-min { margin: 0; text-align: center; font: 500 13px/1.3 var(--s2-sans); color: var(--s2-krem2); }
.kn-btn { min-height: 52px; padding: 0 18px; border-radius: 14px; font: 600 21px/1 var(--s2-serif); letter-spacing: .01em; cursor: pointer; transition: transform .12s, filter .12s; }
.kn-btn:active:not(:disabled) { transform: scale(.97); }
.kn-btn--glowny { color: #0f2a20; background: linear-gradient(180deg, #a8f0d2, #6fd8ae); border: 1px solid #c6f7e2; box-shadow: 0 0 22px rgba(var(--s2-mieta-rgb), .35), 0 8px 18px rgba(0, 0, 0, .35); }
.kn-btn--szary { color: rgba(239, 230, 210, .55); background: rgba(80, 74, 70, .72); border: 1px solid rgba(239, 230, 210, .14); }
.kn-btn--obrys { color: var(--s2-krem); background: rgba(14, 12, 10, .7); border: 1.5px solid #c9a65c; }
.kn-btn:disabled { cursor: default; filter: saturate(.4); opacity: .78; }
.kn-btn--glowny:disabled { color: rgba(15, 42, 32, .6); }
.kn-rada { justify-self: center; display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border: 0; background: none; color: var(--s2-krem2); font: 500 13px/1 var(--s2-sans); cursor: pointer; }
.kn-rada svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; }

.kn-gra .b2-arkusz { padding: 10px; background: rgba(20, 8, 12, .82); }
.kn-arkusz .kn-wybrane { font-size: 16px; margin-bottom: 8px; } .kn-arkusz .kn-wybrane b { font-size: 19px; }
.kn-arkusz .kn-min { margin-bottom: 8px; }
.kn-rzad { display: flex; gap: 8px; } .kn-rzad .kn-btn { flex: 1; min-height: 46px; padding: 0 6px; font-size: 15px; line-height: 1.05; border-radius: 12px; }
.kn-rzad .kn-btn--glowny { flex: 1.35; }
.s2--pion .s2-etykieta.kn-naglowek { font-size: 10px; letter-spacing: .2em; }
.s2--pion .s2-etykieta.kn-pigulka { padding: 4px 8px; font-size: 9px; letter-spacing: .1em; }
.s2--pion .s2-etykieta.kn-podpis { font-size: 14px; }
@media (max-width: 1000px) and (min-aspect-ratio: 21/20) { .kn-btn { min-height: 42px; font-size: 17px; } .kn-gra .b2-panel { bottom: 24px; right: 18px; } .kn-wybrane { font-size: 16px; } }
.s2--pion .s2-etykieta.kn-podpis { font-size: 13px; }
@media (max-aspect-ratio: 20/21) {
  .kn-gra .s2-ja .s2-imie { font-size: 16px; } .kn-gra .s2-ja .s2-imie::before, .kn-gra .s2-ja .s2-imie::after { width: 40px; }
  .kn-gra .s2-ja .s2-status { font-size: 15px; } .kn-gra .kn-cel::before, .kn-gra .kn-cel::after { display: none; } .kn-gra .s2-imie { font-size: 21px; } .kn-gra .s2-tag { font-size: 14px; }
}
/* telefon poziomo (niski ekran): bez „Cel”, kierunków, „Partner” i „Ty”; przyciski małe w prawym dolnym rogu */
@media (max-height: 520px) and (min-aspect-ratio: 21/20) {
  .kn-gra .kn-cel, .kn-gra .s2-strona, .kn-gra .s2-tag, .kn-gra .s2-ja { display: none !important; }
  .kn-gra .b2-panel { width: 176px; bottom: calc(6px + var(--kit-safe-dol, 0px)); right: calc(8px + var(--kit-safe-prawo, 0px)); }
  .kn-akcje { gap: 6px; } .kn-btn { min-height: 34px; font-size: 15px; border-radius: 10px; } .kn-wybrane { font-size: 14px; margin: 0; } .kn-wybrane b { font-size: 16px; } .kn-min { font-size: 11px; } .kn-rada { display: none; }
  .kn-gra .s2-imie { font-size: 17px; } .kn-wynik { padding: 5px 14px; } .kn-wynik b { font-size: 18px; }
}
/* telefon pionowo (Ilya 6.11: „nieczytelne, starszy człowiek nic nie zobaczy”): bez kierunków, „Ty” w dolnym panelu,
   większe pigułki i podpisy, ręka jednym rzędem dużych kart ze znakiem koloru w rogu */
.s2.kn-pion .s2-ja, .s2.kn-pion .s2-strona { display: none !important; }
.kn-tura { margin: 0 0 6px; text-align: center; font: italic 500 17px/1.2 var(--s2-serif); color: var(--s2-krem); } .kn-tura b { font-style: normal; color: var(--s2-mieta); font-weight: 700; }
.s2--pion .s2-etykieta.kn-pigulka { padding: 4px 9px; font-size: 12px; letter-spacing: .06em; }
.s2--pion .s2-etykieta.kn-naglowek { font-size: 12px; letter-spacing: .16em; }
.s2--pion .s2-etykieta.kn-podpis { font-size: 15px; }
.kn-arkusz .kn-wybrane { font-size: 18px; } .kn-arkusz .kn-wybrane b { font-size: 22px; }
.kn-rzad .kn-btn { font-size: 17px; min-height: 50px; }
