/* Generated by rtl.build.js from the file without ".rtl"; do not edit by hand. */
/* Public tools use Localtonet's indigo palette. All rules stay within tool pages. */
.resource-page {
    --resource-ink: #18233b;
    --resource-muted: #65718a;
    --resource-line: #e5e9f1;
    --resource-surface: #fff;
    --resource-soft: #f7f8fc;
    --resource-accent: #4f46e5;
    --resource-selected: #eef0ff;
    color: var(--resource-ink);
    background: var(--resource-surface);
    font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.65;
}
.dark .resource-page {
    --resource-ink: #e6edf8;
    --resource-muted: #a8b4c9;
    --resource-line: #2a3650;
    --resource-surface: #0f172a;
    --resource-soft: #182238;
    --resource-accent: #b0baff;
    --resource-selected: #252d4b;
}
.resource-page *, .resource-page *::before, .resource-page *::after { box-sizing: border-box; }
.resource-page [hidden] { display: none !important; }
.resource-page .resource-container { width: 100%; max-width: 1168px; width: min(100%, 1168px); margin-left: auto; margin-right: auto; padding-left: 24px; padding-right: 24px; }
.resource-page:not(.tools-directory) .resource-container { max-width: 1000px; }
.resource-page .resource-hero { padding: 116px 0 30px; border-bottom: 1px solid var(--resource-line); background: linear-gradient(-120deg, #fafbff, #f1f3ff); }
.dark .resource-page .resource-hero { background: linear-gradient(-120deg, #141d31, #1c2340); }
.resource-page .resource-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-bottom: 21px; color: var(--resource-muted); font-size: .78rem; }
.resource-page .resource-breadcrumb a { color: var(--resource-muted); text-decoration: none; }
.resource-page .resource-breadcrumb a:hover { color: var(--resource-accent); }
.resource-page .resource-eyebrow { display: block; margin-bottom: 10px; color: var(--resource-accent); font-size: .7rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.resource-page .resource-hero h1 { margin: 0; color: var(--resource-ink); font-size: 2.4rem; font-size: clamp(1.9rem, 4vw, 2.7rem); font-weight: 800; line-height: 1.2; letter-spacing: -.035em; }
.resource-page .resource-hero p { max-width: 680px; margin: 11px 0 0; color: var(--resource-muted); font-size: 1rem; }
.resource-page .resource-jumps { display: flex; flex-wrap: wrap; gap: 8px 10px; margin-top: 22px; }
.resource-page .resource-jumps a { padding: 7px 13px; border: 1px solid var(--resource-line); border-radius: 7px; color: var(--resource-muted); background: var(--resource-surface); text-decoration: none; font-size: .8rem; font-weight: 700; }
.resource-page .resource-jumps a:hover { color: var(--resource-accent); border-color: var(--resource-accent); }
.resource-page .resource-main { padding-top: 28px; padding-bottom: 64px; }
.resource-page .resource-card { padding: 26px; border: 1px solid var(--resource-line); border-radius: 14px; background: var(--resource-surface); box-shadow: 0 5px 22px #18233b04; }
.resource-page .resource-section { margin-top: 28px; scroll-margin-top: 100px; }
.resource-page .resource-section h2, .resource-page .resource-help-body h2, .resource-page .ipd-extra-body h2 { margin: 0 0 9px; color: var(--resource-ink); font-size: 1.3rem; font-weight: 800; line-height: 1.4; letter-spacing: -.02em; }
.resource-page .resource-section > p { margin: 0 0 20px; color: var(--resource-muted); }
.resource-page .resource-button, .resource-page .resource-secondary { display: inline-flex; justify-content: center; align-items: center; gap: 8px; min-height: 46px; padding: 10px 18px; border: 1px solid transparent; border-radius: 8px; font: inherit; font-size: .875rem; font-weight: 750; line-height: 1.4; text-decoration: none; cursor: pointer; }
.resource-page .resource-button { background: #4f46e5; color: #fff; }
.resource-page .resource-button:hover { background: #4338ca; color: #fff; }
.resource-page .resource-secondary { background: var(--resource-surface); border-color: var(--resource-line); color: var(--resource-ink); }
.resource-page .resource-secondary:hover { border-color: #a5b4fc; color: var(--resource-accent); }
.resource-page .resource-text-link { display: inline-flex; align-items: center; min-height: 44px; color: var(--resource-accent); font-size: .85rem; font-weight: 700; text-decoration: none; }
.resource-page .resource-text-link:hover { text-decoration: underline; }
.resource-page button:disabled { cursor: default; opacity: .6; }
.resource-page :is(button, a, input, textarea, select, summary):focus-visible { outline: 3px solid #818cf8; outline-offset: 3px; }
.resource-page .resource-note { margin-top: 14px; color: var(--resource-muted); font-size: .82rem; }
.resource-page .resource-details { margin-top: 12px; padding: 0 22px; border: 1px solid var(--resource-line); border-radius: 10px; background: var(--resource-surface); scroll-margin-top: 100px; }
.resource-page .resource-details > summary { position: relative; padding: 18px 0 18px 32px; cursor: pointer; color: var(--resource-ink); font-size: .9rem; font-weight: 750; list-style: none; }
.resource-page .resource-details > summary::-webkit-details-marker { display: none; }
.resource-page .resource-details > summary::after { position: absolute; left: 0; top: 18px; content: "+"; color: var(--resource-accent); font-size: 1.2rem; font-weight: 400; line-height: 1.2; }
.resource-page .resource-details[open] > summary::after { content: "−"; }
.resource-page .resource-details > summary span { margin-right: 10px; color: var(--resource-muted); font-size: .73rem; font-weight: 500; }
.resource-page .resource-details > :last-child:not(summary) { margin-bottom: 22px; }
.resource-page .resource-details p { color: var(--resource-muted); font-size: .875rem; }
.resource-page .resource-details p a { color: var(--resource-accent); text-decoration: underline; text-underline-offset: 3px; }
.resource-page .resource-help-body { padding-top: 7px; }
.resource-page .resource-related { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.resource-page .resource-related a { min-height: 40px; padding: 8px 12px; border: 1px solid var(--resource-line); border-radius: 7px; color: var(--resource-accent); font-size: .8rem; text-decoration: none; }
.resource-page .resource-related a:hover { background: var(--resource-selected); }
.resource-page .resource-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.resource-page .tools-search { display: flex; align-items: center; gap: 10px; max-width: 540px; margin-top: 25px; padding: 0 16px; border: 1px solid var(--resource-line); border-radius: 9px; background: var(--resource-surface); box-shadow: 0 3px 12px #18233b03; }
.resource-page .tools-search > span { color: var(--resource-muted); font-family: ui-sans-serif, sans-serif; font-size: 1.5rem; }
.resource-page .tools-search input { width: 100%; min-width: 0; min-height: 49px; padding: 10px 0; border: 0; border-radius: 5px; color: var(--resource-ink); background: transparent; font: inherit; font-size: .875rem; }
.resource-page .tools-search input::placeholder { color: var(--resource-muted); opacity: 1; }
.resource-page .tools-search:focus-within { border-color: #818cf8; box-shadow: 0 0 0 3px #818cf822; }
.resource-page .tools-search input:focus-visible { outline: 0; }
.resource-page .tools-directory-head { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 24px; }
.resource-page .tools-directory-head h2 { margin: 0; font-size: 1.25rem; font-weight: 800; }
.resource-page .tools-directory-head > span { color: var(--resource-muted); font-size: .78rem; }
.resource-page .tools-group { margin-top: 27px; scroll-margin-top: 100px; }
.resource-page .tools-group > h3 { margin: 0 0 3px; font-size: 1rem; font-weight: 800; }
.resource-page .tools-group > p { margin: 0 0 13px; color: var(--resource-muted); font-size: .82rem; }
.resource-page .tools-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.resource-page .tools-card { position: relative; display: flex; gap: 13px; min-width: 0; padding: 20px 16px; border: 1px solid var(--resource-line); border-radius: 10px; color: var(--resource-ink); background: var(--resource-surface); text-decoration: none; transition: border-color .15s, box-shadow .15s; }
.resource-page .tools-card:hover { border-color: #a5b4fc; box-shadow: 0 4px 18px #4f46e509; }
.resource-page .tools-icon { display: inline-flex; flex-shrink: 0; justify-content: center; align-items: center; width: 34px; height: 34px; border-radius: 8px; color: var(--resource-accent); background: var(--resource-selected); font-size: 1rem; font-weight: 800; }
.resource-page .tools-card > div { min-width: 0; }
.resource-page .tools-card h4 { margin: 0 0 5px 14px; font-size: .92rem; font-weight: 800; line-height: 1.5; }
.resource-page .tools-card p { margin: 0; color: var(--resource-muted); font-size: .8rem; line-height: 1.65; }
.resource-page .tools-card-arrow { position: absolute; left: 13px; top: 19px; color: var(--resource-muted); font-size: .83rem; }
.resource-page .tools-card:hover .tools-card-arrow { color: var(--resource-accent); }
.resource-page .tools-help { margin-top: 30px; background: var(--resource-soft); }
.resource-page .tools-help p { max-width: 88ch; margin-top: 8px; margin-bottom: 14px; }
.resource-page .resource-reading-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 15px; margin-bottom: 24px; }
.resource-page .resource-reading-grid h3 { margin: 0 0 8px; color: var(--resource-ink); font-size: 1rem; font-weight: 750; }
.resource-page .resource-reading-grid p { margin: 0; color: var(--resource-muted); font-size: .875rem; }
.resource-page .resource-reading-grid p a { color: var(--resource-accent); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 900px) { .resource-page .tools-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) {
    .resource-page .resource-container { padding-left: 18px; padding-right: 18px; }
    .resource-page .resource-hero { padding: 104px 0 25px; }
    .resource-page .resource-main { padding-top: 20px; padding-bottom: 42px; }
    .resource-page .resource-card { padding: 20px; }
    .resource-page .resource-details { padding-left: 18px; padding-right: 18px; }
    .resource-page .resource-details > summary span { display: block; margin: 3px 0 0; }
    .resource-page .tools-cards, .resource-page .resource-reading-grid { grid-template-columns: 1fr; }
    .resource-page .tools-card { padding: 18px; }
    .resource-page .tools-directory-head { margin-bottom: 20px; }
}
@media (prefers-reduced-motion: reduce) { .resource-page * { scroll-behavior: auto !important; animation: none !important; transition: none !important; } }

/* Individual checks keep their introduction short so measurements stay in view. */
.resource-page:not(.tools-directory) .resource-hero { padding: 96px 0 20px; }
.resource-page:not(.tools-directory) .resource-hero .resource-breadcrumb { margin-bottom: 11px; font-size: .75rem; }
.resource-page:not(.tools-directory) .resource-hero .resource-eyebrow { display: none; }
.resource-page:not(.tools-directory) .resource-hero h1 { font-size: 2rem; font-size: clamp(1.75rem, 3vw, 2.1rem); line-height: 1.2; }
.resource-page:not(.tools-directory) .resource-hero p { margin-top: 8px; font-size: .9rem; line-height: 1.6; }
.resource-page:not(.tools-directory) .resource-main { padding-top: 20px; }
@media (max-width: 640px) {
    .resource-page:not(.tools-directory) .resource-hero { padding-top: 92px; padding-bottom: 18px; }
    .resource-page:not(.tools-directory) .resource-hero .resource-breadcrumb { margin-bottom: 9px; }
}

[dir=rtl] .rtl-flip{transform:scaleX(-1)}
[dir=rtl] code:not([dir]),[dir=rtl] pre:not([dir]),[dir=rtl] kbd:not([dir]),[dir=rtl] samp:not([dir]),[dir=rtl] .ltr,[dir=rtl] textarea.mono{direction:ltr;unicode-bidi:isolate}
[dir=rtl] pre:not([dir]),[dir=rtl] textarea.mono{text-align:left}
