/* Struktica guides — article layout, formulas and worked examples (extends style.css) */
.g-head .g-crumb{font-size:14px;color:#cfe0f5;margin-bottom:10px}
.g-head .g-crumb a{color:#fff;font-weight:600}
.g-tags{margin-top:14px}
.g-tags .tag{background:#ffffff1f;color:#fff;border:1px solid #ffffff40;direction:ltr;unicode-bidi:isolate}
.g-sec{padding:34px 0 64px}
.g-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:36px;align-items:start}
.g-toc{position:sticky;top:84px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;box-shadow:var(--shadow);font-size:14px}
.g-toc summary{font-weight:700;color:var(--navy);cursor:pointer;list-style:none}
.g-toc summary::-webkit-details-marker{display:none}
.g-toc ol{margin:10px 0 0;padding-inline-start:20px}
.g-toc li{margin:0 0 6px;color:var(--muted)}
.g-toc a{color:var(--ink)}
.g-toc a:hover{color:var(--blue)}
.g-toc a.btn,.g-toc a.btn:hover{color:#fff;text-decoration:none}
.g-calc-btn{display:block;text-align:center;margin-top:12px;font-size:14px;padding:10px 12px}
.g-art{min-width:0;max-width:860px}
.g-art p,.g-art li{color:#2b3a4d}
.g-art h2{font-size:clamp(22px,2.4vw,27px);margin:0 0 12px;scroll-margin-top:84px}
.g-art h3{font-size:18px;margin:22px 0 8px}
.g-part{padding:0 0 30px;margin:0 0 30px;border-bottom:1px solid var(--line)}
.g-part:last-of-type{border-bottom:0}
.g-art ul,.g-art ol{padding-inline-start:22px}
.g-art li{margin:0 0 6px}
.g-disc{background:#fff8e6;border:1px solid #f3dfa8;border-radius:10px;padding:10px 14px;font-size:14px;color:#6b5210;margin:0 0 26px}
.g-tip,.g-warn{border-radius:10px;padding:2px 16px;margin:14px 0;font-size:15px}
.g-tip{background:var(--sky);border-inline-start:4px solid var(--blue)}
.g-warn{background:var(--bad-bg);border-inline-start:4px solid var(--bad)}
.g-tip p,.g-warn p{margin:10px 0}

/* formulas */
.m,.eq{font-family:"Cambria Math","STIX Two Math","Latin Modern Math","Times New Roman",Times,serif}
.m{white-space:nowrap;font-size:1.06em}
.eq{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin:12px 0;
  font-size:19px;overflow-x:auto;direction:ltr;text-align:left}
.eqm{flex:1 1 auto;text-align:center;white-space:nowrap}
.eqr{flex:0 0 auto;font-family:"Inter",system-ui,sans-serif;font-size:12px;color:var(--muted);white-space:nowrap}
.m var,.eq var,.gx var{font-style:italic}
.m sub,.eq sub,.gx sub,.m sup,.eq sup,.gx sup{font-size:.72em;line-height:0}
.frc{display:inline-flex;flex-direction:column;vertical-align:middle;text-align:center;margin:0 .15em}
.frc>span{display:block;padding:0 .2em;line-height:1.25}
.frc>span:first-child{border-bottom:1px solid currentColor}
.sq{display:inline-flex;align-items:stretch;vertical-align:middle}
.sqs{font-size:1.15em;line-height:1}
.sqa{border-top:1px solid currentColor;padding:0 .15em;margin-top:.12em}

/* worked example */
.gx-wrap{overflow-x:auto;margin:12px 0;border:1px solid var(--line);border-radius:10px;background:#fff}
table.gx{border-collapse:collapse;width:100%;font-size:15px}
table.gx th{font-weight:600;color:#33465c;text-align:start;padding:9px 12px;border-bottom:1px solid #edf1f6;width:38%;vertical-align:middle;font-size:14px}
table.gx td{font-family:"Cambria Math","STIX Two Math","Times New Roman",Times,serif;font-size:17px;padding:9px 12px;border-bottom:1px solid #edf1f6;
  white-space:nowrap;direction:ltr;text-align:left}
table.gx tr:last-child th,table.gx tr:last-child td{border-bottom:0}
table.gx tr.res th,table.gx tr.res td{background:#f3f8ff;font-weight:700;color:var(--navy)}
table.gx tr.ok th,table.gx tr.ok td{background:var(--ok-bg);color:var(--ok);font-weight:700}
table.gx tr.nok th,table.gx tr.nok td{background:var(--bad-bg);color:var(--bad);font-weight:700}

/* figures */
.g-fig{margin:16px 0;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px;text-align:center}
.g-fig svg{max-width:100%;height:auto;direction:ltr}
.g-fig svg text{font-family:"Inter",system-ui,sans-serif;font-size:13px;fill:#14202e}
.g-fig figcaption{font-size:13px;color:var(--muted);margin-top:6px}

/* call to action, previous / next */
.g-cta{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px !important;box-shadow:var(--shadow)}
.g-pn{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:6px 0 0}
.g-pn a{display:block;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 16px;color:var(--navy)}
.g-pn a:hover{border-color:var(--blue);text-decoration:none}
.g-pn small{display:block;color:var(--muted);font-size:12px}
.g-next{text-align:end}
.g-back{margin:18px 0 0;font-size:14px}
html[dir=rtl] .g-back a{display:inline-block}

/* index */
.g-grp{margin:34px 0 14px}
.g-cards .g-card{display:flex;flex-direction:column}
.g-cards .g-card p{flex:1}
.g-cards .g-card .tag{direction:ltr;unicode-bidi:isolate}
.g-more{color:var(--blue);font-weight:600;font-size:14px;margin-top:8px}

/* Persian */
body.fa .g-art .m,body.fa .eq,body.fa table.gx td{font-family:"Cambria Math","STIX Two Math","Times New Roman",Times,serif}
body.fa .g-crumb,body.fa .g-tags{letter-spacing:0}

@media (max-width:900px){
  .g-layout{grid-template-columns:1fr;gap:18px}
  .g-toc{position:static}
  .g-toc details:not([open]) summary{margin:0}
}
@media (max-width:560px){
  .eq{font-size:16px;padding:10px 12px}
  table.gx th{width:auto;min-width:120px;white-space:normal}
  table.gx td{font-size:15px}
  .g-pn{grid-template-columns:1fr}
  .g-next{text-align:start}
  .g-sec{padding:22px 0 48px}
}
.eql{flex:0 0 auto;font-family:"Inter",system-ui,sans-serif;font-size:13px;font-weight:600;color:var(--navy);background:var(--sky);border-radius:6px;padding:2px 8px}
body.fa .eql{font-family:"Vazirmatn",system-ui,Tahoma,sans-serif}
@media (max-width:560px){
  .eqm{white-space:normal;text-align:left;line-height:1.9}
  .eq{flex-wrap:wrap;gap:6px 10px}
  table.gx,table.gx tbody,table.gx tr{display:block}
  table.gx th,table.gx td{display:block;width:auto;border-bottom:0;white-space:normal}
  table.gx th{padding:9px 12px 0}
  table.gx td{padding:2px 12px 9px;border-bottom:1px solid #edf1f6}
}
.g-art bdi[dir=ltr],.g-cards bdi[dir=ltr]{white-space:nowrap}
