/*
Theme Name: Twenty Twenty-Five
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 7.1
Requires PHP: 7.2
Version: 1.5
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/


/* Imported */
:root{--bg:#f6f2ea;--surface:#ffffff;--ink:#241c14;--muted:#6a5d4a;--border:#e6dcc8;--accent:#7c2d12;--accent-ink:#ffffff;--accent-2:#15803d;--radius:14px;--head-font:Georgia,"Times New Roman",serif;--body-font:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--head-transform:uppercase;--head-weight:900;--maxw:1120px;--gap:clamp(1rem,3vw,2rem);--good:#1f7a4d;--good-bg:#eaf6ef;--warn:#9a5b00;--warn-bg:#fdf3df;--footer-bg:var(--ink);--footer-ink:color-mix(in srgb,#fff 72%,var(--ink));--footer-link:#fff;--shadow:0 12px 30px -14px rgba(20,24,35,.28);--hero-bg:var(--bg);--hero-ink:var(--ink);--hero-muted:var(--muted);--hero-accent:var(--accent);--verdict-bg:var(--bg);--verdict-ink:var(--ink);--line:color-mix(in srgb,var(--accent) 55%,var(--border))}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body-font);font-size:17px;line-height:1.7}
img{max-width:100%;height:auto;display:block;border-radius:var(--radius)}
a{color:var(--accent);text-underline-offset:.15em}
.x0fda-wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(1rem,4vw,2rem)}
section{padding-block:clamp(2rem,5vw,3.5rem)}
h1,h2,h3{font-family:var(--head-font);font-weight:var(--head-weight);line-height:1.12;letter-spacing:-.01em;margin:0 0 .5em}
h1{font-size:clamp(2.4rem,6vw,4rem);text-transform:var(--head-transform)}
h2{font-size:clamp(1.7rem,4vw,2.6rem);text-transform:var(--head-transform);padding-bottom:.3rem;border-bottom:2px dashed var(--accent)}
h3{font-size:clamp(1.2rem,2.4vw,1.45rem)}
p{margin:0 0 1rem}
.x0fda-pullquote{margin:1.6rem 0;padding:1.2rem 1.4rem 1.2rem 2rem;background:color-mix(in srgb,var(--accent) 6%,var(--surface));border-left:.35rem solid var(--accent);border-radius:var(--radius);position:relative}
.x0fda-pullquote::before{content:"\201C";position:absolute;left:.6rem;top:.2rem;font-family:var(--head-font);font-size:2.6rem;line-height:1;color:var(--accent)}
.x0fda-pullquote p{font-size:1.15rem;line-height:1.5;margin:0 0 .5rem;font-family:var(--head-font);font-weight:600}
.x0fda-pullquote cite{font-style:normal;font-size:.9rem;color:var(--muted);font-weight:600}
.x0fda-site-footer{background:var(--footer-bg);color:var(--footer-ink);margin-top:2rem}
.x0fda-site-footer .x0fda-wrap{padding-block:2rem}
.x0fda-site-footer a{color:var(--footer-link)}
.x0fda-site-footer nav ul{list-style:none;display:flex;gap:1rem 1.4rem;flex-wrap:wrap;padding:0;margin:0 0 1rem}
.x0fda-compliance{font-size:.88rem;color:var(--footer-ink)}
.x0fda-toc{background:transparent;border:2px solid var(--line);border-radius:var(--radius);padding:1.2rem 1.4rem;margin:1.5rem 0}
.x0fda-toc__title{font-family:var(--head-font);font-weight:800;font-size:1.05rem;margin:0 0 .6rem}
.x0fda-toc__list{margin:0;padding-left:1.2rem;columns:2;column-gap:2rem}
.x0fda-toc__list li{margin:.25rem 0;break-inside:avoid}
.x0fda-toc__link{color:var(--ink);text-decoration:none}
.x0fda-toc__link:hover{color:var(--accent);text-decoration:underline}
.x0fda-quickfacts{list-style:none;margin:1.4rem 0;padding:0;display:grid;grid-template-columns:1fr;gap:.8rem}
.x0fda-quickfacts__item{background:transparent;border:2px solid var(--line);border-radius:var(--radius);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.25rem}
.x0fda-quickfacts__label{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}
.x0fda-quickfacts__value{font-size:1.15rem;font-weight:800}
.x0fda-panels{display:grid;grid-template-columns:1fr;gap:1rem;margin:1.4rem 0}
.x0fda-panel{border-radius:var(--radius);padding:1.3rem 1.4rem;border:2px solid var(--line);background:transparent}
.x0fda-panel--good{border-left:2px solid var(--good);background:transparent;border-color:var(--good)}
.x0fda-panel--watch{border-left:2px solid var(--warn);background:transparent;border-color:var(--warn)}
.x0fda-panel h3{margin-top:0}
.x0fda-matrix{border-collapse:collapse;width:100%;min-width:520px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.x0fda-matrix th,.x0fda-matrix td{padding:.7rem 1rem;border-top:1px solid var(--border);text-align:left}
.x0fda-matrix thead th{background:var(--accent);color:var(--accent-ink);border-top:0;font-weight:700}
.x0fda-matrix tbody th{font-weight:700;background:color-mix(in srgb,var(--bg) 45%,var(--surface))}
.x0fda-matrix__yes{color:var(--good);font-weight:800;text-align:center;font-size:1.15rem}
.x0fda-matrix__no{color:var(--warn);font-weight:800;text-align:center;font-size:1.15rem}
.x0fda-matrix__partial{color:var(--muted);font-weight:800;text-align:center;font-size:1.15rem}
.x0fda-table-scroll{overflow-x:auto;margin:1.4rem 0;border:2px solid var(--line);border-radius:var(--radius)}
table{border-collapse:collapse;width:100%;min-width:520px;background:transparent}
thead th{background:transparent;color:var(--accent);text-align:left;font-weight:700;padding:.8rem 1rem;border-bottom:2px solid var(--accent)}
tbody td,tbody th{padding:.75rem 1rem;border-top:1px solid var(--border);text-align:left}
tbody tr:nth-child(even){background:color-mix(in srgb,var(--bg) 45%,var(--surface))}
.x0fda-site-header{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:2px solid var(--accent)}
.x0fda-site-header .x0fda-wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.9rem;flex-wrap:wrap}
.x0fda-brand{font-family:var(--head-font);font-weight:900;font-size:1.35rem;color:var(--accent);margin:0}
.x0fda-brand a{color:inherit;text-decoration:none}
.x0fda-site-header nav ul{list-style:none;display:flex;gap:1rem 1.3rem;flex-wrap:wrap;margin:0;padding:0;font-weight:600;font-size:.95rem}
.x0fda-site-header nav a{color:var(--ink);text-decoration:none}
.x0fda-site-header nav a:hover{color:var(--accent)}
.x0fda-checklist{list-style:none;margin:1rem 0;padding:0}
.x0fda-checklist li{position:relative;padding-left:1.9rem;margin:.55rem 0}
.x0fda-checklist li::before{content:"\2713";position:absolute;left:0;top:.2rem;width:1.3rem;height:1.3rem;background:transparent;color:var(--accent);border-radius:4px;font-size:.8rem;font-weight:800;display:grid;place-items:center;border:2px solid var(--accent)}
.x0fda-tabs{margin:1.4rem 0}
.x0fda-tabs .x0fda-tab__radio{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.x0fda-tabs .x0fda-tab{display:inline-block;cursor:pointer;padding:.55rem 1rem;border:1px solid var(--border);border-bottom:0;border-radius:var(--radius) var(--radius) 0 0;background:var(--surface);font-weight:700;margin:0 .3rem -1px 0}
.x0fda-tabs .x0fda-tab__radio:checked + .x0fda-tab{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.x0fda-tabs .x0fda-tab__radio:focus-visible + .x0fda-tab{outline:2px solid var(--accent);outline-offset:2px}
.x0fda-tabs .x0fda-tab__panels{border:1px solid var(--border);border-radius:0 var(--radius) var(--radius) var(--radius);background:var(--surface);padding:1.2rem 1.4rem}
.x0fda-tabs .x0fda-tab__panel{display:none}
.x0fda-tabs .x0fda-tab__radio:nth-of-type(1):checked~.x0fda-tab__panels .x0fda-tab__panel:nth-of-type(1),.x0fda-tabs .x0fda-tab__radio:nth-of-type(2):checked~.x0fda-tab__panels .x0fda-tab__panel:nth-of-type(2),.x0fda-tabs .x0fda-tab__radio:nth-of-type(3):checked~.x0fda-tab__panels .x0fda-tab__panel:nth-of-type(3),.x0fda-tabs .x0fda-tab__radio:nth-of-type(4):checked~.x0fda-tab__panels .x0fda-tab__panel:nth-of-type(4){display:block}
.x0fda-faq details{background:transparent;border:2px solid var(--line);border-radius:var(--radius);padding:.4rem 1.2rem;margin:.7rem 0}
.x0fda-faq summary{cursor:pointer;font-weight:700;padding:.7rem 0;list-style:none}
.x0fda-faq summary::-webkit-details-marker{display:none}
.x0fda-faq summary::after{content:"+";float:right;color:var(--accent);font-weight:800}
.x0fda-faq details[open] summary::after{content:"\2212"}
.x0fda-faq__a{padding-bottom:.6rem;color:var(--muted)}
.x0fda-aside-note{background:color-mix(in srgb,var(--accent-2) 10%,var(--surface));border:1px solid var(--border);border-left:.35rem solid var(--accent-2);border-radius:var(--radius);padding:.9rem 1.1rem;margin:1rem 0}
.x0fda-aside-note__label{font-family:var(--head-font);font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb,var(--accent-2) 50%,var(--ink));margin:0 0 .3rem}
.x0fda-aside-note p{margin:0}
@media(min-width:961px){.x0fda-aside-note{float:right;width:260px;margin:.2rem 0 1rem 1.4rem}}
.x0fda-link-list{background:transparent;border:2px solid var(--line);border-left:.35rem solid var(--accent);border-radius:var(--radius);padding:1.1rem 1.4rem;margin:1.6rem 0}
.x0fda-link-list__title{font-family:var(--head-font);font-weight:800;font-size:1.05rem;margin:0 0 .6rem}
.x0fda-link-list__items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.5rem .9rem}
.x0fda-link-list__items li{margin:.2rem 0}
.x0fda-link-list__items a{color:var(--accent);font-weight:600;text-decoration:none}
.x0fda-link-list__items a:hover{text-decoration:underline}
.x0fda-keyvalue{margin:1.2rem 0;border:2px solid var(--line);border-radius:var(--radius);overflow:hidden;background:transparent}
.x0fda-keyvalue>div{display:grid;grid-template-columns:minmax(140px,32%) 1fr;gap:1rem;padding:.8rem 1.1rem;border-top:1px solid var(--border)}
.x0fda-keyvalue>div:first-child{border-top:0}
.x0fda-keyvalue dt{font-weight:700;margin:0}
.x0fda-keyvalue dd{margin:0;color:var(--muted)}
.x0fda-steps{list-style:none;counter-reset:step;margin:1.2rem 0;padding:0}
.x0fda-steps li{position:relative;padding-left:2.6rem;margin:.9rem 0;min-height:1.8rem}
.x0fda-steps li::before{counter-increment:step;content:counter(step);position:absolute;left:0;top:-.1rem;width:1.9rem;height:1.9rem;background:transparent;color:var(--accent);border-radius:50%;font-family:var(--head-font);font-weight:800;display:grid;place-items:center;border:2px solid var(--accent)}
.x0fda-meter-row{list-style:none;margin:1.4rem 0;padding:0;display:grid;gap:.9rem}
.x0fda-meter-row__item{display:grid;grid-template-columns:minmax(120px,30%) 1fr auto;gap:.7rem;align-items:center;background:transparent;border:2px solid var(--line);border-radius:var(--radius);padding:.7rem 1rem}
.x0fda-meter-row__label{font-weight:700}
.x0fda-meter-row__bar{width:100%;height:.9rem}
.x0fda-meter-row__bar::-webkit-meter-bar{background:color-mix(in srgb,var(--bg) 60%,var(--surface));border:1px solid var(--border);border-radius:999px;height:.9rem}
.x0fda-meter-row__bar::-webkit-meter-optimum-value{background:var(--accent);border-radius:999px}
.x0fda-meter-row__bar::-moz-meter-bar{background:var(--accent);border-radius:999px}
.x0fda-meter-row__val{font-weight:800;color:var(--accent);font-family:var(--head-font)}
@media(max-width:640px){.x0fda-meter-row__item{grid-template-columns:1fr;gap:.3rem}.x0fda-meter-row__val{text-align:right}}
.x0fda-timeline{list-style:none;margin:1.4rem 0;padding:0 0 0 1.4rem;position:relative}
.x0fda-timeline::before{content:"";position:absolute;left:.35rem;top:.4rem;bottom:.4rem;width:2px;background:color-mix(in srgb,var(--accent) 30%,var(--border))}
.x0fda-timeline__item{position:relative;padding-left:1.2rem;margin:.9rem 0}
.x0fda-timeline__item::before{content:"";position:absolute;left:-1.05rem;top:.35rem;width:.85rem;height:.85rem;border-radius:50%;background:var(--accent);border:.18rem solid var(--surface);box-shadow:0 0 0 1px var(--border)}
.x0fda-timeline__mark{display:block;font-family:var(--head-font);font-weight:800;color:var(--accent);font-size:.92rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.2rem}
.x0fda-timeline__body h3{margin:.1rem 0 .3rem;font-size:1.1rem}
.x0fda-hero{background:none;color:inherit;border-bottom:0}
.x0fda-hero__eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.78rem;color:var(--hero-accent);margin:0 0 .6rem}
.x0fda-hero__title{margin-bottom:.35em}
.x0fda-hero__lead{font-size:clamp(1.05rem,2.2vw,1.3rem);color:var(--hero-muted)}
.x0fda-hero__figure{margin:1.6rem 0 0}
.x0fda-hero__figure figcaption{color:var(--hero-muted);font-size:.9rem;margin-top:.5rem}
.x0fda-lead{font-size:clamp(1.05rem,2.2vw,1.25rem);color:var(--muted)}
.x0fda-stats{list-style:none;margin:1.4rem 0;padding:0;display:grid;grid-template-columns:1fr;gap:1rem}
.x0fda-stat{background:transparent;border:2px solid var(--line);border-radius:var(--radius);padding:1.2rem;text-align:center}
.x0fda-stat__num{display:block;font-family:var(--head-font);font-weight:900;font-size:clamp(2rem,4vw,2.8rem);color:var(--accent);line-height:1}
.x0fda-stat__label{display:block;margin-top:.4rem;color:var(--muted);font-weight:600;font-size:.92rem}
.x0fda-cards{display:grid;grid-template-columns:1fr;gap:1rem;margin:1.4rem 0}
.x0fda-card{background:transparent;border:2px solid var(--line);border-radius:var(--radius);padding:1.3rem 1.4rem;border-top:2px solid var(--accent)}
.x0fda-card__title{margin-top:0}
figure{margin:1.6rem 0}
figure img{width:100%;aspect-ratio:3/2;object-fit:cover;background:color-mix(in srgb,var(--accent) 6%,var(--surface));border:1px solid var(--border);min-height:150px}
.x0fda-hero__figure img{max-height:400px}
figure:not(.x0fda-hero__figure) img{aspect-ratio:4/3;max-height:340px}
figcaption{color:var(--muted);font-size:.9rem;margin-top:.5rem}
.x0fda-filter-table{margin:1.4rem 0}
.x0fda-filter-table__ctrl{border:0;padding:0;margin:0 0 .6rem;display:flex;flex-wrap:wrap;gap:.4rem .5rem}
.x0fda-filter-table__ctrl input[type=radio]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.x0fda-filter-table__ctrl label{cursor:pointer;padding:.4rem .9rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-weight:700;font-size:.92rem}
.x0fda-filter-table__ctrl input[type=radio]:checked + label{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.x0fda-filter-table__ctrl input[type=radio]:focus-visible + label{outline:2px solid var(--accent);outline-offset:2px}
.x0fda-filter-table:has(input[value="all"]:checked) tbody tr{display:table-row}
.x0fda-filter-table:has(input[value="crypto"]:checked) tbody tr:not([data-kind="crypto"]){display:none}
.x0fda-filter-table:has(input[value="fiat"]:checked) tbody tr:not([data-kind="fiat"]){display:none}
.x0fda-filter-table:has(input[value="cards"]:checked) tbody tr:not([data-kind="cards"]){display:none}
.x0fda-filter-table:has(input[value="wallets"]:checked) tbody tr:not([data-kind="wallets"]){display:none}
.x0fda-filter-table:has(input[value="bank"]:checked) tbody tr:not([data-kind="bank"]){display:none}
.x0fda-filter-table:has(input[value="slots"]:checked) tbody tr:not([data-kind="slots"]){display:none}
.x0fda-filter-table:has(input[value="live"]:checked) tbody tr:not([data-kind="live"]){display:none}
.x0fda-filter-table:has(input[value="originals"]:checked) tbody tr:not([data-kind="originals"]){display:none}
.x0fda-fn-ref a{text-decoration:none;font-weight:700;color:var(--accent);padding:0 .1em}
.x0fda-footnotes{list-style:decimal;margin:2rem 0 0;padding-left:1.6rem;font-size:.94rem;color:var(--muted);border-top:1px solid var(--border);padding-top:1rem}
.x0fda-footnotes li{margin:.4rem 0}
.x0fda-footnotes li:target{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-radius:var(--radius);padding:.3rem .5rem}
.x0fda-note{background:transparent;border:2px dashed var(--line);border-left:.35rem solid var(--muted);border-radius:var(--radius);padding:1rem 1.2rem;margin:1.3rem 0}
.x0fda-note p:last-child{margin-bottom:0}
.x0fda-note.x0fda-warning{border-left-color:var(--warn);background:var(--warn-bg)}
.x0fda-note.x0fda-note--key{border-left-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.x0fda-note.x0fda-note--tip{border-left-color:var(--accent-2);background:color-mix(in srgb,var(--accent-2) 12%,var(--surface))}
.x0fda-icon-grid{list-style:none;margin:1.4rem 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}
.x0fda-icon-grid__item{background:transparent;border:2px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.2rem;display:flex;flex-direction:column;gap:.4rem}
.x0fda-icon-grid__ico{font-size:1.7rem;line-height:1;color:var(--accent);font-family:var(--head-font)}
.x0fda-icon-grid__title{margin:0;font-size:1.05rem}
.x0fda-verdict{background:var(--verdict-bg);color:var(--verdict-ink)}
.x0fda-verdict__title{border-left:0;padding-left:0;border-bottom:0}
.x0fda-verdict p{font-size:1.08rem}
.x0fda-verdict .x0fda-wrap{border:2px solid var(--accent);border-radius:var(--radius);padding-block:1.6rem}
@media(min-width:641px){.x0fda-quickfacts,.x0fda-stats,.x0fda-cards,.x0fda-panels{grid-template-columns:repeat(2,minmax(0,1fr))}.x0fda-quickfacts:has(>:last-child:nth-child(6)),.x0fda-quickfacts:has(>:last-child:nth-child(7)),.x0fda-stats:has(>:last-child:nth-child(6)),.x0fda-stats:has(>:last-child:nth-child(7)),.x0fda-cards:has(>:last-child:nth-child(6)),.x0fda-cards:has(>:last-child:nth-child(7)),.x0fda-panels:has(>:last-child:nth-child(6)),.x0fda-panels:has(>:last-child:nth-child(7)){grid-template-columns:repeat(3,minmax(0,1fr))}.x0fda-quickfacts:has(>:last-child:nth-child(8)),.x0fda-quickfacts:has(>:last-child:nth-child(9)),.x0fda-stats:has(>:last-child:nth-child(8)),.x0fda-stats:has(>:last-child:nth-child(9)),.x0fda-cards:has(>:last-child:nth-child(8)),.x0fda-cards:has(>:last-child:nth-child(9)),.x0fda-panels:has(>:last-child:nth-child(8)),.x0fda-panels:has(>:last-child:nth-child(9)){grid-template-columns:repeat(4,minmax(0,1fr))}.x0fda-quickfacts>:last-child:nth-child(odd),.x0fda-stats>:last-child:nth-child(odd),.x0fda-cards>:last-child:nth-child(odd),.x0fda-panels>:last-child:nth-child(odd){grid-column:1/-1}}
.x0fda-hero--boxed{background:none;border-bottom:0}
.x0fda-hero--boxed .x0fda-wrap{background:var(--hero-bg);color:var(--hero-ink);border:1px solid var(--border);border-radius:var(--radius);padding:2rem clamp(1rem,4vw,2rem);margin-top:1.4rem}
.x0fda-h2-underline h2{border-left:0;padding-left:0;border-bottom:.28rem solid var(--accent);padding-bottom:.25rem}
.x0fda-hero .x0fda-wrap{background:var(--hero-bg);color:var(--hero-ink);border:1px solid var(--border);border-radius:var(--radius);padding-block:2rem;margin-top:1.4rem}
article>figure,main>figure{max-width:var(--maxw);margin:1.6rem auto;padding-inline:clamp(1rem,4vw,2rem)}
@media(max-width:640px){body{font-size:16px}.x0fda-toc__list{columns:1}.x0fda-keyvalue>div{grid-template-columns:1fr;gap:.2rem}.x0fda-site-header .x0fda-wrap{gap:.6rem}.x0fda-matrix{min-width:420px}}
.tool-shell{max-width:var(--maxw);margin-inline:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(1rem,3vw,2rem)}
.tool-shell h2{margin-top:0}
.tool-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1rem,3vw,2rem);align-items:start;margin-top:1.5rem}
.tool-fields{display:grid;gap:.55rem;min-width:0}
.tool-fields label{display:block;font-weight:700;font-size:.95rem;margin-top:.35rem;color:var(--ink)}
.tool-fields select{display:block;box-sizing:border-box;width:100%;min-width:0;border:1px solid var(--border);border-radius:var(--radius);padding:.75rem .85rem;background:var(--bg);color:var(--ink);font:inherit}
.tool-fields select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.tool-results{min-width:0;padding:1.4rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}
.tool-kicker{font-size:.85rem;font-weight:700;color:var(--muted);margin:0 0 .4rem}
.tool-primary{display:block;font-family:var(--head-font);font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.2;font-weight:900;color:var(--accent);overflow-wrap:anywhere}
.tool-metrics{margin:1.2rem 0;display:grid;gap:.75rem}
.tool-metrics>div{display:flex;justify-content:space-between;gap:.7rem;border-bottom:1px solid var(--border);padding-bottom:.65rem}
.tool-metrics dt{font-size:.91rem;color:var(--muted)}
.tool-metrics dd{font-weight:800;text-align:right;margin:0;white-space:nowrap}
.tool-verdict{font-weight:700;margin:1.2rem 0 0}
.tool-explanation{margin-top:1.8rem;padding-top:1.3rem;border-top:1px solid var(--border)}
.tool-explanation h3{font-size:1.25rem}
.tool-explanation p{overflow-wrap:anywhere}
.tool-rg{font-size:.89rem;margin:1.2rem 0 0;padding:.95rem;border-left:3px solid var(--accent);background:var(--bg)}
@media(max-width:700px){.tool-grid{grid-template-columns:minmax(0,1fr)}.tool-shell{padding:1rem}.tool-results{padding:1rem}.tool-metrics>div{flex-wrap:wrap}.tool-metrics dd{white-space:normal}}

