/* KOZMOSLAND — tek stil dosyası. Fontlar OFL lisanslı ve yereldir (assets/fonts). */
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:600;font-display:swap;src:url(../assets/fonts/baloo-2-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:600;font-display:swap;src:url(../assets/fonts/baloo-2-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/baloo-2-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/baloo-2-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:800;font-display:swap;src:url(../assets/fonts/baloo-2-latin-ext-800-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:800;font-display:swap;src:url(../assets/fonts/baloo-2-latin-800-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Nunito";font-style:normal;font-weight:600;font-display:swap;src:url(../assets/fonts/nunito-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Nunito";font-style:normal;font-weight:600;font-display:swap;src:url(../assets/fonts/nunito-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Nunito";font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/nunito-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Nunito";font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/nunito-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Nunito";font-style:normal;font-weight:800;font-display:swap;src:url(../assets/fonts/nunito-latin-ext-800-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Nunito";font-style:normal;font-weight:800;font-display:swap;src:url(../assets/fonts/nunito-latin-800-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Nunito";font-style:normal;font-weight:900;font-display:swap;src:url(../assets/fonts/nunito-latin-ext-900-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Nunito";font-style:normal;font-weight:900;font-display:swap;src:url(../assets/fonts/nunito-latin-900-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* v3.5: Kiril (Nunito) ve Arapça (Baloo Bhaijaan 2) alt kümeleri — yalnız o harfler gerekince indirilir */
@font-face{font-family:"Nunito";font-style:normal;font-weight:600;font-display:swap;src:url(../assets/fonts/nunito-cyrillic-600-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:600;font-display:swap;src:url(../assets/fonts/nunito-cyrillic-600-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Nunito";font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/nunito-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/nunito-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Nunito";font-style:normal;font-weight:800;font-display:swap;src:url(../assets/fonts/nunito-cyrillic-800-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:800;font-display:swap;src:url(../assets/fonts/nunito-cyrillic-800-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Nunito";font-style:normal;font-weight:900;font-display:swap;src:url(../assets/fonts/nunito-cyrillic-900-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:900;font-display:swap;src:url(../assets/fonts/nunito-cyrillic-900-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Nunito";font-style:normal;font-weight:600;font-display:swap;src:url(../assets/fonts/baloo-bhaijaan-2-arabic-600-normal.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:600;font-display:swap;src:url(../assets/fonts/baloo-bhaijaan-2-arabic-600-normal.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:"Nunito";font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/baloo-bhaijaan-2-arabic-700-normal.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/baloo-bhaijaan-2-arabic-700-normal.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:"Nunito";font-style:normal;font-weight:800;font-display:swap;src:url(../assets/fonts/baloo-bhaijaan-2-arabic-800-normal.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:"Baloo 2";font-style:normal;font-weight:800;font-display:swap;src:url(../assets/fonts/baloo-bhaijaan-2-arabic-800-normal.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}

:root{
  color-scheme:dark;
  --night:#0A1630;--night-2:#10234A;--panel:#142B55;--panel-2:#1A3668;--edge:#2A4A86;
  --gold:#F5C24A;--gold-hi:#FFE38A;--gold-deep:#B9851A;--flame:#FF8A1F;
  --ink:#EEF3FF;--soft:#A9B8DA;--dim:#7285B0;--ok:#3BD98A;--bad:#FF6B7F;--sky:#6FB7FF;
  --lcd:#0C2B2A;--lcd-ink:#B9FFE2;
  --display:"Baloo 2","Nunito",system-ui,sans-serif;--body:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r-lg:24px;--r-md:16px;--r-sm:12px;
  --shadow:0 18px 40px rgba(0,0,0,.45);
  --safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{height:100%;min-height:100dvh;margin:0;overflow:hidden}
body{background:radial-gradient(1200px 800px at 50% 20%,#1D3F82 0%,var(--night) 55%,#050B18 100%) fixed,var(--night);color:var(--ink);font-family:var(--body);font-size:15px;user-select:none;-webkit-user-select:none;overscroll-behavior:none}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold-hi);outline-offset:3px}
input{font:inherit;color:inherit}
[hidden]{display:none!important}
.num{font-variant-numeric:tabular-nums}

/* ---------------- buttons ---------------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:18px;font:800 18px/1 var(--display);letter-spacing:.01em;transition:transform .08s ease,filter .15s ease,box-shadow .08s ease;white-space:nowrap}
.btn:active{transform:translateY(3px)}
.btn svg{width:24px;height:24px;flex:none}
.btn:disabled{filter:grayscale(.7) brightness(.7);cursor:not-allowed;transform:none}
.btn-gold{color:#2A1A00;background:linear-gradient(180deg,var(--gold-hi),var(--gold) 55%,#E0A92C);box-shadow:0 6px 0 #8A5F0E,0 12px 22px rgba(245,194,74,.25),inset 0 2px 0 rgba(255,255,255,.55)}
.btn-gold:active{box-shadow:0 3px 0 #8A5F0E,0 6px 12px rgba(245,194,74,.2),inset 0 2px 0 rgba(255,255,255,.55)}
.btn-dark{color:var(--ink);background:linear-gradient(180deg,#22407C,#18305E);box-shadow:0 6px 0 #0B1834,inset 0 0 0 1.5px var(--edge)}
.btn-dark:active{box-shadow:0 3px 0 #0B1834,inset 0 0 0 1.5px var(--edge)}
.btn-ok{color:#04210F;background:linear-gradient(180deg,#8FF5BF,var(--ok));box-shadow:0 6px 0 #16804B}
.btn-danger{color:#2A060B;background:linear-gradient(180deg,#FFA3B0,var(--bad));box-shadow:0 6px 0 #9A2F40}
.btn-sm{min-height:40px;padding:0 14px;border-radius:13px;font-size:15px}
.icon-btn{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:rgba(10,22,48,.72);box-shadow:inset 0 0 0 1.5px var(--edge),0 8px 18px rgba(0,0,0,.3);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.icon-btn svg{width:22px;height:22px}
.icon-btn:active{transform:translateY(2px)}

/* ---------------- boot ---------------- */
#boot{position:fixed;inset:0;display:grid;place-items:center;z-index:100;background:var(--night);transition:opacity .5s}
#boot img{width:120px;animation:bob 1.8s ease-in-out infinite}
#boot.hide{opacity:0;pointer-events:none}
@keyframes bob{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-10px) rotate(3deg)}}

/* ---------------- menu ---------------- */
.menu{position:fixed;inset:0;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:24px;padding:calc(24px + var(--safe-t)) clamp(16px,5vw,72px) calc(24px + var(--safe-b));overflow:auto}
.menu-stars{position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(2px 2px at 12% 18%,#fff8 50%,transparent 51%),radial-gradient(1.5px 1.5px at 28% 72%,#fff6 50%,transparent 51%),radial-gradient(2px 2px at 64% 22%,#ffe9a888 50%,transparent 51%),radial-gradient(1.5px 1.5px at 82% 64%,#fff7 50%,transparent 51%),radial-gradient(2px 2px at 46% 88%,#fff5 50%,transparent 51%),radial-gradient(1.5px 1.5px at 92% 12%,#fff8 50%,transparent 51%),radial-gradient(1.5px 1.5px at 6% 52%,#ffe9a877 50%,transparent 51%);animation:twinkle 6s ease-in-out infinite alternate}
@keyframes twinkle{to{opacity:.45}}
.hero{display:grid;justify-items:center;text-align:center;gap:10px;position:relative}
.hero-logo{width:clamp(150px,24vw,300px);filter:drop-shadow(0 18px 40px rgba(255,138,31,.45));animation:float 5s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-14px) rotate(2deg)}}
.wordmark{margin:0;font:800 clamp(44px,7.4vw,96px)/.9 var(--display);letter-spacing:.02em;background:linear-gradient(180deg,#FFF1C2 0%,var(--gold) 55%,#C98A17 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 0 #3A2300) drop-shadow(0 12px 24px rgba(0,0,0,.4))}
.tagline{margin:0;font:800 clamp(14px,1.6vw,18px)/1.3 var(--body);color:var(--soft);letter-spacing:.22em;text-transform:uppercase}
.menu-panel{width:min(100%,460px);justify-self:center;display:grid;gap:14px;padding:26px;border-radius:28px;background:linear-gradient(180deg,rgba(26,54,104,.88),rgba(14,31,64,.92));box-shadow:var(--shadow),inset 0 0 0 1.5px rgba(245,194,74,.35);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.menu-panel h2{margin:0 0 4px;font:800 24px/1.1 var(--display);color:var(--gold-hi)}
.menu-panel .btn{width:100%}
.menu-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.soon{font:800 11px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;padding:5px 8px;border-radius:999px;background:rgba(111,183,255,.18);color:var(--sky)}
.field{display:grid;gap:7px}
.field>span{font:800 13px/1 var(--body);color:var(--soft);letter-spacing:.06em;text-transform:uppercase}
.text-in{min-height:50px;padding:0 16px;border-radius:14px;border:0;background:#0B1834;box-shadow:inset 0 0 0 1.5px var(--edge);font:800 18px/1 var(--display)}
.swatches{display:flex;flex-wrap:wrap;gap:10px}
.swatch{width:46px;height:46px;border-radius:50%;background:var(--c);box-shadow:inset 0 -4px 0 rgba(0,0,0,.22),0 0 0 3px transparent;position:relative;transition:transform .1s}
.swatch[aria-pressed="true"]{box-shadow:inset 0 -4px 0 rgba(0,0,0,.22),0 0 0 3px var(--night),0 0 0 6px var(--gold)}
.swatch::after{content:"";position:absolute;left:12px;top:15px;width:7px;height:9px;border-radius:50%;background:#fff;box-shadow:14px 0 0 #fff}
.stepper{display:flex;align-items:center;gap:10px}
.stepper output{min-width:120px;text-align:center;font:800 20px/1 var(--display)}
.stepper button{width:46px;height:46px;border-radius:14px;background:#0B1834;box-shadow:inset 0 0 0 1.5px var(--edge);font:800 24px/1 var(--display)}
.menu-foot{font-size:12px;color:var(--dim);text-align:center}

/* ---------------- game ---------------- */
.game{position:fixed;inset:0}
#stage{position:absolute;inset:0}
.stage-canvas{display:block;width:100%!important;height:100%!important;touch-action:manipulation}
.topbar{position:absolute;top:calc(12px + var(--safe-t));left:14px;right:14px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;pointer-events:none;z-index:5}
.topbar>*{pointer-events:auto}
.brand{display:flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;border-radius:18px;background:rgba(10,22,48,.62);box-shadow:inset 0 0 0 1px rgba(245,194,74,.25);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.brand img{width:40px;height:40px}
.brand b{font:800 20px/1 var(--display);letter-spacing:.03em;color:var(--gold-hi)}
.brand small{display:block;font:800 11px/1 var(--body);color:var(--soft);letter-spacing:.1em;margin-top:3px}
.top-actions{display:flex;gap:8px}
.players{position:absolute;inset:0;pointer-events:none;z-index:4}
.pcard{position:absolute;width:min(250px,22vw);min-width:196px;pointer-events:auto;display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:center;padding:12px 14px;border-radius:20px;background:linear-gradient(180deg,rgba(28,56,108,.9),rgba(15,33,68,.92));box-shadow:0 12px 26px rgba(0,0,0,.35),inset 0 0 0 2px color-mix(in srgb,var(--pc) 55%,transparent);transition:transform .25s ease,box-shadow .25s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.pcard.turn{transform:scale(1.04);box-shadow:0 0 0 3px var(--pc),0 0 34px color-mix(in srgb,var(--pc) 55%,transparent),0 14px 30px rgba(0,0,0,.4)}
.pcard.out{opacity:.45;filter:grayscale(1)}
.pcard .av{grid-row:1/3;width:50px;height:50px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffffff88 0,transparent 42%),var(--pc);position:relative;box-shadow:inset 0 -5px 0 rgba(0,0,0,.2)}
.pcard .av::before{content:"";position:absolute;left:15px;top:17px;width:7px;height:10px;border-radius:50%;background:#fff;box-shadow:13px 0 0 #fff}
.pcard .av::after{content:"";position:absolute;left:17px;top:20px;width:4px;height:5px;border-radius:50%;background:#15182A;box-shadow:13px 0 0 #15182A}
.pcard .pname{display:flex;align-items:center;gap:8px;font:800 15px/1.1 var(--display);color:var(--soft);min-width:0}
.pcard .pname b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pcard .badge{font:900 10px/1 var(--body);letter-spacing:.08em;padding:4px 7px;border-radius:999px;background:var(--pc);color:#1b1200}
.pcard .bal{font:800 clamp(19px,1.7vw,24px)/1.05 var(--display);font-variant-numeric:tabular-nums;white-space:nowrap;transition:color .3s}
.pcard .bal.down{color:var(--bad)}.pcard .bal.up{color:var(--ok)}
.pcard .meta{grid-column:1/-1;display:flex;gap:10px;font:800 12px/1 var(--body);color:var(--soft)}
.pcard .meta i{font-style:normal;color:var(--gold-hi)}
.pcard .float{position:absolute;right:12px;top:-6px;font:800 17px/1 var(--display);pointer-events:none;white-space:nowrap;font-variant-numeric:tabular-nums;text-shadow:0 2px 6px rgba(0,0,0,.5)}
.float.down{color:var(--bad)}.float.up{color:var(--ok)}
.pc-0{left:16px;top:88px}.pc-1{right:16px;top:88px}.pc-2{left:16px;bottom:calc(20px + var(--safe-b))}.pc-3{right:16px;bottom:calc(20px + var(--safe-b))}
.pc-4{left:16px;top:50%;transform:translateY(-50%)}.pc-5{right:16px;top:50%;transform:translateY(-50%)}
.pc-4.turn{transform:translateY(-50%) scale(1.04)}.pc-5.turn{transform:translateY(-50%) scale(1.04)}

.dock{position:absolute;left:50%;bottom:calc(18px + var(--safe-b));transform:translateX(-50%);z-index:6;display:grid;justify-items:center;gap:10px;width:min(560px,calc(100% - 32px))}
.feed{display:grid;gap:4px;justify-items:center;min-height:22px}
.feed div{font:800 13px/1.2 var(--body);padding:6px 12px;border-radius:999px;background:rgba(6,14,30,.72);color:var(--ink);max-width:100%;text-align:center;animation:feedIn .3s ease-out}
.feed div:not(:first-child){opacity:.55;font-size:12px}
@keyframes feedIn{from{transform:translateY(8px);opacity:0}}
.dock-main{display:flex;align-items:center;gap:10px;padding:10px;border-radius:24px;background:rgba(10,22,48,.78);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.3),0 16px 34px rgba(0,0,0,.45);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.dock-main .who{display:flex;align-items:center;gap:8px;padding:0 8px 0 4px;font:800 14px/1.1 var(--display);color:var(--soft);white-space:nowrap}
.dock-main .who i{width:14px;height:14px;border-radius:50%;background:var(--pc);box-shadow:0 0 12px var(--pc)}
.dock-main .btn-roll{min-width:200px;min-height:60px;font-size:22px}
.dock-main .btn-roll svg{width:26px;height:26px}
.hint{font:800 12px/1 var(--body);color:var(--dim)}

/* ---------------- modal + cards ---------------- */
.overlay{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:calc(16px + var(--safe-t)) 16px calc(16px + var(--safe-b));background:rgba(4,10,24,.62);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fadeIn .2s ease-out;overflow:auto}
@keyframes fadeIn{from{opacity:0}}
.card-wrap{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:center;perspective:1400px}
.kcard{--gc:#E8413C;position:relative;width:min(340px,86vw);border-radius:26px;padding:12px;background:linear-gradient(180deg,#FFFDF7,#F7EEDB);color:#1E2740;box-shadow:0 30px 60px rgba(0,0,0,.55),0 0 0 3px #E8B64A,0 0 0 7px rgba(10,22,48,.9),0 0 38px rgba(245,194,74,.35);animation:cardIn .42s cubic-bezier(.2,1.2,.3,1)}
@keyframes cardIn{from{transform:translateY(40px) rotateX(18deg) scale(.9);opacity:0}}
.kcard .head{border-radius:16px;padding:12px 14px 10px;background:linear-gradient(180deg,color-mix(in srgb,var(--gc) 80%,#fff),var(--gc));color:#fff;text-align:center;position:relative;overflow:hidden}
.kcard .head small{display:block;font:900 11px/1 var(--body);letter-spacing:.18em;opacity:.9}
.kcard .head h3{margin:4px 0 0;font:800 30px/1 var(--display);text-shadow:0 2px 0 rgba(0,0,0,.18);text-wrap:balance}
.kcard .flagbar{position:absolute;left:0;right:0;bottom:0;height:5px;display:flex}
.kcard .flagbar i{flex:1}
.kcard .art{margin-top:10px;border-radius:14px;overflow:hidden;aspect-ratio:16/9;background:#0E2248;box-shadow:inset 0 0 0 2px rgba(0,0,0,.08)}
.kcard .art svg{display:block;width:100%;height:100%}
.kcard .tag{margin:8px 0 6px;text-align:center;font:800 13px/1.2 var(--body);color:#5A6480}
.kcard table{width:100%;border-collapse:collapse;font:700 14px/1 var(--body)}
.kcard td{padding:6px 8px;border-bottom:1px dashed rgba(30,39,64,.14)}
.kcard td:last-child{text-align:right;font:800 15px/1 var(--display);font-variant-numeric:tabular-nums}
.kcard tr.on td{background:color-mix(in srgb,var(--gc) 16%,transparent);color:#101828}
.kcard tr.on td:first-child{border-radius:8px 0 0 8px}.kcard tr.on td:last-child{border-radius:0 8px 8px 0}
.kcard .price{display:flex;justify-content:space-between;align-items:center;margin:4px 0 8px;padding:10px 12px;border-radius:12px;background:#1E2740;color:#fff}
.kcard .price span{font:800 13px/1 var(--body);letter-spacing:.06em;opacity:.8}
.kcard .price b{font:800 24px/1 var(--display);color:var(--gold-hi)}
.kcard .foot{display:flex;justify-content:space-between;gap:8px;margin-top:8px;font:800 12px/1.2 var(--body);color:#5A6480}
.kcard .owner{margin-top:8px;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;border-radius:12px;background:color-mix(in srgb,var(--oc,#8FA0C4) 20%,#fff);font:800 14px/1 var(--display)}
.kcard .owner i{width:12px;height:12px;border-radius:50%;background:var(--oc)}
.kcard .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.kcard .actions .btn{min-height:50px;font-size:17px;padding:0 10px}
.kcard .actions .wide{grid-column:1/-1}
.kcard .x{position:absolute;right:-10px;top:-10px;width:40px;height:40px;border-radius:50%;background:#0B1834;color:var(--gold-hi);box-shadow:0 0 0 2.5px var(--gold),0 6px 14px rgba(0,0,0,.4);font:800 20px/1 var(--display);z-index:2}
.kcard .note{margin-top:8px;font:700 12px/1.35 var(--body);color:#6C7690;text-align:center}
/* chance flip */
.flip{width:min(320px,84vw);aspect-ratio:5/7;position:relative;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.3,1.3,.4,1)}
.flip.open{transform:rotateY(180deg)}
.flip>div{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:26px}
.card-back{display:grid;place-items:center;background:radial-gradient(circle at 50% 42%,#27509C,#12295A 60%,#0A1733);box-shadow:0 30px 60px rgba(0,0,0,.55),0 0 0 3px #E8B64A,0 0 0 7px rgba(10,22,48,.9);overflow:hidden}
.card-back::before{content:"";position:absolute;inset:14px;border-radius:18px;border:2px solid rgba(245,194,74,.45);background:repeating-linear-gradient(45deg,rgba(245,194,74,.07) 0 10px,transparent 10px 20px)}
.card-back img{width:58%;opacity:.28;filter:saturate(.8)}
.card-back b{position:absolute;bottom:26px;font:800 18px/1 var(--display);letter-spacing:.3em;color:rgba(255,227,138,.55)}
.chance-front{transform:rotateY(180deg);display:grid;grid-template-rows:auto 1fr auto;gap:10px;padding:18px;background:linear-gradient(180deg,#FFFDF7,#F4ECFF);color:#1E2740;box-shadow:0 30px 60px rgba(0,0,0,.55),0 0 0 3px #E8B64A,0 0 0 7px rgba(10,22,48,.9),0 0 40px rgba(167,123,255,.4);text-align:center}
.chance-front .ch-head{border-radius:16px;padding:10px;background:linear-gradient(180deg,#9A6BFF,#6A3BD6);color:#fff;font:800 26px/1 var(--display);letter-spacing:.12em}
.chance-front .ch-body{display:grid;align-content:center;justify-items:center;gap:10px}
.chance-front img{width:46%;filter:drop-shadow(0 10px 18px rgba(255,138,31,.45))}
.chance-front h4{margin:0;font:800 26px/1.05 var(--display);text-wrap:balance}
.chance-front p{margin:0;font:700 15px/1.4 var(--body);color:#4A536B;text-wrap:balance}

/* ---------------- KozmoPay POS ---------------- */
.pos-layer{position:fixed;inset:0;z-index:60;display:grid;place-items:end center;padding-bottom:calc(20px + var(--safe-b));pointer-events:none;background:radial-gradient(640px 440px at 50% 100%,rgba(4,10,24,.6),transparent 70%)}
.pos-rig{position:relative;width:290px;height:470px;pointer-events:auto}
.kkart{position:absolute;left:50%;top:0;width:224px;aspect-ratio:1.586;border-radius:15px;padding:14px 16px;color:#fff;z-index:3;display:grid;grid-template-rows:auto 1fr auto;
  background:radial-gradient(130px 90px at 85% 15%,rgba(255,255,255,.38),transparent 70%),linear-gradient(135deg,var(--cc) 0%,color-mix(in srgb,var(--cc) 50%,#170D2E) 100%);
  box-shadow:0 18px 30px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.28);transform:translate(-50%,-230%);opacity:0;pointer-events:none}
.kkart .row{display:flex;justify-content:space-between;align-items:center}
.kkart .kk{font:800 13px/1 var(--display);letter-spacing:.14em}
.kkart img{width:28px;height:28px}
.kkart .chipc{width:36px;height:27px;border-radius:6px;background:linear-gradient(135deg,#FFE7A1,#D6A437);margin-top:8px;box-shadow:inset 0 0 0 1px rgba(90,60,0,.35)}
.kkart .numline{font:800 14px/1 var(--body);letter-spacing:.14em}
.kkart .holder{font:800 12px/1 var(--display);letter-spacing:.1em;text-transform:uppercase}
.terminal{position:absolute;left:50%;bottom:0;transform:translateX(-50%);z-index:2;width:276px;border-radius:34px 34px 26px 26px;padding:14px 16px 18px;background:linear-gradient(180deg,#2A3656,#161E33);box-shadow:0 26px 48px rgba(0,0,0,.6),inset 0 2px 0 rgba(255,255,255,.12),inset 0 0 0 2px rgba(245,194,74,.45)}
.reader{height:62px;margin-bottom:12px;border-radius:18px;display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(180deg,#1C2640,#121A2E);box-shadow:inset 0 0 0 1.5px rgba(111,183,255,.25);color:#8FC3FF;font:800 13px/1 var(--body);letter-spacing:.04em}
.reader .nfc{width:28px;height:28px;display:grid;place-items:center}.reader .nfc svg{width:28px;height:28px}
.reader.reading{box-shadow:inset 0 0 0 2px #8FC3FF,0 0 28px rgba(111,183,255,.55)}
.reader.reading .nfc{animation:nfc .5s ease-in-out infinite alternate}
@keyframes nfc{to{transform:scale(1.25);color:#fff}}
.screen{position:relative;height:150px;border-radius:16px;background:var(--lcd);box-shadow:inset 0 0 0 3px #081B1A,inset 0 8px 18px rgba(0,0,0,.45);padding:12px 14px;display:grid;align-content:space-between;overflow:hidden;color:var(--lcd-ink);font-family:var(--body);transition:background .25s}
.screen .s-top{display:flex;justify-content:space-between;gap:8px;font:900 11px/1.15 var(--body);letter-spacing:.08em;opacity:.85}
.screen .s-top span:last-child{text-align:right}
.screen .s-amt{font:800 36px/1 var(--display);font-variant-numeric:tabular-nums}
.screen .s-msg{font:900 18px/1.1 var(--display);letter-spacing:.06em;min-height:20px}
.screen .bar{height:6px;border-radius:6px;background:rgba(185,255,226,.18);overflow:hidden}
.screen .bar i{display:block;height:100%;width:0;background:var(--lcd-ink)}
.screen.ok{background:#0D4A2B}.screen.ok .s-msg{color:#7DFFB9;font-size:24px}
.screen.bad{background:#5A0F1C;color:#FFD3DA}.screen.bad .s-msg{color:#FF8FA0;font-size:21px}
.screen.busy .s-msg{animation:blink .6s steps(2) infinite}
@keyframes blink{50%{opacity:.35}}
.brandline{display:flex;justify-content:space-between;align-items:center;margin:12px 2px 10px;font:800 15px/1 var(--display);color:var(--gold-hi)}
.brandline img{width:22px;height:22px}
.keys{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.keys span{height:24px;border-radius:8px;background:linear-gradient(180deg,#34405E,#252F49);box-shadow:inset 0 -2px 0 rgba(0,0,0,.35);display:grid;place-items:center;font:800 12px/1 var(--body);color:#C6D2EE}
.keys .g{background:linear-gradient(180deg,#3CCB7F,#249C5C);color:#062414}.keys .r{background:linear-gradient(180deg,#F2677A,#C13A4C);color:#2A060B}
.pos-skip{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:10px;min-height:34px;font:800 13px/1 var(--display);letter-spacing:.02em;color:#1b1200;border-radius:12px;background:linear-gradient(180deg,var(--gold-hi,#FFE38A),var(--gold,#F5C24A));box-shadow:inset 0 -3px 0 rgba(0,0,0,.18)}
.pos-skip:active{transform:translateY(1px)}
.mini-pay{position:absolute;z-index:8;display:flex;align-items:center;gap:8px;padding:7px 11px;border-radius:13px;background:#0C1C3C;border:1.5px solid var(--gold);font:800 13px/1 var(--display);white-space:nowrap;box-shadow:0 10px 20px rgba(0,0,0,.45);pointer-events:none}
.mini-pay.bad{border-color:var(--bad);background:#3A0B16;color:#FFD3DA}.mini-pay.bad .mcheck{color:var(--bad)}
.mini-pay .mcard{width:28px;height:18px;border-radius:4px;background:linear-gradient(135deg,var(--cc),#241640)}
.mini-pay .mcheck{color:var(--ok);font-size:15px}
.trail{position:fixed;z-index:70;width:30px;height:19px;border-radius:5px;pointer-events:none}

/* ---------------- sheets (settings, assets, help) ---------------- */
.sheet{width:min(560px,100%);max-height:calc(100dvh - 32px);overflow:auto;border-radius:26px;padding:22px;background:linear-gradient(180deg,#1A3668,#10234A);box-shadow:var(--shadow),inset 0 0 0 1.5px rgba(245,194,74,.35);animation:cardIn .35s cubic-bezier(.2,1.2,.3,1)}
.sheet-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.sheet-head h2{margin:0;font:800 26px/1 var(--display);color:var(--gold-hi)}
.set-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.set-row b{font:800 16px/1.2 var(--display)}.set-row small{display:block;color:var(--soft);font-weight:700;margin-top:2px}
input[type=range]{width:min(220px,40vw);accent-color:var(--gold)}
.seg{display:flex;background:#0B1834;border-radius:999px;padding:4px;box-shadow:inset 0 0 0 1.5px var(--edge)}
.seg button{padding:8px 14px;border-radius:999px;font:800 14px/1 var(--display);color:var(--soft)}
.seg button[aria-pressed="true"]{background:var(--gold);color:#2A1A00}
.seg button:disabled{opacity:.4}
.asset-list{display:grid;gap:8px}
.asset-item{display:grid;grid-template-columns:10px 1fr auto;gap:12px;align-items:center;padding:10px 12px;border-radius:14px;background:rgba(0,0,0,.2);text-align:left}
.asset-item i{width:10px;height:36px;border-radius:5px;background:var(--gc)}
.asset-item b{font:800 16px/1.1 var(--display)}.asset-item small{display:block;color:var(--soft);font-weight:700}
.asset-item em{font-style:normal;font:800 15px/1 var(--display);color:var(--gold-hi)}
.help p,.help li{color:var(--soft);line-height:1.5}.help b{color:var(--ink)}.help ul{padding-left:18px;margin:6px 0}
.empty{color:var(--soft);text-align:center;padding:20px}
.winner{text-align:center;display:grid;gap:12px;justify-items:center}
.winner img{width:130px;animation:float 3s ease-in-out infinite}
.winner h2{margin:0;font:800 40px/1 var(--display);color:var(--gold-hi)}
.confetti{position:fixed;inset:0;pointer-events:none;z-index:80}
.toast{position:fixed;left:50%;top:calc(80px + var(--safe-t));transform:translateX(-50%);z-index:90;padding:10px 16px;border-radius:14px;background:#0C1C3C;border:1.5px solid var(--gold);font:800 14px/1.2 var(--display);box-shadow:var(--shadow);animation:feedIn .25s ease-out;max-width:calc(100% - 32px);text-align:center}

/* ---------------- responsive ---------------- */
@media (max-width:1100px){.pcard{min-width:176px;padding:10px 12px}.pcard .av{width:42px;height:42px}.pcard .av::before{left:12px;top:14px}.pcard .av::after{left:14px;top:17px}}
@media (max-width:860px),(max-aspect-ratio:9/10){
  .menu{grid-template-columns:1fr;align-content:start;justify-items:center}
  .hero-logo{width:clamp(110px,32vw,180px)}
  .brand b{font-size:17px}.brand small{display:none}.brand img{width:32px;height:32px}
  .players{position:absolute;top:calc(64px + var(--safe-t));left:0;right:0;bottom:auto;display:flex;gap:8px;overflow-x:auto;padding:4px 12px 8px;scrollbar-width:none}
  .icon-btn{width:40px;height:40px;border-radius:13px}.icon-btn svg{width:19px;height:19px}.top-actions{gap:6px}.topbar{left:10px;right:10px}
  .players::-webkit-scrollbar{display:none}
  .pcard{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;flex:0 0 auto;min-width:150px;width:auto;padding:8px 10px;gap:2px 8px;border-radius:16px}
  .pcard.turn{box-shadow:0 0 0 2.5px var(--pc),0 0 18px color-mix(in srgb,var(--pc) 50%,transparent)}
  .pcard .av{width:34px;height:34px}.pcard .av::before{left:9px;top:11px;width:5px;height:8px;box-shadow:10px 0 0 #fff}.pcard .av::after{left:10px;top:13px;width:3px;height:4px;box-shadow:10px 0 0 #15182A}
  .pcard .bal{font-size:17px}.pcard .pname{font-size:13px}.pcard .meta{display:none}
  .dock-main .btn-roll{min-width:170px;min-height:56px;font-size:20px}
  .dock-main .who span{display:none}
  .pos-rig{scale:.8;transform-origin:bottom center}
}
@media (max-height:560px) and (orientation:landscape){.pcard .meta{display:none}.pcard{padding:8px 10px}.pc-2,.pc-3{bottom:10px}.pc-0,.pc-1{top:70px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* v3.1 kart ekleri */
.kcard .setx{font:800 11px var(--body);color:#1FAE5B}
.kcard .note.bad{color:#C13A4C;font-weight:800}
.kcard .badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:-2px 0 8px}
.kcard .badge-s,.kcard .badge-d{font:800 12px/1 var(--body);padding:6px 9px;border-radius:999px}
.kcard .badge-s{background:#E3F8EC;color:#12703C}.kcard .badge-d{background:#1E2740;color:#FFD24A}
.kcard.offer{width:min(360px,88vw)}
.kcard.offer .head h3{font-size:28px}
/* hedef seçimi bandı */
.pick-banner{position:fixed;left:50%;top:calc(76px + var(--safe-t));transform:translateX(-50%);z-index:30;display:flex;align-items:center;gap:12px;padding:10px 12px 10px 18px;border-radius:18px;background:rgba(10,22,48,.9);box-shadow:inset 0 0 0 1.5px var(--gold),0 14px 30px rgba(0,0,0,.45);font:800 16px/1.2 var(--display);max-width:calc(100% - 24px);animation:feedIn .25s ease-out}
.pick-banner .btn{min-height:40px}
/* eğitim koçu */
.coach{position:fixed;left:50%;bottom:calc(112px + var(--safe-b));transform:translateX(-50%);z-index:55;width:min(560px,calc(100% - 24px));display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;padding:16px 18px;border-radius:22px;background:linear-gradient(180deg,#FFFDF7,#F4ECDC);color:#1E2740;box-shadow:0 22px 44px rgba(0,0,0,.55),0 0 0 3px var(--gold);animation:coachIn .35s cubic-bezier(.2,1.2,.3,1)}
@keyframes coachIn{from{opacity:0;scale:.92}}
.coach img{width:54px;height:54px}
.coach .c-step{font:900 11px/1 var(--body);letter-spacing:.14em;color:#8A6A1A}
.coach h4{margin:4px 0 6px;font:800 21px/1.1 var(--display)}
.coach p{margin:0;font:700 14px/1.45 var(--body);color:#3A4460}
.coach .c-actions{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:4px}
.coach .c-actions .btn{min-height:44px;font-size:16px}
.coach .c-dots{display:flex;gap:5px}.coach .c-dots i{width:7px;height:7px;border-radius:50%;background:#D9CFB8}.coach .c-dots i.on{background:var(--gold-deep)}
.coach.busy .btn-gold{filter:grayscale(.6) brightness(.9)}
@media (max-width:860px),(max-aspect-ratio:9/10){.coach{bottom:calc(96px + var(--safe-b));padding:12px 14px}.coach img{width:40px;height:40px}.coach h4{font-size:18px}.coach p{font-size:13px}}
.tut-press{animation:tutPress .55s ease-in-out;box-shadow:0 0 0 4px #fff,0 0 30px rgba(255,210,74,.9)!important}
@keyframes tutPress{50%{transform:scale(.94)}}
.coach{left:16px;bottom:calc(16px + var(--safe-b));top:auto;transform:none;width:min(440px,calc(100% - 32px))}
@media (max-width:860px),(max-aspect-ratio:9/10){.coach{left:50%;transform:translateX(-50%);width:min(560px,calc(100% - 24px));top:calc(118px + var(--safe-t));bottom:auto}}

.coach.busy{grid-template-columns:auto 1fr;padding:10px 14px}
.coach.busy img{width:34px;height:34px}.coach.busy h4{margin:2px 0 0;font-size:17px}.coach.busy p{display:none}.coach.busy .c-actions{display:none}
@media (max-width:860px),(max-aspect-ratio:9/10){.tut-on .pick-banner{top:calc(186px + var(--safe-t))}}
.coach{box-sizing:border-box;grid-template-columns:auto minmax(0,1fr)}
.coach .c-dots{flex:1 1 auto;min-width:0;justify-content:center;overflow:hidden}
.coach .c-actions .btn{flex:0 0 auto;white-space:nowrap}

@media (max-width:420px){.coach .c-dots i{width:5px;height:5px}.coach .c-dots{gap:3px}.coach .c-actions .btn{padding-inline:14px;font-size:15px}}

/* ================= v3.2 ================= */
/* arka plan göğü */
.sky{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.game #stage{z-index:1}.menu{z-index:1}
.skyfx{position:fixed;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}
/* inşaat düğmesi (dock) */
.dock-main .btn-build{width:auto;height:60px;padding:0 12px;display:flex;flex-direction:column;gap:2px;color:var(--gold-hi);border-radius:18px}
.dock-main .btn-build svg{width:24px;height:24px}.dock-main .btn-build small{font:800 11px/1 var(--display);letter-spacing:.02em}
.dock-main .btn-build:disabled{opacity:.4}
/* tur süresi */
.clock{display:flex;align-items:center;gap:6px;padding:6px 12px 8px;border-radius:999px;background:rgba(6,14,30,.8);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.4);font:800 14px/1 var(--display);color:var(--ink);position:relative;overflow:hidden}
.clock b{font-size:18px;min-width:22px;text-align:center;font-variant-numeric:tabular-nums}.clock small{color:var(--soft)}
.clock i{position:absolute;left:0;bottom:0;height:3px;width:calc(var(--f,1) * 100%);background:var(--ok);transition:width .2s linear}
.clock.low{box-shadow:inset 0 0 0 1.5px var(--bad);animation:clockPulse .5s ease-in-out infinite alternate}.clock.low i{background:var(--bad)}
@keyframes clockPulse{from{filter:brightness(1)}to{filter:brightness(1.16) drop-shadow(0 0 7px rgba(255,91,110,.42))}}
.pcard .ptimer{grid-column:1/-1;height:5px;border-radius:3px;background:rgba(255,255,255,.12);overflow:hidden}
.pcard .ptimer i{display:block;height:100%;background:var(--ok);transition:width .2s linear}.pcard .ptimer.low i{background:var(--bad)}
.pcard .kick{color:var(--bad)}
.kcard .ctimer{position:absolute;left:18px;right:18px;top:6px;height:5px;border-radius:3px;background:rgba(30,39,64,.15);overflow:hidden;z-index:2}
.kcard .ctimer i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#3BD98A,#F5C24A);transition:width .2s linear}
.afk-banner{position:fixed;left:50%;top:calc(80px + var(--safe-t));transform:translateX(-50%);z-index:95;width:min(460px,calc(100% - 24px));display:grid;gap:6px;padding:14px 16px;border-radius:18px;background:#3A0B16;color:#FFE1E6;box-shadow:0 0 0 2px var(--bad),0 18px 40px rgba(0,0,0,.5);font:700 14px/1.4 var(--body);animation:feedIn .3s ease-out}
.afk-banner b{font:800 17px/1.1 var(--display);color:#FFB3BF}.afk-banner .btn{justify-self:end}
/* şampiyon tacı (HUD) */
.pcard .crown-ic{position:absolute;left:50%;top:-16px;transform:translateX(-50%);font-size:22px;line-height:1;filter:drop-shadow(0 3px 4px rgba(0,0,0,.5));z-index:2;font-style:normal}
.pcard.champ{box-shadow:0 0 0 2px #FFC83A,0 10px 26px rgba(0,0,0,.35)}
.pcard.champ.turn{box-shadow:0 0 0 3px var(--pc),0 0 0 6px #FFC83A,0 0 34px color-mix(in srgb,var(--pc) 55%,transparent)}
/* inşaat ekranı */
.sheet.build{width:min(600px,100%)}
.bhelp{margin:0 0 12px;color:var(--soft);font:700 14px/1.45 var(--body)}.bhelp b{color:var(--ink)}
.bgroup{border-radius:18px;padding:10px 12px 4px;margin-bottom:12px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--gc) 55%,transparent)}
.bghead{display:flex;align-items:center;gap:10px;margin-bottom:6px}.bghead .flagbar{width:34px;height:20px;border-radius:5px;margin:0}
.bghead b{font:800 18px/1 var(--display)}.bghead span{margin-left:auto;font:900 10px/1 var(--body);letter-spacing:.1em;color:#1b1200;background:var(--gc);padding:5px 8px;border-radius:999px}
.brow{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 10px;padding:10px 0;border-top:1px solid rgba(255,255,255,.08)}
.brow:first-of-type{border-top:0}
.bname{display:grid;gap:4px;min-width:0}.bname b{font:800 16px/1.1 var(--display)}.bname small{color:var(--soft);font:700 12px/1.2 var(--body)}.bname em{font-style:normal;color:var(--ok)}
.pips{display:flex;gap:4px;align-items:flex-end}
.pips i{display:block;width:14px;height:12px;background:rgba(255,255,255,.14);clip-path:polygon(50% 0,100% 45%,100% 100%,0 100%,0 45%)}
.pips i.o{width:20px;height:16px;border-radius:3px;clip-path:none}
.pips i.on{background:var(--gc)}.pips i.o.on{background:linear-gradient(180deg,#FFE38A,#E0A92C)}
.bact{display:flex;gap:6px}.bact .btn{min-height:42px}.bact .bminus{width:42px;padding:0}
.bwhy{grid-column:1/-1;font:700 12px/1.2 var(--body);color:var(--dim)}
.bpartial{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0 12px}.bpartial small{width:100%;color:var(--soft);font-weight:800}
.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.07);font:800 13px/1 var(--body)}.chip i{width:10px;height:10px;border-radius:50%;background:var(--gc)}
.sheet.build .actions{display:flex}.sheet.build .actions .btn{flex:1}
/* podyum */
.podium-sheet{width:min(640px,100%);gap:10px}
.podium-sheet h2{font-size:32px!important}
.podium-stage{width:100%;height:min(300px,38dvh);border-radius:20px;overflow:hidden;background:radial-gradient(ellipse at 50% 20%,#27509C,#0A1733 75%)}
.podium-canvas{display:block;width:100%!important;height:100%!important}
.rank-list{list-style:none;margin:0;padding:0;width:100%;display:grid;gap:6px;text-align:left}
.rank-list li{display:grid;grid-template-columns:30px 14px 1fr auto;align-items:center;gap:10px;padding:8px 12px;border-radius:14px;background:rgba(255,255,255,.06)}
.rank-list li:first-child{background:linear-gradient(90deg,rgba(255,200,58,.28),rgba(255,255,255,.06));box-shadow:inset 0 0 0 1.5px #FFC83A}
.rank-list .rk{font:800 20px/1 var(--display);color:var(--gold-hi);text-align:center}.rank-list i{width:14px;height:14px;border-radius:50%;background:var(--pc)}
.rank-list b{font:800 16px/1 var(--display)}.rank-list small{color:var(--soft);font:800 13px/1 var(--body)}
/* eğitim: kilit + yeşil hedef */
.tut-on .game button:not(.tut-target):not(.tut-free),.tut-on #modal [data-act]:not(.tut-target):not(.tut-free),.tut-on .pick-banner button{pointer-events:none}
.tut-on .stage-canvas{pointer-events:none}.tut-on.tut-pick .stage-canvas{pointer-events:auto}
.tut-on #modal [data-act]:not(.tut-target):not(.tut-free):not(.x){opacity:.55}
.tut-target{position:relative;z-index:3;animation:tutGlow 1s ease-in-out infinite!important;outline:none!important}
@keyframes tutGlow{0%,100%{box-shadow:0 0 0 3px #3BD98A,0 0 14px 2px rgba(59,217,138,.6)}50%{box-shadow:0 0 0 6px #3BD98A,0 0 34px 10px rgba(59,217,138,.85)}}
.tut-target::after{content:"👆";position:absolute;left:50%;bottom:-34px;transform:translateX(-50%);font-size:26px;line-height:1;pointer-events:none;animation:tutPoint .8s ease-in-out infinite alternate;filter:drop-shadow(0 3px 4px rgba(0,0,0,.5))}
@keyframes tutPoint{to{transform:translate(-50%,-8px)}}
.dock-main .tut-target::after{bottom:auto;top:-36px;content:"👇"}
.kcard .x.tut-target::after{bottom:auto;top:44px;left:auto;right:0;transform:none}
.coach .c-hint{margin:2px 0 0;font:800 14px/1.35 var(--body);color:#0E6A3C}
.coach.busy .c-hint{display:block}
.coach.busy p.c-hint{display:block}
.tut-on .pick-banner{border:0;box-shadow:inset 0 0 0 2px #3BD98A,0 14px 30px rgba(0,0,0,.45)}

.pick-banner{pointer-events:none}.pick-banner .btn{pointer-events:auto}
.pick-banner{top:auto!important;bottom:calc(112px + var(--safe-b))}
@media (max-width:860px),(max-aspect-ratio:9/10){.pick-banner{bottom:calc(100px + var(--safe-b))}}

/* yan panel (inşaat): tahta görünür kalsın, dumanlı ev animasyonu izlensin */
.overlay.side{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;place-items:center end;padding-right:24px;pointer-events:none}
.overlay.side>*{pointer-events:auto}
.overlay.side .sheet.build{width:min(430px,100%);max-height:calc(100dvh - 120px);box-shadow:0 24px 50px rgba(0,0,0,.55),inset 0 0 0 1.5px rgba(245,194,74,.35)}
@media (max-width:860px),(max-aspect-ratio:9/10){.overlay.side{place-items:end center;padding:0 8px calc(8px + var(--safe-b))}.overlay.side .sheet.build{width:100%;max-height:52dvh;padding:16px}}
@media (max-width:860px),(max-aspect-ratio:9/10){.overlay.side .sheet.build{max-height:40dvh;padding:12px 14px}.overlay.side .sheet.build .bhelp{display:none}.overlay.side .sheet.build .sheet-head{margin-bottom:6px}.overlay.side .sheet.build .sheet-head h2{font-size:21px}.brow{padding:6px 0}}

.overlay{overflow-y:auto}
.overlay:not(.side){align-items:safe center}

/* ================= v3.3 ================= */
/* güneşli gökyüzünde okunaklı menü */
.hero .wordmark{filter:drop-shadow(0 4px 0 #7A4A00) drop-shadow(0 12px 22px rgba(60,30,0,.35))}
.hero .tagline{color:#17305F;text-shadow:0 1px 0 rgba(255,255,255,.7),0 0 18px rgba(255,255,255,.6)}
.hero-logo{filter:drop-shadow(0 18px 30px rgba(120,60,0,.35))}
.menu-foot{color:#A9B8DA}
/* büyük, okunaklı yazılar */
.feed div{font:800 16px/1.25 var(--display);padding:8px 16px;background:rgba(8,18,40,.86);box-shadow:0 6px 16px rgba(0,0,0,.3)}
.feed div:not(:first-child){opacity:.7;font-size:14px}
.pcard .float{font:800 24px/1 var(--display);-webkit-text-stroke:1px rgba(0,0,0,.35);text-shadow:0 3px 0 rgba(0,0,0,.35),0 0 12px rgba(0,0,0,.4)}
.mini-pay{font:800 16px/1.1 var(--display);padding:10px 14px;border-radius:16px;gap:10px;border-width:2px}
.mini-pay .mcard{width:34px;height:22px}.mini-pay .mcheck{font-size:18px}
.toast{font:800 19px/1.25 var(--display);padding:14px 22px;border-radius:18px;border-width:2px;top:calc(88px + var(--safe-t));max-width:calc(100% - 24px);text-align:center}
.announce{position:fixed;left:50%;top:calc(96px + var(--safe-t));transform:translateX(-50%);z-index:92;display:grid;justify-items:center;gap:4px;padding:16px 28px;border-radius:22px;background:linear-gradient(180deg,#14306A,#0B1B40);box-shadow:0 0 0 3px var(--ac),0 18px 40px rgba(0,0,0,.5),0 0 40px color-mix(in srgb,var(--ac) 45%,transparent);text-align:center;max-width:calc(100% - 24px);pointer-events:none}
.announce b{font:800 clamp(24px,3.2vw,34px)/1.05 var(--display);color:#FFF4CF;text-shadow:0 3px 0 rgba(0,0,0,.35)}
.announce span{font:800 15px/1.3 var(--body);color:var(--soft)}
.clock{font-size:16px;padding:8px 16px 10px}.clock b{font-size:24px}.clock i{height:4px}
/* kart üstü büyük süre rozeti */
.kcard .ctimer,.sheet .ctimer{position:absolute;left:50%;top:-30px;transform:translateX(-50%);z-index:5;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;align-content:center;
  background:radial-gradient(circle,#10224A 58%,transparent 59%),conic-gradient(var(--tc,#3BD98A) calc(var(--f,1) * 360deg),rgba(255,255,255,.14) 0);box-shadow:0 0 0 3px #0B1834,0 10px 22px rgba(0,0,0,.45)}
.kcard .ctimer i,.sheet .ctimer i{display:none}
.kcard .ctimer b,.sheet .ctimer b{font:800 24px/1 var(--display);color:#fff}
.kcard .ctimer small,.sheet .ctimer small{font:800 10px/1 var(--body);color:var(--soft);letter-spacing:.08em}
.ctimer.low{--tc:#FF5B6E;animation:ctPulse .5s ease-in-out infinite alternate}
@keyframes ctPulse{from{filter:brightness(1)}to{filter:brightness(1.12) drop-shadow(0 0 6px rgba(255,91,110,.38))}}
.sheet .ctimer{top:14px!important;left:auto!important;right:66px;transform:none!important;width:52px!important;height:52px!important}.sheet .ctimer b{font-size:20px!important}
.sheet{position:relative}.overlay .card-wrap{padding-top:26px}
/* inşaat paneli (tek şehir) */
.bcity{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--gc) 60%,transparent);margin-bottom:10px}
.bcity .flagbar{width:38px;height:24px;border-radius:6px;margin:0}.bcity div{display:grid;gap:3px;flex:1}.bcity b{font:800 16px/1.1 var(--display)}.bcity small{color:var(--soft);font:700 13px/1.2 var(--body)}
.bopts{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:8px;margin-bottom:12px}
.bopt{display:grid;justify-items:center;gap:3px;padding:10px 6px;border-radius:16px;background:linear-gradient(180deg,#FFF6DA,#F2DDA6);color:#2A1A00;box-shadow:0 5px 0 #A07318,0 10px 18px rgba(0,0,0,.3);transition:transform .08s}
.bopt:hover{transform:translateY(-2px)}.bopt:active{transform:translateY(2px)}
.bopt .bico{font-size:15px;line-height:1.1;min-height:18px;letter-spacing:-2px}.bopt b{font:800 17px/1 var(--display)}.bopt small{font:800 13px/1 var(--body)}.bopt em{font-style:normal;font:800 11px/1 var(--body);color:#1F7A48}
.bopt.no,.bopt:disabled{filter:grayscale(1);opacity:.45;box-shadow:none}
/* rakip şehir kartı */
.ropts{display:grid;gap:8px;margin-top:8px}.ropts .btn{flex-direction:column;gap:3px;min-height:60px;padding:8px 14px}.ropts .btn span{font:800 17px/1 var(--display)}.ropts .btn small{font:800 11px/1 var(--body);opacity:.8}
/* teklif / takas */
.sheet.trade{width:min(760px,100%)}
.tcols{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tcol{display:grid;gap:8px;align-content:start;padding:12px;border-radius:18px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.2)}
.tcol h4{margin:0;font:800 16px/1.1 var(--display);color:var(--gold-hi);display:flex;justify-content:space-between;gap:6px}.tcol h4 small{color:var(--soft);font:700 12px/1.1 var(--body)}
.tlist{display:grid;gap:6px;max-height:min(34dvh,260px);overflow:auto;padding-right:2px}
.tasset{display:grid;grid-template-columns:6px 1fr auto;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.06);text-align:left;transition:background .15s}
.tasset .bar{width:6px;height:28px;border-radius:3px;background:var(--gc)}.tasset b{font:800 14px/1.1 var(--display)}.tasset .lv{font-style:normal;font-size:11px;margin-left:6px;color:var(--soft)}.tasset em{font-style:normal;font:800 12px/1 var(--body);color:var(--soft)}
.tasset.on{background:color-mix(in srgb,var(--gc) 30%,#0E2150);box-shadow:inset 0 0 0 2px var(--gold)}.tasset.on em{color:var(--gold-hi)}
.tmoney{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tmoney span{font:800 13px/1 var(--body);color:var(--soft)}.tmoney b{min-width:96px;text-align:center;font:800 16px/1 var(--display)}.tmoney .btn{min-height:34px;padding:0 10px}
.tbal{color:var(--dim);font-weight:800}
.tmeter{margin:12px 0;padding:12px;border-radius:16px;background:rgba(0,0,0,.2)}
.tbar{position:relative;height:14px;border-radius:7px;background:linear-gradient(90deg,#FF6B7F 0 40%,rgba(255,255,255,.12) 40%)}
.tbar .zone{position:absolute;top:0;bottom:0;background:rgba(59,217,138,.55);border-radius:7px}
.tbar .needle{position:absolute;top:-5px;width:6px;height:24px;margin-left:-3px;border-radius:3px;background:#fff;box-shadow:0 0 8px rgba(0,0,0,.5);transition:left .25s}
.tvals{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font:700 13px/1.2 var(--body);color:var(--soft)}.tvals b{color:var(--ink)}.tpct{font:800 20px/1 var(--display);color:var(--gold-hi)}
.tmeter p{margin:6px 0 0;font:800 13px/1.3 var(--body)}.tmeter.ok p{color:var(--ok)}.tmeter.bad p{color:var(--bad)}
.sheet.trade .actions{display:flex;gap:10px}.sheet.trade .actions .btn{flex:1}
@media (max-width:640px){.tcols{grid-template-columns:1fr}.tlist{max-height:22dvh}.sheet.trade{padding:14px}}
.inoffer{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0}.inoffer h5{margin:0 0 6px;font:800 13px/1 var(--display);color:#6A4A10}
.inoffer ul{margin:0;padding:0;list-style:none;display:grid;gap:4px}.inoffer li{font:700 13px/1.2 var(--body);display:flex;justify-content:space-between;gap:6px;padding:6px 8px;border-radius:8px;background:rgba(30,39,64,.07)}.inoffer em{font-style:normal;font-weight:800}
.kcard .ctimer{top:-46px!important}.overlay .card-wrap{padding-top:44px}

/* ================= v3.4 ================= */
/* kurulum: önizleme + kostümler */
.setup-top{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center}
.setup-top .pv{width:120px;height:120px;border-radius:20px;background:radial-gradient(circle at 50% 35%,#2B5AA8,#0E1F44);box-shadow:inset 0 0 0 2px rgba(245,194,74,.4);overflow:hidden}
.pawn-preview{display:block;width:100%!important;height:100%!important}
.field span small{color:var(--dim);font-weight:700}
.costumes{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}
.costume{display:grid;justify-items:center;gap:2px;padding:6px 2px;border-radius:12px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.08)}
.costume i{font-style:normal;font-size:22px;line-height:1}.costume small{font:800 10px/1 var(--body);color:var(--soft)}
.costume[aria-pressed="true"]{background:rgba(245,194,74,.2);box-shadow:inset 0 0 0 2px var(--gold)}
@media (max-width:520px){.costumes{grid-template-columns:repeat(4,1fr)}.setup-top{grid-template-columns:96px 1fr}.setup-top .pv{width:96px;height:96px}}
/* açık artırma */
.sheet.auction{width:min(560px,100%);box-shadow:var(--shadow),inset 0 0 0 2px color-mix(in srgb,var(--gc) 70%,transparent)}
.ahead{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:12px}
.ahead small{font:900 11px/1 var(--body);letter-spacing:.12em;color:var(--gc)}.ahead h2{margin:4px 0 0;font:800 28px/1 var(--display);color:var(--gold-hi)}
.aval{display:grid;text-align:right;font:800 12px/1.2 var(--body);color:var(--soft)}.aval b{font:800 18px/1 var(--display);color:var(--ink)}
.astage{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}
.ablock{position:relative;display:flex;align-items:center;gap:10px;padding:14px;border-radius:20px;background:linear-gradient(180deg,#FFF6DA,#F2DDA6);color:#2A1A00;min-height:110px}
.gavel{width:92px;height:92px;flex:0 0 auto;transform-origin:78% 90%;transform:rotate(-28deg);filter:drop-shadow(0 6px 6px rgba(0,0,0,.25))}
.gavel.tap{animation:gavelTap .45s ease-in-out}.gavel.slam{animation:gavelSlam .6s cubic-bezier(.3,1.6,.4,1) forwards}
@keyframes gavelTap{0%{transform:rotate(-28deg)}40%{transform:rotate(18deg)}60%{transform:rotate(12deg)}100%{transform:rotate(-28deg)}}
@keyframes gavelSlam{0%{transform:rotate(-40deg) scale(1)}45%{transform:rotate(24deg) scale(1.15)}70%{transform:rotate(16deg) scale(1.05)}100%{transform:rotate(20deg) scale(1.08)}}
.aboard{display:grid;gap:4px;flex:1;min-width:0}
.aphase{font:800 15px/1 var(--display);color:#8A5A10}.aphase.k1,.aphase.k2{color:#C0392B;animation:ctPulse .4s ease-in-out infinite alternate}
.aphase.sold{font-size:30px;color:#C0392B;letter-spacing:.04em;text-shadow:0 2px 0 #fff}
.abid{font:800 clamp(28px,5vw,38px)/1 var(--display);color:#1E2740}
.alead{display:flex;align-items:center;gap:6px;font:800 14px/1 var(--body)}.alead i{width:12px;height:12px;border-radius:50%}
.atimer{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#10224A 58%,transparent 59%),conic-gradient(#F5C24A calc(var(--f,1) * 360deg),rgba(255,255,255,.14) 0);box-shadow:0 0 0 3px #0B1834}
.atimer b{font:800 26px/1 var(--display)}
.abidders{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
.abidder{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.07);font:800 13px/1 var(--body)}
.abidder i{width:10px;height:10px;border-radius:50%;background:var(--pc)}.abidder.out{opacity:.4;text-decoration:line-through}.abidder.lead{background:color-mix(in srgb,var(--pc) 35%,#0E2150);box-shadow:inset 0 0 0 2px var(--gold)}
.abtns{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.abtns .btn{min-height:50px;font-size:15px;padding:0 8px}
.ahint{margin:8px 0 0;text-align:center;color:var(--soft);font:800 13px/1.3 var(--body)}
.shake{animation:shakeX .45s}
@keyframes shakeX{0%,100%{transform:none}20%{transform:translateX(-8px)}40%{transform:translateX(7px)}60%{transform:translateX(-5px)}80%{transform:translateX(3px)}}
@media (max-width:520px){.abtns{grid-template-columns:1fr 1fr}.gavel{width:70px;height:70px}}
/* borç */
.sheet.debt{width:min(560px,100%)}
.dmeter{padding:12px;border-radius:14px;background:rgba(0,0,0,.2);margin-bottom:10px}
.dbar{height:12px;border-radius:6px;background:rgba(255,107,127,.25);overflow:hidden}.dbar i{display:block;height:100%;background:linear-gradient(90deg,#FF6B7F,#F5C24A);transition:width .4s}
.dmeter.ok .dbar i{background:var(--ok)}
.dvals{display:flex;justify-content:space-between;margin-top:6px;font:800 13px/1 var(--body);color:var(--soft)}.dvals b{color:var(--ink)}
.dlist{display:grid;gap:6px;max-height:min(40dvh,320px);overflow:auto;margin-bottom:12px}
.drow{display:grid;grid-template-columns:6px 1fr auto;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.06)}
.drow>i{width:6px;height:30px;border-radius:3px;background:var(--gc)}.drow b{font:800 14px/1.1 var(--display)}.drow em{font-style:normal;font-size:12px;color:var(--gold-hi)}.drow small{display:block;color:var(--dim);font-weight:700}
.drow>div{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.drow .btn{min-height:34px;font-size:12px;padding:0 10px}
.sheet.debt .actions{display:flex;gap:10px}.sheet.debt .actions .btn{flex:1}
/* Şans fişi */
.printer{display:grid;justify-items:center;gap:0}
.pslot{width:min(320px,86vw);height:34px;border-radius:14px 14px 6px 6px;background:linear-gradient(180deg,#2A3656,#161E33);box-shadow:0 10px 20px rgba(0,0,0,.4);display:flex;align-items:center;justify-content:space-between;padding:0 16px;font:800 12px/1 var(--display);letter-spacing:.12em;color:var(--gold-hi);position:relative;z-index:2}
.pslot i{width:40%;height:6px;border-radius:3px;background:#05080F}
.receipt{width:min(280px,76vw);background:#FFFFFF;color:#111;font:700 13px/1.35 "Courier New",ui-monospace,monospace;box-shadow:0 18px 30px rgba(0,0,0,.35);margin-top:-6px;clip-path:inset(0 0 100% 0);position:relative}
.receipt::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:8px;background:linear-gradient(-45deg,transparent 6px,#fff 0) 0 0/12px 8px,linear-gradient(45deg,transparent 6px,#fff 0) 0 0/12px 8px}
.receipt.print{animation:printOut 1.3s steps(14) forwards}
@keyframes printOut{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 -10px 0)}}
.rin{padding:14px 16px 16px}.rc{text-align:center;font-weight:900;letter-spacing:.06em}.rc.small{font-size:11px;font-weight:700}
.receipt hr{border:0;border-top:2px dashed #999;margin:8px 0}
.rl{display:flex;justify-content:space-between;gap:10px}.rl.big{font-size:16px;font-weight:900}
.rt{font-weight:900;font-size:15px;text-align:center;margin:2px 0 4px}.rx{text-align:center;font-weight:700}
.barcode{display:flex;justify-content:center;height:34px;margin:6px 0}.barcode i{display:block;height:100%;background:#111}
.rlogo{display:grid;justify-items:center;gap:2px;margin-top:6px}.rlogo img{width:48px;height:48px}.rlogo b{font:800 18px/1 var(--display);letter-spacing:.08em;color:#111}.rlogo small{font-size:10px;color:#555}
.printer>.btn{margin-top:18px}
/* Z raporu */
.wtabs{display:flex;gap:6px;background:rgba(0,0,0,.2);padding:4px;border-radius:14px}
.wtabs button{padding:8px 14px;border-radius:10px;font:800 14px/1 var(--display);color:var(--soft)}.wtabs button[aria-pressed="true"]{background:var(--gold);color:#2A1A00}
.wpod,.wz{width:100%;display:grid;gap:10px;justify-items:center}
.wz .receipt{width:min(360px,100%);max-height:min(56dvh,520px);overflow:auto;margin-top:0}
.setup-top>*,.menu-panel .field{min-width:0}.text-in{min-width:0;width:100%;box-sizing:border-box}.menu-panel{box-sizing:border-box;max-width:100%}@media (max-width:520px){.menu-panel{padding:18px}}
/* v3.5 inşaat paneli: sokak sahnesi + seviye adımları + özet */
.blot{display:block;width:100%;height:auto;border-radius:16px;margin:0 0 12px;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.12),0 8px 18px rgba(0,0,0,.28)}
.blot .bh.ghost{animation:bhGhost 1.1s ease-in-out infinite;animation-delay:var(--d,0ms);transform-box:fill-box}
.blot .bh.built{animation:none}
@keyframes bhGhost{0%,100%{translate:0 0}50%{translate:0 -5px}}
.bsteps{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:12px}
.bstep{position:relative;display:grid;justify-items:center;align-content:start;gap:4px;padding:10px 4px 9px;border-radius:15px;background:rgba(255,255,255,.07);color:var(--ink);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.12);transition:transform .08s,background .15s,box-shadow .15s}
.bstep svg{width:16px;height:16px;display:block}.bstep .hs{display:flex;gap:1px;min-height:16px;align-items:center}.bstep .hs svg{width:11px;height:11px}
.bstep>svg{width:20px;height:18px}
.bstep b{font:800 15px/1 var(--display)}.bstep small{font:800 11px/1.1 var(--body);color:var(--soft);white-space:nowrap}
.bstep:not(:disabled):hover{transform:translateY(-2px);background:rgba(255,255,255,.12)}
.bstep.rng{background:color-mix(in srgb,var(--ok) 16%,transparent);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--ok) 55%,transparent)}
.bstep.on{background:linear-gradient(180deg,#FFF6DA,#F2D58A);color:#2A1A00;box-shadow:0 5px 0 #A07318,0 10px 18px rgba(0,0,0,.3);transform:translateY(-3px)}
.bstep.on small{color:#6B4300}
.bstep.done{background:color-mix(in srgb,var(--gc) 30%,rgba(255,255,255,.04));color:#fff;box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--gc) 70%,transparent);opacity:.9}
.bstep.done small{color:#DFFFEA}
.bstep.lock{opacity:.42;filter:grayscale(.8)}
.bsum{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:8px;margin-bottom:12px}
.bsum>div{display:grid;gap:4px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);position:relative}
.bsum small{font:800 11px/1 var(--body);letter-spacing:.06em;text-transform:uppercase;color:var(--soft)}
.bsum b{font:800 16px/1.1 var(--display);white-space:nowrap}.bsum b i{font-style:normal;color:var(--soft);margin:0 2px}.bsum b em{font-style:normal;color:var(--ok)}
.bsum b.neg{color:var(--bad)}
.bsum .bup{position:absolute;right:8px;top:7px;font:800 11px/1 var(--body);color:#0B2A18;background:var(--ok);padding:3px 6px;border-radius:999px}
.sheet.build .actions .bgo{flex:1.6}
@media (max-width:860px),(max-aspect-ratio:9/10){.overlay.side .sheet.build{max-height:62dvh}.blot{max-height:90px;object-fit:cover;margin-bottom:8px}.bsteps{gap:4px;margin-bottom:8px}.bstep{padding:8px 2px 7px;border-radius:12px}.bstep b{font-size:13px}.bstep small{font-size:10px}.bsum{gap:5px;margin-bottom:8px}.bsum>div{padding:7px 8px}.bsum b{font-size:13px}.bsum small{font-size:9.5px}.bsum .bup{display:none}}
.bshield{display:flex;justify-content:space-between;align-items:center;width:100%;margin:0 0 10px;padding:9px 14px;border-radius:14px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.12);color:var(--ink);font:800 14px/1 var(--display)}
.bshield b{font:800 13px/1 var(--body);color:var(--soft)}.bshield.on{background:color-mix(in srgb,var(--ok) 18%,transparent);box-shadow:inset 0 0 0 1.5px var(--ok)}.bshield.on b{color:var(--ok)}
.bshield:disabled{opacity:.45}
@media (max-width:860px),(max-aspect-ratio:9/10){.bshield{padding:7px 12px;margin-bottom:8px;font-size:13px}}
.bcity>.flagbar{flex:0 0 38px;display:grid;gap:0;overflow:hidden}
/* v3.5 mağaza */
.coin{width:1.1em;height:1.1em;vertical-align:-.18em;flex:none}
.btn-shop{justify-content:flex-start}
.menu.wide .menu-panel{width:min(100%,620px)}
.menu-panel.shop{gap:12px}
.jeton{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;padding:10px 14px;border-radius:16px;background:rgba(245,194,74,.12);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.35)}
.jeton .coin{width:26px;height:26px}.jeton b{font:800 24px/1 var(--display);color:var(--gold-hi)}.jeton span{font:800 14px/1 var(--display);color:var(--gold-hi)}
.jeton small{flex-basis:100%;color:var(--soft);font:700 12px/1.3 var(--body)}
.stabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:4px;border-radius:16px;background:rgba(0,0,0,.2)}
.stabs button{min-height:40px;border-radius:12px;font:800 15px/1 var(--display);color:var(--soft)}
.stabs button[aria-selected=true]{background:linear-gradient(180deg,#FFE38A,#E0A92C);color:#2A1A00;box-shadow:0 3px 0 #A07318}
.spv{display:grid;grid-template-columns:130px 1fr;gap:14px;align-items:center;padding:12px;border-radius:18px;background:radial-gradient(120px 100px at 65px 50%,rgba(255,255,255,.14),transparent 70%),rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.spv3d,.spvsvg{width:130px;height:130px}.spv3d canvas{width:100%!important;height:100%!important}.spvsvg svg{width:100%;height:100%;filter:drop-shadow(0 8px 10px rgba(0,0,0,.35))}
.spvimg{width:130px;height:auto;filter:drop-shadow(0 8px 10px rgba(0,0,0,.35))}
.spvinfo{display:grid;gap:10px;min-width:0}.spvinfo>b{font:800 22px/1.1 var(--display)}
.sact{display:grid;gap:6px}.sact .btn{width:100%;min-height:46px;font-size:16px}.sact .need{color:var(--soft);font:700 12px/1.3 var(--body)}
.sgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;max-height:min(42dvh,360px);overflow:auto;padding:2px}
.sitem{position:relative;display:grid;justify-items:center;align-content:start;gap:4px;padding:10px 6px;border-radius:16px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.1);color:var(--ink);transition:transform .08s}
.sitem:hover{transform:translateY(-2px)}
.sitem.sel{background:rgba(245,194,74,.14);box-shadow:inset 0 0 0 2px var(--gold)}
.sitem .sth{width:64px;height:48px;display:grid;place-items:center}.sitem .sth img{max-width:64px;max-height:34px}.sitem .sth svg{width:48px;height:48px}
.sitem .cico{font-size:30px;font-style:normal;line-height:1}
.sitem b{font:800 13px/1.1 var(--display);text-align:center}
.sitem em{font-style:normal;font:800 12px/1 var(--body);color:var(--soft);display:inline-flex;align-items:center;gap:3px}
.sitem em.price{color:var(--gold-hi)}.sitem em.eq{color:var(--ok)}
.sitem .winl{font:700 10px/1.2 var(--body);color:var(--soft);text-align:center}
.sitem:not(.owned) .sth{filter:saturate(.75)}
.shelp{margin:0;color:var(--soft);font:700 12px/1.5 var(--body);text-align:center}.shelp b{color:var(--gold-hi)}
.costume.locked{opacity:.6}.costume.locked small{display:inline-flex;align-items:center;gap:2px;color:var(--gold-hi)}.costume.locked i{filter:grayscale(.6)}
.reward{display:grid;justify-items:center;gap:4px;margin-top:10px;padding:12px 14px;border-radius:16px;background:rgba(245,194,74,.14);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.45);text-align:center;animation:feedIn .4s ease-out}
.reward .coin{width:30px;height:30px}.reward b{font:800 22px/1 var(--display);color:var(--gold-hi)}.reward span{font:700 13px/1.3 var(--body);color:var(--ink)}.reward small{font:700 12px/1.2 var(--body);color:var(--soft)}
@media (max-width:520px){.spv{grid-template-columns:100px 1fr;gap:10px;padding:10px}.spv3d,.spvsvg{width:100px;height:100px}.spvimg{width:100px}.spvinfo>b{font-size:18px}.sgrid{grid-template-columns:repeat(3,1fr);max-height:34dvh}}
/* v3.5 arkadaşlarla oyna (P2P oda) */
.mp-help{margin:0;color:var(--soft);font:700 13px/1.45 var(--body)}
.mp-err{margin:0;padding:10px 12px;border-radius:12px;background:rgba(255,107,127,.14);color:#FFD2D9;font:800 13px/1.4 var(--body);box-shadow:inset 0 0 0 1.5px rgba(255,107,127,.45)}
.mp-join{display:grid;grid-template-columns:1fr auto;gap:8px}.mp-join .btn{width:auto}
.mp-code-in{text-align:center;font:800 22px/1 var(--display);letter-spacing:.3em;text-transform:uppercase}
.mp-code{display:grid;justify-items:center;gap:6px;padding:14px;border-radius:18px;background:rgba(245,194,74,.12);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.4)}
.mp-code small{color:var(--soft);font:800 12px/1 var(--body);letter-spacing:.08em;text-transform:uppercase}
.mp-code b{font:800 40px/1 var(--display);letter-spacing:.18em;color:var(--gold-hi);direction:ltr}
.mp-share{display:flex;gap:8px}.mp-share .btn{width:auto;min-height:38px;font-size:14px}
.mp-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.mp-list li{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:14px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.mp-list li>i{width:14px;height:14px;border-radius:50%;background:var(--pc,#8FA3C4);box-shadow:0 0 0 2px rgba(255,255,255,.25)}
.mp-list li.bot{opacity:.75}.mp-list li.bot>i{background:#8FA3C4}
.mp-list b{font:800 15px/1.1 var(--display);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mp-badge{font:800 11px/1 var(--body);padding:4px 7px;border-radius:999px;background:rgba(245,194,74,.2);color:var(--gold-hi)}.mp-badge.you{background:rgba(59,217,138,.2);color:var(--ok)}
.mp-list em{font-style:normal;font:800 12px/1 var(--body);color:var(--soft);min-width:48px;text-align:end}
.mp-spin{width:44px;height:44px;margin:6px auto;border-radius:50%;border:4px solid rgba(255,255,255,.15);border-top-color:var(--gold);animation:mpSpin .9s linear infinite}
@keyframes mpSpin{to{transform:rotate(360deg)}}
.mp-wait{position:fixed;left:50%;top:calc(90px + var(--safe-t));transform:translateX(-50%);z-index:60;display:grid;gap:4px;justify-items:center;padding:14px 20px;border-radius:18px;background:rgba(10,22,48,.92);box-shadow:inset 0 0 0 1.5px var(--gold),0 14px 30px rgba(0,0,0,.45);text-align:center;font:700 14px/1.35 var(--body);max-width:calc(100% - 24px)}
.mp-wait b{font:800 17px/1.2 var(--display);color:var(--gold-hi)}
.pcard.me{box-shadow:0 0 0 2px rgba(255,255,255,.35),var(--shadow,0 10px 24px rgba(0,0,0,.4))}

/* ===== v3.6: menü, oda, dil, mağaza ===== */
.menu-sep{height:1px;margin:2px 6px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent)}
.menu-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.menu-row2 .btn{min-width:0;padding:0 12px;white-space:nowrap}
.btn-shop{background:linear-gradient(180deg,#2E6B5A,#1D4A3E);box-shadow:inset 0 0 0 1.5px rgba(122,224,180,.35),0 4px 0 #123429}
.costume img{width:100%;max-width:58px;aspect-ratio:1;object-fit:contain;pointer-events:none}
.costume.locked img{filter:grayscale(.55) brightness(.9)}
.sitem .sth img.cthumb{max-width:60px;max-height:60px;width:60px;height:60px;object-fit:contain}
.sitem .sth{height:62px}
.shop-head{display:grid;justify-items:center;gap:0;margin-top:-6px}
.shop-awning{width:min(100%,300px);height:22px;border-radius:10px 10px 4px 4px;background:repeating-linear-gradient(90deg,#E8483F 0 26px,#FFF3DC 26px 52px);box-shadow:0 5px 0 rgba(0,0,0,.18);-webkit-mask:radial-gradient(13px at 13px 100%,#0000 98%,#000) 0 0/26px 100%;mask:radial-gradient(13px at 13px 100%,#0000 98%,#000) 0 0/26px 100%}
.shop-head h2{margin:8px 0 0}
.mp-badge.own{background:rgba(245,194,74,.24);color:var(--gold-hi)}
.mp-badge.ok{background:rgba(59,217,138,.2);color:var(--ok)}
.mp-badge.wait{background:rgba(255,255,255,.1);color:var(--soft)}
.mp-list b small{font:700 11px/1 var(--body);color:var(--soft)}
.mp-list li.empty{opacity:.45;box-shadow:inset 0 0 0 1px dashed rgba(255,255,255,.2);background:transparent}
.mp-list li.empty>i{background:transparent;box-shadow:inset 0 0 0 2px rgba(255,255,255,.3)}
.mp-list li{flex-wrap:wrap}
.mp-tools{display:flex;gap:6px;flex-basis:100%;justify-content:flex-end}
.btn-xs{min-height:30px;padding:0 10px;border-radius:10px;font-size:12px;width:auto!important}
.btn-xs.danger{color:#FFB3BF;box-shadow:inset 0 0 0 1.5px rgba(255,107,127,.45)}
.room-set{display:grid;gap:10px;padding:12px;border-radius:16px;background:rgba(0,0,0,.18);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.room-set h3{margin:0;font:800 15px/1 var(--display);color:var(--gold-hi)}
.room-set .seg{flex-wrap:wrap;justify-content:center;border-radius:16px}
.room-set .seg button{padding:8px 10px;font-size:13px}
.lang-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.lang-opt{display:grid;gap:4px;justify-items:start;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.1);color:var(--ink);text-align:start}
.lang-opt b{font:800 16px/1.15 var(--display);white-space:normal}
.lang-opt small{font:800 11px/1 var(--body);color:var(--soft);letter-spacing:.08em}
.lang-opt[aria-pressed="true"]{background:rgba(245,194,74,.18);box-shadow:inset 0 0 0 2px var(--gold)}
.lang-sheet h2{display:flex;align-items:center;gap:8px}.lang-sheet h2 svg{width:24px;height:24px}
.lang-btn{white-space:nowrap;width:auto}.lang-btn svg{width:18px;height:18px}
.pcard .offl{font:800 10px/1 var(--body);padding:3px 6px;border-radius:999px;background:rgba(255,107,127,.2);color:#FFB3BF;margin-inline-start:6px}
.pcard.away .av{filter:grayscale(.8);opacity:.7}
/* kopyalamaya / resim indirmeye karşı caydırıcı (form alanları hariç) */
body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
input,textarea,select{-webkit-user-select:text;user-select:text}
img,canvas,svg{-webkit-user-drag:none;user-drag:none}
/* açılış: bulutların altından yukarı çıkış */
.menu.intro .hero{animation:introRise 1.9s cubic-bezier(.2,.8,.2,1) .35s both}
.menu.intro .menu-panel{animation:introRise 1.9s cubic-bezier(.2,.8,.2,1) .6s both}
@keyframes introRise{from{opacity:0;transform:translateY(38dvh) scale(.94)}60%{opacity:1}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.menu.intro .hero,.menu.intro .menu-panel{animation:none}}

/* ===== v3.7: çizgi ikonlar, tapu kartları, teklif ===== */
.ic{width:1.15em;height:1.15em;vertical-align:-.2em;flex:none;display:inline-block}
.btn .ic{width:22px;height:22px}
.pcard .crown-ic{color:#FFD24A}.pcard .crown-ic .ic{width:24px;height:24px}
.pcard .meta span{display:inline-flex;align-items:center;gap:3px}.pcard .meta .ic{width:14px;height:14px;color:var(--gold-hi)}
.lvl-ic{display:inline-flex;gap:1px;color:#2F9E55;vertical-align:middle}.lvl-ic .ic{width:13px;height:13px}.lvl-ic.hotel{color:#C0392B}.lvl-ic.hotel .ic{width:16px;height:16px}.lvl-ic.pub{color:#5E7CA8}
.tasset .settag{margin-inline-start:5px;padding:1px 5px;border-radius:6px;background:rgba(245,194,74,.25);color:var(--gold-hi);font:800 9px/1.3 var(--body);font-style:normal;vertical-align:middle}
.kcard.offer.incoming{width:min(560px,94vw)}
.osum{margin:4px 2px 8px;font:700 14px/1.4 var(--body);color:#4A536B;text-align:center}
.oswap{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:stretch}
.oside{display:grid;gap:6px;align-content:start;padding:8px;border-radius:14px;background:rgba(59,217,138,.12);box-shadow:inset 0 0 0 1.5px rgba(59,217,138,.45)}
.oside.mine{background:rgba(255,107,127,.1);box-shadow:inset 0 0 0 1.5px rgba(255,107,127,.45)}
.oside h5{margin:0;font:800 13px/1.2 var(--display);color:#1E2740;display:flex;align-items:center;gap:4px;flex-wrap:wrap}.oside h5 small{font:700 11px/1 var(--body);color:#6A7390}
.oside>em{font:800 14px/1 var(--display);font-style:normal;color:#1E2740;text-align:center}
.oarrow{display:grid;place-items:center;color:#8A6A20}.oarrow .ic{width:26px;height:26px}
.deeds{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px}
.deed{display:grid;grid-template-rows:auto 1fr auto auto;border-radius:10px;overflow:hidden;background:#FFFDF6;box-shadow:0 0 0 1.5px rgba(30,39,64,.18),0 4px 8px rgba(0,0,0,.12)}
.deed .dtop{background:var(--gc);color:#fff;padding:5px 6px;display:grid;gap:1px;text-shadow:0 1px 0 rgba(0,0,0,.25)}
.deed .dtop small{font:800 8.5px/1 var(--body);letter-spacing:.06em;opacity:.9}.deed .dtop b{font:800 13px/1.05 var(--display)}
.deed .dart{height:52px;display:grid;place-items:center;overflow:hidden;background:rgba(0,0,0,.03)}.deed .dart svg{width:100%;height:100%}
.deed .dlvl{display:flex;align-items:center;justify-content:center;gap:4px;padding:3px 4px;min-height:20px}.deed .dlvl small{font:800 10px/1 var(--body);color:#4A536B}
.deed .dval{text-align:center;font:800 11px/1 var(--display);color:#1E2740;padding:0 4px 6px}
.deed.cash .dtop{background:#2F9E55}.deed.cash .dart{color:#2F9E55}.deed.cash .dart .ic{width:40px;height:40px}
.oside .empty{margin:0;text-align:center;color:#8A90A6}
@media (max-width:520px){.oswap{grid-template-columns:1fr}.oarrow{transform:rotate(90deg);height:26px}.deeds{grid-template-columns:repeat(auto-fill,minmax(86px,1fr))}}
.actions.market{margin-top:6px}
/* Şans kartı (v3.7): çizimli ön yüz */
.chance-front{grid-template-rows:auto auto 1fr auto auto !important;gap:8px !important;padding:14px !important}
.chance-front .ch-head{font-size:22px;padding:8px}
.chance-front .ch-art{border-radius:14px;background:var(--bg,#EEF1F8);box-shadow:inset 0 0 0 1.5px rgba(30,39,64,.08)}
.chance-front .ch-art svg{display:block;width:100%;height:auto;max-height:26dvh}
.chance-front .ch-body{gap:6px !important;align-content:start !important;padding-top:6px}
.chance-front .ch-body h4{font-size:23px}
.chance-front .ch-body p{font-size:14px}
.chance-front .ch-amt{justify-self:center;padding:5px 14px;border-radius:999px;font:800 18px/1 var(--display)}
.chance-front .ch-amt.up{background:#DDF5E6;color:#1E7A45}.chance-front .ch-amt.down{background:#FCE0E0;color:#B3261E}
.chance-front .ch-foot{display:flex;align-items:center;justify-content:center;gap:6px;color:#6A7390}
.chance-front .ch-foot img{width:22px !important;filter:none !important}
.chance-front .ch-foot b{font:800 12px/1 var(--display);letter-spacing:.12em;color:#1E2740}.chance-front .ch-foot small{font:800 11px/1 var(--body)}
.card-back img{opacity:.9 !important;width:52% !important;filter:drop-shadow(0 10px 20px rgba(255,138,31,.45)) !important}
.card-back b{color:#FFE38A !important}
.flip{width:min(330px,86vw) !important;aspect-ratio:auto !important;height:min(540px,78dvh)}
/* oyun ekranına giriş: yüklenene kadar yalnız gök, sonra tahta alttan yükselir */
.game.loading #stage,.game.loading .topbar,.game.loading .players,.game.loading .dock{opacity:0}
.game.entering #stage{animation:boardRise 1.5s cubic-bezier(.2,.8,.2,1) both}
.game.entering .topbar,.game.entering .players{animation:hudFade .7s ease .9s both}.game.entering .dock{animation:hudFadeDock .7s ease .9s both}
@keyframes boardRise{from{opacity:0;transform:translateY(34dvh) scale(.96)}55%{opacity:1}to{opacity:1;transform:none}}
@keyframes hudFade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes hudFadeDock{from{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translateX(-50%)}}
.swatch.taken{opacity:.28;filter:grayscale(.4);cursor:not-allowed;position:relative}
.swatch.taken::after{content:"";position:absolute;inset:30%;border-radius:3px;background:rgba(10,20,40,.7)}
.skyfx.menufx{z-index:0}

/* ===== v3.9: oda lobisi ===== */
.menu.lobby-wide .menu-panel{width:min(100%,760px)}
.lobby{display:grid;gap:14px}
.lb-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.lb-head h2{margin:0}
.lb-code{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:16px;background:rgba(245,194,74,.12);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.4)}
.lb-code small{color:var(--soft);font:800 10px/1 var(--body);letter-spacing:.08em;text-transform:uppercase}
.lb-code b{font:800 26px/1 var(--display);letter-spacing:.16em;color:var(--gold-hi);direction:ltr}
.lb-code .btn .ic,.lb-code .btn svg{width:16px;height:16px}
.lb-body{display:grid;grid-template-columns:1.15fr 1fr;gap:14px;align-items:start}
.seats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.seat{position:relative;display:grid;justify-items:center;align-content:start;gap:6px;padding:10px 8px 10px;border-radius:18px;min-height:168px;background:linear-gradient(180deg,color-mix(in srgb,var(--pc,#8FA3C4) 28%,transparent),rgba(255,255,255,.04));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--pc,#8FA3C4) 70%,transparent)}
.seat.me{box-shadow:inset 0 0 0 3px var(--pc),0 0 18px color-mix(in srgb,var(--pc) 45%,transparent)}
.seat img{width:78px;height:78px;object-fit:contain;filter:drop-shadow(0 6px 8px rgba(0,0,0,.35))}
.seat-info{display:grid;justify-items:center;gap:4px;text-align:center;min-width:0;width:100%}
.seat-info b{font:800 15px/1.1 var(--display);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.seat-info b small{font:700 11px/1 var(--body);color:var(--soft)}
.seat-info em{font-style:normal;font:800 11px/1 var(--body);color:var(--soft)}
.seat-info small{font:700 11px/1.3 var(--body);color:var(--soft)}
.seat-tools{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}
.seat.bot img{filter:grayscale(.35) drop-shadow(0 6px 8px rgba(0,0,0,.35))}
.seat.empty{align-content:center;background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 2px rgba(255,255,255,.14);border:0;outline:2px dashed rgba(255,255,255,.18);outline-offset:-8px}
.lb-side{display:grid;gap:12px}
.room-set .rs-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.room-set .rs-row>span{font:800 12px/1 var(--body);color:var(--soft);text-transform:uppercase;letter-spacing:.06em}
.room-set .rs-row>b{font:800 16px/1 var(--display);color:var(--gold-hi)}
.room-set h3{display:flex;align-items:center;gap:6px}.room-set h3 svg{width:18px;height:18px}
.rs-note{color:var(--soft);font:700 11px/1.3 var(--body)}
@media (max-width:700px){.lb-body{grid-template-columns:1fr}.seat{min-height:140px}.seat img{width:64px;height:64px}}
/* teklif: tahta görünsün diye yan panel */
.kcard.offer.incoming.compact{width:min(360px,94vw)}
.olist{margin:8px 0 0;padding:8px 10px;border-radius:12px}
.olist.get{background:rgba(31,174,91,.12);box-shadow:inset 0 0 0 2px rgba(31,174,91,.55)}
.olist.give{background:rgba(232,65,60,.1);box-shadow:inset 0 0 0 2px rgba(232,65,60,.5)}
.olist h5{margin:0 0 6px;display:flex;align-items:center;gap:5px;font:800 13px/1 var(--display);color:#1E2740}.olist h5 em{margin-left:auto;font-style:normal;font:800 13px/1 var(--display)}
.olist ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.olist li{display:flex;align-items:center;gap:6px;font:800 13px/1.2 var(--body);color:#1E2740}
.olist li>i{width:10px;height:22px;border-radius:4px;background:var(--gc,#2F9E55);flex:none}.olist li.cash>i{background:#2F9E55}
.olist li span:first-of-type{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.olist li em{font-style:normal;font:800 12px/1 var(--display);color:#4A536B}
.overlay.side .sheet.trade{width:min(560px,100%);max-height:calc(100dvh - 110px);overflow:auto;box-shadow:0 24px 50px rgba(0,0,0,.55),inset 0 0 0 1.5px rgba(245,194,74,.35)}
.overlay.side .card-wrap{pointer-events:auto}
@media (max-width:860px),(max-aspect-ratio:9/10){.overlay.side .sheet.trade{width:100%;max-height:56dvh}.overlay.side .kcard.offer.incoming.compact{width:100%}}

/* ===== A11: UI/UX + cihaz dayanıklılığı ===== */
/* iPhone/Android çentik ve yatay safe-area; 100dvh mobil adres çubuğu değişiminde taşmayı önler. */
.menu{padding-left:max(clamp(16px,5vw,72px),calc(12px + var(--safe-l)));padding-right:max(clamp(16px,5vw,72px),calc(12px + var(--safe-r)));min-height:100dvh}
.game{min-height:100dvh}
.topbar{left:calc(10px + var(--safe-l));right:calc(10px + var(--safe-r))}
.overlay{padding-top:calc(12px + var(--safe-t));padding-right:max(12px,var(--safe-r));padding-bottom:calc(12px + var(--safe-b));padding-left:max(12px,var(--safe-l));overscroll-behavior:contain}
.sheet{max-height:calc(100dvh - var(--safe-t) - var(--safe-b) - 24px);overscroll-behavior:contain;scrollbar-gutter:stable;min-width:0}

/* WebGL kullanılamazsa boş canvas yerine anlaşılır, klavye ile kullanılabilir fallback. */
.device-fallback{position:fixed;inset:0;min-height:100dvh;display:grid;place-items:center;padding:calc(20px + var(--safe-t)) max(16px,var(--safe-r)) calc(20px + var(--safe-b)) max(16px,var(--safe-l));overflow:auto;background:radial-gradient(900px 620px at 50% 20%,#1D3F82,var(--night) 65%)}
.device-fallback-card{width:min(620px,100%);display:grid;justify-items:center;gap:12px;text-align:center;padding:clamp(18px,5vw,34px);border-radius:28px;background:linear-gradient(180deg,rgba(26,54,104,.96),rgba(14,31,64,.98));box-shadow:var(--shadow),inset 0 0 0 1.5px rgba(245,194,74,.4)}
.device-fallback-card img{width:96px;height:96px;object-fit:contain}.device-fallback-card h1{margin:0;font:800 clamp(25px,6vw,38px)/1 var(--display);color:var(--gold-hi)}
.device-fallback-card p{margin:0;max-width:52ch;color:var(--soft);font:700 15px/1.45 var(--body)}.device-fallback-card p.en{font-size:13px;color:var(--dim)}.device-fallback-card small{color:var(--dim);word-break:break-word}
.device-fallback-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:6px}.device-fallback-actions .btn{flex:1 1 210px}
.webgl-preview-fallback{display:grid!important;place-items:center;background:radial-gradient(circle,#22407C,#10234A);position:relative}.webgl-preview-fallback::after{content:"3D\A unavailable";white-space:pre;text-align:center;color:var(--soft);font:800 12px/1.2 var(--body)}
.podium-fallback{display:grid;place-items:center}.podium-fallback-list{width:min(420px,100%);display:grid;gap:8px}.podium-fallback-list>div{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;background:rgba(255,255,255,.07)}.podium-fallback-list b{font:800 24px/1 var(--display);color:var(--gold-hi)}.podium-fallback-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}

/* RTL: fiziksel sağ/sol kullanan birkaç kritik kontrolü aynala. */
:dir(rtl) .kcard .x{right:auto;left:-10px}
:dir(rtl) .kcard td:last-child{text-align:left}
:dir(rtl) .sheet .ctimer{right:auto!important;left:66px!important}
:dir(rtl) .olist h5 em{margin-left:0;margin-right:auto}
:dir(rtl) .brand,:dir(rtl) .lb-code,:dir(rtl) .seat-tools{direction:rtl}
:dir(rtl) .lb-code b{direction:ltr;unicode-bidi:isolate}

/* Çok kısa / küçük ekran: dialog başlığı ve butonları erişilebilir kalsın. */
@media (max-width:520px){
  .overlay{padding-inline:max(8px,var(--safe-l));padding-right:max(8px,var(--safe-r))}
  .sheet{padding:14px;border-radius:20px;max-height:calc(100dvh - var(--safe-t) - var(--safe-b) - 14px)!important}
  .sheet-head{position:sticky;top:-14px;z-index:8;margin:-14px -14px 10px;padding:14px;background:linear-gradient(180deg,#1A3668 78%,rgba(26,54,104,.92));border-radius:20px 20px 0 0}
  .sheet-head h2{font-size:21px;min-width:0;overflow-wrap:anywhere}.sheet-head .icon-btn{flex:none}
  .set-row{grid-template-columns:1fr;align-items:stretch}.set-row>.btn,.set-row>input[type=range]{width:100%;max-width:none}
  .device-fallback-actions{width:100%;display:grid}.device-fallback-actions .btn{width:100%}
}
@media (max-height:560px) and (orientation:landscape){
  .overlay{place-items:start center}.sheet{max-height:calc(100dvh - var(--safe-t) - var(--safe-b) - 10px)!important;padding:12px 16px}
  .sheet-head{margin-bottom:8px}.device-fallback{place-items:start center}.device-fallback-card{padding:16px}.device-fallback-card img{width:56px;height:56px}.device-fallback-card p.en{display:none}
}

/* ===== P2: mağazada gerçek tahta / zar / piyon canlı önizleme ===== */
.menu.shop-preview-mode{grid-template-columns:minmax(520px,1.2fr) minmax(420px,.9fr);gap:clamp(18px,2.4vw,34px)}
.shop-live-hero{width:100%;height:min(72dvh,690px);min-height:500px;align-self:center;display:block;position:relative;isolation:isolate}
.shop-world-preview{position:absolute;inset:0;border-radius:34px;overflow:hidden;background:radial-gradient(70% 60% at 50% 45%,rgba(255,255,255,.22),rgba(255,255,255,.025) 70%);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.14),0 24px 55px rgba(17,49,91,.18)}
.shop-world-stage{position:absolute;inset:0}.shop-world-stage canvas{width:100%!important;height:100%!important;display:block;touch-action:none}
.shop-world-chip{position:absolute;left:18px;top:18px;z-index:3;max-width:calc(100% - 36px);padding:8px 14px;border-radius:999px;background:rgba(11,28,59,.82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 8px 20px rgba(0,0,0,.18),inset 0 0 0 1px rgba(255,255,255,.16);color:#fff;font:800 14px/1 var(--display);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}
.shop-world-roll{position:absolute;left:50%;bottom:18px;z-index:4;transform:translateX(-50%);width:auto!important;min-width:150px;box-shadow:0 7px 0 #9D7114,0 16px 28px rgba(0,0,0,.2)}
.shop-world-roll[hidden]{display:none!important}
.shop-world-preview[data-tab="costume"]::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(34% 42% at 50% 52%,transparent 50%,rgba(18,54,105,.08) 100%)}
.shop-preview-mode .menu-panel.shop{align-self:center;max-height:calc(100dvh - var(--safe-t) - var(--safe-b) - 36px);overflow:auto;scrollbar-gutter:stable}
@media (max-width:1120px){.menu.shop-preview-mode{grid-template-columns:minmax(420px,1fr) minmax(390px,.9fr)}.shop-live-hero{min-height:440px;height:min(62dvh,600px)}}
@media (max-width:860px),(max-aspect-ratio:9/10){
  .menu.shop-preview-mode{grid-template-columns:1fr;align-content:start;gap:12px;overflow:auto}
  .shop-live-hero{width:min(100%,680px);height:min(42dvh,390px);min-height:280px}
  .shop-preview-mode .menu-panel.shop{max-height:none;overflow:visible}
  .shop-world-preview{border-radius:24px}.shop-world-chip{left:12px;top:12px;font-size:12px}.shop-world-roll{bottom:12px;min-width:132px;min-height:44px;font-size:15px}
}
@media (max-width:520px){.shop-live-hero{height:300px;min-height:260px}.shop-world-preview{border-radius:20px}.shop-world-chip{max-width:calc(100% - 24px)}}

/* ===== KOZMOSLAND: düğme etkileşim sistemi =====
   Masaüstü: üstüne gelince hafif yükselme + parıltı, basınca iner. Klavye: belirgin odak halkası.
   Dokunmatik: hover'a güvenilmez, basılı durumda çökme + kararma. Pasif düğme hiçbir tepki vermez. */
button,.btn,[role="button"]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button:disabled,.btn:disabled{cursor:not-allowed}
.btn{transition:transform .12s cubic-bezier(.2,.9,.3,1.2),filter .15s ease,box-shadow .15s ease,background-color .15s ease}
.btn:focus-visible,.icon-btn:focus-visible,.seg button:focus-visible,.lang-opt:focus-visible,.asset-item:focus-visible,.swatch:focus-visible,.tasset:focus-visible,.bstep:focus-visible,.sitem:focus-visible,.tab:focus-visible{outline:3px solid var(--gold-hi);outline-offset:3px;box-shadow:0 0 0 7px rgba(255,227,138,.28)}
.btn:disabled,.btn:disabled:hover,.btn:disabled:active{transform:none!important;filter:grayscale(.75) brightness(.72);opacity:.72;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.08)!important}
@media (hover:hover) and (pointer:fine){
  .btn:not(:disabled):hover{transform:translateY(-2px);filter:brightness(1.07) saturate(1.06)}
  .btn-gold:not(:disabled):hover{box-shadow:0 8px 0 #8A5F0E,0 16px 30px rgba(245,194,74,.42),inset 0 2px 0 rgba(255,255,255,.6)}
  .btn-dark:not(:disabled):hover{box-shadow:0 8px 0 #0B1834,0 14px 26px rgba(0,0,0,.38),inset 0 0 0 1.5px var(--gold)}
  .btn-ok:not(:disabled):hover{box-shadow:0 8px 0 #16804B,0 14px 26px rgba(59,217,138,.32)}
  .btn-danger:not(:disabled):hover{box-shadow:0 8px 0 #9A2F40,0 14px 26px rgba(255,107,127,.32)}
  .btn-sm:not(:disabled):hover{transform:translateY(-1px)}
  .icon-btn:not(:disabled):hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1.5px var(--gold),0 10px 22px rgba(0,0,0,.4),0 0 18px rgba(245,194,74,.25);color:var(--gold-hi)}
  .seg button:not(:disabled):hover,.lang-opt:not(:disabled):hover,.asset-item:not(:disabled):hover,.tasset:not(:disabled):hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1.5px var(--gold),0 10px 20px rgba(0,0,0,.3)}
  .swatch:not(:disabled):hover{transform:translateY(-2px) scale(1.06)}
  .kcard .x:hover{transform:scale(1.08);box-shadow:0 0 0 2.5px var(--gold-hi),0 8px 18px rgba(0,0,0,.45),0 0 16px rgba(245,194,74,.4)}
}
.btn:not(:disabled):active{transform:translateY(3px) scale(.99);filter:brightness(.96)}
.icon-btn:not(:disabled):active,.seg button:not(:disabled):active,.lang-opt:not(:disabled):active,.asset-item:not(:disabled):active,.tasset:not(:disabled):active{transform:translateY(2px) scale(.98)}
@media (hover:none){
  .btn:not(:disabled):active{transform:translateY(3px) scale(.97);filter:brightness(.9)}
  .icon-btn:not(:disabled):active{filter:brightness(1.25)}
}
@media (prefers-reduced-motion:reduce){.btn,.icon-btn{transition:none}.btn:not(:disabled):hover{transform:none}}

/* ===== köşe ve özel kare kartları ===== */
/* Kaydırma içteki sarmalayıcıda; kapatma düğmesi kartın köşesinden taşabilsin diye kart kırpılmaz. */
.kcard.corner{--ga:#F5C24A;width:min(360px,90vw);overflow:visible}
.kcard.corner .cscroll{max-height:calc(100dvh - 64px);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;border-radius:16px;overscroll-behavior:contain}
.kcard.corner .head{padding-top:16px}
.kcard .chead-ic{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(0,0,0,.22);box-shadow:inset 0 0 0 2px var(--ga);color:var(--ga)}
.kcard .chead-ic svg{width:26px;height:26px}
:dir(rtl) .kcard .chead-ic{left:auto;right:12px}
.kcard.corner .head h3{padding-inline:40px}
.kcard .cscene{aspect-ratio:320/170;background:#0E2248}
.kcard .cscene svg{width:100%;height:100%;display:block}
.cstat{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:10px 0 6px;padding:10px 14px;border-radius:14px;background:#1E2740;color:#fff}
.cstat b{font:800 24px/1 var(--display);color:var(--gold-hi)}.cstat small{font:800 12px/1.1 var(--body);letter-spacing:.06em;opacity:.78;text-align:end}
.crules{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:6px}
.crules li{display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:start;padding:7px 9px;border-radius:12px;background:color-mix(in srgb,var(--gc) 8%,#fff);font:700 13px/1.38 var(--body);color:#2A3350}
.crules li i{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--gc);color:var(--ga)}
.crules li i svg{width:18px;height:18px}
.crules li.csec{display:block;padding:6px 2px 0;background:none;font:900 11px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--gc)}
.clive{margin-top:8px;padding:9px 12px;border-radius:12px;border:1.5px dashed color-mix(in srgb,var(--gc) 45%,transparent);background:#FFFBF0}
.clive h5{display:flex;align-items:center;gap:6px;margin:0 0 6px;font:800 13px/1 var(--display);color:var(--gc)}.clive h5 svg{width:16px;height:16px}
.clive p{margin:0;font:700 13px/1.35 var(--body);color:#5A6480}
.cwho{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.cwho li{display:flex;align-items:center;gap:8px;font:700 13px/1.2 var(--body)}.cwho li i{width:10px;height:10px;border-radius:50%;background:var(--pc)}
.cwho em{margin-inline-start:auto;font-style:normal;font:800 12px/1 var(--display);padding:4px 8px;border-radius:999px}.cwho em.in{background:#3A2E5E;color:#FFD9C8}.cwho em.out{background:#E4F6EA;color:#16804B}
.cnow{display:flex;align-items:center;gap:8px}.cnow::before{content:'';width:10px;height:10px;border-radius:50%;background:var(--pc)}
.cs-coin{animation:csCoin 2.6s ease-in-out infinite}.cs-coin.c2{animation-delay:.4s}.cs-coin.c3{animation-delay:.8s}
@keyframes csCoin{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.cs-road{animation:csRoad 1.4s linear infinite}@keyframes csRoad{to{stroke-dashoffset:-26}}
.cs-steam{animation:csSteam 2.2s ease-in-out infinite;transform-origin:160px 86px}@keyframes csSteam{0%{opacity:0;transform:translateY(6px)}40%{opacity:1}100%{opacity:0;transform:translateY(-8px)}}
.cs-star{animation:csStar 2.4s ease-in-out infinite alternate}@keyframes csStar{to{opacity:.25}}
.cs-confetti{animation:csFall 4s linear infinite}@keyframes csFall{from{transform:translateY(-12px)}to{transform:translateY(12px)}}
.cs-mask{animation:csMask 3s ease-in-out infinite}@keyframes csMask{0%,100%{transform:translate(160px,104px) rotate(-3deg)}50%{transform:translate(160px,98px) rotate(3deg)}}
.cs-card{animation:csCard 2.8s ease-in-out infinite}@keyframes csCard{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media (prefers-reduced-motion:reduce){.cs-coin,.cs-road,.cs-steam,.cs-star,.cs-confetti,.cs-mask,.cs-card{animation:none}}

/* Liman / Enerji: süren etkiler ve kart üstü etki özeti */
.kcard .effects{margin-top:8px;padding:9px 12px;border-radius:12px;background:#F2F5FB}
.kcard .effects h5{display:flex;align-items:center;gap:6px;margin:0 0 6px;font:800 13px/1 var(--display);color:#26345A}.kcard .effects h5 svg{width:16px;height:16px}
.kcard .effects ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}.kcard .effects li{display:flex;justify-content:space-between;gap:8px;font:700 13px/1.25 var(--body)}
.kcard .effects li em{font-style:normal;font:800 12px/1.2 var(--display);color:#B3261E;text-align:end}.kcard .effects p{margin:0;font:700 12px var(--body);color:#6C7690}
.eff-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 2px}
.eff-grid>div{padding:9px 10px;border-radius:12px;background:#1E2740;color:#fff;text-align:center}
.eff-grid small{display:block;font:800 11px/1 var(--body);letter-spacing:.08em;opacity:.75;margin-bottom:4px}.eff-grid b{font:800 15px/1.15 var(--display);color:var(--gold-hi)}
.kcard .badges .badge-d svg,.kcard .badges .badge-o svg{width:14px;height:14px;vertical-align:-2px}

/* HUD: AFK sayacı rozeti */
.pcard .afkb{margin-inline-start:6px;padding:2px 6px;border-radius:999px;background:rgba(255,138,31,.2);color:#FFC48A;font:800 10px/1.2 var(--body);letter-spacing:.04em}
.pcard .afkb.hot{background:#FF6B7F;color:#2A060B;animation:afkPulse 1s ease-in-out infinite alternate}
@keyframes afkPulse{to{filter:brightness(1.25)}}

/* AFK modu: tam ekran, bulanık arka plan */
.afk-mode{position:fixed;inset:0;z-index:70;display:grid;place-items:center;padding:calc(16px + var(--safe-t)) 16px calc(16px + var(--safe-b));background:rgba(4,10,24,.58);backdrop-filter:blur(9px) saturate(.85);-webkit-backdrop-filter:blur(9px) saturate(.85);animation:fadeIn .25s ease-out}
.afk-card{width:min(420px,100%);display:grid;justify-items:center;gap:12px;text-align:center;padding:26px 22px;border-radius:26px;background:linear-gradient(180deg,#1A3668,#10234A);box-shadow:0 30px 60px rgba(0,0,0,.55),inset 0 0 0 2px rgba(245,194,74,.5)}
.afk-card.hot{box-shadow:0 30px 60px rgba(0,0,0,.55),inset 0 0 0 2.5px #FF6B7F,0 0 40px rgba(255,107,127,.35)}
.afk-card h2{margin:0;font:800 30px/1 var(--display);color:var(--gold-hi)}.afk-card.hot h2{color:#FFB3BD}
.afk-card p{margin:0;color:var(--soft);font:700 15px/1.45 var(--body)}
.afk-ic{width:66px;height:66px;border-radius:22px;display:grid;place-items:center;background:rgba(245,194,74,.14);color:var(--gold-hi)}.afk-ic svg{width:36px;height:36px}
.afk-card.hot .afk-ic{background:rgba(255,107,127,.16);color:#FF8FA0}
.afk-meter{display:flex;gap:6px}.afk-meter i{width:30px;height:9px;border-radius:5px;background:rgba(255,255,255,.14)}.afk-meter i.on{background:linear-gradient(90deg,#FFB35A,#FF6B7F)}
.afk-card .btn{min-width:220px}

/* çoklu sekme uyarısı */
.tab-busy .bhelp{margin:0 0 10px}.tab-busy .note{margin:0 0 12px;color:var(--soft);font:700 13px/1.35 var(--body)}
.shop .fair{margin:0 0 10px;padding:8px 12px;border-radius:12px;background:rgba(59,217,138,.1);box-shadow:inset 0 0 0 1.5px rgba(59,217,138,.35);color:#BFF5D6;font:700 12.5px/1.4 var(--body)}
.shop-world-chip.hovering{box-shadow:inset 0 0 0 2px var(--gold-hi),0 8px 18px rgba(0,0,0,.35)}
.spvimg.cst{width:112px}

/* ===== v4.1: davet linki, bağlanma sayacı ===== */
.lb-invite{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin:12px 0 4px;padding:14px 16px;border-radius:18px;background:linear-gradient(180deg,rgba(245,194,74,.16),rgba(245,194,74,.07));box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.45)}
.lb-invite .lbi-text{display:grid;gap:4px;min-width:0}
.lb-invite .lbi-text b{display:flex;align-items:center;gap:6px;font:800 16px/1.1 var(--display);color:var(--gold-hi)}.lb-invite .lbi-text b svg{width:18px;height:18px}
.lb-invite .lbi-text small{color:var(--soft);font:700 12.5px/1.3 var(--body)}
.lb-invite .lbi-link{margin-top:4px;padding:9px 12px;font:700 13px/1.2 var(--body);color:var(--ink);direction:ltr;text-overflow:ellipsis;user-select:all;-webkit-user-select:all}
.lb-invite .lbi-btns{display:grid;gap:8px;justify-items:stretch}
.lb-invite .lbi-btns .btn{min-height:44px;font-size:15px;padding:0 16px;white-space:nowrap}.lb-invite .lbi-btns .btn svg{width:18px;height:18px}
.lb-invite .lbi-btns .btn-xs{min-height:30px;font-size:12px;justify-self:center}
.lb-invite.full{grid-template-columns:1fr;background:rgba(255,107,127,.1);box-shadow:inset 0 0 0 1.5px rgba(255,107,127,.45)}
.lb-invite.full b{font:800 16px/1.1 var(--display);color:#FFB3BF}.lb-invite.full small{color:var(--soft);font:700 12.5px/1.3 var(--body)}
@media (max-width:640px){.lb-invite{grid-template-columns:1fr}.lb-invite .lbi-btns{grid-template-columns:1fr 1fr}.lb-invite .lbi-btns .btn-xs{grid-column:1/-1}}
.mp-wait-left{margin:4px 0 10px;text-align:center;color:var(--soft);font:800 13px/1 var(--display);font-variant-numeric:tabular-nums}

/* ===== v4.1: yazılı sohbet ===== */
.chat-btn{position:relative}
.chat-btn svg{width:22px;height:22px}
.chat-fab{position:fixed;right:calc(18px + var(--safe-r));bottom:calc(18px + var(--safe-b));z-index:30;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;color:#2A1A00;background:linear-gradient(180deg,var(--gold-hi),var(--gold));box-shadow:0 6px 0 var(--gold-deep),0 14px 28px rgba(0,0,0,.35)}
.chat-fab svg{width:26px;height:26px}
.chat-badge{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:var(--bad);color:#fff;font:900 11px/1 var(--body);box-shadow:0 0 0 2px #0B1834;animation:chatPop .35s cubic-bezier(.2,1.6,.4,1)}
@keyframes chatPop{from{transform:scale(.3)}to{transform:none}}
.chat-panel{position:fixed;z-index:45;right:calc(16px + var(--safe-r));top:calc(72px + var(--safe-t));width:min(360px,calc(100vw - 32px));height:min(520px,calc(100dvh - 200px));min-height:280px;display:flex;flex-direction:column;border-radius:22px;background:linear-gradient(180deg,rgba(26,54,104,.97),rgba(14,31,66,.97));box-shadow:0 24px 50px rgba(0,0,0,.5),inset 0 0 0 1.5px rgba(245,194,74,.4);overflow:hidden;animation:cardIn .25s ease-out}
.chat-panel[hidden]{display:none}
.chat-panel header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 10px 8px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
.chat-panel header b{display:flex;align-items:center;gap:8px;font:800 18px/1 var(--display);color:var(--gold-hi)}.chat-panel header b svg{width:20px;height:20px}
.chat-panel .chat-x{width:36px;height:36px;border-radius:12px;font:800 16px/1 var(--display);color:var(--gold-hi)}
.chat-list{flex:1;min-height:0;margin:0;padding:10px 12px;list-style:none;overflow-y:auto;display:flex;flex-direction:column;gap:8px;overscroll-behavior:contain;scrollbar-width:thin}
.chat-list li{max-width:86%;align-self:flex-start;padding:7px 11px 8px;border-radius:14px 14px 14px 4px;background:rgba(255,255,255,.08);box-shadow:inset 3px 0 0 var(--pc)}
.chat-list li.mine{align-self:flex-end;border-radius:14px 14px 4px 14px;background:rgba(245,194,74,.18);box-shadow:none}
.chat-list .chat-who{display:flex;align-items:center;gap:6px;font:800 12px/1.2 var(--display);color:var(--pc)}
.chat-list li.mine .chat-who{color:var(--gold-hi);justify-content:flex-end}
.chat-list .chat-who i{width:8px;height:8px;border-radius:50%;background:var(--pc)}.chat-list li.mine .chat-who i{display:none}
.chat-list time{margin-inline-start:auto;padding-inline-start:8px;color:var(--dim);font:700 10.5px/1 var(--body)}
.chat-list p{margin:2px 0 0;color:var(--ink);font:700 14px/1.35 var(--body);overflow-wrap:anywhere;user-select:text;-webkit-user-select:text}
.chat-list .chat-sys{align-self:center;max-width:100%;padding:4px 10px;background:none;box-shadow:none;color:var(--soft);font:700 12px/1.3 var(--body);text-align:center}
.chat-list .chat-sys.warn{color:#FFB3BF}
.chat-list:empty::before{content:"";margin:auto}
.chat-quick{display:flex;gap:6px;padding:0 12px 6px;overflow-x:auto;scrollbar-width:none}
.chat-quick button{flex:none;min-width:40px;height:32px;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.08);color:var(--ink);font:800 15px/1 var(--display)}
.chat-form{display:flex;gap:8px;padding:8px 10px calc(10px + var(--safe-b));border-top:1px solid rgba(255,255,255,.08)}
.chat-in{flex:1;min-width:0;height:44px;padding:0 14px;border-radius:14px;border:0;background:#0A1733;color:var(--ink);font:700 15px var(--body);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.35)}
.chat-in:focus{outline:none;box-shadow:inset 0 0 0 2px var(--gold)}
.chat-send{width:48px!important;min-width:48px;height:44px;min-height:44px;padding:0!important;border-radius:14px;display:grid;place-items:center}.chat-send svg{width:20px;height:20px}
.chat-peek{position:fixed;z-index:46;right:calc(16px + var(--safe-r));top:calc(72px + var(--safe-t));max-width:min(320px,calc(100vw - 32px));display:grid;gap:2px;padding:9px 14px;border-radius:16px 4px 16px 16px;text-align:start;background:rgba(10,22,48,.94);box-shadow:0 12px 26px rgba(0,0,0,.4),inset 3px 0 0 var(--pc),inset 0 0 0 1.5px rgba(245,194,74,.3);animation:feedIn .25s ease-out}
.chat-peek b{font:800 12px/1.1 var(--display);color:var(--pc)}.chat-peek span{font:700 14px/1.3 var(--body);color:var(--ink);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.chat-peek.fab{top:auto;bottom:calc(88px + var(--safe-b));border-radius:16px 16px 4px 16px}
body.chat-in-lobby .chat-panel{top:auto;bottom:calc(88px + var(--safe-b))}
:dir(rtl) .chat-panel,:dir(rtl) .chat-peek{right:auto;left:calc(16px + var(--safe-l))}
:dir(rtl) .chat-fab{right:auto;left:calc(18px + var(--safe-l))}
@media (max-width:640px),(max-aspect-ratio:9/10) and (max-width:860px){
  .chat-panel,body.chat-in-lobby .chat-panel{left:calc(8px + var(--safe-l));right:calc(8px + var(--safe-r));top:auto;bottom:calc(8px + var(--safe-b));width:auto;height:min(64dvh,480px);border-radius:22px}
  .chat-peek{top:calc(124px + var(--safe-t))}
}

/* ===== v4.2: dikey telefon: bütün uygulama yan çevir ister ===== */
.rotate-hint{display:none}
@media (orientation:portrait) and (max-width:600px) and (pointer:coarse){
  .rotate-hint{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;background:radial-gradient(120% 80% at 50% 30%,#1B3A78,#081430 70%);text-align:center}
  .rotate-hint .rh-card{display:grid;justify-items:center;gap:14px;max-width:320px}
  .rotate-hint .rh-phone{width:74px;height:124px;border-radius:16px;border:5px solid var(--gold-hi);position:relative;animation:rhTurn 2.4s cubic-bezier(.6,0,.3,1) infinite}
  .rotate-hint .rh-phone::after{content:"";position:absolute;left:50%;bottom:7px;width:18px;height:4px;margin-left:-9px;border-radius:2px;background:var(--gold-hi)}
  .rotate-hint h2{margin:8px 0 0;font:800 26px/1.1 var(--display);color:var(--gold-hi)}
  .rotate-hint p{margin:0;color:var(--soft);font:700 15px/1.4 var(--body)}
  .rotate-hint .btn{width:100%;margin-top:6px}
  .rotate-hint small{color:var(--dim);font:700 12px/1.35 var(--body)}
  .chat-panel,.chat-peek,.chat-fab,.toast{display:none!important}
}
@keyframes rhTurn{0%,20%{transform:rotate(0)}50%,80%{transform:rotate(-90deg)}100%{transform:rotate(0)}}
@media (prefers-reduced-motion:reduce){.rotate-hint .rh-phone{animation:none;transform:rotate(-90deg)}}

/* ===== v4.1: yatay telefon (kısa ekran) — tahta tam ekran, HUD boş köşelerde ===== */
@media (orientation:landscape) and (max-height:540px){
  .topbar{top:calc(6px + var(--safe-t));left:auto;right:calc(6px + var(--safe-r));justify-content:flex-end}
  .topbar .brand{display:none}
  .top-actions{gap:6px}
  .icon-btn{width:38px;height:38px;border-radius:12px}.icon-btn svg{width:18px;height:18px}
  .players{position:absolute;top:calc(6px + var(--safe-t));left:calc(6px + var(--safe-l));right:auto;bottom:calc(6px + var(--safe-b));width:150px;display:flex;flex-direction:column;gap:6px;overflow:visible;padding:0}
  .pcard{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;flex:none;width:auto;min-width:0;padding:5px 8px;gap:0 7px;border-radius:13px}
  .pcard.pc-0{order:0}.pcard.pc-1{order:1}.pcard.pc-2{order:2;margin-top:auto}.pcard.pc-3{order:3}.pcard.pc-4{order:4}.pcard.pc-5{order:5}
  .pcard.turn{box-shadow:0 0 0 2.5px var(--pc),0 0 16px color-mix(in srgb,var(--pc) 50%,transparent)}
  .pcard .av{width:28px;height:28px}.pcard .av::before{left:7px;top:9px;width:4px;height:7px;box-shadow:9px 0 0 #fff}.pcard .av::after{left:8px;top:11px;width:3px;height:4px;box-shadow:9px 0 0 #15182A}
  .pcard .pname{font-size:11.5px;gap:4px}.pcard .badge{font-size:8.5px;padding:3px 5px}.pcard .offl,.pcard .afkb{font-size:8.5px;padding:2px 4px;margin-inline-start:2px}
  .pcard .bal{font-size:15px}.pcard .meta{display:none}.pcard .float{font-size:16px;top:-4px}
  .pcard .crown-ic{top:-12px}.pcard .crown-ic .ic{width:18px;height:18px}
  .dock{left:auto;right:calc(6px + var(--safe-r));bottom:calc(6px + var(--safe-b));transform:none;width:138px;gap:5px;justify-items:stretch}
  .feed{min-height:0}.feed div{font-size:11px;line-height:1.2;padding:4px 8px;border-radius:10px}.feed div:not(:first-child){display:none}
  .clock{justify-content:center;padding:4px 10px 6px;font-size:12px}.clock b{font-size:18px}
  .dock-main{flex-direction:column;align-items:stretch;padding:5px;gap:5px;border-radius:17px}
  .dock-main .who{display:none}
  .dock-main .btn-roll{min-width:0;width:100%;min-height:50px;font-size:16px;padding:0 6px;gap:6px}.dock-main .btn-roll svg{width:20px;height:20px}
  .dock-main .btn-build{width:100%;height:40px;flex-direction:row;gap:6px}
  .pos-layer{place-items:center;padding:0}.pos-rig{scale:.64;transform-origin:center}
  .announce{top:calc(8px + var(--safe-t))!important;scale:.8}
  .toast{top:calc(8px + var(--safe-t));font-size:13px;padding:8px 12px}
  .overlay{padding:6px calc(6px + var(--safe-r)) 6px calc(6px + var(--safe-l))}
  .overlay .card-wrap{padding-top:34px}
  .kcard .head{padding:8px 12px 7px}.kcard .head h3{font-size:24px}.kcard.corner .head{padding-top:10px}
  .kcard .art{aspect-ratio:auto;height:92px}.kcard .art svg,.kcard .art img{height:100%;width:100%;object-fit:cover}
  .kcard td{padding:3px 8px}.kcard .price{margin:3px 0 5px;padding:7px 10px}.kcard .price b{font-size:20px}
  .kcard .actions{margin-top:8px;gap:8px}.kcard .actions .btn{min-height:42px;font-size:15px}
  .kcard .ctimer{width:50px!important;height:50px!important;top:-36px!important}.kcard .ctimer b{font-size:19px}
  .kcard.corner .cscroll{max-height:calc(100dvh - 34px)}
  .overlay.side{place-items:center end;padding:6px calc(6px + var(--safe-r)) 6px 6px}
  .overlay.side .sheet.build,.overlay.side .sheet.trade{width:min(440px,54vw);max-height:calc(100dvh - 12px)!important}
  .overlay.side .kcard.offer.incoming.compact{width:min(360px,54vw)}
  .afk-card{scale:.8}
  .chat-panel,body.chat-in-lobby .chat-panel{left:auto;right:calc(6px + var(--safe-r));top:calc(6px + var(--safe-t));bottom:calc(6px + var(--safe-b));width:min(340px,48vw);height:auto;min-height:0}
  .chat-peek{top:auto;bottom:calc(8px + var(--safe-b));right:calc(152px + var(--safe-r))}
  .coach{scale:.82;transform-origin:top center}
}
/* tablet dikey: HUD biraz daha büyük, tahta ortada */
@media (min-width:700px) and (max-width:1100px) and (orientation:portrait){
  .players{top:calc(74px + var(--safe-t));gap:10px;padding:4px 16px 8px;justify-content:center;flex-wrap:wrap;overflow:visible}
  .pcard{min-width:180px;padding:10px 12px}.pcard .av{width:40px;height:40px}.pcard .bal{font-size:20px}.pcard .pname{font-size:14px}
  .pcard .meta{display:flex}
  .dock-main .btn-roll{min-width:220px;min-height:62px;font-size:22px}
}

/* ===== v4.2: Hızlı oyna, oda listesi, lobi başlığı, görünürlük, paylaşım ===== */
.btn-quick{min-height:62px;font-size:21px}.btn-quick svg{width:24px;height:24px}
.menu.join-wide .menu-panel{width:min(100%,760px)}
.join-view{display:grid;gap:12px}
.jv-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.jv-head h2{margin:0}
.jv-body{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:14px;align-items:start}
.jv-side{display:grid;gap:12px}
.code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.code-row .btn{width:auto;min-height:48px;padding:0 16px}
.room-list{display:grid;gap:8px;max-height:min(52dvh,420px);overflow-y:auto;padding:2px;overscroll-behavior:contain;scrollbar-width:thin}
.rl-empty{display:grid;justify-items:center;gap:8px;padding:26px 12px;border-radius:18px;background:rgba(0,0,0,.18);text-align:center;color:var(--soft);font:700 13px/1.4 var(--body)}
.rl-empty b{color:var(--ink);font:800 15px/1.2 var(--display)}
.room-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;width:100%;padding:11px 12px;border-radius:16px;text-align:start;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.1);transition:background .15s,box-shadow .15s}
.room-row.vis-public{background:rgba(59,217,138,.1);box-shadow:inset 0 0 0 1.5px rgba(59,217,138,.35)}
.room-row:hover{background:rgba(245,194,74,.14);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.55)}
.rr-main{display:grid;gap:3px;min-width:0}
.rr-main b{font:800 16px/1.15 var(--display);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rr-main small{font:700 12px/1.2 var(--body);color:var(--soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rr-b{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border-radius:999px;font:800 11.5px/1 var(--body);font-style:normal;white-space:nowrap}
.rr-b svg{width:13px;height:13px}
.rr-b.pub{background:rgba(59,217,138,.2);color:#8FF5BF}.rr-b.pw{background:rgba(255,138,31,.2);color:#FFC48A}.rr-b.cd{background:rgba(111,183,255,.2);color:#B5D8FF}
.rr-n{display:grid;gap:4px;justify-items:end;min-width:44px}.rr-n b{font:800 15px/1 var(--display);color:var(--gold-hi)}
.rr-n i{display:block;width:44px;height:5px;border-radius:3px;background:rgba(255,255,255,.12);overflow:hidden;position:relative}
.rr-n i::after{content:"";position:absolute;inset:0 auto 0 0;width:calc(var(--f) * 100%);background:var(--ok)}
.lb-head{align-items:center}
.lb-title{display:flex;align-items:center;gap:8px;min-width:0;flex:1}
.lb-title h2{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb-title .lb-edit{width:34px;height:34px;border-radius:11px;flex:none}.lb-title .lb-edit svg{width:16px;height:16px}
.lb-code .lb-copy{width:32px;height:32px;border-radius:10px;margin-inline-start:2px}.lb-code .lb-copy svg{width:15px;height:15px}
.lb-send{width:auto!important;min-height:46px;padding:0 18px;font-size:16px}.lb-send svg{width:18px;height:18px}
.lb-full{padding:9px 14px;border-radius:14px;background:rgba(255,107,127,.15);color:#FFB3BF;font:800 14px/1 var(--display)}
.room-vis{display:grid;gap:8px;padding:10px 12px;border-radius:16px;background:rgba(0,0,0,.18);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.rv-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.rv-head b{display:flex;align-items:center;gap:6px;font:800 15px/1 var(--display);color:var(--gold-hi)}.rv-head b svg{width:17px;height:17px}
.rv-head small,.rv-help{font:700 12px/1.35 var(--body);color:var(--soft)}
.rv-seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-radius:14px}
.rv-seg button{display:flex;align-items:center;justify-content:center;gap:5px;padding:9px 6px;font-size:13px;white-space:nowrap}.rv-seg button svg{width:15px;height:15px;flex:none}
.share-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}
.share-opt{display:grid;justify-items:center;gap:8px;padding:14px 8px;border-radius:16px;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.12);color:var(--ink);font:800 14px/1.2 var(--display);text-decoration:none;text-align:center}
.share-opt:hover{background:rgba(245,194,74,.14)}
.share-opt svg{width:26px;height:26px;color:var(--gold-hi)}
.sh-ic{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font:900 16px/1 var(--display);color:#fff}
.sh-ic.wa{background:#25D366}.sh-ic.tg{background:#2AABEE}.sh-ic.ml{background:#6C7690}
.room-ask .text-in{margin:4px 0 10px}
.chat-muted{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 12px;border-bottom:1px solid rgba(255,255,255,.08);font:700 11.5px/1.2 var(--body);color:var(--soft)}
.chat-muted[hidden]{display:none}
.chat-muted button{padding:3px 8px;border-radius:999px;background:rgba(255,107,127,.18);color:#FFB3BF;font:800 11px/1.2 var(--body)}
.chat-mute{margin-inline-start:6px;width:22px;height:22px;display:grid;place-items:center;border-radius:7px;color:var(--dim);opacity:.7}
.chat-mute svg{width:14px;height:14px}.chat-mute:hover{opacity:1;color:#FFB3BF;background:rgba(255,107,127,.15)}
@media (max-width:760px){.jv-body{grid-template-columns:1fr}.room-list{max-height:40dvh}}

/* ===== v4.2: yatay telefon ve kısa ekran: menü, oda listesi, lobi, mağaza ===== */
@media (orientation:landscape) and (max-height:540px){
  .menu,.menu.lobby-wide,.menu.join-wide{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:14px;padding:calc(8px + var(--safe-t)) max(12px,calc(8px + var(--safe-r))) calc(8px + var(--safe-b)) max(12px,calc(8px + var(--safe-l)))}
  .hero{gap:4px}.hero-logo{width:clamp(70px,18dvh,120px)}.wordmark{font-size:clamp(26px,6.4vw,44px)}.tagline{font-size:11px;letter-spacing:.14em}
  .menu-panel{align-self:center;max-height:calc(100dvh - 16px - var(--safe-t) - var(--safe-b));overflow-y:auto;overscroll-behavior:contain;padding:14px 16px;gap:9px;border-radius:22px;scrollbar-width:thin;width:100%}
  .menu-panel h2{font-size:20px;margin:0}
  .menu-panel .btn{min-height:44px;font-size:16px}.btn-quick{min-height:50px!important;font-size:18px!important}
  .menu-row2{gap:8px}.menu-sep{margin:0 6px}.menu-foot{display:none}
  .field{gap:5px}.text-in{min-height:42px;padding-block:8px}
  .mp-help{font-size:12px;line-height:1.35}
  /* lobi ve oda listesi: logo gizlenir, panel tam genişlik */
  .menu.lobby-wide,.menu.join-wide{grid-template-columns:1fr}
  .menu.lobby-wide .hero,.menu.join-wide .hero{display:none}
  .menu.lobby-wide .menu-panel,.menu.join-wide .menu-panel{width:100%;max-width:980px;justify-self:center}
  .lobby{gap:8px}
  .lb-head{gap:8px;flex-wrap:nowrap}.lb-title h2{font-size:18px}
  .lb-code{padding:5px 8px;gap:6px}.lb-code b{font-size:19px}.lb-code small{display:none}
  .lb-send{min-height:40px;padding:0 12px;font-size:14px}
  .room-vis{padding:8px 10px;gap:6px}.rv-help{display:none}.rv-seg button{padding:7px 4px;font-size:12px}
  .lb-body{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:10px}
  .seats{grid-template-columns:1fr 1fr;gap:6px}
  .seat{min-height:0;grid-template-columns:40px minmax(0,1fr);justify-items:start;align-items:center;gap:2px 8px;padding:6px 8px;border-radius:14px}
  .seat img{width:40px;height:40px;grid-row:1/3}
  .seat-info{justify-items:start;text-align:start;gap:2px}.seat-info b{font-size:13px}.seat-info em{display:none}
  .seat-tools{grid-column:2;justify-content:flex-start}.seat-tools .btn-xs{min-height:24px;padding:0 7px;font-size:11px}
  .seat.empty{grid-template-columns:1fr;justify-items:center;text-align:center;outline-offset:-5px}.seat.empty .seat-info{justify-items:center;text-align:center}.seat.empty small{display:none}
  .mp-badge{font-size:10px;padding:3px 6px}
  .lb-side{gap:7px}.swatches{gap:6px}.swatch{width:32px;height:32px}.swatch::after{left:8px;top:10px;width:5px;height:7px;box-shadow:10px 0 0 #fff}
  .room-set{padding:8px 10px;gap:6px}.room-set h3{display:none}.room-set .seg button{padding:6px 8px;font-size:12px}
  .stepper button{width:32px;height:32px}.stepper output{min-width:36px;font-size:16px}.stepper{gap:6px}
  .lb-side .btn{min-height:42px}
  .join-view{gap:8px}.jv-body{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:10px}
  .room-list{max-height:calc(100dvh - 110px - var(--safe-t) - var(--safe-b))}
  .room-row{padding:8px 10px}.rr-main b{font-size:14px}
  .jv-side{gap:8px}
  /* mağaza: önizleme solda, liste sağda */
  .menu.shop-preview-mode{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .shop-live-hero{height:calc(100dvh - 16px - var(--safe-t) - var(--safe-b));min-height:0}
  .shop-preview-mode .menu-panel.shop{max-height:calc(100dvh - 16px - var(--safe-t) - var(--safe-b))}
  .sheet{padding:12px 14px}
  .share-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.share-opt{padding:10px 6px}
  .chat-fab{width:48px;height:48px;right:calc(10px + var(--safe-r));bottom:calc(10px + var(--safe-b))}
}
/* çok dar yatay telefonlar (≤ 700 px) */
@media (orientation:landscape) and (max-height:540px) and (max-width:700px){
  .menu{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}
  .rv-seg button svg{display:none}
  .lb-send span,.lb-send{font-size:13px}
}
.sheet-head h2 svg{width:22px;height:22px;flex:none;vertical-align:-4px}
.sheet-head h2{display:flex;align-items:center;gap:8px}
@media (orientation:landscape) and (max-height:540px){
  body.chat-in-lobby .chat-fab{right:auto;left:calc(10px + var(--safe-l))}
  body.chat-in-lobby .chat-peek.fab{right:auto;left:calc(10px + var(--safe-l));bottom:calc(66px + var(--safe-b))}
  .lb-side .field>span{display:none}
  .lb-side .mp-help{margin:0}
}
@media (orientation:landscape) and (max-height:540px){
  .wordmark{font-size:clamp(22px,4.6vw,44px);max-width:100%}
  .hero{min-width:0;overflow:hidden}
  /* koltuklar tek sütun satır: [piyon][ad + durum][araçlar] */
  .seats{grid-template-columns:1fr;gap:5px}
  .seat,.seat.empty{grid-template-columns:32px minmax(0,1fr) auto;grid-template-rows:auto;justify-items:start;align-items:center;gap:8px;padding:5px 8px;min-height:44px}
  .seat img{width:32px;height:32px;grid-row:auto}
  .seat-info{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;min-width:0}
  .seat-info b{flex:0 1 auto;min-width:0}
  .seat-tools{grid-column:auto;flex-wrap:nowrap;justify-self:end}
  .seat.empty{grid-template-columns:minmax(0,1fr) auto;justify-items:start;text-align:start}
  .seat.empty .seat-info{justify-items:start;text-align:start}
  .room-vis:has(.rv-seg) .rv-head{display:none}
}
@media (orientation:landscape) and (max-height:380px){
  .menu-panel .btn{min-height:40px;font-size:15px}.btn-quick{min-height:46px!important}
  .menu-panel{gap:7px;padding:10px 12px}
  .hero-logo{width:64px}
}
@media (orientation:landscape) and (max-height:540px){
  .menu-panel .seat-tools .btn{min-height:26px;height:26px;padding:0 8px;font-size:11.5px;border-radius:9px}
  .menu-panel .rv-seg button,.menu-panel .room-set .seg button{min-height:0}
  body.chat-in-lobby .lobby{padding-bottom:48px}
  body.chat-in-lobby .chat-fab{width:44px;height:44px}
}
@media (orientation:landscape) and (max-height:540px){
  .menu-panel.shop .shop-awning,.menu-panel.shop .shelp,.menu-panel.shop .fair{display:none}
  .menu-panel.shop .shop-head{margin:0}.menu-panel.shop .shop-head h2{font-size:18px}
  .menu-panel.shop .jeton{padding:6px 10px}
  .menu-panel.shop .spv{grid-template-columns:72px 1fr;gap:8px;padding:8px}
  .menu-panel.shop .spv3d,.menu-panel.shop .spvsvg{width:72px;height:72px}.menu-panel.shop .spvimg{width:72px}
  .menu-panel.shop .sgrid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:none}
  .set-row{padding:8px 0}.sheet-head{margin-bottom:6px}
}
/* v4.3: yatay telefonda menü dikeyde ortalı; mağazada sayfa kaymaz, yalnız liste kendi içinde kayar */
@media (orientation:landscape) and (max-height:540px){
  .menu,.menu.lobby-wide,.menu.join-wide,.menu.shop-preview-mode{align-content:center;justify-content:center;overflow:hidden;height:100dvh;min-height:0}
  .menu-panel{justify-self:center;align-self:center;max-width:560px}
  .menu.lobby-wide .menu-panel,.menu.join-wide .menu-panel{max-width:980px}
  .shop-preview-mode .menu-panel.shop{overflow-y:auto;max-width:none;align-self:stretch}
  .menu.shop-preview-mode{align-items:stretch}
  .shop-live-hero{align-self:stretch;height:auto}
}
/* v4.3: yatay telefonda mağaza paneli: üstte jeton + Geri, sekmeler, seçili eşya, altta kendi içinde kayan eşya ızgarası */
@media (orientation:landscape) and (max-height:540px){
  .shop-preview-mode .menu-panel.shop{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto minmax(0,1fr);grid-template-areas:"jeton back" "tabs tabs" "spv spv" "grid grid";height:calc(100dvh - 16px - var(--safe-t) - var(--safe-b));overflow:hidden;gap:7px}
  .menu-panel.shop .shop-head{display:none}
  .menu-panel.shop .jeton{grid-area:jeton;padding:5px 10px;min-height:0}.menu-panel.shop .jeton small{display:none}
  .menu-panel.shop>[data-go="main"]{grid-area:back;width:auto;min-height:38px!important;padding:0 16px}
  .menu-panel.shop .stabs{grid-area:tabs}.menu-panel.shop .stabs button{padding:7px 6px;font-size:14px}
  .menu-panel.shop .spv{grid-area:spv;grid-template-columns:52px minmax(0,1fr);align-items:center;padding:6px 8px}
  .menu-panel.shop .spvimg,.menu-panel.shop .spvsvg,.menu-panel.shop .spv3d{width:52px;height:52px}
  .menu-panel.shop .spvinfo{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
  .menu-panel.shop .spvinfo>b{font-size:15px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .menu-panel.shop .sact{display:flex;align-items:center;gap:6px}.menu-panel.shop .sact .btn{min-height:36px!important;width:auto;padding:0 12px;font-size:13px}.menu-panel.shop .sact .need{display:none}
  .menu-panel.shop .sgrid{grid-area:grid;min-height:0;overflow-y:auto;overscroll-behavior:contain;align-content:start;grid-template-columns:repeat(auto-fill,minmax(86px,1fr))}
}
/* v4.3: uzun kart yatay ekranda iki sütun (fitOverlay 'kc2' sınıfını ve yüksekliği verir) */
.kcard.kc2{width:min(680px,calc(100vw - 28px))!important;max-width:none}
.kcard.kc2:not(.corner),.kcard.corner.kc2 .cscroll{display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-start;column-gap:14px;height:var(--kc2h);max-height:none;overflow:visible}
.kcard.kc2:not(.corner)>*:not(.x):not(.ctimer),.kcard.corner.kc2 .cscroll>*{width:calc(50% - 7px);box-sizing:border-box;flex:none}
.kcard.kc2 .art{aspect-ratio:auto;height:auto;flex:0 1 auto;min-height:70px;max-height:42%}
.kcard.kc2 .art svg{height:100%;min-height:70px}
.kcard.kc2 .actions{margin-top:auto}
.kcard.kc2:not(.corner),.kcard.corner.kc2 .cscroll{position:relative}
/* ayarlar ve benzeri kısa satırlı sayfalar yatay telefonda iki sütun: kaydırmadan sığar */
@media (orientation:landscape) and (max-height:540px){
  .sheet:has(> .set-row){width:min(760px,calc(100vw - 20px));display:grid;grid-template-columns:1fr 1fr;column-gap:18px;align-content:start}
  .sheet:has(> .set-row)>.sheet-head{grid-column:1/-1}
  .sheet .set-row{grid-template-columns:minmax(0,1fr) auto;padding:7px 0;gap:8px}
  .sheet .set-row>div small{font-size:11px}
  .sheet .set-row input[type=range]{width:120px}
}
.kcard.kc2 .x{top:-14px;right:-12px}
/* v4.3: oda listesi dolmasa da geniş; iki seçenekli görünürlük; ad sorusu; paylaşım rozetleri */
.room-list{min-height:min(48dvh,340px);align-content:start}
.room-list .rl-empty{min-height:min(40dvh,280px);align-content:center}
.rv-seg.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.name-ask .code-row .btn{width:52px;padding:0}.name-ask .code-row .btn svg{width:22px;height:22px}
.name-ask .text-in{font:800 18px/1.2 var(--display)}
.sh-ic.ig{background:linear-gradient(45deg,#F58529,#DD2A7B 50%,#8134AF)}
.sh-img{width:34px;height:34px;object-fit:contain}
@media (orientation:landscape) and (max-height:540px){
  .room-list{min-height:calc(100dvh - 110px - var(--safe-t) - var(--safe-b))}
  .menu.join-wide .menu-panel{height:calc(100dvh - 16px - var(--safe-t) - var(--safe-b))}
  .share-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* v4.3 takım modu (2v2) */
.team-head{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 6px;border-radius:12px;background:color-mix(in srgb,var(--tc) 22%,transparent);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--tc) 60%,transparent);min-width:0}
.team-head.t0{--tc:#4FC3F7}.team-head.t1{--tc:#FF8A5B}
.team-head b{font:900 13px/1 var(--display);color:var(--tc);white-space:nowrap}
.team-head .btn-xs{min-height:24px;padding:0 8px;font-size:11px}
.team-rules{display:block;line-height:1.35}
.tchip{display:inline-grid;place-items:center;flex:none;width:18px;height:18px;border-radius:6px;font:900 11px/1 var(--display);color:#08131f;background:var(--tc);vertical-align:middle}
.tchip.t0{--tc:#4FC3F7}.tchip.t1{--tc:#FF8A5B}
.pcard .gift-btn{flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:0;padding:0;cursor:pointer;background:linear-gradient(180deg,#FFE08A,#F5B83A);color:#3a2500;box-shadow:0 2px 0 #b07a12}
.pcard .gift-btn svg{width:15px;height:15px}
.pcard .gift-btn[hidden]{display:none}
.gift-sheet{display:grid;gap:12px;max-width:380px;text-align:center}
.gift-sheet p{margin:0;color:var(--soft)}
.gift-sheet .gift-debt{color:#FFB37A;font-weight:800;display:flex;gap:6px;align-items:center;justify-content:center}
.gift-sheet .gift-debt svg{width:16px;height:16px}
.gift-quick{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.gift-quick .btn{min-height:36px;padding:0 12px}
.gift-step{justify-self:center}
.gift-step output{min-width:110px;text-align:center;font:800 20px/1 var(--display)}
.rank-list .tchip{margin-inline-end:4px}
@media (orientation:landscape) and (max-height:540px){.team-head{padding:2px 5px}.team-head b{font-size:11px}.gift-sheet{gap:8px}}

/* v4.3 hesaplar ve dereceli */
.menu-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
.menu-head h2{margin:0;min-width:0}
.menu-head #acct-slot{display:flex;flex:0 1 auto;min-width:0;max-width:64%}.menu-head #acct-slot:empty{display:none}
.acct-chip{display:inline-flex;align-items:center;gap:7px;max-width:100%;min-width:0;min-height:36px;padding:0 12px 0 8px;border:0;border-radius:999px;cursor:pointer;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.18);color:var(--ink);font:800 13px/1 var(--body)}
.acct-chip svg{width:18px;height:18px;flex:none}
.acct-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.acct-chip.in{background:rgba(245,194,74,.12);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.4)}
.acct-chip .tier-chip{flex:none}
.av{display:inline-grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;background:linear-gradient(180deg,#FFE08A,#F5B83A);color:#3a2500;font:900 13px/1 var(--display);font-style:normal}
.av.big{width:48px;height:48px;font-size:22px}
.menu-row3{display:grid;grid-template-columns:1fr 1fr auto;gap:12px}
.menu-row3 .btn{min-width:0;padding:0 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.btn-lang{min-width:74px}
.btn-ranked{background:linear-gradient(180deg,#5A3E9A,#3D2A6E);box-shadow:inset 0 0 0 1.5px rgba(200,170,255,.35),0 4px 0 #261844}
.tier-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px 3px 6px;border-radius:999px;font:900 11px/1 var(--body);color:#0b1224;background:var(--tc);white-space:nowrap}
.tier-chip svg{width:12px;height:12px}
.acct-sheet{display:grid;gap:10px;max-width:420px;width:min(420px,calc(100vw - 24px))}
.acct-why,.acct-note{margin:0;color:var(--soft);font:700 13px/1.4 var(--body)}
.acct-note{font-size:12px}
.acct-providers{display:grid;gap:8px}
.acct-providers .btn{justify-content:center;gap:10px}
.btn-light{background:#fff;color:#1f2a44;box-shadow:0 4px 0 #b9c2d6}
.btn-fb{background:#1877F2;color:#fff;box-shadow:0 4px 0 #0d4fa8}
.bi{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;font:900 14px/1 Arial,sans-serif}
.bi.g{background:#4285F4;color:#fff}
.bi.f{background:rgba(255,255,255,.22);color:#fff}
.acct-or{display:flex;align-items:center;gap:10px;color:var(--dim);font:800 12px/1 var(--body)}
.acct-or::before,.acct-or::after{content:"";flex:1;height:1px;background:rgba(255,255,255,.14)}
.acct-form{display:grid;gap:8px;margin:0}
.acct-links{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.link-btn{border:0;background:none;padding:4px 2px;color:var(--sky);font:800 13px/1.2 var(--body);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.acct-guest{min-height:40px}
.acct-legal{color:var(--dim);font:700 11px/1.35 var(--body)}
.acct-legal a{color:var(--soft)}
.btn.busy{opacity:.6;pointer-events:none}
.btn.danger{color:#FFB3BF}
.prof-top{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px}
.prof-top>div{display:grid;gap:3px;min-width:0}
.prof-name{font:900 20px/1.1 var(--display);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.prof-top small{color:var(--dim);font:700 12px/1.2 var(--body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acct-warn{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;border-radius:14px;background:rgba(255,179,122,.12);box-shadow:inset 0 0 0 1.5px rgba(255,179,122,.4);color:#FFD2B0;font:800 12px/1.35 var(--body)}
.acct-warn svg{width:18px;height:18px;flex:none}.acct-warn span{flex:1 1 180px}
.season-card{display:grid;gap:8px;padding:12px 14px;border-radius:16px;background:linear-gradient(180deg,rgba(120,90,200,.22),rgba(40,30,90,.3));box-shadow:inset 0 0 0 1.5px rgba(200,170,255,.3)}
.sc-head{display:flex;justify-content:space-between;gap:8px;color:var(--soft);font:800 12px/1.2 var(--body)}
.sc-main{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.sc-main>b{font:900 28px/1 var(--display);color:var(--gold-hi)}
.sc-main>small{color:var(--soft);font:800 12px/1 var(--body)}
.sc-gw{margin-left:auto;color:var(--soft);font:800 12px/1 var(--body)}
.sc-bar,.cr-bar{height:7px;border-radius:99px;background:rgba(255,255,255,.1);overflow:hidden}
.sc-bar i,.cr-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#B98BFF,#F5C24A)}
.sc-next{color:var(--dim);font:700 11px/1.2 var(--body)}
.sc-stats{display:flex;flex-wrap:wrap;gap:12px;color:var(--soft);font:700 12px/1 var(--body)}
.sc-stats b{color:var(--ink)}
.credit{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 10px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.05)}
.credit>span{display:flex;align-items:center;gap:6px;font:800 13px/1 var(--body)}.credit>span svg{width:16px;height:16px}
.credit>b{font:900 16px/1 var(--display)}
.credit .cr-bar,.credit small{grid-column:1/-1}
.credit small{color:var(--dim);font:700 11px/1.35 var(--body)}
.credit.ok .cr-bar i{background:linear-gradient(90deg,#3BD98A,#9BF0C4)}
.credit.warn .cr-bar i{background:linear-gradient(90deg,#FFB35C,#FFD08A)}
.credit.bad .cr-bar i{background:linear-gradient(90deg,#FF6B7F,#FFA1AE)}
.ranked{display:grid;gap:10px;min-width:0}
.rk-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.rk-head h2,.ranked h2{margin:0;display:flex;align-items:center;gap:8px}
.ranked h2 svg{width:26px;height:26px;color:#D7B8FF}
.rk-head small{color:var(--soft);font:800 12px/1 var(--body)}
.season-card.compact{padding:10px 12px;gap:6px}.season-card.compact .sc-main>b{font-size:24px}
.rk-rules{margin:0;padding-left:18px;color:var(--soft);font:700 12px/1.45 var(--body)}
.rk-block{display:grid;gap:4px;padding:10px 12px;border-radius:14px;background:rgba(255,107,127,.1);box-shadow:inset 0 0 0 1.5px rgba(255,107,127,.35)}
.rk-block p,.rk-msg{margin:0;color:#FFC2CB;font:800 12px/1.4 var(--body)}
.rk-msg{color:var(--gold-hi)}
.rk-time{margin:0;text-align:center;font:900 30px/1 var(--display);color:var(--gold-hi)}
.rk-queue{justify-items:center;text-align:center}
.rk-lobby .seats{grid-template-columns:1fr 1fr}
.board-sheet{display:grid;gap:10px;width:min(460px,calc(100vw - 24px))}
.board{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-height:min(52dvh,420px);overflow:auto}
.board li,.rk-rows li{display:grid;grid-template-columns:30px 1fr auto auto;align-items:center;gap:8px;padding:6px 10px;border-radius:10px;background:rgba(255,255,255,.04);font:800 13px/1.2 var(--body)}
.board li.me,.rk-rows li.me{background:rgba(245,194,74,.14);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.45)}
.board li b,.rk-rows li b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.board .rk,.rk-rows .rk{color:var(--dim);font:900 13px/1 var(--display);text-align:center}
.board-me{margin:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font:800 13px/1 var(--body)}
.rk-final{display:grid;gap:8px;justify-items:stretch;text-align:start}
.rk-final>span{color:var(--soft);font:800 13px/1.2 var(--body)}
.rk-mine{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.rk-mine>b{font:900 24px/1 var(--display)}
.rk-mine span{display:inline-flex;align-items:center;gap:4px;font:800 14px/1 var(--display);color:var(--gold-hi)}
.rk-rows{list-style:none;margin:0;padding:0;display:grid;gap:3px}
.rk-rows li{grid-template-columns:24px 1fr auto auto}
.rk-rows small{color:var(--dim);font:800 11px/1 var(--body)}
b.up{color:var(--ok)}b.down{color:var(--bad)}
.mp-spin.small{width:22px;height:22px;border-width:3px}
@media (orientation:landscape) and (max-height:540px){
  .menu-head h2{font-size:20px}.acct-chip{min-height:30px;font-size:12px}
  .menu-row3{gap:8px}
  .acct-sheet{gap:7px}.acct-why{font-size:12px}
  .ranked{gap:7px}.rk-rules{display:none}.rk-time{font-size:24px}
  .rk-lobby .seats{grid-template-columns:repeat(4,minmax(0,1fr))}
  .board{max-height:46dvh}
}
@media (max-width:420px){.menu-row3{grid-template-columns:1fr 1fr}.menu-row3 .btn-lang{grid-column:1/-1}}
.acct-cols{display:grid;gap:10px}.acct-col{display:grid;gap:8px;align-content:start;min-width:0}
@media (orientation:landscape) and (max-height:540px){
  .acct-sheet:has(.acct-cols){width:min(760px,calc(100vw - 24px));max-width:760px}
  .acct-cols{grid-template-columns:1fr 1fr;gap:14px}
  .acct-sheet .btn{min-height:40px}.acct-sheet .text-in{min-height:40px}
  .prof .season-card{padding:8px 10px}
}
@media (orientation:landscape) and (max-height:540px){
  .prof .acct-warn{padding:7px 8px}.prof .credit small{font-size:10.5px}
  .prof .sc-main>b{font-size:22px}.prof .av.big{width:40px;height:40px;font-size:18px}
}
@media (orientation:landscape) and (max-height:360px){.prof .credit small,.prof .sc-next{display:none}.prof .acct-warn span{font-size:11px}}
/* v4.3.1 köşe kartı: tek sütunda eski sıra; iki sütunda sol taraf (başlık + resim + özet) sağ taraf kadar uzar, boşluk kalmaz */
.kcard.corner .cl,.kcard.corner .cr{display:contents}
.kcard.corner.kc2 .cscroll{display:grid!important;grid-template-columns:1fr 1fr;column-gap:14px;height:auto!important;min-height:0}
.kcard.corner.kc2 .cscroll>*{width:auto!important}
.kcard.corner.kc2 .cl,.kcard.corner.kc2 .cr{display:flex;flex-direction:column;min-height:0;min-width:0}
.kcard.corner.kc2 .cl .art{flex:1 1 auto;max-height:none;min-height:120px}
.kcard.corner.kc2 .cl .art svg{position:absolute;inset:0;width:100%;height:100%}
.kcard.corner.kc2 .cl .art{position:relative}
.kcard.corner.kc2 .cl .cstat{margin-bottom:0}
.kcard.corner.kc2 .cr .actions{margin-top:auto;padding-top:8px}
/* v4.3.1 yatay telefon: dört oyuncu kartı dört köşede, Zar At alt ortada (tahta şeridin üstüne sığar) */
@media (orientation:landscape) and (max-height:540px){
  .game .players{position:absolute;inset:calc(6px + var(--safe-t)) calc(6px + var(--safe-r)) calc(6px + var(--safe-b)) calc(6px + var(--safe-l));width:auto;display:block;pointer-events:none;padding:0}
  .game .players .pcard{position:absolute!important;width:150px;pointer-events:auto;margin:0!important}
  .game .players .pcard.pc-0{left:0!important;top:0!important;right:auto!important;bottom:auto!important}
  .game .players .pcard.pc-1{right:0!important;top:46px!important;left:auto!important;bottom:auto!important}
  .game .players .pcard.pc-2{left:0!important;bottom:0!important;top:auto!important;right:auto!important}
  .game .players .pcard.pc-3{right:0!important;bottom:0!important;top:auto!important;left:auto!important}
  .game .dock{left:50%!important;right:auto!important;transform:translateX(-50%)!important;bottom:calc(6px + var(--safe-b));width:auto;max-width:calc(100% - 330px);display:flex;flex-direction:row;align-items:center;gap:6px}
  .game .dock .feed{order:0;min-width:0;max-width:200px}
  .game .dock .feed div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .game .dock .clock{order:1;padding:4px 8px}
  .game .dock-main{order:2;flex-direction:row;align-items:center;padding:4px;gap:4px;border-radius:16px}
  .game .dock-main .btn-roll{width:auto;min-width:136px;min-height:44px;font-size:16px}
  .game .dock-main .btn-build{width:auto;height:44px;padding:0 10px;flex-direction:column;gap:1px}
  .coach{top:calc(6px + var(--safe-t));bottom:auto;left:50%;transform:translateX(-50%);width:min(440px,calc(100vw - 340px));scale:1}
  .coach.busy{display:none}
}
@media (orientation:landscape) and (max-height:540px) and (max-width:760px){
  .game .dock .feed{display:none}
  .game .players .pcard{width:136px}
  .game .dock{max-width:calc(100% - 300px)}
}
.rules-list{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--ink);font:700 14px/1.4 var(--body)}
.team-rules-btn{justify-self:start}

/* v4.3.1 dereceli sayfası: podyum + senin kartın solda, 4.–100. sıra sağda */
.menu.ranked-mode{grid-template-columns:1fr;justify-items:center;overflow:hidden}
.menu.ranked-mode .hero{display:none}
.menu.ranked-mode .menu-panel{width:min(1080px,100%);max-height:calc(100dvh - var(--safe-t) - var(--safe-b) - 36px);padding:18px 20px;display:flex;flex-direction:column;min-height:0}
.rk-page{display:flex;flex-direction:column;gap:12px;min-height:0;flex:1}
.rk-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rk-top h2{margin:0;display:flex;align-items:center;gap:8px}.rk-top h2 svg{width:26px;height:26px;color:#D7B8FF}
.rk-top small{color:var(--soft);font:800 12px/1 var(--body);margin-right:auto}
.rk-top .btn-sm{min-height:36px;padding:0 12px}
.rk-top .btn-sm svg{width:16px;height:16px}
.rk-body{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:16px;min-height:0;flex:1}
.rk-left{display:flex;flex-direction:column;gap:10px;min-height:0}
.rk-right{display:flex;flex-direction:column;gap:6px;min-height:0}
.podium{display:grid;grid-template-columns:1fr 1.15fr 1fr;align-items:end;gap:8px;padding:6px 4px 0}
.pd{display:grid;justify-items:center;gap:3px;border:0;background:none;color:var(--ink);cursor:pointer;padding:0;min-width:0;font:inherit}
.pd.empty{cursor:default;opacity:.45}
.pd-pawn{position:relative;display:grid;place-items:end center;width:100%;height:110px}
.pd1 .pd-pawn{height:140px}
.pd-pawn img{height:100%;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(0,0,0,.4))}
.pd-crown{position:absolute;top:-6px;left:50%;transform:translateX(-50%);width:30px;height:30px;color:#F5C24A;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}
.pd-crown svg{width:100%;height:100%}
.pd>b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:800 15px/1.1 var(--display)}
.pd1>b{font-size:17px}
.pd-elo{display:flex;align-items:center;gap:5px}.pd-elo em{font:800 13px/1 var(--display);font-style:normal;color:var(--gold-hi)}
.pd-step{width:100%;display:grid;place-items:center;border-radius:12px 12px 4px 4px;background:linear-gradient(180deg,color-mix(in srgb,var(--pc,#8FA3C4) 55%,#1A3668),#142B55);box-shadow:inset 0 2px 0 rgba(255,255,255,.18)}
.pd-step i{font:900 22px/1 var(--display);font-style:normal;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.3)}
.pd1 .pd-step{height:64px;background:linear-gradient(180deg,#F5C24A,#B9851A)}.pd2 .pd-step{height:46px;background:linear-gradient(180deg,#DDE5F0,#8A96A8)}.pd3 .pd-step{height:34px;background:linear-gradient(180deg,#E0A070,#9A5A2E)}
.pd:not(.empty):hover .pd-pawn img{transform:translateY(-3px);transition:transform .15s}
.rk-me{display:grid;gap:8px;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.3)}
.rk-me.locked{grid-template-columns:auto 1fr auto;align-items:center}
.rk-me.locked>svg{width:26px;height:26px;color:var(--soft)}
.rk-me.locked b{display:block;font:800 15px/1.2 var(--display)}.rk-me.locked small{color:var(--soft);font:700 12px/1.3 var(--body)}
.rk-me-top{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border:0;background:none;color:var(--ink);padding:0;cursor:pointer;text-align:start;font:inherit}
.rk-me-top img,.rk-me-top .av-dot{width:48px;height:48px;object-fit:contain}
.rk-me-top b{display:block;font:800 16px/1.1 var(--display)}.rk-me-top small{color:var(--soft);font:800 12px/1.2 var(--body)}
.me-elo{display:flex;align-items:center;gap:6px}.me-elo b{font:900 20px/1 var(--display);color:var(--gold-hi)}
.rk-queue{justify-items:center;text-align:center}
.board{list-style:none;margin:0;padding:0 4px 0 0;display:grid;gap:4px;overflow:auto;min-height:0;flex:1;overscroll-behavior:contain;max-height:none}
.board li button{width:100%;display:grid;grid-template-columns:30px 32px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:5px 10px;border:0;border-radius:12px;background:rgba(255,255,255,.05);color:var(--ink);font:800 13px/1.2 var(--body);cursor:pointer;text-align:start}
.board li button:hover{background:rgba(255,255,255,.1)}
.board li.me button{background:rgba(245,194,74,.14);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.45)}
.board li b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.board .rk{color:var(--dim);font:900 13px/1 var(--display);text-align:center}
.b-pawn{width:32px;height:32px;object-fit:contain}
.av-dot{display:inline-block;border-radius:50%;background:var(--pc)}.b-pawn.av-dot{width:24px;height:24px}
.board-mine{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px;padding:7px 10px;border-radius:12px;background:rgba(245,194,74,.14);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.45);font:800 13px/1 var(--body)}
.board-empty{margin:auto;color:var(--soft);font:800 14px/1.4 var(--body);text-align:center}
.tier-legend{color:var(--dim);font:700 11px/1.3 var(--body)}
.acct-off{margin:0;padding:8px 10px;border-radius:12px;background:rgba(111,183,255,.1);box-shadow:inset 0 0 0 1.5px rgba(111,183,255,.3);color:#CFE3FF;font:800 12px/1.35 var(--body)}
/* oyuncu profili */
.player-sheet{width:min(720px,calc(100vw - 24px));display:grid;gap:10px}
.pl-main{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;align-items:stretch}
.pl-hero{display:grid;justify-items:center;align-content:center;gap:6px;padding:12px;border-radius:18px;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--pc) 35%,transparent),rgba(255,255,255,.03) 70%)}
.pl-pawn{height:170px;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 10px 12px rgba(0,0,0,.4))}
.pl-pawn.av-dot{width:90px;height:90px}
.pl-name{font:900 22px/1.1 var(--display)}
.pl-rank{display:flex;align-items:center;gap:8px}.pl-rank b{font:900 22px/1 var(--display);color:var(--gold-hi)}
.pl-side{display:grid;gap:10px;align-content:start}
.pl-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:6px}
.pl-stats>div{display:grid;gap:3px;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.06)}
.pl-stats small{color:var(--soft);font:800 11px/1 var(--body)}.pl-stats b{font:800 15px/1.1 var(--display)}
.pl-gear{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.pl-gear>div{display:grid;justify-items:center;gap:3px;padding:8px 6px;border-radius:12px;background:rgba(255,255,255,.06);text-align:center;min-width:0}
.pl-gear img,.pl-gear svg{width:40px;height:40px;object-fit:contain}
.pl-gear small{color:var(--soft);font:800 10px/1 var(--body);letter-spacing:.04em}.pl-gear b{font:800 12px/1.15 var(--display);overflow:hidden;text-overflow:ellipsis;max-width:100%}
/* sözleşme onayı */
.consent{display:grid;gap:6px}
.ck{display:grid;grid-template-columns:22px 1fr;align-items:start;gap:8px;padding:6px 8px;border:0;border-radius:10px;background:rgba(255,255,255,.05);color:var(--ink);font:700 12.5px/1.35 var(--body);text-align:start;cursor:pointer}
.ck i{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;box-shadow:inset 0 0 0 2px rgba(255,255,255,.35)}
.ck.on i{background:var(--ok);box-shadow:none;color:#06301b}.ck i svg{width:15px;height:15px}
.ck span{text-decoration:underline;text-decoration-color:rgba(255,255,255,.3);text-underline-offset:3px}
.consent.shake{animation:ckShake .45s}
@keyframes ckShake{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
.acct-providers.locked .btn,.acct-form.locked .btn{opacity:.55}
.legal-layer{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:12px;background:rgba(3,8,20,.66);backdrop-filter:blur(4px)}
.legal-sheet{width:min(640px,100%);max-height:calc(100dvh - 24px);display:flex;flex-direction:column;gap:8px}
.legal-upd{color:var(--dim);font:700 11px/1 var(--body)}
.legal-body{flex:1;min-height:0;overflow:auto;padding:4px 10px 4px 2px;overscroll-behavior:contain;color:#DCE5FA;font:600 14px/1.55 var(--body)}
.legal-body h3{margin:14px 0 4px;font:800 15px/1.2 var(--display);color:var(--gold-hi)}.legal-body h3:first-child{margin-top:2px}
.legal-body p{margin:0 0 8px}
.legal-foot{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.legal-hint{color:var(--soft);font:700 12px/1.2 var(--body);margin-right:auto}
@media (orientation:landscape) and (max-height:540px){
  .menu.ranked-mode{padding:6px 10px}
  .menu.ranked-mode .menu-panel{max-height:calc(100dvh - 12px);padding:10px 12px;border-radius:20px}
  .rk-page{gap:6px}.rk-top h2{font-size:18px}.rk-top .btn-sm{min-height:30px}
  .rk-body{gap:10px}
  .pd-pawn{height:64px}.pd1 .pd-pawn{height:80px}.pd>b{font-size:12px}.pd1>b{font-size:13px}.pd .tier-chip{display:none}
  .pd1 .pd-step{height:34px}.pd2 .pd-step{height:24px}.pd3 .pd-step{height:18px}.pd-step i{font-size:15px}
  .rk-me{padding:7px 9px;gap:5px}.rk-me-top img,.rk-me-top .av-dot{width:36px;height:36px}.rk-me .btn-quick{min-height:40px}
  .rk-block p{font-size:11px}.tier-legend{display:none}
  .board li button{padding:3px 8px;grid-template-columns:24px 26px minmax(0,1fr) auto auto}.b-pawn{width:26px;height:26px}
  .pl-pawn{height:110px}.pl-main{gap:10px}.player-sheet{gap:6px}
  .legal-body{font-size:13px}
}
@media (max-width:700px) and (orientation:portrait){.rk-body,.pl-main{grid-template-columns:1fr}}
.menu.ranked-mode .menu-panel{max-width:1080px!important;width:100%;overflow:hidden!important}
.rk-top .btn{width:auto!important}
.rk-me.locked .btn{width:auto}
@media (orientation:landscape) and (max-height:540px){
  .menu.ranked-mode .menu-panel{max-width:none!important;height:calc(100dvh - 12px - var(--safe-t) - var(--safe-b));align-self:center}
  .menu.ranked-mode .menu-panel .btn.btn-sm{min-height:30px;font-size:13px}
}
.board li{display:block;padding:0;background:none;box-shadow:none}
.pd-pawn img{height:110px;width:auto;max-width:100%}
.pd1 .pd-pawn img{height:140px}
.pl-rank>span:not(.tier-chip){color:var(--soft);font:800 13px/1 var(--body)}
.pl-rank .tier-chip{color:#0b1224}
@media (orientation:landscape) and (max-height:540px){.pd-pawn img{height:64px}.pd1 .pd-pawn img{height:80px}}
.legal-body:focus{outline:none}

/* v4.5 · Hapishane seçimi: çift dene / kefalet / kart */
.jail-sheet{max-width:440px}
.jail-sheet h2{display:flex;align-items:center;gap:8px}.jail-sheet h2 svg{width:24px;height:24px}
.jail-lead{margin:0 60px 10px 0;color:var(--soft);font-weight:800;line-height:1.35}
.jail-tries{display:flex;align-items:center;gap:6px;margin:0 0 12px}
.jail-tries i{width:26px;height:8px;border-radius:5px;background:rgba(255,255,255,.14)}
.jail-tries i.used{background:#7d879e}.jail-tries i.now{background:var(--gold-hi);box-shadow:0 0 10px rgba(255,210,90,.6)}
.jail-tries small{margin-left:6px;color:var(--soft);font-weight:900;font-size:12px}
.jail-opts{display:grid;gap:8px}.jail-opts .btn{width:100%}
.jail-opts .btn[disabled]{opacity:.45}
.jail-note{margin:10px 0 0;color:var(--soft);font-size:12.5px;font-weight:700}

/* v4.5 · oyun içi menü düğmesi: dikey ekranda dört düğme üstte yan yana (menü düğmesi gizli) */
.ta-more{display:none}
.ta-items{display:contents}
.side-chat{display:none}
/* v4.5 · yatay ekran (telefon, tablet, bilgisayar): menü düğmesi sol ortada (açılınca ikisi üstte ikisi altta), sohbet sağ ortada */
@media (orientation:landscape){
  .game .top-actions{position:fixed;left:calc(16px + var(--safe-l));top:50%;translate:0 -50%;display:block;width:48px;height:48px;z-index:6}
  .game .ta-more{display:grid;place-items:center;width:100%;height:100%;position:relative;z-index:2}
  .game .ta-more svg{width:22px;height:22px}
  .game .top-actions.open .ta-more{background:linear-gradient(180deg,var(--gold-hi),var(--gold));color:#2A1A00}
  .game .ta-items{position:absolute;inset:0;display:block;pointer-events:none}
  .game .ta-items>.icon-btn{position:absolute;inset:0;width:100%;height:100%;opacity:0;scale:.5;pointer-events:none;transition:translate .22s cubic-bezier(.2,1.3,.4,1),opacity .15s,scale .2s}
  .game .top-actions.open .ta-items>.icon-btn{opacity:1;scale:1;pointer-events:auto}
  .game .top-actions.open .ta-items>:nth-child(1){translate:0 calc(-200% - 12px)}
  .game .top-actions.open .ta-items>:nth-child(2){translate:0 calc(-100% - 6px)}
  .game .top-actions.open .ta-items>:nth-child(3){translate:0 calc(100% + 6px)}
  .game .top-actions.open .ta-items>:nth-child(4){translate:0 calc(200% + 12px)}
  .game .side-chat{display:block;position:fixed;right:calc(16px + var(--safe-r));top:50%;translate:0 -50%;z-index:6}
  .game .side-chat .icon-btn{width:48px;height:48px}
  body:has(.game) .chat-peek:not(.fab){top:50%;bottom:auto;right:calc(74px + var(--safe-r));translate:0 -50%}
  :dir(rtl) .game .top-actions{left:auto;right:calc(16px + var(--safe-r))}
  :dir(rtl) .game .side-chat{right:auto;left:calc(16px + var(--safe-l))}
  :dir(rtl) body:has(.game) .chat-peek:not(.fab){right:auto;left:calc(74px + var(--safe-l))}
}
/* v4.5 · yatay telefon: dört oyuncu tam köşelerde; Zar At ve süre alt alta, tahtanın ortasındaki denizde (tapuların üstüne taşmaz) */
@media (orientation:landscape) and (max-height:540px){
  .game .players .pcard.pc-1{top:0!important}
  .game .topbar .brand{display:none}
  .game .top-actions{left:calc(6px + var(--safe-l));width:40px;height:40px}
  .game .ta-more svg{width:20px;height:20px}
  .game .side-chat{right:calc(6px + var(--safe-r))}
  .game .side-chat .icon-btn{width:40px;height:40px}
  body:has(.game) .chat-peek:not(.fab){right:calc(54px + var(--safe-r))}
  :dir(rtl) .game .top-actions{right:calc(6px + var(--safe-r))}
  :dir(rtl) .game .side-chat{left:calc(6px + var(--safe-l))}
  /* dock kutusu kalkar; çocukları tahtaya göre ayrı ayrı yerleşir (JS: --bx/--by düğme, --cy süre) */
  .game .dock{display:contents}
  .game .dock>*{z-index:6}
  .game.loading .dock>*{opacity:0}
  .game .dock-main{position:absolute;left:var(--bx,50%);top:var(--by,62%);transform:translate(-50%,-50%);padding:2px;gap:3px;border-radius:13px;background:rgba(10,22,48,.5);min-width:0}
  .game .dock-main .btn-roll{width:var(--brw,104px);max-width:var(--brw,104px);min-width:var(--brw,104px);min-height:34px;padding:0 9px;font-size:clamp(11px,3.4dvh,14px);line-height:1;border-radius:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}
  .game .dock-main .btn-roll svg{width:17px;height:17px;flex:none}
  .game .dock-main .btn-build{height:34px;width:34px;flex:none}
  .game .dock .clock{position:absolute;left:var(--bx,50%);top:var(--cy,74%);transform:translate(-50%,-50%);transform-origin:center;padding:2px 8px 4px;scale:.86;min-width:74px;box-sizing:border-box;will-change:filter}
  .game .dock .clock b{font-variant-numeric:tabular-nums}
  .game .dock .clock small{white-space:nowrap}
  .game .dock .feed{position:absolute;left:50%;bottom:calc(8px + var(--safe-b));transform:translateX(-50%);max-width:calc(100% - 330px);min-height:0;display:block}
  .game .dock .feed div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .coach{width:min(440px,calc(100vw - 340px))}
}
@media (orientation:landscape) and (max-height:540px) and (max-width:760px){
  .game .dock .feed{display:block;max-width:calc(100% - 300px)}
}
/* v4.5 · yatay telefonda Şans kartı gerçek kart oranında (63:88), ekranın ortasında; Devam düğmesi kartın içinde, en altta */
@media (orientation:landscape) and (max-height:540px){
  .flip{height:calc(100dvh - 22px - var(--safe-t) - var(--safe-b))!important;max-height:calc(100dvh - 22px - var(--safe-t) - var(--safe-b))!important;width:auto!important;aspect-ratio:63/88!important;max-width:min(42vw,330px)}
  .card-wrap:has(>.flip){padding:0!important}
  .flip>div{border-radius:18px}
  .chance-front{padding:9px!important;gap:5px!important;grid-template-rows:auto auto minmax(0,1fr) auto auto!important;min-height:0;overflow:hidden}
  .chance-front .ch-head{font-size:15px;padding:6px;border-radius:11px}
  .chance-front .ch-art{border-radius:11px}.chance-front .ch-art svg{max-height:22dvh;margin:0 auto}
  .chance-front .ch-body{gap:6px!important;padding-top:2px;align-content:center!important}
  .chance-front .ch-body h4{font-size:18px}.chance-front .ch-body p{font-size:12.5px;line-height:1.3}
  .chance-front .ch-amt{font-size:14px;padding:4px 10px}
  .chance-front .ch-foot img{width:15px!important}.chance-front .ch-foot b{font-size:9.5px}.chance-front .ch-foot small{font-size:9px}
  .chance-front>.btn{width:100%;min-height:36px;font-size:15px;padding:0 10px}
  .card-back b{bottom:14px;font-size:13px}
  .game.entering .dock>*{animation:hudFadeIn .7s ease .9s both}
}
@keyframes hudFadeIn{from{opacity:0}to{opacity:1}}
/* v4.6 · mobil HUD stabilitesi: son 5 sn uyarısı konumu/boyutu değiştirmez */
@media (prefers-reduced-motion:reduce){.clock.low,.ctimer.low{animation:none!important;filter:brightness(1.12)}}
/* v4.5 · tapu kartı: sahipsiz durumu ve set bilgisi (boş alan kalmaz) */
.kcard .kstate{display:grid;gap:3px;margin:8px 0 0;padding:9px 12px;border-radius:14px;background:rgba(30,39,64,.06);box-shadow:inset 0 0 0 1.5px rgba(30,39,64,.08)}
.kcard .kstate b{display:flex;align-items:center;gap:6px;font:800 15px/1.1 var(--display);color:#1E2740}.kcard .kstate b svg{width:18px;height:18px;color:#C28A12}
.kcard .kstate small{color:#5A6480;font:700 12.5px/1.35 var(--body)}
.kcard .kset{margin:10px 0 0;padding:9px 12px;border-radius:14px;background:rgba(30,39,64,.05)}
.kcard .kset h5{margin:0 0 6px;display:flex;align-items:center;gap:8px;font:800 13px/1 var(--display);color:#1E2740;letter-spacing:.02em}
.kcard .kset h5 small{margin-left:auto;color:#6A7390;font:800 11.5px/1 var(--body)}
.kcard .kset ul{margin:0;padding:0;list-style:none;display:grid;gap:4px}
.kcard .kset li{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:7px;font:700 12.5px/1.2 var(--body);color:#2C3550}
.kcard .kset li i{width:11px;height:11px;border-radius:50%;background:var(--oc);box-shadow:inset 0 0 0 2px rgba(30,39,64,.25)}
.kcard .kset li.me span{font-weight:900;color:#1E2740}
.kcard .kset li em{font-style:normal;color:#6A7390;font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:110px}
.kcard .kset p{margin:6px 0 0;color:#6A7390;font:700 11.5px/1.35 var(--body)}
/* v4.5 · lobi: görünürlük ayarlarda, düğmeler tek satır; kısa yatay ekranda (iPhone 12 mini vb.) kaydırmadan sığar */
.lb-acts{display:grid;gap:10px}
.rs-vis .seg button svg{width:14px;height:14px;vertical-align:-2px}
.rs-vis>b{display:flex;align-items:center;gap:6px}.rs-vis>b svg{width:16px;height:16px}
@media (orientation:landscape) and (max-height:540px){
  .menu.lobby-wide{padding-top:calc(6px + var(--safe-t));padding-bottom:calc(6px + var(--safe-b))}
  .menu.lobby-wide .menu-panel{max-height:calc(100dvh - 12px - var(--safe-t) - var(--safe-b));padding:10px 12px;overflow:hidden;display:flex;flex-direction:column}
  .menu.lobby-wide .lobby{flex:1;min-height:0;display:flex;flex-direction:column;gap:7px}
  .menu.lobby-wide .lb-head{flex:none}.menu.lobby-wide .lb-title h2{font-size:17px}
  .menu.lobby-wide .lb-send{min-height:36px;font-size:13px}.menu.lobby-wide .lb-code{padding:4px 8px}.menu.lobby-wide .lb-code b{font-size:17px}
  .menu.lobby-wide .lb-body{flex:1;min-height:0;align-items:stretch}
  .menu.lobby-wide .seats{overflow:auto;min-height:0;align-content:start;gap:5px}
  .menu.lobby-wide .seat{padding:4px 8px;grid-template-columns:32px minmax(0,1fr);border-radius:12px}
  .menu.lobby-wide .seat img{width:32px;height:32px}
  .menu.lobby-wide .seat.empty{min-height:34px;padding:3px 8px;grid-template-columns:minmax(0,1fr) auto}
  .menu.lobby-wide .seat.empty .seat-info{justify-items:start;text-align:start}
  .menu.lobby-wide .seat.empty .seat-tools{grid-column:auto}
  .menu.lobby-wide .lb-side{display:flex;flex-direction:column;gap:6px;min-height:0}
  .menu.lobby-wide .lb-side .field>span{display:none}
  .menu.lobby-wide .swatch{width:28px;height:28px}
  .menu.lobby-wide .room-set{gap:5px;padding:7px 9px}.menu.lobby-wide .room-set h3{display:none}
  .menu.lobby-wide .room-set .rs-row{flex-wrap:nowrap;gap:6px}
  .menu.lobby-wide .room-set .rs-row>span{font-size:10.5px;white-space:nowrap}
  .menu.lobby-wide .room-set .seg{flex-wrap:nowrap;padding:2px}
  .menu.lobby-wide .room-set .seg button{padding:5px 7px;font-size:11.5px;white-space:nowrap}
  .menu.lobby-wide .stepper button{width:28px;height:28px}
  .menu.lobby-wide .mp-help{flex:none;margin:0;font-size:11px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .menu.lobby-wide .lb-acts{margin-top:auto;grid-template-columns:1.3fr 1fr;gap:6px}
  .menu.lobby-wide .lb-acts .btn{min-height:40px;font-size:14px;padding:0 8px}
}
@media (orientation:landscape) and (max-height:540px){
  .menu.lobby-wide .seats.teams{grid-template-columns:1fr 1fr}
  .menu.lobby-wide .seats.teams .seat{grid-template-columns:28px minmax(0,1fr)}
  .menu.lobby-wide .seats.teams .seat img{width:28px;height:28px}
  .menu.lobby-wide .seats.teams .seat-tools{grid-column:1/-1}
  .menu.lobby-wide .seats.teams .seat.empty{grid-template-columns:minmax(0,1fr)}
}
/* v4.5 · ana menü: Discord ve Bize ulaş (sol alt) */
.menu-social{position:fixed;left:calc(14px + var(--safe-l));bottom:calc(14px + var(--safe-b));z-index:6;display:flex;gap:8px}
.soc-btn{display:flex;align-items:center;gap:7px;height:44px;padding:0 14px 0 11px;border:0;border-radius:15px;cursor:pointer;color:var(--ink);font:800 14px/1 var(--display);background:rgba(10,22,48,.72);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.3),0 8px 18px rgba(0,0,0,.3);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.soc-btn svg,.soc-btn img{width:21px;height:21px}
.soc-btn:hover{box-shadow:inset 0 0 0 1.5px var(--gold-hi),0 8px 18px rgba(0,0,0,.3)}
.soc-discord{background:linear-gradient(180deg,#6C74F0,#4E57D6);box-shadow:0 5px 0 #3A42A8,0 10px 20px rgba(0,0,0,.3);color:#fff}
.soc-discord:hover{filter:brightness(1.08);box-shadow:0 5px 0 #3A42A8,0 10px 20px rgba(0,0,0,.3)}
@media (orientation:landscape) and (max-height:540px){.menu-social{left:calc(8px + var(--safe-l));bottom:calc(8px + var(--safe-b));gap:6px}.soc-btn{height:36px;padding:0 10px;font-size:12px;border-radius:12px}.soc-btn span{display:none}.soc-btn{width:40px;justify-content:center;padding:0}}
@media (max-width:700px) and (orientation:portrait){.soc-btn span{display:none}.soc-btn{width:44px;justify-content:center;padding:0}}
.contact-sheet{max-width:520px}
.contact-sheet h2{display:flex;align-items:center;gap:8px}.contact-sheet h2 svg{width:24px;height:24px}
.contact-lead{margin:0 0 12px;color:var(--soft);font:700 14px/1.4 var(--body)}
.contact-opts{display:grid;gap:8px}
.contact-opt{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;border:0;border-radius:16px;cursor:pointer;text-align:start;color:var(--ink);background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.08)}
.contact-opt:hover{background:rgba(245,194,74,.12);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.45)}
.contact-opt>svg{width:40px;height:40px;padding:8px;border-radius:12px;background:rgba(245,194,74,.14);color:var(--gold-hi)}
.contact-opt b{display:block;font:800 16px/1.15 var(--display)}.contact-opt small{display:block;margin-top:3px;color:var(--soft);font:700 12.5px/1.35 var(--body)}
.contact-mail{text-transform:none;letter-spacing:0;background:none;box-shadow:none;margin:12px 0 0;text-align:center;color:var(--gold-hi);font:800 14px/1 var(--display)}.contact-mail.soon{color:var(--soft);font:700 12.5px/1.3 var(--body)}
@media (orientation:landscape) and (max-height:540px){.contact-opt{padding:8px 10px}.contact-opt small{font-size:11.5px}.contact-lead{font-size:12.5px;margin-bottom:8px}}
/* v4.5 · yuvarlak profil resmi */
.avc{--s:34px;width:var(--s);height:var(--s);flex:none;display:inline-grid;place-items:center;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 35% 30%,color-mix(in srgb,var(--pc) 85%,#fff),var(--pc) 60%,color-mix(in srgb,var(--pc) 70%,#000));box-shadow:0 0 0 2px rgba(255,255,255,.85),0 4px 10px rgba(0,0,0,.35);vertical-align:middle}
.avc img{width:100%;height:100%;object-fit:cover;display:block}
.avc.char img{object-fit:contain;transform:translateY(8%) scale(1.25)}
.avc.ini b{font:900 calc(var(--s) * .4)/1 var(--display);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.35);letter-spacing:.02em}
/* v4.5 · giriş: sağlayıcılar kare düğmeler, yan yana */
.acct-providers.sq{display:grid;grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:8px}
.prov-sq{display:grid;justify-items:center;align-content:center;gap:6px;min-height:78px;padding:10px 6px;border:0;border-radius:16px;cursor:pointer;color:var(--ink);font:800 12.5px/1 var(--display);background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.14),0 5px 0 rgba(0,0,0,.22);transition:transform .12s,box-shadow .12s}
.prov-sq:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.55),0 7px 0 rgba(0,0,0,.22)}
.prov-sq:active{transform:translateY(2px);box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.55),0 2px 0 rgba(0,0,0,.22)}
.prov-sq .bi{width:34px;height:34px;font-size:20px}
.prov-sq.g{background:linear-gradient(180deg,#fff,#E9EEF7);color:#1F2A44}
.prov-sq.f{background:linear-gradient(180deg,#2E7BF6,#1665D8);color:#fff}.prov-sq.f .bi.f{background:#fff;color:#1665D8}
.prov-sq.d{background:linear-gradient(180deg,#6C74F0,#4E57D6);color:#fff}
.bi.d{background:#fff;color:#5865F2}
.prov-sq.busy{opacity:.6;pointer-events:none}
.acct-providers.sq.locked .prov-sq{opacity:.55}
.chip-av{--s:26px;box-shadow:0 0 0 1.5px rgba(255,255,255,.8)}
.prof-top .avc.big{--s:52px}
/* profil resmi seçimi ve bağlı hesaplar */
.av-pick h4,.links h4{margin:10px 0 6px;font:800 13px/1 var(--display);color:var(--gold-hi);letter-spacing:.03em}
.av-opts{display:flex;flex-wrap:wrap;gap:8px}
.av-opt{display:grid;justify-items:center;gap:4px;min-width:64px;padding:7px 6px;border:0;border-radius:14px;cursor:pointer;color:var(--ink);background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.1)}
.av-opt .avc{--s:40px}.av-opt small{font:800 11px/1 var(--body);color:var(--soft)}
.av-opt.on{background:rgba(245,194,74,.14);box-shadow:inset 0 0 0 2px var(--gold-hi)}.av-opt.on small{color:var(--gold-hi)}
.links{display:grid;gap:6px;margin-bottom:10px}
.link-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;border-radius:13px;background:rgba(255,255,255,.05)}
.link-row .bi{width:28px;height:28px;font-size:16px}.link-row .bi.f{background:#1877F2}.link-row .bi.d{background:#5865F2;color:#fff}
.link-row span b{display:block;font:800 14px/1.1 var(--display)}.link-row span small{color:var(--soft);font:700 11.5px/1.2 var(--body)}
.link-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;justify-self:end;min-width:max-content}
.link-ok{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:50%;background:var(--ok);color:#06301b}.link-ok svg{width:15px;height:15px}
.link-row .unlink,.link-row .link-btn-provider{min-width:76px;min-height:36px;padding-inline:13px!important;font-size:12.5px}
.links-note{color:var(--dim);font:700 11.5px/1.35 var(--body)}
/* dereceli: podyumdaki yuvarlak profil resimleri ve basamakların altındaki parlama (1. en güçlü) */
.pd{position:relative}
.pd-av{--s:38px;margin-top:-16px;z-index:1;box-shadow:0 0 0 3px #fff,0 6px 14px rgba(0,0,0,.4)}
.pd1 .pd-av{--s:46px;box-shadow:0 0 0 3px #FFD76A,0 0 18px rgba(255,210,90,.75),0 6px 14px rgba(0,0,0,.4)}
.pd2 .pd-av{box-shadow:0 0 0 3px #E3EAF4,0 0 12px rgba(220,230,245,.55),0 6px 14px rgba(0,0,0,.4)}
.pd3 .pd-av{box-shadow:0 0 0 3px #E7A36B,0 0 10px rgba(231,163,107,.5),0 6px 14px rgba(0,0,0,.4)}
.pd-step{position:relative;overflow:visible}
.pd-step::after{content:"";position:absolute;left:-12%;right:-12%;bottom:-20px;height:34px;border-radius:50%;pointer-events:none;z-index:-1;filter:blur(10px);animation:pdGlow 2.6s ease-in-out infinite}
.pd1 .pd-step::after{background:radial-gradient(closest-side,rgba(255,214,90,.95),rgba(255,180,40,.5) 55%,transparent);opacity:1}
.pd2 .pd-step::after{background:radial-gradient(closest-side,rgba(226,236,250,.7),rgba(170,190,215,.3) 55%,transparent);opacity:.75;animation-delay:.4s}
.pd3 .pd-step::after{background:radial-gradient(closest-side,rgba(236,160,100,.55),rgba(200,120,70,.22) 55%,transparent);opacity:.55;animation-delay:.8s}
.pd1 .pd-step{box-shadow:0 0 26px rgba(255,205,80,.55),inset 0 2px 0 rgba(255,255,255,.5)}
.pd2 .pd-step{box-shadow:0 0 16px rgba(220,230,245,.35),inset 0 2px 0 rgba(255,255,255,.5)}
.pd3 .pd-step{box-shadow:0 0 10px rgba(231,163,107,.3),inset 0 2px 0 rgba(255,255,255,.4)}
@keyframes pdGlow{0%,100%{transform:scaleX(.92);opacity:var(--o,.85)}50%{transform:scaleX(1.06);opacity:1}}
@media (prefers-reduced-motion:reduce){.pd-step::after{animation:none}}
.b-av{--s:30px;box-shadow:0 0 0 2px rgba(255,255,255,.7)}
.me-av{--s:42px}
.board-mine .b-av{margin-inline-end:4px}
.pl-name{display:flex;align-items:center;justify-content:center;gap:8px}.pl-av{--s:34px}
@media (orientation:landscape) and (max-height:540px){.pd-av{--s:28px;margin-top:-10px}.pd1 .pd-av{--s:32px}.b-av{--s:24px}.me-av{--s:34px}.pd-step::after{bottom:-12px;height:22px}.prov-sq{min-height:58px;padding:6px 4px}.prov-sq .bi{width:26px;height:26px;font-size:16px}.av-opt .avc{--s:32px}.av-opt{min-width:54px;padding:5px}}
/* v4.5 · ara perde (reklam arası): tiyatro perdesi iki yana açılır, ortada reklam, altında teşekkür notu */
.curtain{position:fixed;inset:0;z-index:20000;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse at 50% 38%,#3a1830 0,#12081a 55%,#070309 100%)}
.curtain::before{content:"";position:absolute;left:50%;top:-10%;width:70vmin;height:120%;transform:translateX(-50%);background:radial-gradient(ellipse at 50% 0,rgba(255,236,190,.2),transparent 65%);pointer-events:none}
.cur-l,.cur-r{position:absolute;top:0;bottom:0;width:51%;z-index:3;transition:transform 1s cubic-bezier(.7,0,.25,1);
  background:repeating-linear-gradient(90deg,#6d0f1c 0,#9e1b2c 3.2%,#c0283a 5.2%,#8b1526 7.4%,#5c0b17 9.6%),#8b1526;box-shadow:inset 0 -40px 60px rgba(0,0,0,.45)}
.cur-l{left:0;transform-origin:left;border-right:3px solid #4a0812}.cur-r{right:0;transform-origin:right;border-left:3px solid #4a0812}
.cur-l::after,.cur-r::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),transparent 30%,transparent 75%,rgba(0,0,0,.35))}
.cur-top{position:absolute;left:0;right:0;top:0;height:12dvh;min-height:52px;z-index:4;background:repeating-linear-gradient(90deg,#7a1120 0,#a81f31 4%,#7a1120 8%);border-bottom:6px solid #E8B64A;box-shadow:0 8px 20px rgba(0,0,0,.5)}
.cur-top::after{content:"";position:absolute;left:0;right:0;bottom:-16px;height:12px;background:radial-gradient(circle at 10px 0,#E8B64A 5px,transparent 6px) 0 0/20px 12px repeat-x}
.curtain.open .cur-l{transform:translateX(-84%)}.curtain.open .cur-r{transform:translateX(84%)}
.curtain.closing .cur-l,.curtain.closing .cur-r{transform:none;transition-duration:.7s}
.cur-stage{position:relative;z-index:2;width:min(720px,calc(100vw - 32px));display:grid;justify-items:center;gap:14px;padding-top:6dvh;opacity:0;transition:opacity .5s .5s}
.curtain.open .cur-stage{opacity:1}.curtain.closing .cur-stage{opacity:0;transition-delay:0s;transition-duration:.25s}
.cur-screen{width:100%;aspect-ratio:16/9;max-height:52dvh;border-radius:14px;overflow:hidden;background:#05070d;box-shadow:0 0 0 4px #E8B64A,0 0 0 9px #3b2410,0 30px 60px rgba(0,0,0,.6);display:grid;place-items:center}
.ad-preview{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;color:#fff;background:repeating-linear-gradient(135deg,#1b2742 0 18px,#162036 18px 36px)}
.ad-preview small{font:900 12px/1 var(--display);letter-spacing:.2em;color:var(--gold-hi)}
.ad-preview b{font:800 clamp(16px,3vw,24px)/1.2 var(--display)}
.ad-count{display:grid;place-items:center;width:44px;height:44px;margin:4px auto 0;border-radius:50%;font:900 20px/1 var(--display);font-style:normal;color:#2A1A00;background:var(--gold-hi)}
.ad-wait{display:grid;justify-items:center;gap:10px;color:var(--soft);font:700 13px/1 var(--body)}
.cur-note{display:grid;gap:4px;max-width:560px;text-align:center;padding:12px 18px;border-radius:16px;background:rgba(10,6,16,.72);box-shadow:inset 0 0 0 1.5px rgba(232,182,74,.45)}
.cur-note b{font:800 16px/1.25 var(--display);color:var(--gold-hi)}.cur-note span{color:#E9DDF0;font:700 13.5px/1.4 var(--body)}
.cur-go{min-width:200px}
/* engelleyici uyarısı: perde açık, ortada kart */
.curtain.wall .cur-stage{opacity:1;padding-top:8dvh}
.wall-card{display:grid;justify-items:center;gap:10px;max-width:560px;text-align:center;padding:22px 24px;border-radius:22px;background:linear-gradient(180deg,rgba(28,18,44,.96),rgba(14,8,24,.96));box-shadow:inset 0 0 0 2px rgba(232,182,74,.55),0 30px 60px rgba(0,0,0,.6)}
.wall-ic{font-size:44px;line-height:1}
.wall-card h2{margin:0;font:800 22px/1.2 var(--display);color:var(--gold-hi)}
.wall-card p{margin:0;color:#E9DDF0;font:700 14px/1.45 var(--body)}
.wall-msg{min-height:16px;color:#FFB3BF;font:700 12.5px/1.3 var(--body)}
@media (orientation:landscape) and (max-height:540px){
  .cur-top{height:34px;min-height:0}.cur-stage{padding-top:30px;gap:8px}.cur-screen{max-height:48dvh;width:auto;height:48dvh}
  .cur-note{padding:7px 12px}.cur-note b{font-size:13px}.cur-note span{font-size:11.5px}.cur-go{min-height:38px}
  .wall-card{padding:12px 16px;gap:6px}.wall-ic{font-size:30px}.wall-card h2{font-size:17px}.wall-card p{font-size:12px}
}
@media (prefers-reduced-motion:reduce){.cur-l,.cur-r{transition-duration:.2s}}

/* v4.5 · dereceli: bilgisayar ve tablette podyum ile "senin kartın" üstte yan yana, 4–100 listesi altta tam genişlikte iki sütun (boş alan kalmaz) */
.rk-side{display:flex;flex-direction:column;gap:10px;min-width:0}
.rk-body{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}
.rk-left{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:22px;padding-bottom:14px}
.rk-right .board{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px;align-content:start}
@media (max-width:700px) and (orientation:portrait){.rk-left{grid-template-columns:minmax(0,1fr)}.rk-right .board{grid-template-columns:minmax(0,1fr)}}
/* yatay telefon: iki sütun (solda podyum, sağda liste); giriş kartı podyumun parıltısından biraz aşağıda */
@media (orientation:landscape) and (max-height:540px){
  .rk-body{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
  .rk-left{display:flex;flex-direction:column;align-items:stretch;gap:0;padding-bottom:0}
  .rk-side{margin-top:20px}
  .rk-right .board{grid-template-columns:minmax(0,1fr)}
}
/* Discord ve Bize ulaş yalnız ana menüde görünür (lobi, oda listesi, dereceli, mağaza vb. açılınca gizlenir) */
/* v4.5 · marka renkleri: Google beyaz, Facebook mavi, Discord mor-mavi (resmi logolar konunca img gösterilir) */
.bi.g{background:#fff;color:#4285F4;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.bi.f{background:#1877F2;color:#fff}
.bi.d{background:#5865F2;color:#fff}
.bi.logo{background:transparent;box-shadow:none}.bi.logo img{width:100%;height:100%;object-fit:contain;display:block}
.prov-sq.g{background:linear-gradient(180deg,#fff,#F1F3F6);color:#1F1F1F;box-shadow:inset 0 0 0 1px #DADCE0,0 5px 0 rgba(0,0,0,.22)}
.prov-sq.g .bi.g{box-shadow:0 0 0 1.5px #DADCE0}
.prov-sq.f{background:linear-gradient(180deg,#2D86F5,#1877F2);color:#fff;box-shadow:0 5px 0 #0F5BC4}
.prov-sq.f .bi.f{background:#fff;color:#1877F2}
.prov-sq.d{background:linear-gradient(180deg,#6B77F5,#5865F2);color:#fff;box-shadow:0 5px 0 #3C45B8}
.prov-sq.d .bi.d{background:#fff;color:#5865F2}
.prov-sq.g:hover{box-shadow:inset 0 0 0 1px #DADCE0,0 7px 0 rgba(0,0,0,.22)}.prov-sq.f:hover{box-shadow:0 7px 0 #0F5BC4}.prov-sq.d:hover{box-shadow:0 7px 0 #3C45B8}
.prov-sq small{font:800 12.5px/1 var(--display)}
.acct-providers.sq.locked .prov-sq{opacity:.9;filter:saturate(.85)}
.link-row .bi.g{background:#fff;color:#4285F4}.link-row .bi.f{background:#1877F2;color:#fff}.link-row .bi.d{background:#5865F2;color:#fff}
.soc-discord{background:linear-gradient(180deg,#6B77F5,#5865F2);box-shadow:0 5px 0 #3C45B8,0 10px 20px rgba(0,0,0,.3)}
/* v4.5 · yatay telefonda giriş ekranı ve lobi: sığıyor ama sıkışık durmasın; ekran yüksekliği yettikçe aralıklar açılır */
@media (orientation:landscape) and (max-height:540px) and (min-height:361px){
  .acct-sheet:has(.acct-cols){gap:12px;padding-top:14px;padding-bottom:16px}
  .acct-cols{gap:18px}.acct-col{gap:11px;align-content:space-between}
  .acct-sheet .consent{gap:8px}.acct-sheet .ck{padding:8px 10px}
  .acct-sheet .acct-form{gap:10px}
  .acct-sheet .acct-links{margin-top:2px}
  .menu.lobby-wide .lobby{gap:10px}
  .menu.lobby-wide .seats{gap:8px}
  .menu.lobby-wide .seat.empty{min-height:38px}
  .menu.lobby-wide .lb-side{gap:9px}
  .menu.lobby-wide .room-set{gap:8px;padding:9px 11px}
}
/* v4.5 · ara perde: reklam alanı daha büyük, teşekkür notu biraz daha aşağıda */
.cur-stage{gap:28px;width:min(860px,calc(100vw - 32px))}
.cur-screen{max-height:60dvh}
@media (orientation:landscape) and (max-height:540px){
  .cur-stage{gap:18px;padding-top:28px;width:min(760px,calc(100vw - 150px))}
  .cur-screen{height:58dvh;max-height:58dvh}
}
/* v4.5 · mağaza: reklam izle, jeton kazan (günlük hak, bekleme süresi) */
.jeton .ad-coin{margin-inline-start:auto;width:auto;min-height:42px;padding:4px 14px 4px 10px;display:inline-flex;align-items:center;gap:8px;border-radius:14px}
.jeton .ad-coin svg{width:20px;height:20px}
.jeton .ad-coin span{display:grid;gap:2px;text-align:start}
.jeton .ad-coin b{font:800 15px/1 var(--display);color:inherit}
.jeton .ad-coin small{flex-basis:auto;color:inherit;opacity:.8;font:800 11px/1 var(--body)}
.jeton .ad-coin[disabled]{opacity:.75}
@media (orientation:landscape) and (max-height:540px){.menu-panel.shop .jeton .ad-coin small{display:block}.jeton .ad-coin{min-height:34px;padding:2px 10px 2px 8px}.jeton .ad-coin b{font-size:13px}}
.curtain.reward .cur-note b{color:#8CF0B4}
.prof-top small.prof-handle{display:block;color:var(--gold-hi);font-weight:800}
.del-sheet .field>span{font:700 12.5px/1.35 var(--body);color:var(--soft);text-transform:none;letter-spacing:0}
/* v4.5 · sohbet çevirisi: başka dilde yazılmış mesajın altında "Çevir"; dokununca çeviri balonun içinde, aslının altında */
.chat-list li.foreign{cursor:pointer}
.chat-trb{display:inline-flex;align-items:center;gap:4px;margin-top:3px;padding:2px 7px;border:0;border-radius:8px;background:rgba(255,255,255,.07);color:var(--soft);font:800 11px/1.2 var(--body);cursor:pointer}
.chat-trb svg{width:12px;height:12px}
.chat-trb:hover{color:var(--gold-hi);background:rgba(245,194,74,.12)}
.chat-list li.tr-busy .chat-trb{opacity:.7}
.chat-trt{margin-top:4px!important;padding:5px 8px;border-radius:9px;background:rgba(88,166,255,.12);box-shadow:inset 2px 0 0 #58A6FF}
.chat-trt small{display:block;margin-bottom:2px;color:#9CC8FF;font:800 10px/1.1 var(--body);letter-spacing:.02em}

/* v5.0.27 account linking: provider aksiyonları tek sağ grupta; aktif provider kaldırılırken oturum korunur. */
/* v4.7 account linking: Discord düğmesi kurulum tamamlanmadan da görünür; tıklanınca açıklama verir. */
.prov-sq.setup{opacity:.68;filter:saturate(.65)}
@media (max-width:520px){
  .link-actions{gap:6px}
  .link-row .unlink,.link-row .link-btn-provider{min-width:70px;min-height:34px;padding-inline:10px!important;font-size:12px}
}


/* v4.7.3 · Discord marka simgesi: tek mavi görünüm, resmi glyph daha net */
.bi.d.logo{background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.08);padding:3px;box-sizing:border-box}
.bi.d.logo img{width:100%;height:100%;object-fit:contain;display:block}
.prov-sq.d .bi.d.logo{background:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.18),0 1px 3px rgba(0,0,0,.12)}
.prov-sq.d .bi.d.logo img{width:88%;height:88%}
.link-row .bi.d.logo{background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.link-row .bi.d.logo img{width:84%;height:84%}
.soc-discord img{background:#fff;border-radius:50%;padding:2px;box-sizing:border-box;box-shadow:0 0 0 1px rgba(255,255,255,.16)}

/* v4.7.4 · Hesabım ekranı sırası: profil → profil resmi → kredi → bağlı hesaplar → işlemler */
.prof .main-col{gap:10px}
.prof .av-pick{order:2}
.prof .credit{order:3}
.prof .links-col{order:initial}
@media (max-width:1100px), (max-height:620px){
  .prof .acct-sheet:has(.acct-cols){width:min(540px,calc(100vw - 20px));max-width:540px}
  .prof .acct-cols{display:flex;flex-direction:column;gap:10px}
  .prof .main-col{order:0}
  .prof .links-col{order:1;gap:8px}
  .prof .links-col .menu-row2,.prof .links-col .menu-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .prof .links-col .btn{min-width:0;padding-inline:10px}
}
@media (max-width:700px), (orientation:portrait){
  .prof .acct-cols{display:flex;flex-direction:column;gap:10px}
  .prof .main-col{order:0;gap:10px}
  .prof .links-col{order:1}
  .prof .av-pick .av-opts{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:520px){
  .prof .acct-sheet:has(.acct-cols){width:min(420px,calc(100vw - 20px))}
  .prof .link-row{grid-template-columns:26px minmax(0,1fr) auto;gap:8px;padding:7px 9px}
  .prof .link-row span b{font-size:13px}
  .prof .link-row span small{font-size:11px}
  .prof .credit{padding:9px 10px}
  .prof .links-note{font-size:10.5px;line-height:1.25}
}
@media (orientation:landscape) and (max-height:540px){
  .prof .acct-sheet:has(.acct-cols){width:min(560px,calc(100vw - 18px))}
  .prof .links{gap:5px}
  .prof .link-row{padding-block:6px}
  .prof .links-note{font-size:10px;line-height:1.2}
  .prof .links-col .btn{min-height:36px;font-size:12.5px}
}

/* v5.0 · Premium: yalnız server entitlement aktifken gösterilen kozmetik altın ad + mağaza kartı */
.premium-name{display:inline-flex;align-items:center;gap:4px;min-width:0;color:#FFD76A;background:linear-gradient(100deg,#D89A16 0%,#FFF1A8 35%,#FFC13D 58%,#FFF6C8 78%,#D89A16 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 0 12px rgba(255,193,61,.24);animation:premiumShine 4.2s linear infinite}
@keyframes premiumShine{to{background-position:-220% 0}}
@media (prefers-reduced-motion:reduce){.premium-name{animation:none;background-position:50% 0}}
.premium-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border-radius:17px;background:linear-gradient(135deg,rgba(89,65,21,.92),rgba(31,45,82,.94));box-shadow:inset 0 0 0 1.5px rgba(255,211,90,.35),0 8px 20px rgba(0,0,0,.2)}
.premium-card.active{background:linear-gradient(135deg,rgba(105,70,12,.96),rgba(57,39,10,.94));box-shadow:inset 0 0 0 1.5px rgba(255,224,128,.7),0 0 24px rgba(245,194,74,.18)}
.premium-copy{display:grid;gap:3px;min-width:0}.premium-copy>b{font:900 15px/1.15 var(--display);color:#FFE58A}.premium-copy>small{font:700 11.5px/1.35 var(--body);color:#F5EAC7}
.premium-card .btn{min-height:38px;white-space:nowrap}.premium-adfree{margin-inline-start:auto;display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border-radius:12px;font:900 12px/1 var(--display);color:#4B3000;background:linear-gradient(180deg,#FFE78C,#F5C24A);box-shadow:0 3px 0 #B9851E}
@media (max-width:620px){.premium-card{grid-template-columns:auto minmax(0,1fr)}.premium-card .btn{grid-column:1/-1;width:100%}.premium-copy>small{font-size:11px}}
@media (orientation:landscape) and (max-height:540px){.premium-card{padding:8px 10px;gap:8px}.premium-copy>b{font-size:13px}.premium-copy>small{font-size:10.5px}.premium-card .btn{min-height:32px;font-size:11px}}


/* v5.0.1 · Premium görünürlüğü: yıldız yok; sohbet ve oyun kartlarında açık Premium rozeti */
.premium-tag{display:inline-flex;align-items:center;justify-content:center;flex:none;padding:2px 6px;border-radius:999px;font:900 8.5px/1 var(--display);letter-spacing:.035em;text-transform:uppercase;color:#4A3000;background:linear-gradient(180deg,#FFF2A7,#F5C24A);box-shadow:inset 0 0 0 1px rgba(255,255,255,.45),0 1px 3px rgba(0,0,0,.22);-webkit-text-fill-color:#4A3000}
.pcard .premium-tag{padding:2px 5px;font-size:7.5px;margin-inline-start:-2px}
.chat-list .chat-name{font:800 12px/1.2 var(--display);color:inherit;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-list .chat-name.premium-name{font-weight:900}
.chat-list .chat-premium{font-size:7.5px;padding:2px 5px}
.chat-peek .premium-tag{justify-self:start;margin:1px 0 2px;font-size:7.5px}
@media (orientation:landscape) and (max-height:540px){.pcard .premium-tag{font-size:6.5px;padding:2px 4px}.chat-list .chat-premium{font-size:6.8px}}
/* v5.0.2 · Premium katalog erişimi: kalıcı sahiplikten ayrı, görsel olarak Premium etiketi */
.sitem.premium-open{box-shadow:inset 0 0 0 1.5px rgba(255,210,86,.42),0 5px 14px rgba(0,0,0,.14)}
.sitem .premium-access{color:#5A3900;background:linear-gradient(180deg,#FFE996,#F5C24A);box-shadow:0 1px 0 #B9851E}

/* v5.0.3 · mağaza metin sadeleştirme + Premium reklamsız rozet kontrastı */
.jeton .premium-adfree{
  margin-inline-start:auto;
  color:#FFE38A;
  background:linear-gradient(180deg,#244D8E,#17376D);
  border:1.5px solid rgba(255,224,128,.72);
  box-shadow:0 3px 0 #0E2450,0 0 0 1px rgba(255,255,255,.06) inset;
  text-shadow:0 1px 1px rgba(0,0,0,.45);
}
.premium-card .premium-copy>small{line-height:1.35}

/* v5.0.4 · Premium satın alma: kartla aylık veya 3000 jetonla 30 gün */
.premium-actions{display:grid;grid-template-columns:1fr;gap:7px;min-width:190px}
.premium-actions .premium-choice{width:100%;justify-content:center}
.premium-actions .premium-coins{color:#FFE58A;box-shadow:inset 0 0 0 1.5px rgba(255,224,128,.35),0 4px 0 rgba(0,0,0,.2)}
.premium-actions .premium-coins:disabled{color:rgba(255,229,138,.55);opacity:.7}
.premium-pass-left{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 13px;border-radius:12px;background:rgba(255,255,255,.09);box-shadow:inset 0 0 0 1.5px rgba(255,224,128,.28);color:#FFE58A;font:900 12px/1 var(--display);white-space:nowrap}
@media (max-width:620px){.premium-actions{grid-column:1/-1;grid-template-columns:1fr 1fr;min-width:0}.premium-pass-left{grid-column:1/-1;width:100%}}
@media (max-width:430px){.premium-actions{grid-template-columns:1fr}}
@media (orientation:landscape) and (max-height:540px){.premium-actions{grid-template-columns:1fr 1fr;gap:5px}.premium-actions .premium-choice{min-height:32px;padding-inline:8px;font-size:10.5px}.premium-pass-left{min-height:32px;font-size:10.5px}}

/* v5.0.5 · Premium mağaza kartı: üst bilgi + altta iki net satın alma seçeneği */
.premium-card{
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:10px 12px;
  padding:14px 14px 13px;
}
.premium-card>.premium-actions,
.premium-card>.premium-manage,
.premium-card>.premium-pass-left{
  grid-column:1/-1;
  width:100%;
}
.premium-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  min-width:0;
}
.premium-actions .premium-choice{
  min-height:42px;
  width:100%;
  min-width:0;
  padding-inline:10px;
  white-space:normal;
  line-height:1.15;
}
.premium-actions .premium-cash-soon{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  opacity:1;
  color:#EAF1FF;
  background:linear-gradient(180deg,#294A7C,#1A315B);
  box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.12),0 4px 0 #102343;
}
.premium-actions .premium-cash-soon em{
  flex:none;
  padding:3px 6px;
  border-radius:999px;
  font:900 9px/1 var(--display);
  font-style:normal;
  color:#493000;
  background:#F5C24A;
}
.premium-actions .premium-coins{
  color:#FFE58A;
  background:linear-gradient(180deg,#274879,#18325E);
  box-shadow:inset 0 0 0 1.5px rgba(255,224,128,.35),0 4px 0 #102343;
}
.premium-actions .premium-coins:disabled{
  color:rgba(255,229,138,.58);
  background:linear-gradient(180deg,#263A5B,#1A2A48);
  opacity:.78;
}
@media (max-width:430px){
  .premium-actions{grid-template-columns:1fr}
}
@media (orientation:landscape) and (max-height:540px){
  .premium-card{padding:9px 10px;gap:7px 9px}
  .premium-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .premium-actions .premium-choice{min-height:34px;font-size:10.5px;padding-inline:7px}
  .premium-actions .premium-cash-soon em{font-size:8px;padding:2px 5px}
}

/* v5.0.6 · Premium mağaza başlığında yıldız yok; başlık tam genişlik */
.premium-card{grid-template-columns:minmax(0,1fr);}
.premium-card>.premium-copy{grid-column:1/-1}
.premium-card>.premium-actions,.premium-card>.premium-manage,.premium-card>.premium-pass-left{grid-column:1/-1}

/* v5.0.6 · Yerel/bot oyunlarında da sohbet düğmesi sabit kalsın; gönderim alanı yalnız çevrim içi oyunda açılır. */
.chat-panel.chat-local .chat-quick,.chat-panel.chat-local .chat-form{display:none!important}

/* v5.0.7 · Premium görünüm: isim dışında kartın kendisi de özel görünür */
.pcard.premium-player{
  background:linear-gradient(145deg,rgba(84,59,13,.96),rgba(29,45,78,.96) 54%,rgba(65,46,12,.95));
  box-shadow:0 0 0 1.5px rgba(255,224,128,.72),0 0 22px rgba(245,194,74,.20),0 12px 26px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,247,197,.22);
}
.pcard.premium-player::after{
  content:"";position:absolute;inset:1px;border-radius:19px;pointer-events:none;
  background:linear-gradient(115deg,transparent 18%,rgba(255,242,173,.12) 36%,transparent 53%);
}
.pcard.premium-player.turn{
  box-shadow:0 0 0 2.5px #FFD76A,0 0 30px rgba(255,205,76,.42),0 14px 30px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,247,197,.25);
}
.pcard.premium-player .av{box-shadow:0 0 0 2px #FFE58A,0 0 15px rgba(245,194,74,.42),inset 0 -5px 0 rgba(0,0,0,.18)}

/* Kendi hesap kartı ve oyuncu profili */
.sheet.acct-sheet.prof.premium-account,
.sheet.player-sheet.premium-player-sheet{
  background:linear-gradient(155deg,#203F72 0%,#142B55 54%,#3F310F 100%);
  box-shadow:0 24px 55px rgba(0,0,0,.48),0 0 0 2px rgba(255,218,103,.72),0 0 34px rgba(245,194,74,.20),inset 0 1px 0 rgba(255,246,195,.16);
}
.premium-account .prof-top{
  padding:10px 12px;border-radius:16px;
  background:linear-gradient(105deg,rgba(245,194,74,.16),rgba(255,255,255,.035));
  box-shadow:inset 0 0 0 1px rgba(255,224,128,.28);
}
.premium-account .prof-top .avc.big,
.premium-player-sheet .pl-av{box-shadow:0 0 0 3px #FFE28A,0 0 20px rgba(245,194,74,.52),0 6px 14px rgba(0,0,0,.4)}
.premium-player-sheet .pl-hero{
  background:radial-gradient(circle at 50% 32%,rgba(255,222,112,.25),rgba(77,54,9,.18) 42%,rgba(255,255,255,.025) 72%);
  box-shadow:inset 0 0 0 1.5px rgba(255,222,112,.38),0 0 24px rgba(245,194,74,.10);
}
.profile-premium-tag{margin-inline-start:7px;vertical-align:2px}

/* Dereceli sıralamada Premium oyuncu belirginliği */
.premium-rank-row{
  background:linear-gradient(90deg,rgba(245,194,74,.17),rgba(255,255,255,.045))!important;
  box-shadow:inset 0 0 0 1.5px rgba(255,217,104,.42)!important;
}
.premium-rank-row button>b{display:flex;align-items:center;gap:6px;min-width:0}
.premium-rank-self{
  background:linear-gradient(135deg,rgba(107,75,15,.45),rgba(255,255,255,.055));
  box-shadow:inset 0 0 0 1.5px rgba(255,218,103,.68),0 0 20px rgba(245,194,74,.15);
}
.premium-rank-card .pd-av{box-shadow:0 0 0 3px #FFE38A,0 0 18px rgba(255,207,75,.62),0 6px 14px rgba(0,0,0,.4)}
.premium-rank-card>b{display:flex;align-items:center;justify-content:center;gap:5px;max-width:100%}
.rank-premium-tag{font-size:7px;padding:2px 5px}

/* Ranked maçta kalıcı ve net gösterge */
.ranked-live-badge{
  position:fixed;z-index:34;left:50%;top:calc(12px + var(--safe-t));transform:translateX(-50%);
  display:flex;align-items:center;gap:7px;min-height:32px;padding:0 12px;border-radius:999px;pointer-events:none;
  color:#4A3000;background:linear-gradient(180deg,#FFF0A0,#F5C24A);box-shadow:0 4px 0 #B17C14,0 8px 22px rgba(0,0,0,.28),0 0 18px rgba(245,194,74,.28);
  font:900 12px/1 var(--display);letter-spacing:.045em;text-transform:uppercase;
}
.ranked-live-badge svg{width:16px;height:16px}
.ranked-leave-confirm{box-shadow:0 24px 55px rgba(0,0,0,.52),inset 0 0 0 2px rgba(255,121,91,.72),0 0 28px rgba(255,107,127,.18)}
.ranked-leave-confirm .sheet-head h2{color:#FFD08A}
@media (orientation:landscape) and (max-height:540px){
  .ranked-live-badge{top:calc(6px + var(--safe-t));min-height:27px;padding:0 9px;font-size:10px}
  .ranked-live-badge svg{width:13px;height:13px}
  .rank-premium-tag{font-size:6.2px;padding:2px 4px}
}


/* v5.0.8 · oyun HUD sabit başlangıç: fixed hamburger/sohbet elemanlarının konumu giriş animasyonunda değişmez */
.game.entering .topbar{animation:hudFadeIn .7s ease .9s both!important}

/* v5.0.8 · yatay telefon mağazası: Premium her zaman en üst sırada kalır */
@media (orientation:landscape) and (max-height:540px){
  .shop-preview-mode .menu-panel.shop{
    grid-template-rows:auto auto auto auto minmax(0,1fr);
    grid-template-areas:"premium premium" "jeton back" "tabs tabs" "spv spv" "grid grid";
  }
  .menu-panel.shop .premium-card{grid-area:premium;margin:0;padding:7px 9px;gap:5px}
  .menu-panel.shop .premium-card .premium-copy>small{font-size:9.8px;line-height:1.25}
  .menu-panel.shop .premium-card .premium-manage{min-height:30px!important;font-size:10.5px}
}

/* v5.0.8 · abonelik yönetim ekranı */
.premium-manage-sheet{width:min(430px,calc(100vw - 24px));display:grid;gap:12px}
.premium-manage-status{display:grid;grid-template-columns:1fr auto;gap:5px 10px;align-items:center;padding:14px;border-radius:16px;background:linear-gradient(135deg,rgba(105,70,12,.72),rgba(28,47,86,.92));box-shadow:inset 0 0 0 1.5px rgba(255,224,128,.55)}
.premium-manage-status>b{grid-column:1/-1;color:#FFE58A;font:900 18px/1.1 var(--display)}
.premium-manage-status>span{color:var(--ink);font:800 13px/1.25 var(--body)}
.premium-manage-status>strong{justify-self:end;color:#FFE58A;font:900 13px/1.1 var(--display)}
.premium-manage-sheet>p{margin:0;color:var(--soft);font:700 13px/1.45 var(--body)}
.premium-manage-note{display:block;color:var(--dim);font:700 11.5px/1.35 var(--body);text-align:center}
@media (orientation:landscape) and (max-height:540px){
  .premium-manage-sheet{gap:8px;width:min(500px,calc(100vw - 20px))}
  .premium-manage-status{padding:9px 11px}.premium-manage-status>b{font-size:15px}
  .premium-manage-sheet>p{font-size:11.5px;line-height:1.3}
}

/* v5.0.9 · oyuncuya yönelik sade abonelik yönetimi */
.premium-manage-sheet{gap:10px}
.premium-manage-sheet>p,.premium-manage-note{display:none!important}
.premium-manage-open{width:100%;min-height:44px}

/* v5.0.9 · yatay telefon mağazası: Premium üstte kalır, kozmetik alanına daha fazla yer bırakır */
@media (orientation:landscape) and (max-height:540px){
  .shop-preview-mode .menu-panel.shop{
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:auto auto auto auto minmax(0,1fr);
    grid-template-areas:"premium premium" "jeton back" "tabs tabs" "spv spv" "grid grid";
    gap:5px;
    padding:8px 10px;
  }
  .menu-panel.shop .premium-card{
    min-height:38px;
    padding:5px 8px;
    gap:6px 8px;
    border-radius:13px;
  }
  .menu-panel.shop .premium-card.active{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
  }
  .menu-panel.shop .premium-card.active>.premium-copy{grid-column:1;gap:0}
  .menu-panel.shop .premium-card.active>.premium-copy>small{display:none}
  .menu-panel.shop .premium-card.active>.premium-manage{
    grid-column:2;
    width:auto;
    min-height:30px!important;
    padding:0 11px;
    margin:0;
    font-size:10.5px;
  }
  .menu-panel.shop .premium-card:not(.active)>.premium-copy>small{
    display:none;
  }
  .menu-panel.shop .premium-card:not(.active) .premium-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:5px;
  }
  .menu-panel.shop .premium-card:not(.active) .premium-choice{
    min-height:29px!important;
    padding:0 7px;
    font-size:10px;
  }
  .menu-panel.shop .jeton{padding:4px 8px;min-height:34px;border-radius:12px}
  .menu-panel.shop .jeton .coin{width:21px;height:21px}
  .menu-panel.shop .jeton>b{font-size:19px}
  .menu-panel.shop .jeton>span{font-size:11.5px}
  .menu-panel.shop .jeton .premium-adfree{min-height:28px;padding:0 9px;font-size:10px}
  .menu-panel.shop>[data-go="main"]{min-height:34px!important;padding:0 13px}
  .menu-panel.shop .stabs{padding:3px;gap:4px;border-radius:12px}
  .menu-panel.shop .stabs button{min-height:31px;padding:4px 5px;font-size:12px;border-radius:9px}
  .menu-panel.shop .spv{grid-template-columns:40px minmax(0,1fr);gap:6px;padding:4px 7px;border-radius:12px}
  .menu-panel.shop .spvimg,.menu-panel.shop .spvsvg,.menu-panel.shop .spv3d{width:40px;height:40px}
  .menu-panel.shop .spvinfo>b{font-size:13px}
  .menu-panel.shop .sact .btn{min-height:30px!important;padding:0 9px;font-size:11px}
  .menu-panel.shop .sgrid{gap:6px;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));padding:1px}
  .menu-panel.shop .sitem{min-height:0}
}


/* v5.0.10 · yatay telefon mağazası: kartlar sıkışmaz, durum rozetleri taşmaz */
@media (orientation:landscape) and (max-height:540px){
  .shop-preview-mode .menu-panel.shop{
    gap:6px;
    padding:8px 10px;
  }
  .menu-panel.shop .sgrid{
    grid-template-columns:repeat(4,minmax(82px,1fr));
    grid-auto-rows:minmax(104px,auto);
    gap:7px;
    padding:2px 2px 6px;
    align-content:start;
    overflow-y:auto;
    scrollbar-gutter:stable;
  }
  .menu-panel.shop .sitem{
    min-height:104px;
    padding:6px 5px 7px;
    gap:3px;
    align-content:start;
    grid-template-rows:54px minmax(14px,auto) 18px;
    border-radius:13px;
    overflow:hidden;
  }
  .menu-panel.shop .sitem .sth{
    width:58px;
    height:54px;
  }
  .menu-panel.shop .sitem .sth img.cthumb{
    width:52px;
    height:52px;
    max-width:52px;
    max-height:52px;
  }
  .menu-panel.shop .sitem .sth img:not(.cthumb){
    max-width:58px;
    max-height:45px;
  }
  .menu-panel.shop .sitem .sth svg{
    width:48px;
    height:48px;
  }
  .menu-panel.shop .sitem>b{
    width:100%;
    min-width:0;
    font-size:11px;
    line-height:1.1;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .menu-panel.shop .sitem>em{
    align-self:end;
    justify-self:center;
    max-width:100%;
    min-height:17px;
    padding:2px 6px;
    border-radius:999px;
    font-size:9px;
    line-height:1;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .menu-panel.shop .sitem>em.eq{
    color:#0B3D28;
    background:#73E3AA;
    box-shadow:0 1px 0 rgba(0,0,0,.18);
  }
  .menu-panel.shop .sitem>em.premium-access{
    color:#5A3900;
    background:linear-gradient(180deg,#FFE996,#F5C24A);
  }
  .menu-panel.shop .sitem .winl{
    grid-column:1;
    width:100%;
    margin-top:1px;
    font-size:8.5px;
    line-height:1.1;
  }
  .menu-panel.shop .spv{
    min-height:42px;
  }
  .menu-panel.shop .spvinfo{
    gap:7px;
  }
  .menu-panel.shop .sact .btn{
    max-width:150px;
    white-space:nowrap;
  }
}

/* Çok kısa yatay telefonlarda da 4 kart görünür; içerik taşmak yerine liste kayar. */
@media (orientation:landscape) and (max-height:430px){
  .menu-panel.shop .premium-card{min-height:34px;padding:4px 7px}
  .menu-panel.shop .premium-card.active>.premium-manage{min-height:27px!important;padding:0 9px;font-size:9.5px}
  .menu-panel.shop .jeton{min-height:31px;padding:3px 7px}
  .menu-panel.shop>[data-go="main"]{min-height:31px!important}
  .menu-panel.shop .stabs button{min-height:28px;padding:3px 5px;font-size:11px}
  .menu-panel.shop .spv{grid-template-columns:34px minmax(0,1fr);padding:3px 6px;min-height:37px}
  .menu-panel.shop .spvimg,.menu-panel.shop .spvsvg,.menu-panel.shop .spv3d{width:34px;height:34px}
  .menu-panel.shop .sact .btn{min-height:27px!important;font-size:10px}
  .menu-panel.shop .sgrid{grid-auto-rows:minmax(98px,auto)}
  .menu-panel.shop .sitem{min-height:98px;grid-template-rows:49px minmax(13px,auto) 17px;padding:5px 4px 6px}
  .menu-panel.shop .sitem .sth{height:49px}
  .menu-panel.shop .sitem .sth img.cthumb{width:47px;height:47px;max-width:47px;max-height:47px}
}


/* v5.0.23 · Stage 4: gerçek dokunmatik kısa-yatay ekranda erişilebilir dokunma alanları */
@media (orientation:landscape) and (max-height:540px) and (pointer:coarse){
  button,.btn,.icon-btn,[role="button"]{min-width:34px;min-height:34px}
}


/* v5.0.24 · Stage 4 otomatik responsive audit düzeltmeleri
   Tablet lobide iki sütunlu ana menü 760px paneli dar grid hücresine sıkıştırıp sağa taşıyabiliyordu.
   1180px ve altı lobi/join görünümünde logo sütunu kaldırılır, panel tek sütunda güvenle ortalanır. */
@media (max-width:1180px){
  .menu.lobby-wide,.menu.join-wide{grid-template-columns:1fr}
  .menu.lobby-wide .hero,.menu.join-wide .hero{display:none}
  .menu.lobby-wide .menu-panel,.menu.join-wide .menu-panel{width:min(100%,940px);max-width:940px;justify-self:center}
  .lobby,.lb-head,.lb-body,.lb-side,.seats{min-width:0}
}

/* Kısa yatay dokunmatik: daha önce yüksekliği 26–28px'e zorlayan lobi/segment kuralları
   genel 34px touch-target kuralını özgüllükle eziyordu. Son katmanda kesinleştir. */
@media (orientation:landscape) and (max-height:540px) and (pointer:coarse){
  .menu-panel .seat-tools .btn,
  .menu-panel .rv-seg button,
  .menu-panel .room-set .seg button,
  .menu-panel .stepper button,
  .menu-panel .lb-copy,
  .menu-panel .lb-edit{min-width:34px!important;min-height:34px!important;height:auto!important}
  .menu.lobby-wide .seat.empty{min-height:40px}
}

/* v5.0.25 · Stage 4 geniş cihaz matrisi
   Gerçek dokunmatik cihazlarda ve F9 simülasyonunda 30px gibi küçük kalan özel kontrolleri de
   minimum erişilebilir dokunma alanına zorlar. */
html.sim-touch button,
html.sim-touch .btn,
html.sim-touch .icon-btn,
html.sim-touch [role="button"]{min-width:34px!important;min-height:34px!important}
@media (pointer:coarse){
  button,.btn,.icon-btn,[role="button"]{min-width:34px;min-height:34px}
}

/* v5.0.30 · Stage 4 son UI polish
   - Ana menü Mağaza düğmesinde kompakt jeton rozeti geri geldi; bakiye üç nokta olmadan sığar.
   - v5.0.28 modal/yüksek çözünürlük düzeltmeleri korunur.
   - Modal ve ortak çift-butona sahip sheet satırları birbirine yapışmaz.
   - Full HD referansı 2K/ultrawide/4K'ya yükseklik+genişlik oranı korunarak akıcı ölçeklenir. */
.btn-shop{min-width:0;overflow:hidden;justify-content:space-between;gap:8px}
.btn-shop-main{display:inline-flex;align-items:center;justify-content:center;gap:.42em;min-width:0;white-space:nowrap;flex:1 1 auto}
.btn-shop-main>svg{flex:0 0 auto}
.shop-balance{display:inline-flex;align-items:center;justify-content:center;gap:.28em;flex:0 1 auto;min-width:0;max-width:46%;padding:.28em .5em;border-radius:999px;background:rgba(245,194,74,.16);box-shadow:inset 0 0 0 1px rgba(245,194,74,.38);color:var(--gold-hi);font-size:.78em;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums}
.shop-balance .coin{width:1.08em;height:1.08em;flex:0 0 auto}
.shop-balance b{font:800 1em/1 var(--display);min-width:0;white-space:nowrap}
@media (max-width:520px),(orientation:landscape) and (max-height:540px){
  .btn-shop{gap:5px;padding-inline:9px}
  .btn-shop-main{gap:.3em}
  .shop-balance{max-width:43%;padding:.24em .4em;font-size:.72em}
}

/* Sheet içindeki ana eylem satırlarını içerikten ayır. Özellikle Hızlı Oyna ad modalinde
   input/dice satırı ile Devam/Vazgeç artık birbirine değmez. */
.sheet>.menu-row{margin-top:14px}
.name-ask{display:grid;gap:14px}
.name-ask>.sheet-head{margin-bottom:0}
.name-ask>.menu-row{margin-top:0}
.name-ask .code-row{gap:10px}

/* Ana menüde büyük Hızlı Oyna düğmesi ile alt satır arasında nefes payı. */
.menu-panel>.btn-quick{margin-bottom:2px}

/* Tablet/dar masaüstü: para rozeti önce kompaktlaşır, gerçekten dar alanda tamamen gizlenir. */
@media (max-width:1180px){
}
@media (max-width:760px),(orientation:landscape) and (max-height:430px){
}

/* Full HD -> 4K akıcı ölçek. Geniş ama kısa ultrawide monitörde genişlik değil yükseklik
   sınırı belirleyici olur; böylece UI gereksiz devleşmez. */
@media (min-width:1900px) and (min-height:1000px) and (pointer:fine){
  .menu{
    gap:clamp(24px,min(1.25vw,2.22dvh),48px);
    padding-top:calc(clamp(24px,min(1.25vw,2.22dvh),48px) + var(--safe-t));
    padding-bottom:calc(clamp(24px,min(1.25vw,2.22dvh),48px) + var(--safe-b));
    padding-left:clamp(72px,min(3.75vw,6.67dvh),144px);
    padding-right:clamp(72px,min(3.75vw,6.67dvh),144px);
  }
  .menu-panel{
    width:min(26vw,46dvh);max-width:none;
    padding:clamp(26px,min(1.35vw,2.4dvh),52px);
    gap:clamp(14px,min(.73vw,1.3dvh),28px);
    border-radius:clamp(28px,min(1.46vw,2.6dvh),56px);
  }
  .menu-panel h2{font-size:clamp(24px,min(1.25vw,2.22dvh),48px)}
  .menu.wide .menu-panel{width:min(35vw,63dvh);max-width:none}
  .menu.lobby-wide .menu-panel,.menu.join-wide .menu-panel{width:min(45vw,80dvh);max-width:none}
  .menu.ranked-mode .menu-panel{width:min(61vw,107dvh)!important;max-width:none!important;padding:clamp(20px,min(1.15vw,2dvh),44px)}
  .hero-logo{width:min(16vw,28dvh);max-width:none}
  .wordmark{font-size:clamp(96px,min(5vw,9dvh),192px)}
  .tagline{font-size:clamp(18px,min(.95vw,1.7dvh),36px)}
  .menu-panel .btn,.sheet .btn{min-height:clamp(52px,min(2.71vw,4.82dvh),104px);font-size:clamp(18px,min(.94vw,1.67dvh),36px);padding-inline:clamp(24px,min(1.25vw,2.22dvh),48px);border-radius:clamp(18px,min(.94vw,1.67dvh),36px)}
  .menu-panel .btn-quick{min-height:clamp(62px,min(3.23vw,5.74dvh),124px)!important;font-size:clamp(21px,min(1.1vw,1.95dvh),42px)!important}
  .menu-row,.menu-row2,.menu-row3{gap:clamp(12px,min(.63vw,1.11dvh),24px)}
  .menu-sep{margin-block:clamp(2px,min(.2vw,.36dvh),8px)}
  .menu-foot{font-size:clamp(12px,min(.63vw,1.11dvh),24px)}
  .acct-chip{min-height:clamp(36px,min(1.88vw,3.33dvh),72px);padding-inline:clamp(8px,min(.63vw,1.11dvh),24px);font-size:clamp(13px,min(.68vw,1.2dvh),26px)}
  .icon-btn{width:clamp(46px,min(2.4vw,4.26dvh),92px);height:clamp(46px,min(2.4vw,4.26dvh),92px);border-radius:clamp(15px,min(.78vw,1.39dvh),30px)}
  .icon-btn svg{width:clamp(22px,min(1.15vw,2.04dvh),44px);height:clamp(22px,min(1.15vw,2.04dvh),44px)}
  .text-in{min-height:clamp(50px,min(2.6vw,4.63dvh),100px);padding-inline:clamp(16px,min(.83vw,1.48dvh),32px);font-size:clamp(18px,min(.94vw,1.67dvh),36px);border-radius:clamp(14px,min(.73vw,1.3dvh),28px)}
  .field>span{font-size:clamp(13px,min(.68vw,1.2dvh),26px)}
  .sheet{width:min(32vw,58dvh);max-width:none;padding:clamp(22px,min(1.15vw,2.04dvh),44px);border-radius:clamp(26px,min(1.35vw,2.4dvh),52px)}
  /* 2K/4K: genel .sheet .btn ölçeklemesi açık artırmadaki 4 sütunu taşırmasın. */
  .sheet.auction{width:min(34vw,60dvh);max-width:none}
  .sheet.auction .abtns{grid-template-columns:repeat(4,minmax(0,1fr))}
  .sheet.auction .abtns .btn{min-width:0;padding-inline:clamp(8px,min(.52vw,.93dvh),20px);font-size:clamp(15px,min(.78vw,1.39dvh),30px)}
  .sheet.trade{width:min(44vw,78dvh);max-width:none}
  .sheet-head{gap:clamp(12px,min(.63vw,1.11dvh),24px);margin-bottom:clamp(12px,min(.63vw,1.11dvh),24px)}
  .sheet-head h2{font-size:clamp(26px,min(1.35vw,2.4dvh),52px)}
  .sheet>.menu-row{margin-top:clamp(14px,min(.73vw,1.3dvh),28px)}
  .name-ask{gap:clamp(14px,min(.73vw,1.3dvh),28px)}
  .name-ask>.sheet-head,.name-ask>.menu-row{margin-top:0;margin-bottom:0}
  .name-ask .code-row{gap:clamp(10px,min(.52vw,.93dvh),20px)}
  .name-ask .code-row .btn{width:clamp(52px,min(2.71vw,4.82dvh),104px);padding:0}
  .name-ask .code-row .btn svg{width:clamp(22px,min(1.15vw,2.04dvh),44px);height:clamp(22px,min(1.15vw,2.04dvh),44px)}
  .name-ask .text-in{font-size:clamp(18px,min(.94vw,1.67dvh),36px)}

  /* Oyun HUD da Full HD oranını korur. */
  .brand{gap:clamp(10px,min(.52vw,.93dvh),20px);padding:clamp(6px,min(.31vw,.56dvh),12px) clamp(14px,min(.73vw,1.3dvh),28px) clamp(6px,min(.31vw,.56dvh),12px) clamp(6px,min(.31vw,.56dvh),12px);border-radius:clamp(18px,min(.94vw,1.67dvh),36px)}
  .brand img{width:clamp(40px,min(2.08vw,3.7dvh),80px);height:clamp(40px,min(2.08vw,3.7dvh),80px)}
  .brand b{font-size:clamp(20px,min(1.04vw,1.85dvh),40px)}
  .brand small{font-size:clamp(11px,min(.57vw,1.02dvh),22px)}
  .topbar{top:calc(clamp(12px,min(.63vw,1.11dvh),24px) + var(--safe-t));left:clamp(14px,min(.73vw,1.3dvh),28px);right:clamp(14px,min(.73vw,1.3dvh),28px);gap:clamp(12px,min(.63vw,1.11dvh),24px)}
  .top-actions{gap:clamp(8px,min(.42vw,.74dvh),16px)}
  .pcard{width:min(13vw,23dvh);min-width:min(10.2vw,18.2dvh);gap:clamp(4px,min(.21vw,.37dvh),8px) clamp(12px,min(.63vw,1.11dvh),24px);padding:clamp(12px,min(.63vw,1.11dvh),24px) clamp(14px,min(.73vw,1.3dvh),28px);border-radius:clamp(20px,min(1.04vw,1.85dvh),40px)}
  .pcard .av{width:clamp(50px,min(2.6vw,4.63dvh),100px);height:clamp(50px,min(2.6vw,4.63dvh),100px)}
  .pcard .pname{font-size:clamp(15px,min(.78vw,1.39dvh),30px);gap:clamp(8px,min(.42vw,.74dvh),16px)}
  .pcard .badge{font-size:clamp(10px,min(.52vw,.93dvh),20px);padding:clamp(4px,min(.21vw,.37dvh),8px) clamp(7px,min(.36vw,.65dvh),14px)}
  .pcard .bal{font-size:clamp(24px,min(1.25vw,2.22dvh),48px)}
  .pcard .meta{font-size:clamp(12px,min(.63vw,1.11dvh),24px);gap:clamp(10px,min(.52vw,.93dvh),20px)}
  .pc-0,.pc-2,.pc-4{left:clamp(16px,min(.83vw,1.48dvh),32px)}
  .pc-1,.pc-3,.pc-5{right:clamp(16px,min(.83vw,1.48dvh),32px)}
  .pc-0,.pc-1{top:clamp(88px,min(4.58vw,8.15dvh),176px)}
  .pc-2,.pc-3{bottom:calc(clamp(20px,min(1.04vw,1.85dvh),40px) + var(--safe-b))}
  .dock{width:min(29.2vw,52dvh);gap:clamp(10px,min(.52vw,.93dvh),20px);bottom:calc(clamp(18px,min(.94vw,1.67dvh),36px) + var(--safe-b))}
  .dock-main{gap:clamp(10px,min(.52vw,.93dvh),20px);padding:clamp(10px,min(.52vw,.93dvh),20px);border-radius:clamp(24px,min(1.25vw,2.22dvh),48px)}
  .dock-main .who{gap:clamp(8px,min(.42vw,.74dvh),16px);font-size:clamp(14px,min(.73vw,1.3dvh),28px)}
  .dock-main .btn-roll{min-width:min(10.4vw,18.5dvh);min-height:clamp(60px,min(3.13vw,5.56dvh),120px);font-size:clamp(22px,min(1.15vw,2.04dvh),44px)}
  .feed div{font-size:clamp(13px,min(.68vw,1.2dvh),26px);padding:clamp(6px,min(.31vw,.56dvh),12px) clamp(12px,min(.63vw,1.11dvh),24px)}
  .hint{font-size:clamp(12px,min(.63vw,1.11dvh),24px)}
  .chat-panel{width:min(18.75vw,33.3dvh);height:min(48.1dvh,27vw);min-height:280px;border-radius:clamp(22px,min(1.15vw,2.04dvh),44px)}
  .menu-social{gap:clamp(8px,min(.42vw,.74dvh),16px)}
  .soc-btn{height:clamp(44px,min(2.29vw,4.07dvh),88px);padding-inline:clamp(11px,min(.73vw,1.3dvh),28px);font-size:clamp(14px,min(.73vw,1.3dvh),28px);border-radius:clamp(15px,min(.78vw,1.39dvh),30px)}
  .soc-btn svg,.soc-btn img{width:clamp(21px,min(1.09vw,1.94dvh),42px);height:clamp(21px,min(1.09vw,1.94dvh),42px)}
}


/* v5.0.26 · yüksek çözünürlükte iç yüzey oranları
   Menü paneli büyürken mağaza/lobi/ranked içeriği eski piksel boyutunda kalmasın. */
@media (min-width:1900px) and (min-height:1000px) and (pointer:fine){
  body{font-size:clamp(16px,min(.83vw,1.48dvh),32px)}
  .overlay{padding:calc(clamp(16px,min(.83vw,1.48dvh),32px) + var(--safe-t)) clamp(16px,min(.83vw,1.48dvh),32px) calc(clamp(16px,min(.83vw,1.48dvh),32px) + var(--safe-b))}

  /* Mağaza */
  .shop-head{margin-top:clamp(-12px,max(-.31vw,-.56dvh),-6px)}
  .shop-awning{width:min(15.6vw,27.8dvh);height:clamp(22px,min(1.15vw,2.04dvh),44px)}
  .shop-head h2{margin-top:clamp(8px,min(.42vw,.74dvh),16px)}
  .premium-card{gap:clamp(10px,min(.63vw,1.11dvh),24px);padding:clamp(14px,min(.73vw,1.3dvh),28px);border-radius:clamp(17px,min(.89vw,1.57dvh),34px)}
  .premium-copy{gap:clamp(3px,min(.16vw,.28dvh),6px)}
  .premium-copy>b{font-size:clamp(15px,min(.78vw,1.39dvh),30px)}
  .premium-copy>small{font-size:clamp(11.5px,min(.6vw,1.06dvh),23px)}
  .premium-actions{gap:clamp(7px,min(.36vw,.65dvh),14px);min-width:min(9.9vw,17.6dvh)}
  .jeton{gap:clamp(6px,min(.42vw,.74dvh),16px);padding:clamp(10px,min(.52vw,.93dvh),20px) clamp(14px,min(.73vw,1.3dvh),28px);border-radius:clamp(16px,min(.83vw,1.48dvh),32px)}
  .jeton .coin{width:clamp(26px,min(1.35vw,2.4dvh),52px);height:clamp(26px,min(1.35vw,2.4dvh),52px)}
  .jeton b{font-size:clamp(24px,min(1.25vw,2.22dvh),48px)}
  .jeton span{font-size:clamp(14px,min(.73vw,1.3dvh),28px)}
  .jeton .ad-coin{min-height:clamp(42px,min(2.19vw,3.89dvh),84px);padding:clamp(4px,min(.21vw,.37dvh),8px) clamp(14px,min(.73vw,1.3dvh),28px);gap:clamp(8px,min(.42vw,.74dvh),16px);border-radius:clamp(14px,min(.73vw,1.3dvh),28px)}
  .jeton .ad-coin svg{width:clamp(20px,min(1.04vw,1.85dvh),40px);height:clamp(20px,min(1.04vw,1.85dvh),40px)}
  .jeton .ad-coin b{font-size:clamp(15px,min(.78vw,1.39dvh),30px)}
  .jeton .ad-coin small{font-size:clamp(11px,min(.57vw,1.02dvh),22px)}
  .stabs{gap:clamp(6px,min(.31vw,.56dvh),12px);padding:clamp(4px,min(.21vw,.37dvh),8px);border-radius:clamp(16px,min(.83vw,1.48dvh),32px)}
  .stabs button{min-height:clamp(40px,min(2.08vw,3.7dvh),80px);border-radius:clamp(12px,min(.63vw,1.11dvh),24px);font-size:clamp(15px,min(.78vw,1.39dvh),30px)}
  .spv{grid-template-columns:min(6.77vw,12dvh) minmax(0,1fr);gap:clamp(14px,min(.73vw,1.3dvh),28px);padding:clamp(12px,min(.63vw,1.11dvh),24px);border-radius:clamp(18px,min(.94vw,1.67dvh),36px)}
  .spv3d,.spvsvg{width:min(6.77vw,12dvh);height:min(6.77vw,12dvh)}
  .spvimg{width:min(6.77vw,12dvh)}
  .spvinfo{gap:clamp(10px,min(.52vw,.93dvh),20px)}
  .spvinfo>b{font-size:clamp(22px,min(1.15vw,2.04dvh),44px)}
  .sact{gap:clamp(6px,min(.31vw,.56dvh),12px)}
  .sgrid{grid-template-columns:repeat(auto-fill,minmax(min(5vw,8.9dvh),1fr));gap:clamp(8px,min(.42vw,.74dvh),16px);padding:clamp(2px,min(.1vw,.19dvh),4px)}
  .sitem{gap:clamp(4px,min(.21vw,.37dvh),8px);padding:clamp(10px,min(.52vw,.93dvh),20px) clamp(6px,min(.31vw,.56dvh),12px);border-radius:clamp(16px,min(.83vw,1.48dvh),32px)}
  .sitem .sth{width:clamp(64px,min(3.33vw,5.93dvh),128px);height:clamp(62px,min(3.23vw,5.74dvh),124px)}
  .sitem .sth img.cthumb{width:clamp(60px,min(3.13vw,5.56dvh),120px);height:clamp(60px,min(3.13vw,5.56dvh),120px);max-width:none;max-height:none}
  .sitem .sth img:not(.cthumb){max-width:clamp(64px,min(3.33vw,5.93dvh),128px);max-height:clamp(48px,min(2.5vw,4.44dvh),96px)}
  .sitem .sth svg{width:clamp(48px,min(2.5vw,4.44dvh),96px);height:clamp(48px,min(2.5vw,4.44dvh),96px)}
  .sitem b{font-size:clamp(13px,min(.68vw,1.2dvh),26px)}
  .sitem em{font-size:clamp(12px,min(.63vw,1.11dvh),24px)}
  .sitem .winl{font-size:clamp(10px,min(.52vw,.93dvh),20px)}
  .shelp{font-size:clamp(12px,min(.63vw,1.11dvh),24px)}

  /* Lobi / oda */
  .lobby{gap:clamp(14px,min(.73vw,1.3dvh),28px)}
  .lb-head{gap:clamp(12px,min(.63vw,1.11dvh),24px)}
  .lb-code{gap:clamp(8px,min(.42vw,.74dvh),16px);padding:clamp(8px,min(.42vw,.74dvh),16px) clamp(12px,min(.63vw,1.11dvh),24px);border-radius:clamp(16px,min(.83vw,1.48dvh),32px)}
  .lb-code small{font-size:clamp(10px,min(.52vw,.93dvh),20px)}
  .lb-code b{font-size:clamp(26px,min(1.35vw,2.4dvh),52px)}
  .lb-body{gap:clamp(14px,min(.73vw,1.3dvh),28px)}
  .seats{gap:clamp(10px,min(.52vw,.93dvh),20px)}
  .seat{gap:clamp(6px,min(.31vw,.56dvh),12px);padding:clamp(10px,min(.52vw,.93dvh),20px) clamp(8px,min(.42vw,.74dvh),16px);border-radius:clamp(18px,min(.94vw,1.67dvh),36px);min-height:min(8.75vw,15.56dvh)}
  .seat img{width:min(4.06vw,7.22dvh);height:min(4.06vw,7.22dvh)}
  .seat-info{gap:clamp(4px,min(.21vw,.37dvh),8px)}
  .seat-info b{font-size:clamp(15px,min(.78vw,1.39dvh),30px)}
  .seat-info b small,.seat-info em,.seat-info small{font-size:clamp(11px,min(.57vw,1.02dvh),22px)}
  .seat-tools{gap:clamp(6px,min(.31vw,.56dvh),12px)}
  .lb-side{gap:clamp(12px,min(.63vw,1.11dvh),24px)}
  .room-set{gap:clamp(10px,min(.52vw,.93dvh),20px);padding:clamp(12px,min(.63vw,1.11dvh),24px);border-radius:clamp(16px,min(.83vw,1.48dvh),32px)}
  .room-set h3{font-size:clamp(15px,min(.78vw,1.39dvh),30px)}
  .room-set .rs-row>span{font-size:clamp(12px,min(.63vw,1.11dvh),24px)}
  .room-set .rs-row>b{font-size:clamp(16px,min(.83vw,1.48dvh),32px)}
  .rv-seg button,.room-set .seg button{font-size:clamp(13px,min(.68vw,1.2dvh),26px);padding:clamp(8px,min(.42vw,.74dvh),16px) clamp(10px,min(.52vw,.93dvh),20px)}
  .lb-invite{gap:clamp(12px,min(.63vw,1.11dvh),24px);padding:clamp(14px,min(.73vw,1.3dvh),28px) clamp(16px,min(.83vw,1.48dvh),32px);border-radius:clamp(18px,min(.94vw,1.67dvh),36px)}
  .lb-invite .lbi-text b{font-size:clamp(16px,min(.83vw,1.48dvh),32px)}
  .lb-invite .lbi-text small{font-size:clamp(12.5px,min(.65vw,1.16dvh),25px)}

  /* Ranked / profil */
  .rk-page{gap:clamp(12px,min(.63vw,1.11dvh),24px)}
  .rk-top{gap:clamp(10px,min(.52vw,.93dvh),20px)}
  .rk-top small{font-size:clamp(12px,min(.63vw,1.11dvh),24px)}
  .rk-body{gap:clamp(16px,min(.83vw,1.48dvh),32px)}
  .rk-left{gap:clamp(10px,min(.52vw,.93dvh),20px)}
  .podium{gap:clamp(8px,min(.42vw,.74dvh),16px);padding-top:clamp(6px,min(.31vw,.56dvh),12px)}
  .pd-pawn{height:min(5.73vw,10.19dvh)}
  .pd1 .pd-pawn{height:min(7.29vw,12.96dvh)}
  .pd>b{font-size:clamp(15px,min(.78vw,1.39dvh),30px)}
  .pd1>b{font-size:clamp(17px,min(.89vw,1.57dvh),34px)}
  .pd-elo em{font-size:clamp(13px,min(.68vw,1.2dvh),26px)}
  .pd-step i{font-size:clamp(22px,min(1.15vw,2.04dvh),44px)}
  .pd1 .pd-step{height:min(3.33vw,5.93dvh)}
  .pd2 .pd-step{height:min(2.4vw,4.26dvh)}
  .pd3 .pd-step{height:min(1.77vw,3.15dvh)}
  .rk-me{gap:clamp(8px,min(.42vw,.74dvh),16px);padding:clamp(10px,min(.52vw,.93dvh),20px) clamp(12px,min(.63vw,1.11dvh),24px);border-radius:clamp(16px,min(.83vw,1.48dvh),32px)}
  .rk-me-top{gap:clamp(10px,min(.52vw,.93dvh),20px)}
  .rk-me-top img,.rk-me-top .av-dot{width:clamp(48px,min(2.5vw,4.44dvh),96px);height:clamp(48px,min(2.5vw,4.44dvh),96px)}
  .rk-me-top b{font-size:clamp(16px,min(.83vw,1.48dvh),32px)}
  .rk-me-top small{font-size:clamp(12px,min(.63vw,1.11dvh),24px)}
  .me-elo b{font-size:clamp(20px,min(1.04vw,1.85dvh),40px)}
  .board{gap:clamp(4px,min(.21vw,.37dvh),8px)}
  .board li button{grid-template-columns:clamp(30px,min(1.56vw,2.78dvh),60px) clamp(32px,min(1.67vw,2.96dvh),64px) minmax(0,1fr) auto auto;gap:clamp(8px,min(.42vw,.74dvh),16px);padding:clamp(5px,min(.26vw,.46dvh),10px) clamp(10px,min(.52vw,.93dvh),20px);border-radius:clamp(12px,min(.63vw,1.11dvh),24px);font-size:clamp(13px,min(.68vw,1.2dvh),26px)}
  .b-pawn{width:clamp(32px,min(1.67vw,2.96dvh),64px);height:clamp(32px,min(1.67vw,2.96dvh),64px)}
  .player-sheet{width:min(37.5vw,66.7dvh);max-width:none;gap:clamp(10px,min(.52vw,.93dvh),20px)}
  .pl-main{gap:clamp(14px,min(.73vw,1.3dvh),28px)}
  .pl-hero{gap:clamp(6px,min(.31vw,.56dvh),12px);padding:clamp(12px,min(.63vw,1.11dvh),24px);border-radius:clamp(18px,min(.94vw,1.67dvh),36px)}
  .pl-pawn{height:min(8.85vw,15.74dvh)}
  .pl-name,.pl-rank b{font-size:clamp(22px,min(1.15vw,2.04dvh),44px)}
  .pl-stats{gap:clamp(6px,min(.31vw,.56dvh),12px)}
  .pl-stats>div{padding:clamp(8px,min(.42vw,.74dvh),16px) clamp(10px,min(.52vw,.93dvh),20px);border-radius:clamp(12px,min(.63vw,1.11dvh),24px)}
  .pl-stats small{font-size:clamp(11px,min(.57vw,1.02dvh),22px)}
  .pl-stats b{font-size:clamp(15px,min(.78vw,1.39dvh),30px)}
  .pl-gear{gap:clamp(6px,min(.31vw,.56dvh),12px)}
  .pl-gear img,.pl-gear svg{width:clamp(40px,min(2.08vw,3.7dvh),80px);height:clamp(40px,min(2.08vw,3.7dvh),80px)}
  .pl-gear small{font-size:clamp(10px,min(.52vw,.93dvh),20px)}
  .pl-gear b{font-size:clamp(12px,min(.63vw,1.11dvh),24px)}

  /* Kartlar / karar modalları */
  .kcard{width:min(17.7vw,31.5dvh);max-width:none;padding:clamp(12px,min(.63vw,1.11dvh),24px);border-radius:clamp(26px,min(1.35vw,2.4dvh),52px)}
  .kcard .head{padding:clamp(12px,min(.63vw,1.11dvh),24px) clamp(14px,min(.73vw,1.3dvh),28px);border-radius:clamp(16px,min(.83vw,1.48dvh),32px)}
  .kcard .head small{font-size:clamp(11px,min(.57vw,1.02dvh),22px)}
  .kcard .head h3{font-size:clamp(30px,min(1.56vw,2.78dvh),60px)}
  .kcard .tag,.kcard table{font-size:clamp(13px,min(.68vw,1.2dvh),26px)}
  .kcard td:last-child{font-size:clamp(15px,min(.78vw,1.39dvh),30px)}
  .kcard .price b{font-size:clamp(24px,min(1.25vw,2.22dvh),48px)}
  .kcard .actions{gap:clamp(10px,min(.52vw,.93dvh),20px);margin-top:clamp(12px,min(.63vw,1.11dvh),24px)}
}


/* v5.0.31 · Stage 5 responsive audit kapanış düzeltmeleri
   - Telefon mağazasında seçili eşya aksiyonu 34px dokunma alanını korur.
   - 768×1024 dikey tablette mağaza iki satırlı grid içinde viewport'a sığar; liste panel içinde kayar.
   - 1366×768 laptop lobisinde panel alttan taşmaz.
*/
@media (orientation:landscape) and (max-height:540px){
  html.sim-touch .menu-panel.shop .sact .btn{min-width:34px!important;min-height:34px!important;height:auto!important}
}
@media (orientation:landscape) and (max-height:540px) and (pointer:coarse){
  .menu-panel.shop .sact .btn{min-width:34px!important;min-height:34px!important;height:auto!important}
}
@media (orientation:portrait) and (min-width:601px) and (max-width:860px){
  .menu.shop-preview-mode{
    height:100dvh;min-height:0;overflow:hidden;
    grid-template-columns:1fr;
    grid-template-rows:minmax(220px,30dvh) minmax(0,1fr);
    align-content:stretch;align-items:stretch;
  }
  .shop-live-hero{height:100%;min-height:0;align-self:stretch}
  .shop-preview-mode .menu-panel.shop{
    height:100%;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;align-self:stretch
  }
}
@media (min-width:1181px) and (max-height:800px) and (orientation:landscape){
  .menu.lobby-wide .menu-panel{
    max-height:calc(100dvh - 32px - var(--safe-t) - var(--safe-b));
    overflow:hidden
  }
}


/* v5.0.32 · Lobi görsel bütünlük / görünmez kaydırma / FHD-oran koruması
   - Lobide sohbet her cihazda kartın kendi içinde sabit bir aksiyon olarak görünür.
   - Kaydırılabilir menüler çalışmaya devam eder fakat tarayıcı scrollbar rayı çizilmez.
   - Oda adı düzenleme aksiyonu laptopta da belirgin bir altın çerçeveli hedef olur.
   - 2K/3K/4K, v5.0.30'daki FHD referanslı akıcı ölçeği tek kaynak olarak kullanır;
     eski çakışan 2K/4K breakpoint katmanı kaldırılmıştır. */

/* Scroll davranışını koru, görsel scrollbar'ı menü yüzeylerinden kaldır. */
.menu,.overlay,.menu-panel,.sheet,.tlist,.dlist,.wz .receipt,.sgrid,
.overlay.side .sheet.trade,.device-fallback,.shop-preview-mode .menu-panel.shop,
.kcard.corner .cscroll,.chat-list,.chat-quick,.room-list,.board,.legal-body,
.menu.lobby-wide .seats{
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.menu::-webkit-scrollbar,.overlay::-webkit-scrollbar,.menu-panel::-webkit-scrollbar,.sheet::-webkit-scrollbar,
.tlist::-webkit-scrollbar,.dlist::-webkit-scrollbar,.wz .receipt::-webkit-scrollbar,.sgrid::-webkit-scrollbar,
.overlay.side .sheet.trade::-webkit-scrollbar,.device-fallback::-webkit-scrollbar,
.shop-preview-mode .menu-panel.shop::-webkit-scrollbar,.kcard.corner .cscroll::-webkit-scrollbar,
.chat-list::-webkit-scrollbar,.chat-quick::-webkit-scrollbar,.room-list::-webkit-scrollbar,
.board::-webkit-scrollbar,.legal-body::-webkit-scrollbar,.menu.lobby-wide .seats::-webkit-scrollbar{
  width:0;height:0;display:none;
}

/* Lobi chat butonu artık viewport dışına yüzen FAB değil, lobi kartının iç elemanıdır. */
.lb-side-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;min-width:0}
.lb-side-top>.field{min-width:0}
.lb-chat-slot{display:flex;align-items:center;justify-content:flex-end;min-height:48px;margin:0}
.lb-chat-slot .chat-btn{
  position:relative!important;inset:auto!important;
  width:48px;height:48px;min-width:48px;min-height:48px;padding:0;
  display:grid;place-items:center;border:0;border-radius:16px;
  color:#2A1A00;background:linear-gradient(180deg,var(--gold-hi),var(--gold));
  box-shadow:0 4px 0 var(--gold-deep),0 9px 18px rgba(0,0,0,.28);
}
.lb-chat-slot .chat-btn svg{width:23px;height:23px}
.lb-chat-slot .chat-btn:hover{filter:brightness(1.06);transform:translateY(-1px)}
.lb-chat-slot .chat-btn:active{transform:translateY(2px);box-shadow:0 2px 0 var(--gold-deep),0 5px 10px rgba(0,0,0,.24)}

/* Oda adı düzenleme: laptopta 34px silik kalmasın. */
.lb-title .lb-edit{
  width:42px;height:42px;min-width:42px;min-height:42px;border-radius:13px;
  color:var(--gold-hi);background:rgba(10,31,72,.72);
  box-shadow:inset 0 0 0 1.5px rgba(245,194,74,.55),0 5px 12px rgba(0,0,0,.22);
}
.lb-title .lb-edit svg{width:19px;height:19px;stroke-width:2.35}
.lb-title .lb-edit:hover{background:rgba(245,194,74,.16);box-shadow:inset 0 0 0 2px rgba(245,194,74,.82),0 6px 14px rgba(0,0,0,.25)}

/* Kısa telefonlarda alanı yemeden erişilebilir minimum korunur. */
@media (orientation:landscape) and (max-height:540px){
  .lb-side-top{gap:6px;align-items:center}
  .lb-chat-slot{min-height:38px;margin:0}
  .lb-chat-slot .chat-btn{width:38px;height:38px;min-width:38px;min-height:38px;border-radius:12px}
  .lb-chat-slot .chat-btn svg{width:19px;height:19px}
  .lb-title .lb-edit{width:36px;height:36px;min-width:36px;min-height:36px;border-radius:11px}
  .lb-title .lb-edit svg{width:17px;height:17px}
}

/* Büyük ekranlarda lobi içi chat/edit de FHD ile aynı fiziksel oranı izler. */
@media (min-width:1900px) and (min-height:1000px) and (pointer:fine){
  .lb-chat-slot{min-height:clamp(48px,min(2.5vw,4.44dvh),96px)}
  .lb-chat-slot .chat-btn{
    width:clamp(48px,min(2.5vw,4.44dvh),96px);
    height:clamp(48px,min(2.5vw,4.44dvh),96px);
    min-width:clamp(48px,min(2.5vw,4.44dvh),96px);
    min-height:clamp(48px,min(2.5vw,4.44dvh),96px);
    border-radius:clamp(16px,min(.83vw,1.48dvh),32px)
  }
  .lb-chat-slot .chat-btn svg{width:clamp(23px,min(1.2vw,2.13dvh),46px);height:clamp(23px,min(1.2vw,2.13dvh),46px)}
  .lb-title .lb-edit{
    width:clamp(42px,min(2.19vw,3.89dvh),84px);
    height:clamp(42px,min(2.19vw,3.89dvh),84px);
    min-width:clamp(42px,min(2.19vw,3.89dvh),84px);
    min-height:clamp(42px,min(2.19vw,3.89dvh),84px);
    border-radius:clamp(13px,min(.68vw,1.2dvh),26px)
  }
  .lb-title .lb-edit svg{width:clamp(19px,min(.99vw,1.76dvh),38px);height:clamp(19px,min(.99vw,1.76dvh),38px)}
}

/* v5.0.33 · 1366x768 lobi: sohbet renk satırına alınır; tüm lobi kaydırmadan görünür. */
@media (min-width:1181px) and (max-width:1500px) and (max-height:800px) and (orientation:landscape){
  .menu.lobby-wide .menu-panel{overflow:hidden}
  .menu.lobby-wide .lobby{min-height:0}
  .menu.lobby-wide .lb-body{min-height:0}
  .menu.lobby-wide .lb-side-top{grid-template-columns:minmax(0,1fr) 42px;gap:8px;align-items:center}
  .menu.lobby-wide .lb-chat-slot{min-height:42px}
  .menu.lobby-wide .lb-chat-slot .chat-btn{width:42px;height:42px;min-width:42px;min-height:42px;border-radius:13px}
  .menu.lobby-wide .lb-chat-slot .chat-btn svg{width:20px;height:20px}
}

/* v5.0.35 · Lobi/game sohbet konumu + bot aksiyonu + büyük ekran HUD oranı
   v5.0.34'te lobi DOM'unu yeniden gridleyen kurallar kaldırıldı. Çalışan v5.0.33 yerleşimi korunur;
   yalnız bot aksiyonu kendi kartına sığdırılır ve sohbet paneli JS ile gerçek düğmeye bağlanır. */
.chat-panel.chat-panel-lobby-popover,
.chat-panel.chat-panel-game-popover{position:fixed;z-index:70}

/* Bot kartının ana geometrisini değiştirme. Sadece aksiyonun içeride kalmasını garanti et. */
.menu.lobby-wide .seat.bot{overflow:hidden}
.menu.lobby-wide .seat.bot .seat-tools{min-width:0;max-width:100%}
.menu.lobby-wide .seat.bot .seat-tools .btn{max-width:100%;box-sizing:border-box}

/* 667/844/932 yatay: çalışan tek-satır koltuk düzenini koru, Botu çıkar için sabit ve okunur kolon ayır. */
@media (orientation:landscape) and (max-height:540px){
  .menu.lobby-wide .seat.bot{grid-template-columns:32px minmax(0,1fr) 74px}
  .menu.lobby-wide .seat.bot .seat-info{grid-column:2;min-width:0;padding-inline-end:0}
  .menu.lobby-wide .seat.bot .seat-tools{grid-column:3;justify-self:end;width:74px;min-width:74px;overflow:hidden}
  .menu.lobby-wide .seat.bot .seat-tools .btn{
    width:74px!important;min-width:74px!important;max-width:74px!important;
    min-height:34px!important;height:34px!important;padding:0 4px!important;
    font-size:10.5px!important;line-height:1!important;border-radius:9px;overflow:hidden
  }
}


/* v5.0.45 · Mobil lobi: gerçek oyuncu Çıkar düğmesi Botu çıkar ile aynı sağ aksiyon kolonuna oturur. */
@media (orientation:landscape) and (max-height:540px){
  .menu.lobby-wide .seat:not(.bot):not(.empty):has([data-go="mp-kick"]){grid-template-columns:32px minmax(0,1fr) 154px}
  .menu.lobby-wide .seat:not(.bot):not(.empty):has([data-go="mp-kick"]) .seat-info{grid-column:2;min-width:0}
  .menu.lobby-wide .seat:not(.bot):not(.empty):has([data-go="mp-kick"]) .seat-tools{
    grid-column:3;justify-self:end;width:154px;min-width:154px;display:grid;grid-template-columns:74px 74px;gap:6px
  }
  .menu.lobby-wide .seat:not(.bot):not(.empty):has([data-go="mp-kick"]) .seat-tools .btn{
    width:74px!important;min-width:74px!important;max-width:74px!important;min-height:34px!important;height:34px!important;padding:0 4px!important;font-size:10.5px!important;line-height:1!important;border-radius:9px
  }
}

/* 900px+ lobi: v5.0.33 kart boyutları aynen kalsın; buton normal alt aksiyon olarak tam görünür. */
@media (min-width:900px) and (orientation:landscape){
  .menu.lobby-wide .seat.bot .seat-tools .btn{min-width:82px;min-height:34px;padding-inline:10px}
}

/* 2K/3K/4K: yüksek özgüllüklü oyun yan menü/sohbet kuralları genel .icon-btn ölçeğini ezmesin.
   FHD 48px referansı viewport ile aynı oranda büyür. */
@media (min-width:1900px) and (min-height:1000px) and (pointer:fine) and (orientation:landscape){
  .game .top-actions{
    width:clamp(48px,min(2.5vw,4.44dvh),96px);
    height:clamp(48px,min(2.5vw,4.44dvh),96px);
    left:calc(clamp(16px,min(.83vw,1.48dvh),32px) + var(--safe-l));
  }
  .game .ta-more svg{width:clamp(22px,min(1.15vw,2.04dvh),44px);height:clamp(22px,min(1.15vw,2.04dvh),44px)}
  .game .side-chat{right:calc(clamp(16px,min(.83vw,1.48dvh),32px) + var(--safe-r))}
  .game .side-chat .icon-btn{
    width:clamp(48px,min(2.5vw,4.44dvh),96px);
    height:clamp(48px,min(2.5vw,4.44dvh),96px)
  }
  .game .top-actions.open .ta-items>:nth-child(1){translate:0 calc(-200% - clamp(12px,min(.63vw,1.11dvh),24px))}
  .game .top-actions.open .ta-items>:nth-child(2){translate:0 calc(-100% - clamp(6px,min(.31vw,.56dvh),12px))}
  .game .top-actions.open .ta-items>:nth-child(3){translate:0 calc(100% + clamp(6px,min(.31vw,.56dvh),12px))}
  .game .top-actions.open .ta-items>:nth-child(4){translate:0 calc(200% + clamp(12px,min(.63vw,1.11dvh),24px))}
}

/* v5.0.36 · sohbet dock kapanışı
   Büyük ekranda cardIn'in transform/scale animasyonu getBoundingClientRect ölçüsünü oynatıp
   paneli düğmeden kopuk gösterebiliyordu. Docked sohbet yalnız opacity ile açılır; geometri sabittir. */
@keyframes chatDockIn{from{opacity:.35}to{opacity:1}}
.chat-panel.chat-panel-lobby-popover,
.chat-panel.chat-panel-game-popover{
  animation:chatDockIn .16s ease-out;
  transform:none;
  transform-origin:center;
}
@media (min-width:900px) and (orientation:landscape){
  .chat-panel.chat-panel-lobby-popover,
  .chat-panel.chat-panel-game-popover{max-height:calc(100dvh - 16px)}
}

/* v5.0.46 · Kalıcı hesap silme için açık risk onayı */
.acct-delete-ack{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid rgba(255,115,115,.28);border-radius:12px;background:rgba(120,20,28,.12);font-size:12px;font-weight:800;line-height:1.35}.acct-delete-ack input{margin-top:2px;accent-color:#e85b64;flex:0 0 auto}


/* v5.0.47 · profil resmi her oyun yüzeyinde */
.seat>.seat-av{width:52px;height:52px;min-width:52px;border-radius:50%;overflow:hidden;display:grid;place-items:center}
.seat>.seat-av img{width:100%;height:100%;object-fit:cover}
.pcard .av>.hud-av{width:100%;height:100%;border-radius:50%;overflow:hidden;display:grid;place-items:center}
.pcard .av>.hud-av img{width:100%;height:100%;object-fit:cover}
@media(max-width:760px){.seat>.seat-av{width:42px;height:42px;min-width:42px}}

/* ===== v5.0.49 · canlı UI yerleşim + mobil takas + mağaza zar önizleme ===== */
/* Ana menü topluluk düğmeleri her çözünürlükte sol altta kalır; oyun içi hamburger/sohbet birbirine karışmaz. */
.menu-social{top:auto!important;right:auto!important;left:max(14px,var(--safe-l))!important;bottom:max(14px,var(--safe-b))!important}
@media (orientation:landscape){
  .game .top-actions{left:max(16px,var(--safe-l))!important;right:auto!important;top:50%!important}
  .game .side-chat{right:max(16px,var(--safe-r))!important;left:auto!important;top:50%!important}
  :dir(rtl) .game .top-actions{right:max(16px,var(--safe-r))!important;left:auto!important}
  :dir(rtl) .game .side-chat{left:max(16px,var(--safe-l))!important;right:auto!important}
}
@media (orientation:landscape) and (max-height:540px){
  .menu-social{left:max(8px,var(--safe-l))!important;bottom:max(8px,var(--safe-b))!important}
  .game .top-actions{left:max(6px,var(--safe-l))!important}
  .game .side-chat{right:max(6px,var(--safe-r))!important}
  :dir(rtl) .game .top-actions{right:max(6px,var(--safe-r))!important;left:auto!important}
  :dir(rtl) .game .side-chat{left:max(6px,var(--safe-l))!important;right:auto!important}
}

/* Telefonda teklif/takas iki tarafı aynı ekranda tutar; sayfa aşağı taşmak yerine listeler kendi içinde kayar. */
@media (max-width:640px) and (orientation:portrait){
  .overlay.side:has(.sheet.trade){place-items:center;padding:max(8px,var(--safe-t)) 8px max(8px,var(--safe-b))}
  .overlay.side .sheet.trade{
    width:calc(100vw - 16px)!important;max-width:none!important;height:auto;max-height:calc(100dvh - 16px)!important;
    padding:11px!important;overflow:hidden!important;display:flex;flex-direction:column;gap:7px;border-radius:20px
  }
  .sheet.trade .sheet-head{margin:0 0 2px}.sheet.trade .sheet-head h2{font-size:19px}
  .sheet.trade>.bhelp{margin:0;max-height:42px;overflow:auto;font-size:10.5px;line-height:1.22;padding-right:2px}
  .sheet.trade .tcols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;min-height:0;flex:1}
  .sheet.trade .tcol{padding:7px;gap:5px;min-width:0;min-height:0;grid-template-rows:auto minmax(72px,1fr) auto auto;overflow:hidden;border-radius:14px}
  .sheet.trade .tcol h4{font-size:12px;display:grid;gap:2px}.sheet.trade .tcol h4 small{font-size:9.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .sheet.trade .tlist{min-height:72px;max-height:none!important;overflow:auto;gap:4px;padding-right:1px}
  .sheet.trade .tasset{grid-template-columns:4px minmax(0,1fr);gap:5px;padding:6px;border-radius:9px}.sheet.trade .tasset>em{grid-column:2;font-size:10px}.sheet.trade .tasset .bar{width:4px;height:23px}.sheet.trade .tasset b{font-size:11px;white-space:normal}
  .sheet.trade .tmoney{display:grid;grid-template-columns:1fr 1fr;gap:4px;align-items:center}.sheet.trade .tmoney>span{grid-column:1/-1;font-size:10px}.sheet.trade .tmoney>b{grid-column:1/-1;min-width:0;font-size:13px;text-align:left}.sheet.trade .tmoney .btn{min-height:30px!important;padding:0 5px;font-size:11px}.sheet.trade .tmoney [data-act="meq"]{grid-column:1/-1}
  .sheet.trade .tbal{font-size:9.5px}.sheet.trade .tmeter{margin:0;padding:7px;border-radius:12px}.sheet.trade .tbar{height:9px}.sheet.trade .tbar .needle{top:-4px;height:17px}.sheet.trade .tvals{margin-top:5px;font-size:10px}.sheet.trade .tpct{font-size:15px}.sheet.trade .tmeter p{margin-top:4px;font-size:10px;line-height:1.15}
  .sheet.trade .actions{gap:6px;margin-top:0}.sheet.trade .actions .btn{min-height:40px!important;padding:0 8px;font-size:13px}
  .sheet.trade>.ctimer{scale:.82;transform-origin:top right}
}
@media (orientation:landscape) and (max-height:540px){
  .overlay.side .sheet.trade{max-height:calc(100dvh - 12px)!important;overflow:hidden!important;display:flex;flex-direction:column}
  .overlay.side .sheet.trade .tcols{min-height:0;flex:1}.overlay.side .sheet.trade .tlist{min-height:0;max-height:none;overflow:auto}
}

/* Mağaza zar önizlemesinde Zar At düğmesi oyun HUD'u gibi merkezde sabit kalır; basınca transform kaybolup zıplamaz. */
.shop-world-roll{
  left:50%!important;bottom:clamp(22px,5%,38px)!important;top:auto!important;
  min-width:200px;min-height:60px;font-size:22px;
  transform:translateX(-50%)!important;transform-origin:center!important;will-change:auto!important
}
.shop-world-roll:hover,.shop-world-roll:active,.shop-world-roll:focus-visible{transform:translateX(-50%)!important}
@media (max-width:860px),(max-aspect-ratio:9/10){
  .shop-world-roll{bottom:18px!important;min-width:170px;min-height:50px;font-size:17px}
}
@media (orientation:landscape) and (max-height:540px){
  .shop-world-roll{bottom:12px!important;min-width:136px;min-height:44px;font-size:16px}
}

/* ===== v5.0.50 · FHD oran kilidi / 2K-3K-4K final guard =====
   1920×1080 referans geometrisi büyük monitörlerde min(width/1920,height/1080)
   oranıyla büyür. v5.0.49'un en sonda gelen sabit px kuralları bu ölçeği ezemez. */
@media (min-width:1900px) and (min-height:1000px) and (pointer:fine){
  .menu-social{
    left:calc(clamp(14px,min(.73vw,1.30dvh),28px) + var(--safe-l))!important;
    bottom:calc(clamp(14px,min(.73vw,1.30dvh),28px) + var(--safe-b))!important
  }
  .game .top-actions{
    left:calc(clamp(16px,min(.83vw,1.48dvh),32px) + var(--safe-l))!important;
    right:auto!important;top:50%!important
  }
  .game .side-chat{
    right:calc(clamp(16px,min(.83vw,1.48dvh),32px) + var(--safe-r))!important;
    left:auto!important;top:50%!important
  }
  :dir(rtl) .game .top-actions{
    right:calc(clamp(16px,min(.83vw,1.48dvh),32px) + var(--safe-r))!important;
    left:auto!important
  }
  :dir(rtl) .game .side-chat{
    left:calc(clamp(16px,min(.83vw,1.48dvh),32px) + var(--safe-l))!important;
    right:auto!important
  }
  .game .top-actions,.game .side-chat .icon-btn{
    width:clamp(48px,min(2.5vw,4.44dvh),96px)!important;
    height:clamp(48px,min(2.5vw,4.44dvh),96px)!important
  }
  .game .ta-more,.game .top-actions .icon-btn{
    width:clamp(48px,min(2.5vw,4.44dvh),96px)!important;
    height:clamp(48px,min(2.5vw,4.44dvh),96px)!important
  }
  .game .ta-more svg,.game .top-actions .icon-btn svg,.game .side-chat .icon-btn svg{
    width:clamp(22px,min(1.15vw,2.04dvh),44px)!important;
    height:clamp(22px,min(1.15vw,2.04dvh),44px)!important
  }
  .seat>.seat-av{
    width:clamp(52px,min(2.71vw,4.81dvh),104px);
    height:clamp(52px,min(2.71vw,4.81dvh),104px);
    min-width:clamp(52px,min(2.71vw,4.81dvh),104px)
  }
  .acct-delete-ack{
    gap:clamp(10px,min(.52vw,.93dvh),20px);
    padding:clamp(10px,min(.52vw,.93dvh),20px) clamp(12px,min(.63vw,1.11dvh),24px);
    border-radius:clamp(12px,min(.63vw,1.11dvh),24px);
    font-size:clamp(12px,min(.63vw,1.11dvh),24px)
  }
  .shop-world-roll{
    bottom:clamp(22px,min(1.98vw,3.52dvh),76px)!important;
    min-width:clamp(200px,min(10.42vw,18.52dvh),400px)!important;
    min-height:clamp(60px,min(3.13vw,5.56dvh),120px)!important;
    font-size:clamp(22px,min(1.15vw,2.04dvh),44px)!important;
    border-radius:clamp(18px,min(.94vw,1.67dvh),36px)!important
  }
}


/* ===== v5.0.51 · son mobil/PP/takas/tur kararı düzeltmeleri ===== */
/* Oyuncu avatarına yapay göz çizme: Google / karakter / baş harf ne seçildiyse aynen göster. */
.pcard .av::before,.pcard .av::after{content:none!important;display:none!important;box-shadow:none!important}

/* Oyun içi sol üst marka bloğunu kaldır; üstteki iki oyuncu kartını aynı hizada tut. */
.game .topbar .brand{display:none!important}
.game .pcard.pc-0,.game .pcard.pc-1{top:calc(12px + var(--safe-t))!important}
@media (orientation:landscape) and (max-height:540px){
  .game .pcard.pc-0,.game .pcard.pc-1{top:calc(4px + var(--safe-t))!important}
}

/* Dereceli profil avatarı: boyutu wrapper taşır; iç resim wrapper dışına kaymaz. */
.rk-me-top{grid-template-columns:auto minmax(0,1fr) auto!important}
.rk-me-top>.me-av{--s:48px;align-self:center;justify-self:center;min-width:var(--s)!important}
.rk-me-top>.me-av img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:cover!important;display:block!important}
.rk-me-top>.av-dot{width:48px!important;height:48px!important;align-self:center;justify-self:center}
@media (orientation:landscape) and (max-height:540px){
  .rk-me-top>.me-av{--s:36px}.rk-me-top>.av-dot{width:36px!important;height:36px!important}
}

/* Discord + Bize ulaş telefon/tablet dahil ana menüde daima görünür. JS bunları yalnız ana menüde üretir. */
@media (max-width:1180px),(pointer:coarse){
  body .menu-social{
    display:flex!important;visibility:visible!important;opacity:1!important;z-index:40!important;
    left:calc(10px + var(--safe-l))!important;right:auto!important;
    top:auto!important;bottom:calc(10px + var(--safe-b))!important
  }
}

/* Telefonda takas iki dar kolona sıkışmaz: taraflar tek kolon halinde, panel kendi içinde kayar. */
@media (max-width:640px) and (orientation:portrait){
  .overlay.side:has(.sheet.trade){
    place-items:center!important;align-items:center!important;
    padding:calc(8px + var(--safe-t)) 8px calc(8px + var(--safe-b))!important;
    overflow:hidden!important
  }
  .overlay.side .sheet.trade{
    width:calc(100vw - 16px)!important;max-width:none!important;
    height:auto!important;max-height:calc(100dvh - var(--safe-t) - var(--safe-b) - 16px)!important;
    padding:12px!important;overflow-y:auto!important;overflow-x:hidden!important;
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;
    overscroll-behavior:contain;border-radius:18px
  }
  .sheet.trade .sheet-head{position:sticky;top:-12px;z-index:3;background:linear-gradient(180deg,#18396f 82%,rgba(24,57,111,0));padding:10px 0 6px;margin:-10px 0 0!important}
  .sheet.trade>.bhelp{max-height:none!important;overflow:visible!important;margin:0!important}
  .sheet.trade .tcols{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;min-height:0!important;height:auto!important;flex:none!important
  }
  .sheet.trade .tcol{
    min-width:0!important;min-height:0!important;height:auto!important;
    display:grid!important;grid-template-rows:auto auto auto auto!important;
    gap:6px!important;padding:9px!important;overflow:visible!important
  }
  .sheet.trade .tcol h4{font-size:12px!important;margin:0!important}
  .sheet.trade .tlist{
    min-height:52px!important;max-height:21dvh!important;overflow:auto!important;
    display:grid!important;gap:5px!important;padding-right:2px
  }
  .sheet.trade .tasset{
    display:grid!important;grid-template-columns:4px minmax(0,1fr) auto!important;
    align-items:center!important;gap:6px!important;padding:7px!important
  }
  .sheet.trade .tasset .bar{grid-column:1!important;grid-row:1 / span 2!important}
  .sheet.trade .tasset b{grid-column:2!important;grid-row:1!important;min-width:0!important}
  .sheet.trade .tasset>em{grid-column:3!important;grid-row:1 / span 2!important;white-space:nowrap!important;align-self:center!important}
  .sheet.trade .tmoney{
    display:grid!important;grid-template-columns:38px minmax(0,1fr) 38px!important;
    gap:5px!important;align-items:center!important
  }
  .sheet.trade .tmoney>span{grid-column:1/-1!important;grid-row:1!important;font-size:10px!important}
  .sheet.trade .tmoney [data-act="m-"]{grid-column:1!important;grid-row:2!important}
  .sheet.trade .tmoney>b{grid-column:2!important;grid-row:2!important;min-width:0!important;text-align:center!important;font-size:13px!important}
  .sheet.trade .tmoney [data-act="m+"]{grid-column:3!important;grid-row:2!important}
  .sheet.trade .tmoney [data-act="meq"]{grid-column:1/-1!important;grid-row:3!important;min-height:34px!important}
  .sheet.trade .tmoney .btn{min-height:34px!important;padding:0 6px!important}
  .sheet.trade .tbal{font-size:10px!important}
  .sheet.trade .tmeter{margin:0!important;padding:8px!important}
  .sheet.trade .actions{position:sticky;bottom:-12px;z-index:3;background:linear-gradient(0deg,#18396f 82%,rgba(24,57,111,0));padding:8px 0 10px;margin:0!important}
  .sheet.trade .actions .btn{min-height:42px!important}
}

/* FHD oran kilidi içinde dereceli avatar wrapper da aynı ölçekle büyür. */
@media (min-width:1900px) and (min-height:1000px) and (pointer:fine){
  .rk-me-top>.me-av{--s:clamp(48px,min(2.5vw,4.44dvh),96px)}
  .rk-me-top>.av-dot{width:clamp(48px,min(2.5vw,4.44dvh),96px)!important;height:clamp(48px,min(2.5vw,4.44dvh),96px)!important}
  .game .pcard.pc-0,.game .pcard.pc-1{top:calc(clamp(14px,min(.73vw,1.30dvh),28px) + var(--safe-t))!important}
}


/* ===== v5.0.52 · mobil sosyal portal + lobby avatar + yatay takas final guard ===== */
/* Ana menü sosyal grubu #app dışında body portalıdır: mobil tarayıcı viewport/stacking farklarında kaybolmaz. */
body>.menu-social{
  position:fixed!important;
  z-index:32!important; /* modal overlay (40) altında, menü/sky üstünde */
  display:flex!important;visibility:visible!important;opacity:1!important;
  left:calc(10px + var(--safe-l))!important;right:auto!important;
  top:auto!important;bottom:calc(10px + var(--safe-b))!important;
  pointer-events:auto!important;transform:translateZ(0)
}
@media (pointer:coarse) and (max-width:1180px){
  body>.menu-social{gap:7px!important}
  body>.menu-social .soc-btn{min-width:44px;height:44px;min-height:44px;border-radius:14px}
}
@media (pointer:coarse) and (max-width:760px){
  body>.menu-social .soc-btn{width:44px!important;padding:0!important;justify-content:center!important}
  body>.menu-social .soc-btn span{display:none!important}
}

/* Mobil lobby: avatar hücresi gerçek avatar kadar geniştir; isim/badge PP'nin üstüne binmez.
   İç avatar resmi her zaman yuvarlak wrapper'ı tamamen doldurur; kare "resim içinde resim" oluşmaz. */
@media (pointer:coarse),(orientation:landscape) and (max-height:600px){
  .menu.lobby-wide .seat:not(.bot):not(.empty){
    grid-template-columns:46px minmax(0,1fr) auto!important;
    grid-template-rows:auto!important;
    align-items:center!important;column-gap:9px!important;row-gap:2px!important;
    min-width:0!important
  }
  .menu.lobby-wide .seat>.seat-av{
    --s:42px!important;width:42px!important;height:42px!important;min-width:42px!important;
    grid-column:1!important;grid-row:1!important;align-self:center!important;justify-self:center!important;
    border-radius:50%!important;overflow:hidden!important
  }
  .menu.lobby-wide .seat>.seat-av>img{
    width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
    grid-row:auto!important;display:block!important;object-fit:cover!important;filter:none!important;
    border-radius:50%!important
  }
  .menu.lobby-wide .seat>.seat-av.char>img{
    object-fit:contain!important;transform:translateY(8%) scale(1.25)!important
  }
  .menu.lobby-wide .seat>.seat-av.ini>b{
    width:100%!important;height:100%!important;display:grid!important;place-items:center!important;
    border-radius:50%!important;background:transparent!important
  }
  .menu.lobby-wide .seat-info{
    grid-column:2!important;grid-row:1!important;min-width:0!important;width:100%!important;
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    justify-items:start!important;text-align:start!important;gap:2px!important;overflow:hidden!important
  }
  .menu.lobby-wide .seat-info b{
    max-width:100%!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important
  }
  .menu.lobby-wide .seat-info .mp-badge{justify-self:start!important;max-width:100%!important}
  .menu.lobby-wide .seat-info .mp-ping{display:none!important}
  .menu.lobby-wide .seat-tools{
    grid-column:3!important;grid-row:1!important;justify-self:end!important;align-self:center!important;
    flex-wrap:nowrap!important;min-width:0!important
  }
}
/* Çok dar telefonlarda araç düğmeleri isim alanını ezmesin. */
@media (pointer:coarse) and (max-width:700px){
  .menu.lobby-wide .seat:not(.bot):not(.empty):has(.seat-tools){
    grid-template-columns:42px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important
  }
  .menu.lobby-wide .seat:not(.bot):not(.empty):has(.seat-tools)>.seat-av{grid-row:1/3!important}
  .menu.lobby-wide .seat:not(.bot):not(.empty):has(.seat-tools) .seat-tools{
    grid-column:2!important;grid-row:2!important;justify-self:start!important
  }
}

/* Yatay telefon: takas/teklif hazırlanırken board'u küçük bırakıp kontrolleri sıkıştırmak yerine
   paneli tam kullanılabilir viewport'a al. İki taraf geniş iki sütunda, mülk listeleri kendi içinde scroll. */
@media (pointer:coarse) and (orientation:landscape) and (max-height:700px){
  .overlay.side:has(.sheet.trade){
    place-items:stretch!important;align-items:stretch!important;
    padding:calc(6px + var(--safe-t)) calc(6px + var(--safe-r)) calc(6px + var(--safe-b)) calc(6px + var(--safe-l))!important;
    overflow:hidden!important;background:rgba(4,10,24,.78)!important
  }
  .overlay.side .sheet.trade{
    width:100%!important;max-width:none!important;
    height:100%!important;max-height:none!important;min-height:0!important;
    margin:0!important;padding:10px 12px!important;border-radius:18px!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-rows:auto auto minmax(0,1fr) auto auto!important;
    gap:6px!important
  }
  .sheet.trade .sheet-head{
    position:relative!important;top:auto!important;margin:0!important;padding:0 62px 0 0!important;
    background:none!important;min-height:42px!important
  }
  .sheet.trade .sheet-head h2{font-size:20px!important;line-height:1.05!important;min-width:0!important}
  .sheet.trade .sheet-head .icon-btn{position:absolute!important;right:0!important;top:0!important;width:42px!important;height:42px!important}
  .sheet.trade>.ctimer{
    left:auto!important;right:52px!important;top:0!important;transform:none!important;scale:none!important;
    width:42px!important;height:42px!important;font-size:13px!important
  }
  .sheet.trade>.bhelp{
    margin:0!important;padding:0 2px!important;font-size:10.5px!important;line-height:1.2!important;
    max-height:2.45em!important;overflow:hidden!important;
    display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important
  }
  .sheet.trade .tcols{
    display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px!important;min-height:0!important;height:100%!important;overflow:hidden!important
  }
  .sheet.trade .tcol{
    min-width:0!important;min-height:0!important;height:100%!important;
    padding:8px!important;gap:5px!important;overflow:hidden!important;
    display:grid!important;grid-template-rows:auto minmax(0,1fr) auto auto!important
  }
  .sheet.trade .tcol h4{font-size:12.5px!important;line-height:1.05!important;margin:0!important;min-width:0!important}
  .sheet.trade .tcol h4 small{font-size:10px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  .sheet.trade .tlist{
    min-height:0!important;max-height:none!important;height:auto!important;
    overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
    display:grid!important;align-content:start!important;gap:4px!important;padding-right:2px!important
  }
  .sheet.trade .tasset{
    display:grid!important;grid-template-columns:4px minmax(0,1fr) auto!important;
    align-items:center!important;gap:5px!important;padding:6px!important;min-height:38px!important
  }
  .sheet.trade .tasset .bar{grid-column:1!important;grid-row:1/3!important;width:4px!important;height:26px!important}
  .sheet.trade .tasset span{grid-column:2!important;min-width:0!important}
  .sheet.trade .tasset b{font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .sheet.trade .tasset>em{grid-column:3!important;grid-row:1/3!important;font-size:10.5px!important;white-space:nowrap!important}
  .sheet.trade .tmoney{
    display:grid!important;grid-template-columns:36px minmax(0,1fr) 36px auto!important;
    gap:4px!important;align-items:center!important;min-width:0!important
  }
  .sheet.trade .tmoney>span{display:none!important}
  .sheet.trade .tmoney [data-act="m-"]{grid-column:1!important}
  .sheet.trade .tmoney>b{grid-column:2!important;min-width:0!important;text-align:center!important;font-size:12px!important}
  .sheet.trade .tmoney [data-act="m+"]{grid-column:3!important}
  .sheet.trade .tmoney [data-act="meq"]{grid-column:4!important;min-width:58px!important}
  .sheet.trade .tmoney .btn{min-height:32px!important;height:32px!important;padding:0 6px!important;font-size:10.5px!important}
  .sheet.trade .tbal{font-size:9.5px!important;line-height:1!important}
  .sheet.trade .tmeter{margin:0!important;padding:6px 8px!important;border-radius:11px!important}
  .sheet.trade .tbar{height:8px!important}.sheet.trade .tbar .needle{top:-4px!important;height:16px!important}
  .sheet.trade .tvals{margin-top:3px!important;font-size:10px!important}.sheet.trade .tpct{font-size:14px!important}
  .sheet.trade .tmeter p{display:none!important}
  .sheet.trade .actions{
    position:static!important;display:grid!important;grid-template-columns:1fr 1fr!important;
    gap:7px!important;margin:0!important;padding:0!important;background:none!important
  }
  .sheet.trade .actions .btn{min-height:38px!important;height:38px!important;padding:0 8px!important;font-size:13px!important}
}

/* ===== v5.0.53 · mobil sosyal görünürlük + tam ekran teklif/takas final guard ===== */
/* Ana menü topluluk düğmeleri mobil tarayıcı/PWA viewport farklarında da görünür kalır.
   Konumu JS visualViewport ile de sabitler; bu CSS son güvenlik katmanıdır. */
body>.menu-social{
  position:fixed!important;display:flex!important;visibility:visible!important;opacity:1!important;
  z-index:39!important;pointer-events:auto!important;isolation:isolate!important;
  left:calc(10px + var(--safe-l))!important;right:auto!important;
  bottom:calc(10px + var(--safe-b))!important;top:auto;
  max-width:calc(100vw - var(--safe-l) - var(--safe-r) - 20px)!important
}
@media (pointer:coarse),(max-width:900px){
  body>.menu-social{gap:6px!important}
  body>.menu-social .soc-btn{height:44px!important;min-height:44px!important;min-width:44px!important;border-radius:14px!important}
}
@media (max-width:520px){
  body>.menu-social .soc-btn{width:44px!important;padding:0!important;justify-content:center!important}
  body>.menu-social .soc-btn span{display:none!important}
}

/* Telefon/tablette teklif hazırlama ekranı: hiçbir kontrol board veya başka kontrolle üst üste binmez.
   Yatayda iki kullanılabilir sütun, dikeyde tek sütun; listeler yalnız kendi içinde kayar. */
@media (max-width:1000px), (orientation:landscape) and (max-height:900px){
  .overlay.side:has(.sheet.trade){
    position:fixed!important;inset:0!important;display:grid!important;place-items:stretch!important;
    padding:calc(6px + var(--safe-t)) calc(6px + var(--safe-r)) calc(6px + var(--safe-b)) calc(6px + var(--safe-l))!important;
    overflow:hidden!important;background:rgba(4,10,24,.82)!important
  }
  .overlay.side>.sheet.trade{
    position:relative!important;inset:auto!important;width:100%!important;max-width:none!important;
    height:100%!important;max-height:none!important;min-height:0!important;margin:0!important;
    padding:10px!important;border-radius:18px!important;overflow:hidden!important;
    display:grid!important;grid-template-rows:auto auto minmax(0,1fr) auto auto!important;gap:6px!important
  }
  .sheet.trade .sheet-head{
    position:relative!important;top:auto!important;z-index:4!important;margin:0!important;padding:0 96px 0 0!important;
    min-height:42px!important;background:none!important;border-radius:0!important
  }
  .sheet.trade .sheet-head h2{font-size:clamp(17px,4.5vw,22px)!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .sheet.trade .sheet-head .icon-btn{position:absolute!important;right:0!important;top:0!important;width:42px!important;height:42px!important}
  .sheet.trade>.ctimer{position:absolute!important;left:auto!important;right:50px!important;top:9px!important;transform:none!important;width:42px!important;height:42px!important;font-size:12px!important;z-index:6!important}
  .sheet.trade>.bhelp{margin:0!important;padding:0 2px!important;font-size:10.5px!important;line-height:1.2!important;max-height:2.5em!important;overflow:hidden!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important}
  .sheet.trade .tcols{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;min-height:0!important;height:100%!important;overflow:hidden!important}
  .sheet.trade .tcol{min-width:0!important;min-height:0!important;height:100%!important;padding:8px!important;overflow:hidden!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto auto!important;gap:5px!important}
  .sheet.trade .tcol h4{margin:0!important;font-size:12px!important;line-height:1.1!important}
  .sheet.trade .tlist{min-height:0!important;max-height:none!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;touch-action:pan-y!important;pointer-events:auto!important;display:grid!important;align-content:start!important;gap:5px!important;padding:1px 2px 3px!important}
  .sheet.trade .tasset{min-width:0!important;padding:7px!important;pointer-events:auto!important}
  .sheet.trade .tmoney{min-width:0!important;gap:4px!important}
  .sheet.trade .tmoney .btn{min-width:34px!important;min-height:34px!important;padding:0 6px!important;pointer-events:auto!important}
  .sheet.trade .tmeter{position:relative!important;inset:auto!important;margin:0!important;padding:7px!important;z-index:2!important;pointer-events:none!important}
  .sheet.trade .actions{position:relative!important;inset:auto!important;z-index:4!important;margin:0!important;padding:0!important;background:none!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important}
  .sheet.trade .actions .btn{min-height:42px!important;pointer-events:auto!important}
}
@media (max-width:700px) and (orientation:portrait){
  .overlay.side>.sheet.trade{height:100%!important;overflow-y:auto!important;overflow-x:hidden!important;display:block!important;padding:10px!important}
  .sheet.trade .sheet-head{position:sticky!important;top:-10px!important;background:linear-gradient(180deg,#18396f 82%,rgba(24,57,111,.94))!important;padding-top:8px!important;padding-bottom:8px!important;z-index:8!important}
  .sheet.trade>.ctimer{position:sticky!important;float:right!important;top:4px!important;margin-top:-48px!important;margin-right:46px!important}
  .sheet.trade>.bhelp{display:block!important;max-height:none!important;margin:6px 0!important}
  .sheet.trade .tcols{display:grid!important;grid-template-columns:minmax(0,1fr)!important;height:auto!important;overflow:visible!important;gap:8px!important}
  .sheet.trade .tcol{height:auto!important;overflow:visible!important;grid-template-rows:auto auto auto auto!important}
  .sheet.trade .tlist{max-height:24dvh!important;min-height:54px!important;height:auto!important}
  .sheet.trade .tmeter{margin-top:8px!important}
  .sheet.trade .actions{position:sticky!important;bottom:-10px!important;background:linear-gradient(0deg,#18396f 82%,rgba(24,57,111,.96))!important;padding:8px 0 10px!important}
}
/* v5.0.53 sohbet yalnız oda lobisi veya aktif oyun kapsamındayken görünür. */
body:not(.chat-scope-lobby):not(.chat-scope-game) .chat-panel,
body:not(.chat-scope-lobby):not(.chat-scope-game) .chat-btn,
body:not(.chat-scope-lobby):not(.chat-scope-game) .chat-fab,
body:not(.chat-scope-lobby):not(.chat-scope-game) .chat-peek{display:none!important}


/* ===== v5.0.55 · mobil ana menü sosyal slot final =====
   Discord + Bize ulaş artık #app içinde doğrudan ana menüyle birlikte yaşar.
   visualViewport/JS top hesabı yok; safe-area ile gerçek sol-alt köşeye sabitlenir. */
#app>.menu-social{
  position:fixed!important;
  left:calc(10px + var(--safe-l))!important;right:auto!important;
  top:auto!important;bottom:calc(10px + var(--safe-b))!important;
  z-index:39!important;display:flex!important;visibility:visible!important;opacity:1!important;
  pointer-events:auto!important;transform:none!important;
  max-width:calc(100vw - var(--safe-l) - var(--safe-r) - 20px)!important
}
@media (pointer:coarse),(max-width:900px){
  #app>.menu-social{display:flex!important;gap:6px!important}
  #app>.menu-social .soc-btn{height:44px!important;min-height:44px!important;min-width:44px!important;border-radius:14px!important}
}
@media (max-width:520px){
  #app>.menu-social .soc-btn{width:44px!important;padding:0!important;justify-content:center!important}
  #app>.menu-social .soc-btn span{display:none!important}
}
