/* GISarabia.org — QGIS docs in the booklet's design. Tokens come from site.css */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.85;direction:rtl;text-align:start}
a{color:var(--link);text-underline-offset:3px}
a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}

/* masthead */
.mast{padding-inline:16px;padding-block:34px 26px;border-bottom:1px solid var(--rule);background:var(--sheet)}
.mast-in{max-width:1180px;margin-inline:auto;display:grid;gap:12px}
.crumb{font-size:14px;color:var(--muted);line-height:1.7}
.crumb a{color:var(--muted)}
.kicker{font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;color:var(--muted);direction:ltr;text-align:end}
.mast h1{font-family:var(--display);font-weight:700;font-size:clamp(26px,4vw,40px);line-height:1.4;margin:0;text-wrap:balance}
.go{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:7px 16px;border-radius:8px;background:var(--ink);color:var(--sheet);text-decoration:none;font-weight:600;font-size:14.5px}
.go span{font-family:var(--mono);font-weight:400;font-size:12.5px;opacity:.8;direction:ltr}

/* layout */
.wrap{max-width:1180px;margin-inline:auto;padding-inline:16px;padding-block:28px 72px;display:grid;grid-template-columns:290px minmax(0,1fr);gap:48px;align-items:start}
.toc{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow:auto;font-size:14.5px;line-height:1.6;padding-inline-end:4px}
.toc summary{display:none}
.toc h2{font-family:var(--display);font-size:13px;letter-spacing:.03em;color:var(--muted);margin:18px 0 8px}
.toc h2:first-of-type{margin-top:0}
.toc ul{list-style:none;margin:0;padding:0}
.toc li{margin:0}
.toc ul ul{padding-inline-start:12px;border-inline-start:1px solid var(--rule);margin-inline-start:10px}
.toc a{display:block;text-decoration:none;color:var(--ink);padding:4px 10px;border-radius:6px;border-inline-start:2px solid transparent}
.toc a:hover{background:var(--tint)}
.toc .globaltoc p.caption{font-family:var(--display);font-weight:600;color:var(--muted);font-size:12.5px;margin:14px 0 4px;padding-inline:10px}
.toc .globaltoc li.current>a,.toc .globaltoc a.current{border-inline-start-color:var(--accent);background:var(--tint);font-weight:600}
.toc .localtoc>ul>li>a{font-weight:600}
.toc .localtoc{margin-bottom:6px;padding-bottom:10px;border-bottom:1px solid var(--rule)}

main{min-width:0;max-width:780px;overflow-wrap:break-word}
main h1.dup-title{display:none}
main h1{font-family:var(--display);font-weight:700;font-size:clamp(24px,3vw,30px);margin:40px 0 12px}
main h2{font-family:var(--display);font-weight:700;font-size:clamp(21px,2.6vw,25px);line-height:1.5;margin:48px 0 12px;padding-top:14px;border-top:1px solid var(--rule);text-wrap:balance;scroll-margin-top:16px}
main section:first-child>section:first-of-type>h2{border-top:none;padding-top:0;margin-top:8px}
main h3{font-family:var(--display);font-weight:600;font-size:19px;margin:32px 0 8px;scroll-margin-top:16px}
main h4,main h5{font-family:var(--display);font-weight:600;font-size:17px;margin:24px 0 6px}
main p,main li,main dd{max-width:72ch}
main ul,main ol{padding-inline-start:1.4em;margin:10px 0}
main li{margin:4px 0}
main li>p{margin:0}
strong{font-weight:600}
.headerlink{visibility:hidden;text-decoration:none;color:var(--muted);margin-inline-start:8px;font-size:.8em}
h1:hover .headerlink,h2:hover .headerlink,h3:hover .headerlink,h4:hover .headerlink,dt:hover .headerlink,caption:hover .headerlink,figcaption:hover .headerlink{visibility:visible}
hr{border:none;border-top:1px solid var(--rule);margin:28px 0}

