/* ===== v1.3.1: اصلاح موبایل + فونت ===== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden;max-width:100%;scroll-behavior:smooth}
body{overflow-x:hidden;overflow-x:clip;max-width:100%;position:relative;
  font-family:var(--font)!important;font-size:16px;line-height:1.85;font-weight:400;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;
  font-feature-settings:"kern","liga"}
body.au,body.hm,button,input,select,textarea,table,.btn,.chip{font-family:var(--font)!important}
button,input,select,textarea{font-size:1rem}
input,select,textarea{font-size:16px} /* جلوگیری از زوم خودکار iOS/Chrome هنگام فوکوس */
h1,h2,h3,h4{font-weight:800;line-height:1.55;letter-spacing:0}
b,strong,th{font-weight:700}
small{line-height:1.7}
.layout{width:100%;max-width:100%;overflow-x:clip}
main{min-width:0;max-width:100%}
main>*,.card,.pcard,.wcard,.inv,.tw,.hgrid2,.hc{max-width:100%;min-width:0}
img,svg,video,canvas,iframe{max-width:100%}
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch}
td,th{font-size:.92rem}
.big,.bal b,.pcard .bl .big{font-variant-numeric:tabular-nums}
p,.sub,.muted{line-height:1.95}
a,button{-webkit-tap-highlight-color:transparent}

@media(max-width:899px){
  /* منوی کناری وقتی بسته است کاملاً از صفحه خارج و غیرفعال شود */
  aside{visibility:hidden;transition:transform .25s ease,visibility 0s linear .25s}
  aside.open{visibility:visible;transition:transform .25s ease,visibility 0s}
  main{padding:14px 14px calc(124px + env(safe-area-inset-bottom))}
  .apphd{gap:10px}
  .who b{font-size:1.1rem}
  .pgt{font-size:1.3rem}
  .card{border-radius:24px;padding:16px}
  .pcard .bl .big{font-size:1.9rem}

  /* نوار پایین: همیشه داخل عرض صفحه */
  .fnav{position:fixed;left:10px;right:10px;inset-inline:10px;width:auto;max-width:520px;margin-inline:auto;
    bottom:calc(10px + env(safe-area-inset-bottom));height:72px;padding:0 6px;gap:2px;border-radius:40px;
    justify-content:space-between;overflow:visible}
  .fnav a{flex:1 1 0;min-width:0;padding:7px 2px;font-size:.74rem;gap:2px;white-space:nowrap;
    overflow:hidden;text-overflow:ellipsis;border-radius:22px;line-height:1.5}
  .fnav a svg{width:24px;height:24px;flex:none}
  .fnav .fab{flex:0 0 64px;width:64px;height:64px;min-width:64px;padding:0;margin-top:-32px;border-width:6px}
  .toast{bottom:calc(100px + env(safe-area-inset-bottom))}
}
@media(max-width:380px){
  body{font-size:15px}
  .fnav a{font-size:.68rem}
  .fnav .fab{flex-basis:58px;width:58px;height:58px;min-width:58px}
  .acts .rbtn{width:42px;height:42px}
}

/* ===== v1.3.2: آیکن‌های تیک/ستاره به‌جای حروف فونت ===== */
.ckm,.state.ok::before{display:inline-block;width:1.1em;height:1.1em;vertical-align:-.2em;margin-inline-end:5px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.6 4.6L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.6 4.6L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat}
.state.ok::before{content:""}
.tx .ic .ckm{margin:0;width:1.25em;height:1.25em;vertical-align:middle}
.stm{display:block;width:55%;height:55%;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 2.8l2.9 5.9 6.5.9-4.7 4.6 1.1 6.5L12 17.6 6.2 20.7l1.1-6.5L2.6 9.6l6.5-.9z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 2.8l2.9 5.9 6.5.9-4.7 4.6 1.1 6.5L12 17.6 6.2 20.7l1.1-6.5L2.6 9.6l6.5-.9z'/%3E%3C/svg%3E") center/contain no-repeat}
.av .stm{margin:auto;height:100%}
h1,h2,h3,.logo,.hlogo,.brand,.pgt{font-family:var(--font-head)!important}
/* چک‌باکس/رادیو: ساده و تمیز */
.chk i,.gw input[type=checkbox]{border-radius:8px!important;border:1.5px solid #4a4885}
.chk input:checked+i,.gw input:checked{background:var(--g);border-color:transparent;box-shadow:0 0 0 4px color-mix(in srgb,var(--a1) 22%,transparent)}
.chk i,.gw input[type=checkbox]{display:grid;place-items:center}
/* صفحهٔ ورود: هیچ ردیفی از عرض کارت بیرون نزند */
.au *{min-width:0}.fld.cap{flex-wrap:wrap;row-gap:8px}.fld.cap .cq{max-width:100%}
