
/* ===== Strong Army v2.4 — Button sizing fix & mobile modal polish ===== */
:root{
  --bg:#f8fafc; --surface:#ffffff; --card:#ffffff; --line:#e6e8ee; --line-strong:#d7dbe6;
  --text:#0f172a; --muted:#6b7280;
  --accent:#6366f1; --accent2:#06b6d4; --accent3:#ec4899; --accent4:#0ea5e9;
  --radius:16px; --shadow-sm:0 6px 16px rgba(15,23,42,.05); --shadow:0 10px 28px rgba(15,23,42,.08);
  --container:1180px; --gutter:16px;
  --fs-200:clamp(1rem,.95rem + .2vw,1.06rem);
  --fs-500:clamp(1.5rem,1.2rem + .7vw,1.8rem);
  --fs-700:clamp(2rem,1.4rem + 1.4vw,2.5rem);
  --btn-h:clamp(42px, 5.2vw, 48px);
  --btn-fs:clamp(.9rem, .85rem + .2vw, .95rem);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;background:transparent;color:var(--text)}
body{font-family:"Vazirmatn",system-ui,"Segoe UI";line-height:1.8;font-size:var(--fs-200)}
.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:clamp(20px,3vw,44px)}
.header{padding-block:14px 6px}
.brand{display:flex;align-items:center;gap:12px}
.brand__logo{width:62px;height:62px;border-radius:14px;object-fit:cover;box-shadow:0 8px 24px rgba(2,6,23,.08)}
.brand__title{font-size:var(--fs-700);font-weight:900;letter-spacing:.2px;line-height:1.1}
.brand__title span{background:linear-gradient(120deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}
.h-title{display:flex;align-items:center;gap:10px;margin:0 0 12px 0;font-weight:900}
.h-title:after{content:"";flex:1;height:2px;background:linear-gradient(90deg,rgba(99,102,241,.35),rgba(14,165,233,.15),transparent)}
.card{background:var(--card);border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden;position:relative}
.card::before{content:"";position:absolute;inset:0;border-radius:calc(var(--radius) + 1px);padding:1px;background:linear-gradient(120deg,rgba(99,102,241,.25),rgba(6,182,212,.15));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.card-body{padding:20px}
.card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(2,6,23,.10);transition:.25s ease}
.btn{
  --bg:#ffffff; --fg:var(--text); --ring:rgba(14,165,233,.25);
  position:relative; overflow:hidden; flex:0 0 auto;
  display:inline-flex; align-items:center; justify-content:center; gap:.55rem;
  height:var(--btn-h); padding:0 clamp(16px, 3.6vw, 22px); font-size:var(--btn-fs); font-weight:900; letter-spacing:.2px;
  border-radius:999px; border:1px solid var(--line);
  background:var(--bg); color:var(--fg);
  box-shadow:0 6px 16px rgba(15,23,42,.06);
  transition:transform .15s ease, box-shadow .25s ease, filter .2s ease, background .2s ease;
  text-decoration:none; user-select:none; -webkit-tap-highlight-color:transparent; white-space:nowrap;
}
.btn:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(2,6,23,.12)}
.btn:active{transform:translateY(0);filter:saturate(.98)}
.btn:focus,.btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--ring)}
.btn.equal{min-width:clamp(140px, 38vw, 210px)}
.btn .ico{font-size:1.05em;line-height:0;display:inline-flex}
.btn.grad-primary{--fg:#fff; --ring:rgba(99,102,241,.35); border:0;background:linear-gradient(135deg,#8b5cf6,#06b6d4)}
.btn.grad-sky{--fg:#fff; --ring:rgba(14,165,233,.35); border:0;background:linear-gradient(135deg,#0ea5e9,#22d3ee)}
.btn.grad-violet{--fg:#fff; --ring:rgba(236,72,153,.35); border:0;background:linear-gradient(135deg,#8b5cf6,#ec4899)}
.btn.soft{background:linear-gradient(180deg,#ffffff,#f6f7fb); border-color:var(--line-strong)}
.btn .ripple{position:absolute;border-radius:50%;transform:scale(0);animation:rip .6s ease-out;opacity:.35;background:#fff}
@keyframes rip{to{transform:scale(4);opacity:0}}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;padding:8px 0 12px}
.intro{display:grid;grid-template-columns:1fr;gap:12px}
@media (min-width:920px){ .intro{grid-template-columns:1.1fr .9fr} }
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.stat{background:linear-gradient(180deg,#ffffff 0%, #fbfbfe 100%);border:1px solid var(--line);border-radius:12px;padding:16px;text-align:center}
.stat .num{font-size:var(--fs-500);font-weight:900}
.stat .cap{color:var(--muted);margin-top:4px}
.slider{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.08)}
.slides{display:flex;transition:transform .6s cubic-bezier(.22,.61,.36,1);will-change:transform}
.slide{flex:0 0 100%;width:100%;aspect-ratio:1280/588;display:flex;align-items:center;justify-content:center}
.slide img{width:100%;height:100%;object-fit:cover;display:block}
@supports not (aspect-ratio: 1 / 1){.slide{position:relative}.slide::before{content:"";display:block;padding-top:45.94%}.slide>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}}
@media (max-width:640px){ .slide{aspect-ratio:16/9} }
.dots{position:absolute;left:0;right:0;bottom:12px;display:flex;gap:6px;justify-content:center}
.dot{width:10px;height:10px;border-radius:999px;border:1px solid rgba(2,6,23,.25);background:rgba(2,6,23,.15);cursor:pointer}
.dot.active{background:linear-gradient(120deg,var(--accent),var(--accent2))}
.apply .card-body{padding:24px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-grid .full{grid-column:1/-1}
.input,.textarea{width:100%;padding:14px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--text)}
.input:focus,.textarea:focus{outline:none;box-shadow:0 0 0 3px rgba(14,165,233,.2)}
.textarea{min-height:120px;resize:vertical}
.form-actions{text-align:center;margin-top:6px}
@media (max-width:768px){ .apply .card-body{padding:18px} .form-grid{grid-template-columns:1fr } }
.members{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
@media (max-width:1024px){ .members{grid-template-columns:repeat(3,1fr)} }
@media (max-width:720px){ .members{grid-template-columns:repeat(2,1fr)} }
.mcard{background:linear-gradient(180deg,#ffffff 0%, #fbfbfe 100%);border:1px solid var(--line);border-radius:12px;padding:14px}
.mtop{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.badge{font-size:.82rem;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:#eef2ff;color:#1f2937}
.mname{font-weight:800}
.uid{color:var(--muted);font-size:.92rem}
.footer{padding:18px 0;color:var(--muted);text-align:center;border-top:1px solid var(--line);margin-top:18px}
.modal{display:none;position:fixed;inset:0;background:rgba(15,23,42,.25);backdrop-filter:blur(3px);align-items:center;justify-content:center;z-index:40}
.modal-card{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 28px rgba(15,23,42,.08);padding:20px;max-width:520px;width:92%}
.modal-title{margin:0 0 8px 0;font-weight:900}
.tag-output{text-align:center;margin:12px 0 16px 0;color:#0f172a}
@media (max-width: 480px){
  .modal-card{padding:16px}
  .modal-card .btn{min-width:46%}
  .tag-output{font-size:clamp(1.6rem, 1.1rem + 4vw, 2.2rem)}
}
#bg-canvas{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(1200px 600px at 50% -10%, #ffffff 0%, #f3f6ff 70%, #eef2ff 100%)}