/* inline */
code,kbd,tt{font-family:var(--mono)}
main code.literal,main code.xref,main .pre{font-size:.86em;background:var(--code-bg);color:var(--code-ink);padding:1px 6px;border-radius:4px;direction:ltr;unicode-bidi:isolate;overflow-wrap:anywhere}
main a code.xref,main a code.literal{color:var(--link);background:transparent;padding:0}
kbd,.kbd{font-size:.82em;border:1px solid var(--rule);border-bottom-width:2px;border-radius:4px;padding:0 5px;background:var(--sheet);direction:ltr;unicode-bidi:isolate}
.guilabel,.menuselection{font-weight:600;direction:ltr;unicode-bidi:isolate;background:var(--tint);border-radius:4px;padding:0 5px;font-size:.95em}
.file{font-family:var(--mono);font-size:.88em;direction:ltr;unicode-bidi:isolate}
sup,sub{line-height:0}
abbr{text-decoration:underline dotted}
img{max-width:100%;height:auto}
img[src$=".svg"]{vertical-align:middle}
p img:not([width]),li img:not([width]),td img:not([width]){max-height:1.6em;vertical-align:-.3em}

/* admonitions */
.admonition,div.topic,aside.topic,aside.sidebar{margin:22px 0;padding:14px 18px;background:var(--tint);border-inline-start:3px solid var(--accent);border-radius:8px 0 0 8px}
.admonition>:last-child,.topic>:last-child{margin-bottom:0}
.admonition-title,.topic-title,p.sidebar-title{font-family:var(--display);font-weight:700;margin:0 0 6px!important;font-size:15.5px;color:var(--accent)}
.admonition.note,.admonition.seealso,.admonition.hint{border-inline-start-color:var(--link)}
.admonition.note .admonition-title,.admonition.seealso .admonition-title,.admonition.hint .admonition-title{color:var(--link)}
.admonition.tip{border-inline-start-color:var(--ok)}.admonition.tip .admonition-title{color:var(--ok)}
.admonition.warning,.admonition.caution,.admonition.attention{border-inline-start-color:var(--warn)}.admonition.warning .admonition-title{color:var(--warn)}
.admonition.danger,.admonition.error,.admonition.important{border-inline-start-color:var(--danger)}.admonition.danger .admonition-title,.admonition.important .admonition-title{color:var(--danger)}
.versionadded,.versionchanged,.deprecated{border-inline-start:3px solid var(--rule);padding-inline-start:12px;margin:12px 0}
.versionmodified{font-weight:600;color:var(--muted)}

/* code blocks */
div[class*="highlight-"],div.highlight,pre.literal-block{position:relative;margin:16px 0;border:1px solid var(--rule);border-radius:8px;background:var(--code-bg);overflow:hidden}
div.highlight{border:none;margin:0;border-radius:0}
.highlight pre,pre.literal-block,pre{margin:0;padding:14px 16px;overflow-x:auto;direction:ltr;text-align:left;font-size:13.5px;line-height:1.65;font-family:var(--mono);color:var(--code-ink);background:transparent}
.highlight{background:var(--code-bg)!important}
.code-block-caption{font-size:13.5px;color:var(--muted);padding:6px 12px;border-bottom:1px solid var(--rule)}
div.literal-block-wrapper{margin:16px 0;border:1px solid var(--rule);border-radius:8px;overflow:hidden}
div.literal-block-wrapper div[class*="highlight-"]{margin:0;border:none;border-radius:0}
.linenos{color:var(--muted);user-select:none}
button.copybtn{inset-inline-end:auto;left:.3em!important;right:auto!important}

/* tables */
table.docutils,table.align-default,main table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.6;margin:0}
.tbl,div.table-wrap{overflow-x:auto}
main table{display:block;overflow-x:auto;max-width:100%;border:1px solid var(--rule);border-radius:8px;background:var(--sheet);margin:16px 0}


th,td{padding:9px 14px;text-align:start;vertical-align:top;border-bottom:1px solid var(--rule)}
th{font-weight:600;background:var(--tint)}
td>p:first-child{margin-top:0}td>p:last-child{margin-bottom:0}
caption,table caption{caption-side:top;text-align:start;font-weight:600;padding:8px 14px;color:var(--muted)}
table.field-list,dl.field-list{border:none;background:none}
dl.field-list{display:grid;grid-template-columns:max-content auto;gap:4px 16px}
dl.field-list>dt{font-weight:600}dl.field-list>dd{margin:0}