:root { --bg-main: #fcfbf9 !important; --color-text: #2d2424 !important; --card-bg: #ffffff !important; --border-color: rgba(128,128,128,0.15) !important; --card-shadow: 0 4px 15px rgba(0,0,0,0.04) !important; --radius: 12px !important; --progress-bg: linear-gradient(90deg, #1e40af, #3b82f6) !important; --progress-glow: 0 2px 8px rgba(59, 130, 246, 0.4) !important; } body { background-color: var(--bg-main) !important; color: var(--color-text) !important; }
/* Кнопка наверх: Классика */
#md-scroll-top { background: linear-gradient(135deg, #1e40af, #3b82f6) !important; border: none !important; box-shadow: 0 10px 25px rgba(59, 130, 246, 0.3) !important; }
#md-scroll-top:hover { box-shadow: 0 15px 30px rgba(59, 130, 246, 0.5) !important; }
#md-scroll-top svg { stroke: #ffffff !important; }
            
/* ================================================= */
/*  УНИВЕРСАЛЬНЫЙ НОРМАЛИЗАТОР ЦВЕТОВ (БРОНЕБОЙНЫЙ) */
/* ================================================= */

/* Hide default scrollbar for clean edge-to-edge layout */
html {
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}
::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

/* Reading progress bar styles */
.md-scroll-progress-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: transparent;
    z-index: 9999999;
    pointer-events: none;
}
.md-scroll-progress-bar {
    height: 100%;
    width: 0%;
    background: var(--progress-bg, linear-gradient(90deg, #6366f1, #a855f7, #ec4899));
    box-shadow: var(--progress-glow, 0 0 10px rgba(168, 85, 247, 0.6));
    transition: width 0.1s ease-out;
    border-radius: 0 2px 2px 0;
}

/* 0. Перехватываем переменные темы (РАСШИРЕННЫЙ СПИСОК) */
:root {
    --bg: var(--card-bg) !important;
    --paper: var(--card-bg) !important;
    --panel: var(--card-bg) !important; 
    --surface: var(--card-bg) !important;
    --accent-soft: var(--card-bg) !important;
    --ink: var(--color-text) !important;
    --line: var(--border-color) !important;
    --card: var(--card-bg) !important;
    --hero-bg: transparent !important;
    --hero-surface: transparent !important;
    --hero-ink: var(--color-text) !important;
    
    /* Захватываем специфичные переменные из Spinstralia */
    --soft: transparent !important; 
    --danger-soft: var(--card-bg) !important; 
    --deep: var(--bg-main) !important; 
    --muted: var(--color-text) !important;
}

/* 0.1 ЖЕСТКО УБИВАЕМ СВЕТЛЫЙ ГРАДИЕНТ ИЗ АРХИВА */
body {
    background: var(--bg-main) !important;
    background-color: var(--bg-main) !important;
    background-image: none !important;
    color: var(--color-text) !important;
}

/* ===================================================== */
/* 1. ФИНАЛЬНАЯ ПОКРАСКА (АБСОЛЮТНЫЙ НЕЙТРАЛИТЕТ) */
/* ===================================================== */

/* А. Базовая страховка текста */
main p:not([class*="tc-"]):not([class*="tc-"] *):not([class*="-hero"] *):not([class*="tool-"] *),
main h1:not([class*="tc-"]):not([class*="tc-"] *):not([class*="-hero"] *):not([class*="tool-"] *),
main h2:not([class*="tc-"]):not([class*="tc-"] *):not([class*="-hero"] *):not([class*="tool-"] *),
main h3:not([class*="tc-"]):not([class*="tc-"] *):not([class*="-hero"] *):not([class*="tool-"] *),
main h4:not([class*="tc-"]):not([class*="tc-"] *):not([class*="-hero"] *):not([class*="tool-"] *),
main h5:not([class*="tc-"]):not([class*="tc-"] *):not([class*="-hero"] *):not([class*="tool-"] *),
main h6:not([class*="tc-"]):not([class*="tc-"] *):not([class*="-hero"] *):not([class*="tool-"] *),
main li:not([class*="tc-"]):not([class*="tc-"] *):not([class*="-hero"] *):not([class*="tool-"] *),
main blockquote:not([class*="tc-"]):not([class*="tc-"] *):not([class*="-hero"] *):not([class*="tool-"] *),
main figcaption:not([class*="tc-"]):not([class*="tc-"] *):not([class*="-hero"] *):not([class*="tool-"] *),
main strong:not([class*="tc-"]):not([class*="tc-"] *):not([class*="-hero"] *):not([class*="tool-"] *),
main span:not([class*="tc-"]):not([class*="tc-"] *):not([class*="-hero"] *):not([class*="tool-"] *),
.standfirst, .eyebrow, .source-note {
    color: var(--color-text); 
}



/* Панели архива теперь полноценно адаптируются под любой пресет */
main [class*="-panels"] {
    background-color: var(--card-bg) !important;
    border: 1px solid var(--border-color) !important;
    color: var(--color-text) !important;
}

main [class*="-panels"] * {
    color: var(--color-text) !important;
}



/* ================================================= */
/* АДАПТАЦИЯ ПОЛЕЙ ВВОДА (КАЛЬКУЛЯТОРЫ И ФОРМЫ)      */
/* ================================================= */
input.tool-input,
main input[type="text"],
main input[type="number"],
main input[type="email"],
main input[type="search"],
main textarea,
main select {
    background-color: var(--bg-main) !important;
    color: var(--color-text) !important;
    border: 1px solid var(--border-color) !important;
    border-radius: var(--radius) !important;
}

input.tool-input:focus,
main input[type="text"]:focus,
main input[type="number"]:focus {
    border-color: var(--color-text) !important;
    outline: none !important;
}

/* 1.1 Защищаем кнопки от нормализатора (строго вне витрин) */
main .button:not([class*="tc-"], [class*="tc-"] *), 
main .btn:not([class*="tc-"], [class*="tc-"] *), 
main a.button:not([class*="tc-"], [class*="tc-"] *) {
    color: var(--bg-main) !important;
}

/* 1.2 Вторичные кнопки (secondary/outline) должны иметь темный текст (любой синтаксис) */
main .button.button-secondary:not([class*="tc-"], [class*="tc-"] *),
main .button.secondary:not([class*="tc-"], [class*="tc-"] *),
main .btn.btn-secondary:not([class*="tc-"], [class*="tc-"] *),
main .btn.secondary:not([class*="tc-"], [class*="tc-"] *),
main a.button.button-secondary:not([class*="tc-"], [class*="tc-"] *),
main a.button.secondary:not([class*="tc-"], [class*="tc-"] *) {
    color: var(--color-text) !important;
}


/* 2. Оформление специфичных блоков в виде объемных карточек */
main .signal,
main .guide-card,
main .assessment-card, 
main .score-grid > div,
main .comparison,
main .comparison-strip,
main .wrap, main .summary-box, main .check-box, 
main .regulation, main .box:not([class*="tc-"]), main .card:not([class*="tc-"]), 
main .info-box, main aside, main .band, main .source-box, 
main .device-card, main .device-screen,
main .fact-grid > *,
main .callout, 
main .resource-card, 
main .pros-cons > div,
main .decision-list li,
main .key-points,
main .status-panel,
main .fact-card,
main .cards-three .article-wrapper,
main .compare > div,
main .source-note,
main .tldr,
main .card-grid > div,
main .odds-example,
main .at-a-glance > div,
main .glossary-term,
main .comparison,
main [class*="card"]:not([class*="tc-"]):not([class*="matches"]):not([class*="hub-children"]):not([class*="md-child"]),
main [class*="box"]:not(.burger):not([class*="tool-"]):not([class*="tc-"]):not([class*="hub-children"]):not([class*="md-child"]) {
    background-color: var(--card-bg) !important;
    background-image: none !important;
    border: 1px solid var(--border-color) !important;
    box-shadow: var(--card-shadow) !important;
    border-radius: var(--radius) !important;
    padding: 24px !important;
    color: var(--color-text) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

main .fact-card:hover,
main .pros-cons .article-wrapper:hover,
main .cards-three .article-wrapper:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(0,0,0,0.08) !important;
}

/* 2.05 ФИКС СВЕТЛЫХ ПЛАШЕК В ТЕМНЫХ ТЕМАХ (Убиваем вшитые фоны архива) */
main .layer-item:not([class*="tc-"]),
main .checklist:not([class*="tc-"]),
main .legal-distinction:not([class*="tc-"]),
main [class*="-note"]:not([class*="tc-"]),
main .tool-stepper button,
main [class*="-filter"] label:not([class*="tc-"]),
main [class*="quickfacts"] li:not([class*="tc-"]),
main .tool-rg {
    background: rgba(128, 128, 128, 0.08) !important;
    background-color: rgba(128, 128, 128, 0.08) !important;
    background-image: none !important;
    color: var(--color-text) !important;
    border: 1px solid var(--border-color) !important;
    border-radius: 8px !important;
}

/* Дополнительная гарантия, что текст внутри этих карточек останется читаемым */
main .legal-distinction *:not([class*="tc-"]),
main [class*="-note"]:not([class*="tc-"]) * {
    color: var(--color-text) !important;
}

/* 2.1 Точечный фикс для таблиц (убираем белые заливки) */
main table:not([class*="tc-"]), main table:not([class*="tc-"]) tr, main table:not([class*="tc-"]) th, main table:not([class*="tc-"]) td, main .table-scroll:not([class*="tc-"]), main .table-wrap:not([class*="tc-"]) {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    color: var(--color-text) !important;
    border-color: var(--border-color) !important;
}
main table:not([class*="tc-"]) th {
    background: rgba(128, 128, 128, 0.05) !important;
}

/* 3. УБИВАЕМ БЕЛЫЕ ФОНЫ У СТРУКТУРНЫХ БЛОКОВ НА ЛЮБОЙ ГЛУБИНЕ */
#page, .site, #content, .site-content, #primary, .content-area, .site-main, .entry-content, .hentry,
main, main section, main article, main .article-wrapper,
main .hero, main .cl-hero, main [data-content="hero"], main .hero-content-wrapper,
main .section-body, main .article-header, main > div:not([class*="tc-"]), main > div > div:not([class*="tc-"]),
article > section:last-of-type, main .feature-figure {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

/* 4. Принудительно красим текст внутри специфичных карточек */
main .callout *, 
main .resource-card *, 
main .pros-cons > div *,
main .comparison *,
main .comparison-strip *,
main .decision-list li *,
main .key-points *,
main .identity-note *,
main .badge *,
main .install-checks li *,
main .final-verdict *,
main .status-panel *,
main .fact-card *,
main .cards-three .article-wrapper *,
main .source-box *,
main .compare > div *,
main .tldr *,
main .card-grid > div *,
main .odds-example *,
main .at-a-glance > div *,
main .glossary-term *,
main .comparison *,
main details *,
main [class*="card"]:not([class*="tc-"]):not([class*="matches"]):not([class*="hub-children"]):not([class*="md-child"]) *,
main [class*="box"]:not(.burger):not([class*="tool-"]):not([class*="tc-"]):not([class*="hub-children"]):not([class*="md-child"]) * {
    color: var(--color-text) !important;
}

/* Unbound protection against hardcoded white text in dark blocks */
.legal-band,
.legal-band *,
.legal-band a,
.legal-band .eyebrow {
    color: var(--color-text) !important;
}

/* ================================================= */
/*  АВТОМАТИЧЕСКОЕ ОГЛАВЛЕНИЕ (MD-TOC) */
/* ================================================= */

main .toc:not(.md-toc-block):not(.md-toc-content),
main .table-of-contents,
main [data-content="toc"] {
    display: none !important;
}

.md-toc-block {
    background: var(--card-bg, #ffffff) !important;
    border: 1px solid var(--border-color) !important;
    border-radius: var(--radius) !important;
    margin: 35px 0 !important;
    box-shadow: var(--card-shadow) !important;
    overflow: hidden;
    transition: all 0.3s ease;
}
.md-toc-block:hover { box-shadow: 0 10px 25px rgba(0,0,0,0.06) !important; }
.md-toc-title {
    padding: 18px 24px !important; font-size: 1.15rem !important; font-weight: 700 !important;
    color: var(--color-text) !important; cursor: pointer; display: flex !important;
    align-items: center !important; justify-content: space-between !important;
    background: rgba(128,128,128,0.02) !important; border-bottom: 1px solid transparent;
    transition: background 0.2s ease; list-style: none !important;
}
.md-toc-title::-webkit-details-marker { display: none !important; }
.md-toc-block[open] .md-toc-title { border-bottom-color: var(--border-color) !important; }
.md-toc-content { padding: 20px 24px 24px !important; }
.md-toc-content ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.md-toc-content li { margin-bottom: 12px !important; padding-left: 18px !important; position: relative; line-height: 1.4 !important; }
.md-toc-content li {
    padding-left: 14px !important; 
    border-left: 2px solid rgba(128, 128, 128, 0.15) !important;
    transition: border-color 0.2s ease, padding-left 0.2s ease !important;
}

.md-toc-content li::before {
    content: none !important;
    display: none !important;
}

.md-toc-content li:hover {
    border-left-color: var(--accent, #8b5cf6) !important;
    padding-left: 18px !important;
}
.md-toc-content li:last-child { margin-bottom: 0 !important; }
.md-toc-content a {
    text-decoration: none !important; color: var(--color-text) !important;
    opacity: 0.8; font-weight: 500; font-size: 1.05rem; transition: all 0.2s ease; display: inline-block;
}
.md-toc-content a:hover { opacity: 1; transform: translateX(4px); }
.md-toc-content li:hover::before { opacity: 1; transform: scale(1.3); }

html { scroll-behavior: smooth !important; }

/* FIX: ИСПОЛЬЗУЕМ CLIP ДЛЯ СОХРАНЕНИЯ ЛИПКОЙ ШАПКИ */
html, body { 
    max-width: 100vw !important; 
    overflow-x: clip !important; 
}

/* Центрирование блоков заголовков и оглавлений */
main .section-heading,
main .snapshot .section-heading {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Центрирование самого авто-оглавления (Table of Contents) */
main .md-toc-block {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 800px !important; 
    width: 100% !important;
}

/* ================================================= */
/* ЗАЩИТА ТЕКСТОВЫХ ССЫЛОК ОТ ЖЕСТКИХ ЦВЕТОВ АРХИВА  */
/* ================================================= */

/* Отменяем белый цвет ссылок в .media-section и других текстовых блоках */
main .media-section a,
main p a:not(.button):not(.btn),
main li a:not(.button):not(.btn) {
    color: var(--color-text) !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}

/* Делаем ссылку чуть ярче при наведении для хорошего UX */
main .media-section a:hover,
main p a:not(.button):not(.btn):hover,
main li a:not(.button):not(.btn):hover {
    opacity: 0.7 !important;
}

/* СИНХРОНИЗАЦИЯ ШИРИНЫ КАСТОМНЫХ АРХИВОВ */
.shell, .wrap {
    width: 100% !important;
    max-width: var(--content-max-width, 1180px) !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}


/* ================================================= */
/* МОБИЛЬНАЯ АДАПТАЦИЯ (СТРОГО В САМОМ НИЗУ CSS!)    */
/* ================================================= */
@media (max-width: 768px) {
    body, #page, .site, main, article, section, .content-main, .article-wrapper { width: 100% !important; }
    
    /* 1. УБИВАЕМ ДВОЙНОЙ ОТСТУП, НО ВОЗВРАЩАЕМ ВОЗДУХ ДЛЯ .shell (важный фикс из нового кода) */
    main { padding-left: 0 !important; padding-right: 0 !important; }
    
    /* Умная защита отступов: спасает текст старых архивов, но не сжимает карточки и витрины */
    .shell:not(.section-block):not(.hero):not([class*="tc-"]):not([class*="brand"]), 
    .container:not(.section-block):not(.hero):not([class*="tc-"]):not([class*="brand"]), 
    .wrapper:not(.section-block):not(.hero):not([class*="tc-"]):not([class*="brand"]), 
    .inner-wrap:not(.section-block):not(.hero):not([class*="tc-"]):not([class*="brand"]) {
        padding-left: 16px !important;
        padding-right: 16px !important;
        box-sizing: border-box !important;
    }
        
    /* Защита "голого" текста внутри main */
    main > *:not(.section-block):not([data-content="hero"]):not(.cl-header):not(header):not(.cl-hero):not([class*="tc-"]):not([class*="brand"]), 
    main article > *:not(.section-block):not([data-content="hero"]):not(.cl-header):not(header):not(.cl-hero):not([class*="tc-"]):not([class*="brand"]) { 
        padding-left: 10px !important; 
        padding-right: 10px !important; 
    }
    
    /* Защита текста от вылетов и переносов (Исключаем плагины витрин и бонусов tc-) */
    p:not([class*="tc-"]), h1:not([class*="tc-"]), h2:not([class*="tc-"]), h3:not([class*="tc-"]), h4:not([class*="tc-"]), h5:not([class*="tc-"]), h6:not([class*="tc-"]), a:not([class*="tc-"]), span:not([class*="tc-"]), li:not([class*="tc-"]), b:not([class*="tc-"]), strong:not([class*="tc-"]) {
        word-wrap: break-word !important; 
        overflow-wrap: break-word !important;
        word-break: break-word !important; 
    }

    /* Возвращаем тикеру витрины читаемые цвета на светлой плашке */
    main .tc-ticker-track, main .tc-ticker-item, main .tc-ticker-item * {
        color: #0f172a !important; 
    }
    main .tc-ticker-label, main .tc-ticker-label * {
        color: #ffffff !important; 
    }

    span[class*="score-num"] { word-wrap: normal !important; word-break: normal !important; white-space: nowrap !important; }

    
    /* ТОТ САМЫЙ ЧИСТЫЙ И КРАСИВЫЙ БЛОК ВИТРИНЫ ИЗ СТАРОГО КОДА */
    .tc-brands-wrap {
        width: 100vw !important; 
        max-width: 100vw !important;
        margin-left: calc(-50vw + 50%) !important; 
        margin-right: calc(-50vw + 50%) !important;
        padding: 1rem !important; 
        box-sizing: border-box !important;
    }

    /* Возвращаем логотипам в баннерах нормальный компактный размер */
    .tc-s1-banner img.tc-s1-bn-logo, 
    [class*="tc-"] img[class*="logo"] {
        width: auto !important;
        max-width: 140px !important;
        height: auto !important;
        max-height: 48px !important;
        object-fit: contain !important;
        margin: 0 auto !important;
    }
    
    /* Защищаем звезды, рейтинги и таймер подарка от глобального разрыва слов */
    [class*="tc-"] [class*="-stars"],
    [class*="tc-"] [class*="-rate"],
    [class*="tc-"] [class*="-score"],
    [class*="tc-"] [class*="-timer"],
    .tc-float-gift,
    .tc-float-gift * {
        overflow-wrap: normal !important;
        word-break: normal !important;
        white-space: nowrap !important;
    }

    .wrap {
        width: 100% !important;
        max-width: none !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
    }

    

    /* Уменьшаем конские 30px отступы у оберток на телефонах */
    .regulatory-box, .box, .card, .info-box {
        padding: 14px !important; 
    }

    /* Немного сжимаем внутренние отступы самого оглавления для мобилок */
    .md-toc-title {
        padding: 14px 16px !important;
    }
    .md-toc-content {
        padding: 16px 16px 20px !important;
    }

}

/* FIX: PREMIUM GLASSMORPHISM STICKY HEADER */
.site-header {
    background-color: var(--card-bg) !important;
    background: color-mix(in srgb, var(--card-bg) 65%, transparent) !important;
    backdrop-filter: blur(24px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
    border-bottom: 1px solid color-mix(in srgb, var(--border-color) 60%, transparent) !important;
    position: sticky !important; 
    top: 0 !important; 
    z-index: 9999 !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05) !important;
    transition: all 0.3s ease !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.top-navigation-bar { width: 100%; margin: 0 auto; padding: 12px 16px; display: flex; align-items: center; justify-content: space-between; }
.site-header .top-navigation-bar, .site-header__inner {
    max-width: var(--content-max-width, 1180px) !important; width: 100% !important;
    margin-left: auto !important; margin-right: auto !important;
    padding-left: 20px !important; padding-right: 20px !important; box-sizing: border-box !important;
}
.site-logo { min-width: 180px; margin: 0; display: flex; align-items: center; }
.site-logo img { max-height: 69px !important; max-width: none !important; width: auto !important; display: block; margin-left: 70px; background: transparent !important; transition: transform 0.2s ease; }
.site-logo img:hover { transform: scale(1.02); }

#crumbs {
    max-width: var(--content-max-width, 1180px) !important; margin-left: auto !important; margin-right: auto !important;
    padding-left: 20px !important; padding-right: 20px !important; box-sizing: border-box !important;
}
@media (max-width: 768px) { #crumbs { padding-left: 12px !important; padding-right: 12px !important; } }

.site-nav--desktop, #mobile-menu, .mobile-menu, .mobile-menu-overlay, .mobile-menu__close, .child-pages-showcase { display: none !important; }
.burger { display: flex; flex-direction: column; gap: 6px; background: transparent; border: none; cursor: pointer; padding: 5px; z-index: 1000; margin-left: auto; margin-right: 100px; }
@media (max-width: 768px) { .burger { margin-right: 10px !important; } }
.burger span { display: block; width: 28px; height: 3px; background-color: var(--color-text, #111827) !important; border-radius: 2px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); transform-origin: center; }
.burger.is-active span:nth-child(1) { transform: translateY(9px) rotate(45deg); }
.burger.is-active span:nth-child(2) { opacity: 0; transform: translateX(15px); }
.burger.is-active span:nth-child(3) { transform: translateY(-9px) rotate(-45deg); }

/* FIX: ИСПОЛЬЗУЕМ CLIP ДЛЯ МЕНЮ */
html.menu-is-open, body.menu-is-open { overflow: clip !important; overscroll-behavior: none !important; }
.cam-sidebar { overscroll-behavior: contain !important; }

.cam-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.7); backdrop-filter: blur(4px); z-index: 999998; opacity: 0; visibility: hidden; transition: opacity 0.3s ease; }
.cam-overlay.is-active { opacity: 1; visibility: visible; }
.cam-sidebar { position: fixed; top: 0; right: -100%; width: 100%; max-width: 420px; height: 100vh; background: rgba(15, 23, 42, 0.95); backdrop-filter: blur(15px); -webkit-backdrop-filter: blur(15px); border-left: 1px solid rgba(255,255,255,0.08); z-index: 999999; overflow-y: auto; opacity: 0; visibility: hidden; transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease, visibility 0.4s; box-shadow: -10px 0 40px rgba(0,0,0,0.5); }
.cam-sidebar.is-open { right: 0; opacity: 1; visibility: visible; }
.cam-header { display: flex; justify-content: space-between; align-items: center; padding: 30px 25px; border-bottom: 1px solid rgba(255,255,255,0.08); }
.cam-header-title { font-size: 16px; font-weight: 800; color: #ffffff; letter-spacing: 2px; }
.cam-close { background: none; border: none; font-size: 36px; line-height: 1; cursor: pointer; color: #ffffff; opacity: 0.6; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; }
.cam-close:hover { opacity: 1; transform: rotate(90deg); background: rgba(255,255,255,0.1); }
.cam-nav { list-style: none; margin: 0; padding: 0; }
.cam-item { border-bottom: 1px solid rgba(255,255,255,0.05); }
.cam-item-header { display: flex; justify-content: space-between; align-items: center; padding: 20px 25px; cursor: pointer; transition: all 0.3s ease; }
.cam-item-header:hover { background: rgba(255,255,255,0.03); padding-left: 32px; }
.cam-item-header a { font-size: 17px; font-weight: 700; color: #f8fafc; text-decoration: none; flex: 1; display: block; letter-spacing: 0.5px; }
.cam-toggle { background: rgba(255,255,255,0.05); border: none; cursor: pointer; padding: 8px; border-radius: 50%; display: flex; align-items: center; justify-content: center; transition: background 0.3s ease; }
.cam-toggle:hover { background: rgba(255,255,255,0.15); }
.cam-toggle svg { width: 12px; height: 8px; transition: transform 0.3s ease; }
.cam-toggle svg path { stroke: #ffffff; stroke-width: 2.5; }
.cam-toggle.is-open svg { transform: rotate(180deg); }
.cam-children { list-style: none; margin: 0; padding: 0; display: none; background: rgba(0,0,0,0.25); border-top: 1px solid rgba(255,255,255,0.03); box-shadow: inset 0 5px 15px rgba(0,0,0,0.1); }
.cam-children.is-open { display: block; animation: slideDown 0.3s ease-out forwards; }
.cam-child-item a { display: flex; padding: 18px 25px; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,0.02); gap: 18px; align-items: center; transition: all 0.3s ease; }
.cam-child-item a:hover { background: rgba(255,255,255,0.05); padding-left: 32px; }
.cam-child-item img { width: 65px; height: 45px; object-fit: cover; border-radius: 6px; box-shadow: 0 4px 10px rgba(0,0,0,0.3); border: 1px solid rgba(255,255,255,0.1); opacity: 0.9; transition: opacity 0.3s ease; }
.cam-child-item a:hover img { opacity: 1; }
.cam-child-text strong { display: block; font-size: 14px; margin-bottom: 5px; color: #ffffff; line-height: 1.3; font-weight: 600; }
.cam-child-text span { display: block; font-size: 13px; color: #94a3b8; line-height: 1.4; }

@keyframes slideDown { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }

/* ГЛОБАЛЬНЫЙ КОНТЕЙНЕР ДЛЯ ВСЕХ ВНУТРЕННИХ СТРАНИЦ */
main > *:not([data-content="hero"]):not(.cl-header):not(header):not(.cl-hero):not(.hero-content-wrapper), 
main article > *:not([data-content="hero"]):not(.cl-header):not(header):not(.cl-hero):not(.hero-content-wrapper) { 
    max-width: var(--content-max-width, 1180px) !important; 
    margin-left: auto !important; 
    margin-right: auto !important; 
    padding-left: 20px !important; 
    padding-right: 20px !important; 
    box-sizing: border-box !important; 
}
main iframe, main article iframe { max-width: 100% !important; margin-left: auto !important; margin-right: auto !important; transform: none !important; width: 100% !important; }
main h1 { font-size: clamp(2rem, 4vw, 3.5rem) !important; font-weight: 800; margin-top: 30px; margin-bottom: 20px; line-height: 1.2; }
.cl-hero img, .article-wrapper p > img, .article-wrapper figure > img, img.article-image, img.wp-post-image { max-width: 100%; width: auto; max-height: 600px; height: auto !important; object-fit: contain; border-radius: 8px; display: block; margin: 0 auto; }

@media (max-width: 768px) {
    section table, table { display: block !important; width: 100% !important; max-width: 100vw !important; min-width: 0 !important; overflow-x: auto !important; -webkit-overflow-scrolling: touch !important; }
    table th, table td { min-width: 150px !important; word-wrap: break-word !important; }
}

.sitemap-main { max-width: 900px; margin: 0 auto; padding: 40px 24px; }
.sitemap-title { margin: 0 0 10px; text-align: center; font-size: 32px; font-weight: 800; }
.sitemap-subtitle { margin: 0 0 30px; text-align: center; opacity: 0.75; font-size: 16px; }
.sitemap-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; }
.sitemap-link { display: block; padding: 14px 18px; border: 1px solid rgba(128,128,128,0.2); border-radius: 8px; text-decoration: none; color: var(--color-text); font-weight: 600; transition: all 0.2s ease; background: var(--card-bg); }
.sitemap-link:hover { border-color: rgba(128,128,128,0.5); transform: translateY(-2px); box-shadow: 0 4px 10px rgba(0,0,0,0.05); }


/* ================================================= */
/* УМНАЯ СЕТКА МЕНЮ ФУТЕРА (СТАНДАРТ VS МИНИМАЛИЗМ)  */
/* ================================================= */

/* БАЗОВЫЙ ВИД: Вертикальный столбик для сложных футеров (с колонками) */
.footer-menu-list { 
    list-style: none !important; 
    padding: 0 !important; 
    margin: 0 0 20px 0 !important;
    display: flex !important; 
    flex-direction: column !important; 
    align-items: flex-start !important;
    gap: 12px !important; 
    width: 100% !important;
}
.footer-menu-list li { 
    margin: 0 !important; 
    padding: 0 !important; 
    display: flex !important;
}
.footer-menu-list a { 
    display: inline-block !important;
    text-decoration: none !important; 
    color: inherit !important; 
    opacity: 0.7 !important; 
    font-size: 14px !important; 
    font-weight: 500 !important; 
    transition: all 0.2s ease !important; 
}
.footer-menu-list a:hover { 
    opacity: 1 !important; 
    text-decoration: underline !important; 
}



/* ================================================= */
/* СЕТКИ ДОЧЕРНИХ СТРАНИЦ И ХАБОВ                    */
/* ================================================= */

.md-child-grid { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 24px !important; max-width: 1100px !important; margin: 40px auto !important; padding: 0 20px !important; }
@media (max-width: 768px) { .md-child-grid { grid-template-columns: 1fr !important; } }
.md-child-card { display: flex !important; flex-direction: column !important; background: var(--card-bg) !important; border-radius: var(--radius) !important; box-shadow: var(--card-shadow) !important; transition: transform 0.2s ease, box-shadow 0.2s ease !important; text-decoration: none !important; overflow: hidden !important; border: 1px solid var(--border-color) !important; }
.md-child-card:hover { transform: translateY(-4px) !important; box-shadow: 0 10px 25px rgba(0,0,0,0.12) !important; }
.md-child-card-img { width: 100% !important; height: 180px !important; object-fit: cover !important; background: rgba(128,128,128,0.1) !important; }
.md-child-card-content { padding: 20px !important; display: flex !important; flex-direction: column !important; flex-grow: 1 !important; }
.md-child-card-title { font-size: 18px !important; font-weight: 700 !important; color: var(--color-text) !important; margin: 0 0 10px 0 !important; line-height: 1.3 !important; }
.md-child-card-excerpt { font-size: 14px !important; color: var(--color-text) !important; opacity: 0.8 !important; margin: 0 !important; line-height: 1.5 !important; }

/* LEGACY / HUB CHILDREN CARDS */
.hub-children-main { padding-top: 40px !important; padding-bottom: 60px !important; }
.hub-children-article { max-width: 1180px !important; margin: 0 auto !important; padding: 0 20px !important; }
.hub-children-header { margin-bottom: 40px !important; }
.hub-children-title { margin: 0 0 20px !important; font-size: clamp(2.2rem, 4vw, 3.5rem) !important; line-height: 1.15 !important; font-weight: 800 !important; color: var(--color-text) !important; }
.hub-children-intro { font-size: 18px !important; line-height: 1.7 !important; color: var(--color-text) !important; opacity: 0.8 !important; }
.hub-children-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 28px !important; width: 100% !important; }
.hub-children-card { display: block !important; text-decoration: none !important; color: inherit !important; border-radius: var(--radius, 16px) !important; overflow: hidden !important; background: var(--card-bg, #fff) !important; border: 1px solid var(--border-color, rgba(0,0,0,.1)) !important; box-shadow: var(--card-shadow, 0 8px 25px rgba(0,0,0,.08)) !important; transition: transform .2s ease, box-shadow .2s ease !important; }
.hub-children-card:hover { transform: translateY(-5px) !important; box-shadow: 0 14px 35px rgba(0,0,0,.13) !important; }
.hub-children-card__media { position: relative !important; overflow: hidden !important; min-height: 260px !important; }
.hub-children-card__img { width: 100% !important; height: 260px !important; background-position: center !important; background-size: cover !important; background-repeat: no-repeat !important; transition: transform .3s ease !important; }
.hub-children-card:hover .hub-children-card__img { transform: scale(1.04) !important; }
.hub-children-card__img--empty { background: rgba(128,128,128,.08) !important; }
.hub-children-card__overlay { position: absolute !important; inset: 0 !important; background: linear-gradient(to top, rgba(0,0,0,.75) 0%, rgba(0,0,0,.25) 55%, rgba(0,0,0,0) 100%) !important; pointer-events: none !important; }
.hub-children-card__content { position: absolute !important; left: 0 !important; right: 0 !important; bottom: 0 !important; z-index: 2 !important; padding: 28px !important; }
.hub-children-card__title { margin: 0 !important; color: #fff !important; font-size: 24px !important; line-height: 1.25 !important; font-weight: 700 !important; }
.hub-children-empty { padding: 30px 0 !important; font-size: 18px !important; opacity: .7 !important; }

@media (max-width: 768px) {
    .hub-children-main { padding-top: 25px !important; }
    .hub-children-article { padding: 0 16px !important; }
    .hub-children-grid { grid-template-columns: 1fr !important; gap: 20px !important; }
    .hub-children-card__media, .hub-children-card__img { min-height: 220px !important; height: 220px !important; }
    .hub-children-card__content { padding: 20px !important; }
    .hub-children-card__title { font-size: 20px !important; }
}


/* Иммунитет логотипа от глобального min-height из архивов */
.site-logo img, 
img.custom-logo, 
.site-header img {
    min-height: 0 !important;
    height: auto !important;
    max-height: 65px !important;
    width: auto !important;
    max-width: none !important;
    object-fit: contain !important;
    display: block;
    margin-left: 70px;
    background: transparent !important;
    transition: transform 0.2s ease;
}

/* 📱 МОБИЛЬНЫЙ ФИКС ЛОГОТИПА И БУРГЕРА */
@media (max-width: 768px) { 
    .site-logo {
        min-width: 0 !important;
        flex: 1 1 auto !important; 
    }
    .site-logo img, 
    img.custom-logo, 
    .site-header img { 
        margin-left: 0 !important; 
        max-width: calc(100vw - 90px) !important; 
        max-height: 50px !important; 
        object-position: left center !important; 
    } 
}


/* Базовый каркас кнопки (дизайн загружается из пресетов) */
#md-scroll-top { position: fixed; bottom: 30px; right: 30px; width: 48px; height: 48px; border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); z-index: 99999; }
#md-scroll-top.is-visible { opacity: 1; visibility: visible; }
#md-scroll-top:hover { transform: translateY(-5px); }
#md-scroll-top svg { width: 22px; height: 22px; stroke-width: 2.5; fill: none; stroke-linecap: round; stroke-linejoin: round; transition: stroke 0.3s ease; }

details { background: var(--card-bg, #ffffff) !important; border: 1px solid var(--border-color) !important; border-radius: var(--radius) !important; margin-bottom: 16px !important; box-shadow: var(--card-shadow) !important; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important; overflow: hidden !important; }
details:hover { border-color: rgba(139, 92, 246, 0.4) !important; box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06) !important; transform: translateY(-2px) !important; }
details[open] { border-color: rgba(139, 92, 246, 0.5) !important; background: rgba(128, 128, 128, 0.02) !important; }
summary { padding: 20px 24px !important; font-size: 1.1rem !important; font-weight: 700 !important; cursor: pointer !important; color: var(--color-text, #111827) !important; position: relative !important; list-style: none !important; outline: none !important; display: flex !important; align-items: center !important; justify-content: space-between !important; line-height: 1.4 !important; }
summary::-webkit-details-marker { display: none !important; }
summary::after { content: '' !important; flex-shrink: 0 !important; width: 10px !important; height: 10px !important; margin-left: 20px !important; border-right: 2px solid var(--color-text) !important; border-bottom: 2px solid var(--color-text) !important; transform: rotate(45deg) !important; transition: transform 0.3s ease, opacity 0.3s ease !important; opacity: 0.6 !important; }
details[open] summary::after { transform: translateY(-4px) rotate(225deg) !important; opacity: 1 !important; }
details p, details .faq-answer { padding: 0 24px 24px !important; margin: 0 !important; color: var(--color-text, #111827) !important; opacity: 0.85 !important; font-size: 1rem !important; line-height: 1.7 !important; }

@media (max-width: 768px) {
    main h1 { font-size: 1.6rem !important; line-height: 1.25 !important; margin-top: 10px !important; margin-bottom: 12px !important; }
    .content-header, main > p:first-of-type, .post-date, .entry-meta { margin-bottom: 10px !important; font-size: 0.85rem !important; }
    .content-main > *:first-child, main > *:first-child { margin-top: 0 !important; }
}

a.brand { display: none !important; }
.content-header { display: none !important; margin: 0 !important; padding: 0 !important; height: 0 !important; }
.site-main, main, .content-main { padding-top: 0 !important; margin-top: 0 !important; }
main > *:first-child, .content-main > *:first-child, .site-main > *:first-child { margin-top: 0 !important; padding-top: 0 !important; }
h1, .content-main h1 { max-width: 100% !important; }
/* Safe hero reset (Protects .shell and .split original grids) */
.hero:not(.shell):not(.split), section.hero:not(.shell):not(.split), .hero-grid:not(.shell),
.article-header, article > section:not(.shell), article > section:last-of-type:not(.shell) {
    display: block !important;
    grid-template-columns: none !important;
    gap: 0 !important;
}

/* === АДАПТАЦИЯ ПОДПИСЕЙ ПОД КАРТИНКАМИ (FIGCAPTION) === */
figcaption { background-color: var(--card-bg) !important; color: var(--color-text) !important; border: 1px solid var(--border-color) !important; border-radius: 0 0 var(--radius) var(--radius) !important; opacity: 0.9; padding: 10px !important; }

/* БРОНЕЖИЛЕТ ДЛЯ ЛОГОТИПОВ ВИТРИН (глушим глобальные костыли) */
main [class*="tc-"] img, 
div[class*="tc-"] img { 
    min-height: 0 !important; /* Убиваем растягивание в 260px */
    max-width: 100% !important;
    background: transparent !important; 
    background-color: transparent !important; 
    object-fit: contain !important;
    box-shadow: none !important;
}

/* Применяем жесткий auto-размер только на мобилках, чтобы не сплющивать десктопные баннеры */
@media (max-width: 768px) {
    main [class*="tc-"] img, 
    div[class*="tc-"] img { 
        height: auto !important;
        width: auto !important; /* Запрещаем растягиваться на всю ширину колонки */
    }
}

body { min-height: 100vh !important; display: flex !important; flex-direction: column !important; margin: 0 !important; }
#page, .site { flex: 1 0 auto !important; display: flex !important; flex-direction: column !important; width: 100% !important; }
main, .site-main, .content-main { flex: 1 0 auto !important; display: block !important; width: 100% !important; }
.site-footer { margin-top: auto !important; flex-shrink: 0 !important; width: 100% !important; }

/* ================================================= */
/* SAFE GRID RESET (EXCLUDES .shell & .split)        */
/* ================================================= */
main, article:not([class]), .content-article, .cl-article, article[data-content="grid"]:not(.split),
.hero-grid:not(.shell), .split-section:not(.split),
.article-header, article > section:not(.shell), article > section:last-of-type:not(.shell),
main section:not(.shell), .content-main section:not(.shell) {
    display: block !important;
    grid-template-columns: none !important;
    grid-template-areas: none !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    margin: 0 !important;
}

/* Принудительно растягиваем текстовые блоки во всю ширину */
.section-body, .content-body, .cl-body, .hero-copy, .standfirst {
    display: block !important;
    grid-column: 1 / -1 !important; /* Вырываем элемент из любых сеток */
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

main .decision-list li {
    padding-left: 64px !important;
}

.md-cookie-banner { position: fixed; bottom: 20px; left: 20px; right: 20px; background: var(--card-bg, #ffffff); border: 1px solid var(--border-color, #e2e8f0); box-shadow: 0 15px 40px rgba(0,0,0,0.12); border-radius: 12px; padding: 20px; z-index: 999999; display: flex; flex-direction: column; gap: 15px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
@media(min-width: 768px) { .md-cookie-banner { bottom: 30px; left: 30px; right: auto; width: 380px; } }
.md-cb-title { font-size: 16px; font-weight: 700; color: var(--color-text, #0f172a); margin-bottom: 6px; }
.md-cb-text { font-size: 13px; line-height: 1.5; color: var(--color-text, #475569); opacity: 0.85; margin: 0; }
.md-cb-actions { display: flex; gap: 10px; }
.md-cb-btn { flex: 1; padding: 10px 0; border-radius: 6px; font-size: 13px; font-weight: 600; cursor: pointer; transition: all 0.2s ease; border: none; text-align: center; }
.md-cb-accept { background: #10b981; color: #fff; }
.md-cb-accept:hover { background: #059669; }
.md-cb-decline { background: transparent; border: 1px solid var(--border-color, #cbd5e1); color: var(--color-text, #475569); }
.md-cb-decline:hover { background: rgba(128,128,128,0.05); }


main .decision-strip {
    background-color: var(--card-bg) !important;
    background-image: none !important;
    border: 1px solid var(--border-color) !important;
    box-shadow: var(--card-shadow) !important;
    border-radius: var(--radius) !important;
    padding: 24px !important;
    color: var(--color-text) !important;
}

main .decision-strip div,
main .decision-strip section,
main .decision-strip article {
    background-color: transparent !important;
    background-image: none !important;
    border-color: var(--border-color) !important;
}

main .decision-strip *,
main .decision-strip strong,
main .decision-strip span {
    color: var(--color-text) !important;
}

#main a.btn-404, 
.error404 main a.btn-404 {
    color: var(--bg-main) !important;
    background-color: var(--color-text) !important;
    border-color: var(--color-text) !important;
}

/* Принудительно убиваем 2-колоночные сетки из новых архивов, 
   но сохраняем центрирование (не трогаем ширину) */
.hero-grid, .trust-grid, .hero > .shell, .hero.shell {
    display: block !important;
    grid-template-columns: none !important;
    gap: 0 !important;
}

/* ================================================= */
/* ТОЧЕЧНЫЕ ФИКСЫ ВЕРСТКИ (ОТСТУПЫ И ИКОНКИ)         */
/* ================================================= */

/* 1. Отдаляем кнопки от картинок в главном блоке */
main .hero-actions {
    margin-bottom: 32px !important;
}

/* 2. Адаптируем круглые иконки (metric/table) под любую тему и жестко центрируем */
main .metric-icon,
main .table-icon {
    background: rgba(128, 128, 128, 0.15) !important;
    border: 1px solid var(--border-color) !important;
    color: var(--color-text) !important;
    
    /* Бронебойное центрирование */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    padding: 0 !important;
}

/* ================================================= */
/* АДАПТИВНЫЙ ТЕКСТ КАЛЬКУЛЯТОРА (ДЛЯ ЛЮБЫХ ФОНОВ)   */
/* ================================================= */
main .tool-results *,
main .tool-result *,
main .tool-summary *,
main .tool-how *,
main .tool-explain *,
main .tool-list *,
main .tool-title *,
main .tool-controls *:not(select):not(option):not(input),
main .tool-field *:not(select):not(option):not(input),
main .tool-hint,
main .tool-controls label,
main .tool-field label {
    color: var(--color-text) !important;
}

/* Принудительная адаптация цвета текста в главных экранах (Hero) */
main [class*="hero"] h1,
main [class*="hero"] h2,
main [class*="hero"] p:not(.button):not(.btn),
main [class*="hero"] [class*="title"],
main [class*="hero"] [class*="eyebrow"] {
    color: var(--color-text) !important;
}

/* Принудительная адаптация фонов карточек внутри калькулятора */
main .tool-field,
main .tool-shell,
main .tool-results,
main .tool-result,
main .tool-summary,
main .tool-how,
main .tool-explain,
main .tool-title,
main .tool-list > li,
main .tool-result-list > div,
main .tool-metric,
main .tool-verdict {
    background-color: var(--card-bg) !important;
    background-image: none !important;
    border: 1px solid var(--border-color) !important;
}

/* ================================================= */
/* АБСОЛЮТНЫЙ СБРОС ФОНА ДЛЯ ВСЕХ НАДЗАГОЛОВКОВ      */
/* ================================================= */
main [class*="eyebrow"] {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--color-text) !important;
}

/* ================================================= */
/* ЖЕСТКО ОТКЛЕИВАЕМ ЗАВИСШИЕ БЛОКИ HERO И СЕКЦИИ    */
/* ================================================= */
main > *,
main article,
main article > *,
main section,
main header,
main [class*="hero"],
main [class*="header"],
main [data-content="hero"],
main [class*="sticky"],
main [class*="fixed"],
.cl-header,
.cl-hero,
.hero-content-wrapper {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    z-index: 1 !important;
}

/* ================================================= */
/* ФИКС СЕТКИ ФУТЕРА (ШИРИНА, ОТСТУПЫ, ПЕРЕНОСЫ)     */
/* ================================================= */
/* Оставляем базовые стили ТОЛЬКО для сложных (не-голых) футеров */
.site-footer:not(.md-dumb-footer), footer:not(.md-dumb-footer) {
    padding: 60px 20px !important;
    overflow: hidden !important; 
    box-sizing: border-box !important;
    width: 100% !important;
}

.site-footer:not(.md-dumb-footer) > div, 
.site-footer:not(.md-dumb-footer) .wrap, 
.site-footer:not(.md-dumb-footer) .container,
footer:not(.md-dumb-footer) > div:not(.md-dumb-footer-grid) { /* ДОБАВИЛИ ЗАЩИТУ ЗДЕСЬ */
    max-width: 1180px !important; 
    margin: 0 auto !important; 
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    gap: 30px !important;
    box-sizing: border-box !important;
}

.site-footer:not(.md-dumb-footer) > div > *, 
.site-footer:not(.md-dumb-footer) .wrap > *, 
footer:not(.md-dumb-footer) > div:not(.md-dumb-footer-grid) > * { /* И ЗДЕСЬ */
    flex: 1 1 200px !important; 
    min-width: 0 !important; 
    word-break: break-word !important; 
    overflow-wrap: break-word !important;
}

@media (max-width: 768px) {
    .site-footer:not(.md-dumb-footer) > div > *, 
    .site-footer:not(.md-dumb-footer) .wrap > *, 
    footer:not(.md-dumb-footer) > div:not(.md-dumb-footer-grid) > * { /* И ЗДЕСЬ */
        flex: 1 1 100% !important; 
        margin-bottom: 20px !important;
    }
}

/* ================================================= */
/* СМАРТ-СЕТКА 2 КОЛОНКИ ДЛЯ "ГОЛЫХ" И "ЛЕНИВЫХ" ФУТЕРОВ */
/* ================================================= */
footer.md-dumb-footer {
    padding: 60px 20px !important; 
    background: var(--card-bg) !important; 
    border-top: 1px solid var(--border-color) !important; 
    margin-top: 60px !important; 
    display: block !important; 
    width: 100% !important;
    box-sizing: border-box !important;
}

footer.md-dumb-footer .md-dumb-footer-grid {
    max-width: 960px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 260px 1fr !important;
    gap: 60px !important;
    align-items: start !important;
    text-align: left !important;
    width: 100% !important;
}

@media (max-width: 768px) {
    footer.md-dumb-footer .md-dumb-footer-grid {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }
}

footer.md-dumb-footer .md-df-title {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: var(--color-text) !important;
    margin: 0 0 20px 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

/* Настройки левой колонки (Навигация) */
footer.md-dumb-footer .md-df-col.md-df-nav .footer-menu-list {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

footer.md-dumb-footer .md-df-col.md-df-nav .footer-menu-list li {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    flex: none !important;
}

footer.md-dumb-footer .md-df-col.md-df-nav .footer-menu-list li::after,
footer.md-dumb-footer .md-df-col.md-df-nav .footer-menu-list li::before {
    display: none !important;
}

footer.md-dumb-footer .md-df-col.md-df-nav .footer-menu-list a {
    color: var(--color-text) !important;
    opacity: 0.8 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    display: inline-block !important;
    transition: opacity 0.2s ease, transform 0.2s ease !important;
}

footer.md-dumb-footer .md-df-col.md-df-nav .footer-menu-list a:hover {
    opacity: 1 !important;
    text-decoration: underline !important;
}

/* Настройки правой колонки (Дисклеймер) */
footer.md-dumb-footer .md-df-content * {
    color: var(--color-text) !important;
    opacity: 0.75 !important;
    font-size: 12px !important;
    line-height: 1.6 !important;
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
}

footer.md-dumb-footer .md-df-content p {
    margin: 0 0 12px 0 !important;
}
footer.md-dumb-footer .md-df-content p:last-child {
    margin-bottom: 0 !important;
}

/* ================================================= */
/* ОТКЛЮЧЕНИЕ "ВЫЛЕТОВ" НА ВЕСЬ ЭКРАН (100VW HACK)   */
/* ================================================= */
main [data-content="hero"], 
main [data-content="tldr"], 
main [data-content="intro"],
main .tldr,
main .hero,
main .hero-content-wrapper { 
    width: 100% !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
}

/* ================================================= */
/* ЖЕСТКИЙ УНИВЕРСАЛЬНЫЙ СБРОС ФУТЕРА ДЛЯ ВСЕХ ПРЕСЕТОВ */
/* ================================================= */
footer,
.site-footer,
[class*="-site-footer"] {
    --footer-bg: var(--card-bg) !important;
    --footer-ink: var(--color-text) !important;
    --bg: var(--card-bg) !important;
    --ink: var(--color-text) !important;
    
    background: var(--card-bg) !important;
    background-color: var(--card-bg) !important;
    color: var(--color-text) !important;
    border-top: 1px solid var(--border-color) !important;
}

footer *,
.site-footer *,
[class*="-site-footer"] * {
    color: var(--color-text) !important;
}

.footer-menu-list a {
    color: var(--color-text) !important;
    opacity: 0.8 !important;
}

.footer-menu-list a:hover {
    opacity: 1 !important;
}

details:not(.md-toc-block), 
details:not(.md-toc-block) summary, 
details:not(.md-toc-block) div, 
details:not(.md-toc-block) p, 
details:not(.md-toc-block) span {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    color: var(--color-text) !important;
    border-color: var(--border-color) !important;
}

details:not(.md-toc-block) {
    background: var(--card-bg) !important;
    background-color: var(--card-bg) !important;
    border: 1px solid var(--border-color) !important;
}

a:focus, button:focus, input:focus, select:focus, textarea:focus, *:focus-visible {
    outline: none !important;
    box-shadow: none !important;
}

/* СТРОГИЕ ПРАВИЛА С ИСКЛЮЧЕНИЕМ ВИТРИНЫ (tc-) */
main [class*="-stats"]:not([class*="tc-"]),
main [class*="-stats"] > li:not([class*="tc-"]),
main [class*="-icon-grid"] > li:not([class*="tc-"]),
main [class*="-keyvalue"]:not([class*="tc-"]),
main [class*="-box"]:not([class*="tc-"]):not(.burger):not([class*="tool-"]),
main [class*="-card"]:not([class*="tc-"]):not([class*="matches"]):not([class*="hub-children"]):not([class*="md-child"]),
main [class*="-panel"]:not([class*="tc-"]),
main .pitcher-stats {
    background-color: var(--card-bg) !important;
    background-image: none !important;
    color: var(--color-text) !important;
    border-color: var(--border-color) !important;
}

main [class*="-stats"]:not([class*="tc-"]) *,
main [class*="-stats"] > li:not([class*="tc-"]) *,
main [class*="-icon-grid"]:not([class*="tc-"]) *,
main [class*="-keyvalue"]:not([class*="tc-"]) *,
main [class*="-box"]:not([class*="tc-"]):not(.burger):not([class*="tool-"]) *,
main [class*="-card"]:not([class*="tc-"]):not([class*="matches"]):not([class*="hub-children"]):not([class*="md-child"]) *,
main [class*="-panel"]:not([class*="tc-"]) *,
main .pitcher-stats * {
    color: var(--color-text) !important;
}