/* Page-local refinements: support and downloads only. */
body.download-page .download-resource-row { grid-template-columns:244px minmax(0,1fr) 164px; gap:14px 28px; padding:26px; }
body.download-page .download-resource-row .resource-preview { grid-row:1 / 3; overflow:hidden; border-radius:12px; border-color:#dedee5; background:#fff; box-shadow:0 3px 12px #1d1d1f05; }
body.download-page .download-resource-row .resource-preview>a { display:block; padding:0; cursor:zoom-in; }
body.download-page .download-resource-row .resource-preview img { display:block; width:100%; height:180px; padding:0; border-radius:0; object-fit:contain; background:#fff; }
body.download-page .download-resource-row .resource-preview figcaption { display:flex; padding:0 12px; min-height:38px; border-top:1px solid #ececf0; background:#fff; }
body.download-page .download-resource-row .resource-preview figcaption a { display:inline-flex; align-items:center; min-height:38px; font-size:11px; }
body.download-page .download-resource-row .description { font-size:14px; line-height:1.75; }
body.download-page .download-resource-row .meta { margin-top:12px; font-size:12px; }
body.download-page .download-resource-row .download-facts { margin:4px 0 0; font-size:12px; line-height:1.7; }
body.download-page .download-resource-row .resource-info { align-self:center; }
body.download-page .download-resource-row>details { align-self:end; padding-top:6px; }
body.download-page .download-resource-row>details summary { min-height:38px; }
body.download-page .download-resource-row .file-icon { border:0; box-shadow:none; color:#0066cc; font-variant-numeric:tabular-nums; }
body.download-page .download-resource-row .tag { padding:3px 9px; background:#e9e9ee; color:#5b5b63; }
body.download-page .download-resource-row .download.primary { font-size:14px; }
body.support-hub #main .support-routes a { position:relative; }
body.support-hub #main .support-routes a::after { content:'↗'; position:absolute; top:22px; right:20px; color:#86868b; font-size:16px; }
body.support-hub #main .help-checks label { border:1px solid transparent; transition:background .18s,border-color .18s; }
body.support-hub #main .help-checks label:has(input:checked) { background:#f0f7ff; border-color:#b9d6f2; }
body.support-hub #main .help-grid article { background:transparent; border:1px solid #e5e5ea; }
body.support-hub #main .support-section-number { color:#0066cc; font-variant-numeric:tabular-nums; }
body.support-hub #main .issue-field-label { display:none; }
body.support-hub #main .help-table tbody tr+tr th,body.support-hub #main .help-table tbody tr+tr td { border-top:1px solid #ececf0; }
body.support-hub #main .help-table tbody th { background:#fafafa; }
body.support-hub #main .help-table td { line-height:1.85; }
.resource-image-viewer { box-sizing:border-box; width:min(1180px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); padding:22px; border:1px solid #e5e5e8; border-radius:22px; color:#1d1d1f; background:#fff; box-shadow:0 24px 80px #0003; }
.resource-image-viewer::backdrop { background:#16161bcc; backdrop-filter:blur(6px); }
.resource-viewer-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.resource-viewer-heading h2 { margin:0; font-size:19px; line-height:1.45; }
.resource-image-viewer button { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-width:44px; min-height:44px; padding:8px 14px; border:1px solid #e5e5e8; border-radius:100px; background:#fff; color:#0066cc; cursor:pointer; font:inherit; font-size:14px; }
.resource-viewer-close span:last-child { color:#6e6e73; font-size:24px; line-height:1; }
.resource-viewer-tools { display:flex; align-items:center; justify-content:center; gap:12px; padding:14px 0; }
.resource-viewer-scale { min-width:44px; color:#6e6e73; font-size:12px; text-align:center; }
.resource-image-viewer button:disabled { color:#b7b7c1; cursor:default; }
.resource-image-viewer button:focus-visible { outline:3px solid #0071e3; outline-offset:3px; }
.resource-viewer-media { overflow:auto; max-height:70dvh; overscroll-behavior:contain; background:#f5f5f7; border:1px solid #eeeef2; border-radius:12px; }
.resource-viewer-canvas { width:max-content; min-width:100%; }
.resource-viewer-canvas img { display:block; margin:auto; height:auto; max-width:none; }
body.resource-viewing { overflow:hidden; }
@media(max-width:1000px) and (min-width:651px) {
 body.download-page .download-resource-row { grid-template-columns:210px minmax(0,1fr); gap:12px 22px; padding:24px; }
 body.download-page .download-resource-row .resource-preview { grid-row:1/4; }
 body.download-page .download-resource-row .resource-action,body.download-page .download-resource-row>details { grid-column:2; }
 body.download-page .download-resource-row .download.primary { width:auto; min-width:170px; }
}
@media(max-width:650px) {
 body.download-page .download-hub-icon { width:42px; height:42px; margin-bottom:14px; }
 body.download-page #main.container>.download-hub-hero { padding-top:28px; }
 body.download-page .download-resource-row { gap:12px; padding:20px; }
 body.download-page .download-resource-row h2 { margin:8px 0; font-size:23px; }
 body.download-page .download-resource-row .description { font-size:13px; }
 body.download-page .download-resource-row .meta { margin-top:10px; font-size:11px; }
 body.download-page .download-resource-row .download-facts { margin:3px 0 0; font-size:11px; }
 body.download-page .download-resource-row .resource-preview { width:100%; margin:2px 0; }
 body.download-page .download-resource-row .resource-preview img { height:174px; padding:0; }
 body.download-page .download-resource-row .resource-preview figcaption,body.download-page .download-resource-row .resource-preview figcaption a { min-height:34px; }
 body.download-page .download-resource-row .download.primary { min-height:46px; }
 body.download-page .download-resource-row>details { padding-top:3px; }
 body.download-page .download-resource-row>details summary { min-height:36px; }
 body.download-page .auth-free-card { padding:23px; margin-bottom:28px; }
 body.download-page .download-details { margin-top:32px; }
 body.support-hub #main .support-routes a::after { top:17px; right:15px; font-size:14px; }
 body.support-hub #main .help-table.support-issues { border:0; border-radius:0; margin:20px 0; overflow:visible; }
 body.support-hub #main .help-table .support-issue-table { display:block; min-width:0; width:100%; }
 body.support-hub #main .support-issue-table caption { display:block; padding:0 0 14px; }
 body.support-hub #main .support-issue-table thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
 body.support-hub #main .support-issue-table tbody { display:grid; gap:12px; }
 body.support-hub #main .support-issue-table tr { display:block; padding:18px; border:1px solid #e5e5ea; border-radius:16px; background:#fff; }
 body.support-hub #main .support-issue-table tbody th { display:block; width:auto; padding:0 0 12px; border:0; background:transparent; font-size:16px; line-height:1.55; text-align:left; }
 body.support-hub #main .support-issue-table tbody td { display:block; padding:0; border:0; background:transparent; font-size:13px; }
 body.support-hub #main .support-issue-table tbody td+td { margin-top:12px; padding-top:12px; border-top:1px solid #eeeef2; }
 body.support-hub #main .support-issue-table tbody tr+tr th,body.support-hub #main .support-issue-table tbody tr+tr td { border-top:0; }
 body.support-hub #main .support-issue-table tbody tr+tr td+td { border-top:1px solid #eeeef2; }
 body.support-hub #main .issue-field-label { display:block; margin-bottom:4px; font-size:11px; font-weight:600; color:#0066cc; line-height:1.6; }
 body.support-hub #main .issue-field-value { display:block; overflow-wrap:anywhere; }
 .resource-image-viewer { width:calc(100vw - 20px); padding:14px; border-radius:18px; }
 .resource-viewer-heading h2 { font-size:17px; }
 .resource-viewer-tools { gap:8px; }
 .resource-viewer-media { max-height:66dvh; }
}
@media(prefers-reduced-motion:reduce) { body.support-hub #main .help-checks label { transition:none; } }