/* figures */
figure,div.figure{margin:24px 0;background:var(--sheet);border:1px solid var(--rule);border-radius:8px;padding:10px;text-align:center}
figure img,div.figure img{display:inline-block;max-width:100%;height:auto;border-radius:4px;background:#fff}
figcaption,p.caption{font-size:14px;color:var(--muted);padding:8px 4px 2px;line-height:1.6;text-align:center}
.caption-number{color:var(--accent);font-weight:600}
figcaption p{margin:0}
img.align-center,.align-center{margin-inline:auto;display:block}

/* definition lists, toctree lists, misc */
dl:not(.field-list) dt{font-weight:600;margin-top:10px}
dl dd{margin-inline-start:20px;margin-inline-end:0}
.toctree-wrapper ul{list-style:none;padding-inline-start:0}
.toctree-wrapper>ul>li{margin:6px 0}
.toctree-wrapper>ul>li>a{font-weight:600}
.toctree-wrapper ul ul{padding-inline-start:18px}
.toctree-wrapper p.caption{font-family:var(--display);font-weight:700;color:var(--muted);text-align:start;margin-top:22px}
.footnote,aside.footnote{font-size:14.5px;color:var(--muted)}
.rubric{font-family:var(--display);font-weight:700;margin-top:26px}
blockquote{margin:16px 0;padding-inline-start:16px;border-inline-start:3px solid var(--rule)}
.sphinx-tabs-tab{font-family:var(--body)!important}
.sphinx-tabs-panel{background:var(--sheet)!important;border-color:var(--rule)!important;color:var(--ink)}
.sphinx-tabs-tab[aria-selected="true"]{background:var(--sheet)!important;border-color:var(--rule)!important;color:var(--ink)!important}
.sphinx-tabs-tab{color:var(--muted)!important}
[role="tablist"]{border-color:var(--rule)!important}
div.toggle-hidden,.toggle-details{background:var(--tint);border-radius:8px}
details.toggle-details summary{cursor:pointer}
.highlighted{background:rgba(42,131,95,.28)}

/* pager */
.pager{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:56px;padding-top:20px;border-top:1px solid var(--rule)}
.pg{display:grid;gap:2px;padding:12px 16px;border:1px solid var(--rule);border-radius:8px;background:var(--sheet);text-decoration:none;color:var(--ink)}
.pg:hover{border-color:var(--accent)}
.pg small{color:var(--muted);font-size:13px}
.pg span{font-weight:600;line-height:1.5}
.pg.next{text-align:end;grid-column:2}

/* search page */
#search-results ul.search{list-style:none;padding:0}
#search-results ul.search li{padding:12px 0;border-bottom:1px solid var(--rule)}
#search-results .context{color:var(--muted);font-size:15px}
form[action=""] input[type=text]{font:inherit;padding:6px 12px;border:1px solid var(--rule);border-radius:8px;background:var(--sheet);color:var(--ink)}
form[action=""] input[type=submit]{font:inherit;padding:6px 14px;border-radius:8px;border:none;background:var(--ink);color:var(--sheet);cursor:pointer}

.foot{max-width:1180px;margin-inline:auto;padding-inline:16px;padding-block:22px 40px;border-top:1px solid var(--rule);color:var(--muted);font-size:14px}
.foot p{margin:0}

@media (max-width:960px){
  .wrap{grid-template-columns:minmax(0,1fr);gap:16px;padding-block:16px 64px}
  .toc{position:static;max-height:70vh;border:1px solid var(--rule);border-radius:8px;background:var(--sheet);padding:8px 12px}
  .toc summary{display:block;cursor:pointer;font-family:var(--display);font-weight:600;padding:4px 0}
  body{font-size:16.5px}
}
.foot a{overflow-wrap:anywhere}.mast .crumb{overflow-wrap:anywhere}
nav.contents,div.contents,aside.contents{background:var(--tint);border:1px solid var(--rule);border-radius:10px;padding:12px 18px;margin:8px 0 24px}
nav.contents ul,div.contents ul{list-style:none;padding-inline-start:0;margin:0}
nav.contents ul ul,div.contents ul ul{padding-inline-start:16px;border-inline-start:1px solid var(--rule);margin:2px 8px 4px 0}
nav.contents li,div.contents li{margin:2px 0}
nav.contents a,div.contents a{text-decoration:none}
nav.contents>ul>li>a,div.contents>ul>li>a{font-weight:600}
